New in 0.8: Profiles and Variable-Sized Regions

Snapshot_001

OpenSimulator 0.8 brings one much requested feature, profiles, and a fantastic new feature, variable-sized regions (varregions for short), something we got from an offshoot of OpenSim with collaboration from viewer developers. Profiles and varregions both work out of the box for new installations of D2, so if you’re doing it from scratch, you don’t need to read this. But if you are upgrading your D2, there is some manual upgrading to do. Please read on!

Profiles

For profiles to work in D2, edit your existing bin/MyWorld.ini and add this section somewhere:

[UserProfiles] 
  ProfileServiceURL = "http://myworld.com:9000"   (replace with your domain name)

Then add this extra variable under [LoginService]:

[LoginService] 
  SRV_ProfileServerURI = "http://myworld.com:9000"  (replace with your domain name)

How to Change D2 from Mega to Varregion

During all this time, D2 has been packaged with a precursor of varregions called mega-regions. Mega-regions, however, failed to work well on many details like crossing borders or teleports to the middle of the area. Varregions involves improvements in the viewers, so users need to use a relatively recent viewer like Singularity, but they solve all of the problems that mega-regions had, and make the specification of the space much simpler too.

Starting in this release (r24886, OpenSim 0.8), new installations of D2 use varregions out of the box instead of mega-regions. The default size of the space is as before 512×512, but it can easily be changed. Because the old mega-regions are difficult to deal with, existing D2 worlds are not automatically updated to varregions, so they will continue to work using mega-regions if nothing is done. However, I strongly recommend D2 users to update their worlds immediately after updating D2.

Please note: upgrading to varregion will eliminate the existing parcels in all but the SW area; you will need to redo the parcels again. Although this is inconvenient, I highly recommend changing to varregions now, because support for mega-regions in OpenSim will eventually be dropped.

  1. Update your D2 to diva-r24886
     $ [mono] Update.exe
  2. Change to diva-r24886/bin and restart OpenSim as usual
     $ [mono] OpenSim.exe

    Note that this will run your world still as a mega-region. Everything should work as before.

  3. Make oars of all of your regions. Assuming the default 4-cell megaregion configuration:
     # change region "<SW>"  (where SW is the name of the lower-left region)
     # save oar sw.oar
     # change region "<SE>"   (where SE is the name of the lower-right region)
     # save oar se.oar
     # change region "<NE>"  (where NE is the name of the upper-right region)
     # save oar ne.oar
     # change region "<NW>"   (where NW is the name of the upper-left region)
     # save oar nw.oar
  4. Shutdown OpenSim:
     # shutdown
  5. IMPORTANT: Make a copy of bin/RegionConfig.ini for backup, in case you need to go back to mega-regions.
  6. Edit bin/RegionConfig.ini. Again, assuming the default 4-cell megaregion that came with D2, you should see 4 blocks of region specification there, one per region. Leave the first one, and delete, or comment (with semicolon ‘;’), the other three. On the first block that is left, add the following variables:
     SizeX = 512
     SizeY = 512

    So, your entire (single) block should look something like this:

     [My World 1]
     RegionUUID = "bd60a94c-bebe-bebe-96bc-26564f652111"
     Location = "2238,2550"
     InternalAddress = "0.0.0.0"
     InternalPort = 9000
     AllowAlternatePorts = False
     ExternalHostName = "myworld.com"
     SizeX = 512
     SizeY = 512
  7. Restart OpenSim
     $ [mono] OpenSim.exe

    You will now have 1 large region that has all the content, but the terrain everywhere except the SW area is wrong. Don’t panic! You are now going to load the rest of the terrain.

  8. Leave the SW corner as is, since it already has the right content. Load the other 3 oars with the corresponding displacement:
    # change region "<SW>"  (where SW is the name of the lower-left, and now only, region)
    # load oar se.oar --displacement "<256,0,0>" --merge --force-terrain 
    # load oar ne.oar --displacement "<256,256,0>" --merge --force-terrain 
    # load oar nw.oar --displacement "<0,256,0>" --merge --force-terrain

That’s it! You now have a D2 with a proper variable-sized region that will work much better than the mega-region we had before. From here on, saving OARs will involve only this one region, not four. This is a true single region, not many regions pretending to be one, like mega-regions.

If you had previously changed the default 2×2 mega-region of D2 by adding more regions in bin/RegionConfig.ini, you need to delete all but the first region in that file and set the size to whatever your space size is. You will also need to save all of the oars for all of your regions and then load them into the single varregion with the corresponding displacements.

Changing the Size of Your World

If you want you can increase the size of your region by changing SizeX and SizeY in bin/RegionConfig.ini, and then restarting OpenSim. Two constraints must be observed: (1) SizeX=SizeY (so, only square regions are allowed); and (2) the size needs to be a multiple of 256.

I don’t recommend regions larger than 1024×1024, though, because the terrain will be massive.