Configuring the mod
Plethora provides a series of configuration options to allow mod pack developers or server owners to restrict and
balance the use of specific features of the pack. Most options are documented within the plethora-core.cfg
file,
though I will go into more detail here.
Blacklisting mod integration
If you wish to disable integration with a specific mod then you should add its ID to the blacklist.blacklistMods
list. This will disable all converters, meta providers, transfer locations and methods. For more fine grained control,
see Blacklisting providers.
It is important to note that this will not prevent interacting with that mod, just all mod-specific providers. For instance, disabling Forestry would still allow you to inspect the inventory of an Apiary, but not view the genome of the bees inside.
If you wish to disable wrapping a mod’s peripherals, see the next section.
Blacklisting peripherals
You can disable the wrapping of particular tile entities through the blacklist.blacklistTileEntities
section. You can
specify a fully qualified class name (such as net.minecraft.tileentity.TileEntityChest
to prevent wrapping chests) or
an entire package (such as net.minecraft.
to prevent wrapping vanilla tile entities). Note that the trailing .
is
required to disambiguate between package and class blacklists.
Blacklisting providers
It is possible to blacklist any “provider” registered with Plethora including transfer locations, meta providers and methods. Like peripherals, blacklists can be in several forms:
- Package prefixes such as
org.squiddev.plethora.integration.vanilla.
. This will blacklist every entry in that package and child packages. Take note of the trailing.
. - Class names such as
org.squiddev.plethora.integration.vanilla.method.MethodsInventory
. This will blacklist the class, or all methods inside that class. - Method names such as
org.squiddev.plethora.integration.vanilla.method.MethodsInventory#getItem
. This will blacklist one method.
You can get the name of methods by reading the basecosts
section, or browsing the GitHub repository. You can also
enable the testing.debug
option and copy the relevant names from the console output.
Blacklisting modules
The blacklist.blacklistModules
configuration option allows you to disable specific modules. You will still be able to
add a blacklisted module into a manipulator or neural interface, but it will not provide any methods or metadata, nor
will it show up in .listModules()
or .hasModule()
. Note, this is only applied once the peripheral is reloaded (such
as block updates).
Some modules will also cease to function in item-form when disabled via this option, namely lasers and kinetic augments.
Cost system
These options control various aspects of the default cost handler. You may wish to read about the cost system first. The options here are relatively self-explanatory:
initial
controls the initial value the cost handler starts at. You can generally leave this at the same level as the limit, though you will want to make sure it does not exceed it.limit
controls the maximum energy the handler can hold. Making this higher will mean more methods can be called in a short space of time.regen
controls the rate at which energy regenerates. The lower this value, the more time the program will have to wait between calling methods.allowNegative
allows the handler to fall in to negative energies, falling back to a more traditional rate limiting system. This is explained in more detail in the cost system documentation.awaitRegen
means mthods will wait for the system to get sufficient energy instead of throwing an error.
Base method costs
It is possible to set the cost that will be consumed every time a method is called. This can be used to restrict the rate at which powerful or computationally expensive functions are called. For more information about the cost system, see here.
This section contains an option for every method which is registered with Plethora, along with a description of what that method does. Whilst each method has a default cost of 0, you can configure it to be whatever you feel is suitable.
Reloading the config file
It is possible to reload the plethora-core.cfg
config file by executing /plethora reload
in the server console. Do
note, all blacklist options require a server restart and so will have no effect on the available methods, peripherals,
etc…