MantisBT - opensim
View Issue Details
0006138opensim[REGION] Script Functionspublic2012-08-08 08:552019-02-25 07:40
Standalone (1 Region) , Standalone (Multiple Regions) , Grid (1 Region per Sim) , Grid (Multiple Regions per Sim)
0006138: function to evacuate one or more regions from the console
In some circumstances it may be necessary to immediately shutdown or restart a region instance without giving sufficient notice for avatars to teleport out, so an "evacuation" command might be useful.

Suggested syntax;

evacuate [[region name] (--shutdown|--restart)]


`evacuate` - teleports all users out of all regions in the current instance.
`evacuate Foo` teleports all users out of region Foo
`evacuate --shutdown` teleports all users then attempts to shutdown the instance
`evacuate --restart` teleports all users then attempts to restart the instance

Suggested teleport order:

1) If user has a home, teleport them home
2) If user has no home or home is being evacuated, teleport them to a fallback region with content rating greater than or equal to the current location (i.e. don't teleport a user in a mature/adult location to a PG location)
3) If no suitable teleport location can be found, log the user out
No tags attached.
Issue History
2012-08-08 08:55SignpostMarvNew Issue
2019-02-25 07:40tampaNote Added: 0034850
2019-02-25 07:40tampaStatusnew => acknowledged

2019-02-25 07:40   
This can be achieved with ossl already, in fact teleporting users out and then shutting down the region can be done through ossl entirely. While I generally agree that it would be nice to have, what would one do if the teleport fails for some reason?

Restarting regions, or better unloading and loading, is something one should avoid doing as it is not cleanly handled. Best would be shutdown --gracefully removing users to home->default->fallback before shutting down, but also only attempting to do so once. Meaning, only attempt a teleport when it is clear the region is accepting the user, which is inherently more work to figure out.

Marking this as acknowledged because just kicking people out, while sometimes desired, is rude nonetheless.