Estate Support

From OpenSimulator

Revision as of 12:33, 21 August 2019 by Ferd Frederix (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search


Contents

Introduction

Estates in OpenSimulator are supported at the simulator level - these are not stored in a ROBUST service.

Estates are supported in the region console, or when setting up a new estate when a new region is setup. Commands for deletion of estates is currently not possible. At the moment, the only way to do this is by manipulating the region database directly.

Estate Commands

  • reload estate - reload estate data
  • estate link region <estate ID> <region ID> - Attaches the specified region to the specified estate.
  • estate show - This command will show the estate name, ID, and owner for regions currently running in the simulator. This list does not necessarily include all estates that are present in the database.
  • estate set name <estate ID> <new name> - Rename an estate
  • estate set owner <estate ID> <FirstName> <LastName> - Change the owner of an estate. This command supports two forms; this one uses the owner's name.
  • estate set owner <estate ID> <owner UUID> - Change the owner of an estate. This command supports two forms; this one uses the owner's UUID.
  • estate create <owner UUID> <estate name> - Must be a user UUID which you can get from 'show names'

Sample usage to change a Region to another Estate

# estate show
Estate information for region TestRegion
Estate Name ID Owner
My Estate 103 Test User
# show names
UUID Name HomeURL
00000000-0000-0000-0000-000000000000 Unknown User
461efe20-c098-4685-ab41-ef761538d3bc Test User
# estate create 461efe20-c098-4685-ab41-ef761538d3bc New Estate
Estate 105 created as "New Estate"
# estate link region 105 8c5fdd1b-d25a-4852-97b2-2369d5b99adf
Region 8c5fdd1b-d25a-4852-97b2-2369d5b99adf is now attached to estate 105
# estate show
Estate information for region TestRegion
Estate Name ID Owner
New Estate 105 Test User

Change the name of an Estate

An estate can be renamed through the "estate set name" command.

# estate set name <estate ID> <new name>

Change the owner of an Estate

An estate can have a new owner assigned through the "estate set owner" command. This command supports two forms, one using the owner's name, and one using the owner's ID.

# estate set owner <estate ID> <FirstName> <LastName>
# estate set owner <estate ID> <owner UUID>

Use a Viewer

Another option is to login to the OpenSimulator installation with a viewer and look at the "Covenant" tab of the "About Land" box.

Database

Alternatively, one could execute the following database command to show owners of all estates referenced by the simulator:

select PrincipalID, FirstName, LastName, EstateID, EstateName from UserAccounts, estate_settings as es where PrincipalID=es.EstateOwner;

Tasks

TODO: Need to add more tasks as necessary:

 * delete estate

Database tables

  • estate_groups - groups allowed on the estate.
  • estate_managers - managers of the estate.
  • estate_map - relates IDs of regions to the estate ID.
  • Estate_settings - holds all estate properties (estate owner, estate name, etc.).
  • estate_users - residents allowed in the estate.
  • estateban - residents banned from the estate.

Old notes

This is the old page contents. It may be useful for historical information.

SVN r5525 introduced estate support into OpenSimulator.

Updating to this or a later revison will create estate support in your instance. It will convert the previous settings file to a set of database tables.

The following tables are created

regionsettings (this will be dropped and recreated if it existed)
estate_settings
estate_map
estatebans
estate_users
estate_groups
estate_managers

These tables will be created in the region datastore by default.

On conversion, it will set up an environment as close as possible to what existed before.

It auto-creates one estate per region, with default estate IDs, starting from 100. All new estates will be parented by estate 100 as well. It then places the region in it, converts the old region bans to new estate bans for that estate and sets the new estate flags to defaults. All the information is saved in the database in the new tables.

Region settings are now really by region, no longer per instance.

This patch causes all regions to revert to the settings from estate_settings.xml. This will repair the loss of ground textures some people have reported with the last patch. However, per-region settings made with the last patch will revert to the settings from estate_settings.xml. This is a trade off and was done to make the most common migration case more robust.

Estate owners

Estate owners are now supported, but have to be entered in the database manually, since no support for this exists in the client. Set the EstateOwner field in estate_settings to the UUID of the user you want to be the estate owner. It will become effective in each region at the next region restart.

Fixing Estate IDs

Previous versions of OpenSimulator did automatically create estates with an EstateID equal to 1 and that ID is stored in the OpenSimulator database. Unfortunately SL based viewer do not work properly with EStateID values between 1 and 5, because these numbers are reserved for Linden Labs internal use.

In the Estate tab of the Estate Manager the estate managers and allowed and banned avatars lists are grayed out, for estates using these reserved EstateID values. To fix this problem, run the SQL statements below to adjust the EstateIDs the following way:

Old New
---------
1 --> 100
2 --> 101
3 --> 102
4 --> 103
5 --> 104

Execute the following command while OpenSimulator is not running:

mysql -u<user> -p<password> <database> < FixEstateID.sql

SQL statements in FixEstateID.sql:

UPDATE estate_groups SET EstateID=100 WHERE EstateID=1;
UPDATE estate_managers SET EstateID=100 WHERE EstateID=1;
UPDATE estate_map SET EstateID=100 WHERE EstateID=1;
UPDATE estate_settings SET EstateID=100 WHERE EstateID=1;
UPDATE estate_users SET EstateID=100 WHERE EstateID=1;
UPDATE estateban SET EstateID=100 WHERE EstateID=1;
UPDATE estate_groups SET EstateID=101 WHERE EstateID=2;
UPDATE estate_managers SET EstateID=101 WHERE EstateID=2;
UPDATE estate_map SET EstateID=101 WHERE EstateID=2;
UPDATE estate_settings SET EstateID=101 WHERE EstateID=2;
UPDATE estate_users SET EstateID=101 WHERE EstateID=2;
UPDATE estateban SET EstateID=101 WHERE EstateID=2;
UPDATE estate_groups SET EstateID=102 WHERE EstateID=3;
UPDATE estate_managers SET EstateID=102 WHERE EstateID=3;
UPDATE estate_map SET EstateID=102 WHERE EstateID=3;
UPDATE estate_settings SET EstateID=102 WHERE EstateID=3;
UPDATE estate_users SET EstateID=102 WHERE EstateID=3;
UPDATE estateban SET EstateID=102 WHERE EstateID=3;
UPDATE estate_groups SET EstateID=103 WHERE EstateID=4;
UPDATE estate_managers SET EstateID=103 WHERE EstateID=4;
UPDATE estate_map SET EstateID=103 WHERE EstateID=4;
UPDATE estate_settings SET EstateID=103 WHERE EstateID=4;
UPDATE estate_users SET EstateID=103 WHERE EstateID=4;
UPDATE estateban SET EstateID=103 WHERE EstateID=4;
UPDATE estate_groups SET EstateID=104 WHERE EstateID=5;
UPDATE estate_managers SET EstateID=104 WHERE EstateID=5;
UPDATE estate_map SET EstateID=104 WHERE EstateID=5;
UPDATE estate_settings SET EstateID=104 WHERE EstateID=5;
UPDATE estate_users SET EstateID=104 WHERE EstateID=5;
UPDATE estateban SET EstateID=104 WHERE EstateID=5;
Personal tools
General
About This Wiki