Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
RFTools on Servers
If you are a server admin and you are worried about players going overboard with their RFTools dimensions there are several things that you can do. In this document we describe all the commands that are available to help you manage dimensions as well as what options you can set to limit dimension building on a player level.
Void Dimensions Only
The first thing you can do is make sure that only void dimensions can be made. You should do this if you have a server running on a relatively bad computer where memory and space is a big concern. This can be done with by setting the 'voidOnly' config option to true like this:
When this option is true all non-void terrain dimlets are blacklisted and randomly created dimensions will always be void. Void dimensions are actually good for servers as they can reduce lag (they generally don't contain a lot of entities and stuff).
Starting with RFTools 4.12 there are two ways to limit the number of dimensions per player. The way described here is also available in older versions of RFTools. It is basically a way to limit the amount of dimensions a player can construct by making sure that dimension tabs can only be created if they contain a 'owner' dimlet. These dimlets are never generated randomly and cannot be found as loot. The only way to get owner dimlets is by getting them from an admin. So the server admin could give out a number of owner dimlets in the starter pack of a player or they could be made available in the in-game shop of the server (mind you! Not for real money as the Minecraft EULA forbids that). To enable this option you have to set the following option in the config:
When this is true a player can only construct a dimension tab if there is an owner dimlet in it. If you deconstruct a dimension tab for which the dimension hasn't been created yet then the player will get the dimlet back. If you deconstruct a dimension tab for a created dimension then the owner dimlet is lost.
Starting with RFTools 4.12 RFTools will track who has created a dimension.
Tracking Machine Ownership
Dimension creator tracking works through the owner system that is implemented for RFTools machines in general. So it is actually the owner of the dimension builder that sets the owner of the dimension because it is the machine that eventually creates the dimension. So as a prerequisite for everything in this section you must make sure that in mcjtylib.cfg the following option is set:
This is true by default so it should be ok unless you changed it.
Note that there was a bug in McJtyLib 1.7.1 or older that saved the wrong ownership information (the wrong UUID) in every block. So all machines that were placed down before 1.8.0 will have to be replaced (picked up and placed again) if you want to use this tracking feature. You only have to do this for the dimension builders if you only care about dimension tracking.
Enforcing Dimension Tracking
By default RFTools will still allow people to create dimensions in dimension builders that have no proper owner (because they were placed down in an older version of RFTools or at the time ownership was not enabled). If you want to enforce dimension tracking then it is recommended that you don't allow dimensions to be created in dimension builders that are not owned by anyone. This can be done with the following config option:
Managing Dimension Ownership
The /rftdim list command will give a list of all dimensions and their owner (if one is set). That way you can easily see what dimensions were created by whom (remember that this depends on who owned the dimension builder where the dimension was created).
With the /rftdim setowner command you can change who owns a dimension. This can be useful if you just enabled dimension tracking on an existing server and want to attach every dimension to the right owner. Note that the new owner has to be online for this feature to work:
/rftdim setowner <id> <playername>
A server admin can delete any RFTools dimension with the /rftdim safedel command. Starting with RFTools 4.12 this will also delete the dimension folders associated with that dimension. The ID is given back to RFTools so that future dimensions can reuse it.
You can also allow players to delete their own dimensions. This only works if the ownership system is enabled and the player can only delete dimensions they own. Unowned dimensions (even if they were originally created by that player) cannot be deleted by that player unless the admin manually sets the owner to them. By default players cannot delete dimensions (not even their own) but you can enable this feature in the config:
Note that the /rftdim safedel command will check that there are no other players active in the dimension and you also must make sure all chunkloaders are removed. If RFTools finds any active player or chunkloader the command will abort.
Starting with 4.13 the Dimension Editor can also destroy dimensions. This feature is disabled by default because it can be dangerous. Enable it by setting:
This can only be done by a dimension editor that has the same owner as the dimension. To do this you put in a block of TNT and send it over to a realized dimension tab. This method has the advantage that the dimension tab immediatelly becomes an unrealized tab and can be reused (extract dimensions or put it back in the dimension builder for another dimension with same features but other random possibilities).
Note that if you have a dimension editor in your base (owned by you) and another player manages to enter your base, find a dimension tab of one of your dimensions then he can insert that tab into your editor and destroy it! That's why this feature is disabled by default and when you enable it make sure your players know and don't have dimension editors around that can be abused for this.
Dimension Building Limits
When the dimension tracking system is active you can also limit how many dimensions a player can make. This is a hard limit (in constrast with the owner dimlet system where every player can make as many dimensions as he/she wants given enough owner dimlets). By default there is no limit but you can enable a limit in the config like this:
Here we set the number of dimensions per player to 2. If you also allow the players to delete their own dimensions then you can ensure that players can still experiment but never have more then a given number of dimensions at the same time.