The Object Registry |
Creating an object registry is probably the most important step of opening a world for public building. The registry file serves two important purposes:
What is encroachment? Encroachment occurs when a user tries to place an object in such a manner that it overlaps with another object built by a different user. With a properly configured registry, the Active World Server can make sure that every object built in a world does not encroach on anyone else's property. This is an important aspect of maintaining control and ownership of property in a world that is open for public building. Do I have to have a registry in my world? No. In particular, if your world is not open to building by the public, then a registry is typically not necessary, since it is assumed those who are allowed to build in your world are responsible enough to keep their objects from encroaching. However, if your world is going to be open to public building, then using a registry is the only effective way to prevent vandalism. Creating a registry file There are two ways to create a registry file. One is to make it by hand in a text editor. The other is to use the RWXMOD utility. Making a registry file by hand is generally easier unless you have a very large number of original objects. It is best to start with an existing registry file, such as the registry from AlphaWorld, and then to add/delete objects as necessary. Installing a registry file Once you have a registry file, installing it is a simple matter of placing it in your Active World Server directory, and then adding it to the configuration information for the world. Format of the registry file Registry files are simply ASCII text files. Each line in the registry corresponds to one valid building object in your world. A typical line looks like this: STREET1.RWX 1 -495 5 -495 495 5 495
The first column is the name of the particular object (either a .rwx file or a .wrl file). The second column is ignored. The remaining columns are the dimensions of a bounding box around the object. The property server only actually looks at the fifth and seventh numbers. The fifth number is interpreted as one half the width of the object in centimeters. The seventh number is one half the depth of the object. So in this case, we can see that the STREET1.RWX object is 990 centimeters wide and 990 centimeters deep, or very close to 10 x 10 meters. The reason why the value 495 is used instead of 500 is that it is a good idea to shave a few centimeters off of the dimensions so that objects can be placed right next to each other without causing encroachment. Note that since only the fifth and seventh numbers are used, the sample registry entry above is equivalent to: STREET1.RWX 0 0 0 0 495 0 495
Tip: When adding an object to a registry, it is a good idea to always specify a positive value for the width and depth, even for "two dimensional" objects such as wall panels. The reason for this is that an object with 0 width or depth can potentially be slipped right in between two "adjacent" objects on someone else's property. Thus we typically give wall panels a width of 5 centimeters, even if they are actually 0 centimeters wide. |