secondlife / jira-archive

2 stars 0 forks source link

[BUG-10331] AGENT_FLYING flag set while agent is not flying. #671

Closed sl-service-account closed 7 months ago

sl-service-account commented 9 years ago

Steps to Reproduce

I'm not certain since I wasn't paying attention to SL at the time, but as far as I know I was just standing there. The flying is turned off on the sim so I don't think I could have been flying.

Actual Behavior

I believe the simulator software may be reporting agent status incorrectly resulting in scripts behaving improperly. In particular with regard to AGENT_FLYING flags. I was recently victim to this when a script owned by a group sent me home when I was detected as having the AGENT_FLYING flag set by the script when the land in question had fly disabled. The script was Group Owned and created by Certified Lunasea.

Expected Behavior

I was expecting nothing to happen since I wasn't flying.

Other information

Certified Lunasea can provide more details about the script.

Original Jira Fields | Field | Value | | ------------- | ------------- | | Issue | BUG-10331 | | Summary | AGENT_FLYING flag set while agent is not flying. | | Type | Bug | | Priority | Unset | | Status | Closed | | Resolution | Cannot Reproduce | | Reporter | sabrinai (sabrinai) | | Created at | 2015-09-25T20:40:30Z | | Updated at | 2017-05-08T23:16:23Z | ``` { 'Business Unit': ['Platform'], 'Date of First Response': '2015-09-25T16:12:30.461-0500', "Is there anything you'd like to add?": 'Certified Lunasea can provide more details about the script.', 'ReOpened Count': 0.0, 'Severity': 'Unset', 'System': 'SL Simulator', 'Target Viewer Version': 'viewer-development', 'What just happened?': 'I believe the simulator software may be reporting agent status incorrectly resulting in scripts behaving improperly. In particular with regard to AGENT_FLYING flags. I was recently victim to this when a script owned by a group sent me home when I was detected as having the AGENT_FLYING flag set by the script when the land in question had fly disabled. The script was Group Owned and created by Certified Lunasea. ', 'What were you doing when it happened?': "I'm not certain since I wasn't paying attention to SL at the time, but as far as I know I was just standing there. The flying is turned off on the sim so I don't think I could have been flying.\r\n", 'What were you expecting to happen instead?': "I was expecting nothing to happen since I wasn't flying.", 'Where': 'This occurred at Hickory Hills (107,20,1001)', } ```
sl-service-account commented 9 years ago

Whirly Fizzle commented at 2015-09-25T21:12:30Z

Did you have Admin mode enabled? If you move (walk over border or TP) from Region A to Region B & at least Region B has fly disabled then you will be flying once you cross into Region B. See BUG-258

sl-service-account commented 9 years ago

Certified Lunasea commented at 2015-09-25T21:12:47Z, updated at 2015-09-25T21:40:15Z

I wrote the script due to issues with users flying on land that the owner has set to restrict flying, such as in the case of the store I help my partner, Arella Ohmai, with.

The script uses llGetAgentList to obtain a list of agents restricted to the parcel area, it then uses the UUIDs from that list to ask if the AGENT_FLYING flag is set by chekcing "llGetAgentInfo(UUID) & AGENT_FLYING" and if so the agent UUID is added to a list for further iterations. If that returns true for more than 4 seconds for a listed UUID then the script notifies the agent with that UUID of the flight restriction and tells them that they must land, this should eliminate many false positives. If AGENT_FLYING remains set for the listed agent for an additional 30 seconds they are informed that they are being sent home and llTeleportAgentHome is used to remove the agent. This script iterates these checks once per second and if at any point it finds that the AGENT_FLYING flag is unset for a listed UUID, then the agent is cleared from the list effectively resetting all of the timers.

When an agent is notified that they are flying the script also sends a message to me via llInstantMessage stating that they are flying and giving me a link to their profile for easy communication and record keeping, the greeter I coded works similarly.

If the simulator is indeed setting AGENT_FLYING incorrectly this script and others like it running on Second Life Server 15.09.14.305056 will have erratic behavior, but as of this point I have been unable to duplicate the issue.

As my avatar was online at the time that this incident occurred I am including the local chat from my Firestorm viewer (version 4.7.3.47323) at the time of her visit which includes the greeter detection message, in and out of chat range messages, and the no-fly script detection and ejection messages.

[01:57] :PKD: Greeter: PKD Main Store ( Hickory Hills (96,32,999) ) has a new visitor named sabrinai Resident ( Sabrina ). Profile Link: Sabrina (sabrinai Resident) [02:01] Sabrina (sabrinai Resident) left chat range. [02:02] Sabrina (sabrinai Resident) entered chat range (16.16 m). [02:10] NO-FLY ZONE: A flying avatar named sabrinai Resident(Sabrina) has been detected at PKD Main Store ( Hickory Hills (96,32,999) ) Profile Link: Sabrina (sabrinai Resident) [02:10] NO-FLY ZONE: A flying avatar named sabrinai Resident(Sabrina) has been detected at PKD Main Store ( Hickory Hills (96,32,999) ) Profile Link: Sabrina (sabrinai Resident) [02:10] NO-FLY ZONE: A flying avatar named sabrinai Resident(Sabrina) has been detected at PKD Main Store ( Hickory Hills (96,32,999) ) Profile Link: Sabrina (sabrinai Resident) [02:11] Sabrina (sabrinai Resident) left chat range. [02:11] NO-FLY ZONE: sabrinai Resident(Sabrina) has been sent home for violating the no-fly rule on the land.

EDIT: Of further note, there are no regions bordering this one, and Teleport Routing is set to Landing Point.

sl-service-account commented 9 years ago

Whirly Fizzle commented at 2015-09-25T23:33:45Z

Sabrinai, Certified, Lucia & myself tried to reproduce this again at Hickory Hills & we were not able to reproduce it. The only way we could trigger the script was to either set the viewer to always fly after teleport and teleport into the parcel or to enable fly override/Admin mode.

sl-service-account commented 9 years ago

Certified Lunasea commented at 2015-09-26T00:01:39Z

I want to thank everyone for their time on this.

If there is some sort of intermittent issue with the server software, then we were unable to get it to occur.

I am happy about the outcome of our tests as it puts my mind at ease that there is not a risk of broken content. At the very least I know my script has been very thoroughly tested and confirmed to work as expected.