Configuring Regions
From OpenSimulator
Contents |
OpenSimulator 0.7 and later
By default, regions are configured in a file named Regions.ini in the bin/Regions directory. If you started a completely fresh installation of OpenSim, it will ask you a series of questions to set up your first region.
Here's an example of a Regions.ini file
[Big Fat Region] RegionUUID = 5ce85740-6460-43d3-ba4c-29207b010072 Location = 1000,1000 InternalAddress = 0.0.0.0 InternalPort = 9000 AllowAlternatePorts = False ExternalHostName = 192.168.1.2
This is a list of settings that must be present for a region to operate. When you start OpenSimulator for the first time without an existing Regions.ini file, you'll be asked for an entry for each setting in order to set up your initial region. For more details, see Configuration#Running OpenSimulator for the first time.
Attribute | Description |
---|---|
[Big Fat Region] | The name of the region. |
RegionUUID | The unique ID of the region. |
Location | The (x, y) location of the region on the grid. |
InternalAddress | 0.0.0.0 if you have more than one NIC on the server and you don't care which IP address OpenSimulator listens on (this is the usual setting). Alternatively, you can set to a specific IP. |
InternalPort | IP port for all incoming client connections. |
AllowAlternatePorts | Not Used. Leave it always False. |
ExternalHostName | External IP Address of the router or FQDN. |
If you want to add another region you can
- enter another section in Regions.ini
- create another separate .ini file in bin/Regions
- create an old format OpenSimulator xml file (these still work with current OpenSim)
- or use the create region command on the region console (I don't recommend this since it seems to be a bit buggy).
Here's an example where a second region has been added to Regions.ini
[Big Fat Region] RegionUUID = 5ce85740-6460-43d3-ba4c-29207b010072 Location = 1000,1000 InternalAddress = 0.0.0.0 InternalPort = 9000 AllowAlternatePorts = False ExternalHostName = 192.168.1.2 [Greek Wedding] RegionUUID = 5c445740-6460-43d3-ba4c-444444445555 Location = 1000,1001 InternalAddress = 0.0.0.0 InternalPort = 9001 AllowAlternatePorts = False ExternalHostName = 192.168.1.2
As you can see, the Second region is named Greek Wedding and has a different UUID. It has a different location (1000,1001) and a different InternalPort (9001). Other than that, the details are the same.
To create a new UUID you can either tweak an existing one by hand (e.g. by changing one character so that the new one is in the range [0-9][A-F] or a generator can be found at uuidgen webpage. On Unix, you can also use the uuidgen command.
As well as the critical entries above, there are some additional optional ones that can change the properties of a region. These are
Attribute | Description |
---|---|
MaxAgents | The maximum number of agents that can be in the in the region at any given time. The default is 100. As of 4/22/2011 this option only exists in the current git master. |
MaxPrims | The maximum number of prims that the region will be listed as supporting. However, this limit is not currently enforced by OpenSimulator. Due to LL protocol constraints, the maximum limit that can be shown is 45000. |
PhysicalPrimMax | The maximum dimensions of a physical prim. This is a single number which applies to X, Y and Z co-ordinates. This will affect resizing of existing prims. Default is 10. This setting can also be used in the [Startup] section of OpenSim.ini. If the region setting exists then it will override the OpenSim.ini setting. |
NonphysicalPrimMax | The maximum dimensions for a non-physical prim. This is a single number which applies to X, Y and Z co-ordinates. This will affect resizing of existing prims. Default is 256. This setting can also be used in the [Startup] section of OpenSim.ini. If the region setting exists then it will override the OpenSim.ini setting. |
ClampPrimSize | If true then if a viewer attempts to create a prim which has any dimension larger than the NonphysicalPrimMax, then that dimension is reduced to NonphysicalPrimMax. Default is false; This setting can also be used in the [Startup] section of OpenSim.ini. If the region setting exists then it will override the OpenSim.ini setting. |
RegionType | The region type as shown in the Covenant tab of the Region/Estate dialog in a standard Second Life viewer. Not sure what this can be used for. |
MaptileStaticUUID | UUID of texture to use as a maptile for this region. Only set if you have disabled dynamic generation of the map tile from the region contents. |
Tools
RegionIniGenerator(RIG1.1): A decent (sort of) GUI based region ini creator for use with 0.7+ INI style region data. Built on .NET 4 framework.
Other Tasks
Configuring Multiple Regions on a Single Server Instance
To configure multiple regions on one server (i.e. a 4x4 server), edit the Regions.ini file to include multiples of the single entry already there. Make sure the RegionUUID and InternalPort are different on each one, or it won't work. To load individual OAR files into each region, use the 'change region [regionname]' command and then 'load oar [oar-location]'.
OpenSimulator 0.6.7 to OpenSimulator 0.6.9
By default, regions are configured in a file named Regions.ini in the bin/Regions directory. If you started a completely fresh installation of OpenSim, it will ask you a series of questions to set up your first region.
Here's an example of a Regions.ini
[Big Fat Region] RegionUUID = 5ce85740-6460-43d3-ba4c-29207b010072 Location = 1000,1000 InternalAddress = 0.0.0.0 InternalPort = 9000 AllowAlternatePorts = False ExternalHostName = 192.168.1.2 MasterAvatarFirstName = Justin MasterAvatarLastName = Clark-Casey MasterAvatarSandboxPassword = yeahokay
This is the list describing the relation between the entries in Regions.ini and the questions during setup. For detail about each question, see Configuration#Running OpenSimulator for the first time.
Attribute | Setup Console Question | Description |
---|---|---|
[Big Fat Region] | New region name | The name of the region. |
RegionUUID | Region UUID | The unique ID of the region. |
Location | Region Location | The location of the region on the grid. |
InternalAddress | Internal IP address | 0.0.0.0 or static internal IP address. |
InternalPort | Internal port | IP port for all incoming client connections. |
AllowAlternatePorts | Allow alternate ports | Not Used. Leave it always False. |
ExternalHostName | External host name | External IP Address of the router or FQDN. |
MasterAvatarFirstName | Master Avatar first name | (0.6.9 or earlier) The first name of the master avatar. |
MasterAvatarLastName | Master Avatar last name | (0.6.9 or earlier) The last name of the master avatar. |
MasterAvatarSandboxPassword | Master Avatar sandbox password | (0.6.9 or earlier) The password of the master avatar. |
If you want to add another region you can
- enter another section in Regions.ini
- create another separate .ini file in bin/Regions
- create an old format OpenSimulator xml file (these still work with OpenSimulator 0.6.7)
- or use the create region command on the region console (I don't recommend this since it seems to be a bit buggy in 0.6.7).
Here's an example where a second region has been added to Regions.ini
[Big Fat Region] RegionUUID = 5ce85740-6460-43d3-ba4c-29207b010072 Location = 1000,1000 InternalAddress = 0.0.0.0 InternalPort = 9000 AllowAlternatePorts = False ExternalHostName = 192.168.1.2 MasterAvatarFirstName = Justin MasterAvatarLastName = Clark-Casey MasterAvatarSandboxPassword = yeahokay [Greek Wedding] RegionUUID = 5c445740-6460-43d3-ba4c-444444445555 Location = 1000,1001 InternalAddress = 0.0.0.0 InternalPort = 9001 AllowAlternatePorts = False ExternalHostName = 192.168.1.2 MasterAvatarFirstName = Justin MasterAvatarLastName = Clark-Casey MasterAvatarSandboxPassword = yeahokay
As you can see, the Second region is named Greek Wedding and has a different UUID. It has a different location (1000,1001) and a different InternalPort (9001). Other than that, the details are the same.
To create a new UUID you can either tweak an existing one by hand (e.g. by changing one character so that the new one is in the range [0-9][A-F] or a generator can be found at uidgen webpage. On Unix, you can also use the uuidgen command.
OpenSimulator 0.6.6 and earlier
For running multiple regions on the same box, you simply make multiple copies of the 'default.xml' file inside the bin/Regions/ directory. You can do this by typing create region at the OpenSimulator command prompt, using the script make.php in share/regions, or you can generate the files by hand.
If you want to create the files by hand:
- first copy the default.xml file in the bin/Regions directory, and name them anything you want (I name mine region.x.y.xml, where region is the name of the region, and x and y are the grid coords.)
- Open each xml file and edit the uuid (a generator can be found at uuidgen webpage or on unix, use the uuidgen command), region name, x & y positions, and internal IP port.
IMPORTANT! Regardless of the method you use to create your new region, the UUID, name, and grid coordinates must be unique for each region on a grid. The port assignment must be unique for each region that is running on a particular machine. The internal IP address and external host name must be the same for all regions.
Note that sim_location_x and sim_location_y should be adjacent integers if you want your regions to be adjacent, so you can run back and forth between them. IMPORTANT: THESE GRID COORDINATES ARE NOT IN METERS. THEY ARE SIM POSITIONS. (1000, 1000) is next to (1001,1000), (1000, 1001), and so forth. 1256, 2000, 2048 and similar values are not adjacent to 1000, they are very far away, so you would not see your sims from one another.
Once you have 2 or more xml files in the bin/Regions folder, running a single copy of OpenSim.exe will start up all of your sims! If you come across any errors, there is most likely an error in your xml files.
Tools
A powerful region generator is available at: RegionGenerator