This repository has been archived by the owner. It is now read-only.
Assets 2

This release provides both user-visible and administrative/background improvements:

User Logins
• Fixed a problem with stale connection info being used when fetching user profiles. Fixes "last location" logins not going to last logoff location, and probably other cases where the cached info was stale.
• Fixed a problem where repeated attempts to enter region by a banned user could cause the region to be marked as unavailable to all users. See the forum report here for more.
• If the specified login location is not available, the User login service now try user's Home location before falling back to alternative default locations (like IDI).
• Fixed a null reference exception that could occur if the user has no home region at all.
• Added support for IP network bans in the central User login server itself (rather than region servers). Supports specific IP addresses as well as IP ranges, and does not require User service restarts for changes.

Other Behavior/Functionality
• Added support for the "HomeLocation" CAP (region capability). This is a server-side fix for the Firestorm Viewer regression in the Firestorm 4.7.9 update. See the FIRE-19894 report in the Firestorm JIRA for more. Fixes the inability for the latest Firestorm viewer to be able to "Set Home to Here" (at least on InWorldz).
• Eliminated the superfluous "Notecard saved." messages. Fixes Mantis #3228. These were now causing multiple viewer popups that need to be closed when connected to InWorldz servers, and have been removed from SL servers. (These messages were only added to match previous SL behavior, so InWorldz servers have now changed to match the new SL behavior again, by removing these extra popups).

LSL Scripting
• Fixed llGetObjectDetails(id, [OBJECT_OWNER]) to return NULL_KEY for deeded objects, as per the SL wiki and tests in SL to confirm it.
• Changed llGiveMoney to skip payments of zero and simply return a 0. This makes llGiveMoney compatible with the Second Life implementation.
• Fixed botFollowAvatar to return BOT_USER_NOT_FOUND if the user wasn't present. It only returned that previously if the user account didn't exist at all. Fixes Mantis #3227.
• Fixed llMoveToTarget to support 3-D movement (Z changes). Removed the 2-D restriction on llMoveToTarget for avatars. This may not completely solve Mantis #3231, but it's a step forward, at least it attempting to resolve the Z location too, now. Also fixed to avoid applying air brakes if a move to target is in progress. Applies a local linear force to help the movement and counter gravity (mass-based and FLY_LAUNCH_FORCE used elsewhere if lifting off from ground). Needs but does not yet implement a critically-dampened motion (wasn't in the previous 2-D movement either, but is planned).
• Implemented llGetEnv for region_size_x,region_size_y,region_size_z which return 256, 256, 10000 from the Constants module. Resolves Mantis #3135.

Halcyon Open-Source Project / Grids
• Fix for issue #251 to include a console/log message if the PermissionsModule is skipped (reported as GitHub issue #251 by the MOSES team). Also abort startup if no permission module is used, even with permissions bypassed. The DefaultPermissionsModule (PermissionsModule.cs) supports bypassing permissions entirely, if that is desired. However it is considered a configuration error to have (probably accidentally) fail to load ANY permissions module at all. (Avoids problems where a region can start with all permissions checking accidentally disabled on other Halcyon grids.)
• Added a teleport user console command to allow a grid administrator to force-teleport a user session (e.g. in the event of trouble in a region). The console command syntax is teleport user <first> <last> regionName x y z.
• Improved the error handling for XML commits for default configurations on first time setup situations (where the file will be missing).
• Added some Swagger documentation for the RESTful remote console and Remote Admin interfaces.
• Includes Postman tooling for testing the two remote APIs. The Postman XMLRPC collection now uses the username and pass set in the environment.
• Added a note to the default INI file about the various consoles that can be activated.
• A start to the inline code documentation & Doxygen documentation for LSL.