Forums » Bugs

Excessive PLAYER_(ENTERED|LEFT)_SECTOR events

Nov 14, 2011 draugath link
ARF pointed out to me that one of his plugins (in this case TCS: Alert machine) was giving the wrong type of messages for when player enter or leave a sector. This got me looking at events when changing sectors. There appears to be an issue with an unnecessary PLAYER_LEFT_SECTOR followed by another PLAYER_ENTERED_SECTOR.

Here's a snippet from my errors.log. I have bolded the lines produced by TCS.

Event: MSG_NOTIFICATION - Data:
      1: (string) "Press the Activate key to enter wormhole to Jallik."
      2: (number) 5
Event: ENTER_ZONE_wormhole - Data:
      1: (string) "wormhole"
Event: HUD_HIDE - Data:
Event: CINEMATIC_START - Data:
Event: WARP_OUT_CINEMATIC_FINISHED - Data:
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 183825 (ARF_01)
[Itan]ARF_01: Left the sector.
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 189776 (draugath)
Event: CHAT_MSG_SERVER_SECTOR - Data:
      1: (table) msg="You are entering Jallik E-15"
Event: SECTOR_CHANGED - Data:
      1: (number) 3301
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113197 (*Itani Jallik Border Turret 3301-2)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113198 (*Itani Jallik Border Turret 3301-3)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113196 (*Itani Jallik Border Turret 3301-1)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113199 (*Itani Jallik Border Turret 3301-4)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113200 (*Itani Jallik Border Turret 3301-5)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113201 (*Itani Jallik Border Turret 3301-6)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113202 (*Itani Jallik Border Turret 3301-7)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113203 (*Itani Jallik Border Turret 3301-8)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113204 (*Station Guard Ostana Bashel)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113205 (*Station Guard Bota Protelis)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 189776 (draugath)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113197 (*Itani Jallik Border Turret 3301-2)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113198 (*Itani Jallik Border Turret 3301-3)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113196 (*Itani Jallik Border Turret 3301-1)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113199 (*Itani Jallik Border Turret 3301-4)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113200 (*Itani Jallik Border Turret 3301-5)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113201 (*Itani Jallik Border Turret 3301-6)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113202 (*Itani Jallik Border Turret 3301-7)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113203 (*Itani Jallik Border Turret 3301-8)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113204 (*Station Guard Ostana Bashel)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 1000113205 (*Station Guard Bota Protelis)
Event: PLAYER_UPDATE - Data:
      1: (number) 189776 (draugath)
Event: PLAYER_UPDATE_STATS - Data:
      1: (number) 189776 (draugath)
Event: STORM_STOPPED - Data:
Event: UPDATE_NEWS_HEADLINES - Data:
Event: SECTOR_LOADED - Data:
Event: HUD_HIDE - Data:
Event: SHIP_SPAWNED - Data:
Event: CINEMATIC_START - Data:
      1: (number) 3
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113197 (*Itani Jallik Border Turret 3301-2)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113198 (*Itani Jallik Border Turret 3301-3)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113196 (*Itani Jallik Border Turret 3301-1)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113199 (*Itani Jallik Border Turret 3301-4)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113200 (*Itani Jallik Border Turret 3301-5)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113201 (*Itani Jallik Border Turret 3301-6)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113202 (*Itani Jallik Border Turret 3301-7)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113203 (*Itani Jallik Border Turret 3301-8)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113204 (*Station Guard Ostana Bashel)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 1000113205 (*Station Guard Bota Protelis)
Event: PLAYER_STATS_UPDATED - Data:
      1: (number) 189776 (draugath)
Event: MSG_NOTIFICATION - Data:
      1: (string) "Press the Activate key to enter wormhole to Edras."
      2: (number) 5
Event: ENTER_ZONE_wormhole - Data:
      1: (string) "wormhole"
Event: SHIP_SPAWN_CINEMATIC_FINISHED - Data:
Event: HUD_SHOW - Data:
      1: (string) "ship"
Event: GROUP_MEMBER_LOCATION_CHANGED - Data:
      1: (number) 183825 (ARF_01)
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 183825 (ARF_01)
Event: PLAYER_LEFT_SECTOR - Data:
      1: (number) 183825 (ARF_01)
ARF_01: Left the sector.
Event: PLAYER_ENTERED_SECTOR - Data:
      1: (number) 183825 (ARF_01)
*[Itan]ARF_01: Corvus Greyhound - 100% health 570m away :: I:Admire S:Kill on Sight U:Admire L:Admire

For those that are interested in how to produce this type of output, it's a feature of my DevKit plugin.
Nov 14, 2011 Crusader8389 link
Also, when someone is leaving a station, the other person will see "player entered sector" "player left sector" "player entered sector" all in a row. Same when someone enters your sector and your in range to see their ship. Apparently there is a difference between a player entered sector (where u just know pid) and player entered sector (where you know guild, nation, ship flying, etc) and maybe one more kind of player entered event.
Nov 14, 2011 draugath link
Crusader, at the time of the PLAYER_ENTERED_SECTOR event, the player has only just loaded the sector, but their ship hasn't spawned yet. So there is little information to be obtained.

The issue described in my original post does not seem to be a constant. I just noticed that I wasn't getting the extra messages on more recent jumps. I will be running further tests to try and isolate the issue from the client side.

EDIT: While I haven't been able to duplicate the extra events with regards to the NPCs in the sector, it has been still occurring with players.
Nov 14, 2011 PaKettle link
I have been getting these messages out of order as well but I suspect it is a plug in issue....
Nov 14, 2011 draugath link
It's not. There is something happening server-side that is causing it to send the events, seemingly out of order. The plugins can only interpret the events.
Nov 14, 2011 meridian link
Since it is only happening with players, my guess is that the PLAYER_ENTERED_SECTOR gets sent when the player makes a jump and starts loading the sector. Then, while they are still loading the sector the PLAYER_LEFT_SECTOR gets sent since the ship is not within 15km (since it is really nowhere in the sector yet). Then once the sector is done loading the ship gets spawned and PLAYER_ENTERED_SECTOR is generated again. I'm just speculating here...

It seems like generating PLAYER_LEFT_SECTOR when a ship goes out farther than 15km is a bug too. There really should be some new PLAYER_ENTERED/LEFT_SENSOR_RANGE events or something instead.
Nov 14, 2011 draugath link
I did some further testing regarding this, and this is what I've found.

After you first enter a sector, anyone that enters the sector triggers the following series of events.

PLAYER_ENTERED_SECTOR
PLAYER_LEFT_SECTOR
PLAYER_ENTERED_SECTOR

If you remain in the sector and someone leaves, they will trigger PLAYER_LEFT_SECTOR, as you would expect. If that same person returns, and you have still not changed sectors, they will trigger only a single PLAYER_ENTERED_SECTOR event.

EDIT:
PLAYER_LEFT_SECTOR appears to also trigger if a player, docks, changes their ship, and undocks.
Nov 18, 2011 Crusader8389 link
ty for addressing this draug, its making all my plugins spam even more than usual. I'm glad you found a reproducable error.
Dec 02, 2011 raybondo link
This should be fixed in tonight's update.
Dec 03, 2011 meridian link
I'm still seeing extra PLAYER_LEFT_SECTOR events being generated. I think when another player undocks from a station.