-
Notifications
You must be signed in to change notification settings - Fork 6
01 ‐ Configuration
This page will explain every setting in every config and how said config is used.
This wiki will note down paths within the config as path.segment.
In the config this path would look like this:
{
"path": {
"segment": ""
}
}What is a namespaced key?
A namespaced key is a concept of minecraft. It's simply an identifying value used to identify structures, loot tables, blocks and more. A namespaced key consists, as the name suggests, of two parts, a namespace and a key.
The format of a namespaced key is <namespace>:<key>.
Examples for namespaced keys:
-
minecraft:stone- The id of the stone block -
minecraft:stronghold- The id of the stronghold -
minecraft:chests/buried_treasure- The id of the loot table used for the burried treasure
Whenever this config talks of namespaced keys it usually defines them in following list format instead:
{
"<namespace>": [
"<key1>",
"<key2>"
]
}So the previously shown examples would look like this in the config:
{
"minecraft": [
"stone",
"stronghold",
"chests/buried_treasure"
]
}In the case that you are allows to set values for a namespaced key the format is a bit different as lists can not define values. Therefore JLI uses sections instead in these cases:
{
"minecraft": {
"stone": "",
"stronghold": "",
"chests/buried_treasure": ""
}
}In some sections of the JLI configs you might find example_namespace/example_<object> used within namespaced keys. If you see this that means that JLI will expect a namespaced key in this format.
So for a loot table this would look like this: minecraft/chests/buried_treasure.
In this section you will find all main configs.
These can be found in plugins/JustLootIt.
The plugin.json contains just "debug" settings.
| Path | Description | Default value | Valid values |
|---|---|---|---|
debug.conversion |
Setting this value to true will make it so JustLootIt doesn't delete the conversion.properties file after a conversion process is done. This means that next time the server is started, it will start the conversion process again. This will continue until the file is deleted. |
false |
truefalse
|
logger.state |
The logger state determines how much debug information JustLootIt should print o the console. NORMAL will not print any, while DEBUG will print the most important. EVERYTHING is used for precise tracking of actions but isn't really used in JustLootIt. |
NORMAL |
NORMALDEBUGEVERYTHING
|
The config.json contains general settings.
Path explanations
| Path | Description |
|---|---|
cache.player |
This section defines options for the per-player inventory cache. This cache is used to store opened container inventories. Whenever a player opens a container inventory which they haven't opened before it will be put inside that cache. If the cache is full the inventory at the bottom of said cache is being deleted, meaning that container can not be accessed again until it refreshes. If it never refreshes it will never be accessible to that player again. The cache has a fixed size for each player and is saved within the main world of the server. However if a player opens a container they haven't opened before it will be pushed to the top of the cache. Meaning the inventory will be the last to be deleted. Lastly the cache also serves to speed up repeated opening of the same container by keeping inventories in RAM for some time before freeing that memory and saving the inventory to disk. |
cache.level |
This section defines options for the per-world container cache. This cache serves to speed up repeated opening of the same container by keeping it in RAM for some time before freeing that memory and saving pending changes to disk. |
container |
This section defines options for container behaviour. |
loot |
This section defines options for loot generation behaviour. |
worlds |
This section defines options related to the world settings. |
Values
| Path | Description | Default value | Valid values |
|---|---|---|---|
cache.player.size |
Sets the player inventory cache size. | 20 |
Min: 1Max: 240( 48 in <= 2.13.1)
|
cache.player.timeout-inventory-days |
The amount of days a inventory should be kept in the inventory cache without being accessed. | 7 |
Min: 1Max: 2147483647
|
cache.player.keep-in-memory |
The amount of seconds a cached inventory should be kept in RAM before it is being freed. | 120 |
Min: 15Max: 3600
|
cache.level.keep-file-open |
The amount of seconds a file should be kept open without access. (This is currently not being used for some reason and set to 180 seconds, I think it was used before but it isn't at the time of writing this config) |
9000 |
Min: -2147483647Max: 2147483647
|
cache.level.keep-in-memory |
The amount of seconds a container should be kept in RAM before it is being freed. | 600 |
Min: 15Max: 3600
|
container.delete-on-break |
If a container should be deleted from JLIs' storage once a block related to said container is broken. | true |
truefalse
|
container.can-items-be-stored |
If players are allowed to put items into JLI containers. (Disabling this means they can only take items out) | true |
truefalse
|
loot.unique |
Enabling this will use the players unique id in combination with the loot table seed to generate loot. Making it so every player gets different loot from the same container. (Enabling this means the loot will be different from the vanilla minecraft seed) | false |
truefalse
|
worlds.enable-whitelist |
Enabling this will make it so worlds which don't have the whitelisted value within their settings.json set to true will not be processed by the automatic conversion process. This is not related to the /jli convert command
|
This config contains all messages JustLootIt uses.
This section will just describe the syntax instead of which messages exist.
Color codes All normal minecraft color codes work including some custom ones
| Code | Description | Color (in Hex) |
|---|---|---|
&0 |
A color code for the color black. | #000000 |
&1 |
A color code for the color dark blue. | #0000AA |
&2 |
A color code for the color dark green. | #00AA00 |
&3 |
A color code for the color dark aqua. | #00AAAA |
&4 |
A color code for the color dark red. | #AA0000 |
&5 |
A color code for the color dark purple. | #AA00AA |
&6 |
A color code for the color gold. | #FFAA00 |
&7 |
A color code for the color gray. | #AAAAAA |
&8 |
A color code for the color dark gray. | #555555 |
&9 |
A color code for the color blue. | #5555FF |
&a |
A color code for the color green. | #55FF55 |
&b |
A color code for the color aqua. | #55FFFF |
&c |
A color code for the color red. | #FF5555 |
&d |
A color code for the color light purple. | #FF55FF |
&e |
A color code for the color yellow. | #FFFF55 |
&f |
A color code for the color white. | #FFFFFF |
&l |
A color code for making text bold. | |
&m |
A color code to strike through text. | |
&n |
A color code to underline text. | |
&o |
A color code to make text italic. | |
&r |
A color code to remove all previous formatting. |
In addition to minecrafts' normal color codes JustLootIt also supports hex color codes and gradients.
The syntax of which is the following:
| Syntax | Example | Description |
|---|---|---|
&HEX_CODE |
� |
A normal hex color code. |
&[HEX_CODE_1-HEX_CODE_2] |
&[#000000-#FFFFFF] |
A gradient hex color code. It interpolates between the first color up to the second color. |
&[HEX_CODE_1-HEX_CODE_2/COLOR_AMOUNT] |
&[#000000-#000000/5] |
A gradient hex color code with a defined amount of colors. It interpolates between the first color up to the second color and only uses a defined amount of colors. |
Lastly JustLootIt also has support for placeholders and message references.
| Syntax | Description |
|---|---|
$placeholder$place.holder;
|
This is a placeholder. It is replaced by JustLootIt with values. JustLootIt does not support Placeholder API or something similar at the moment. |
$#message_name$#message.name;
|
This is a message reference. It references a known message of JustLootIt. It is used a lot within the translation config to reference the plugins' name or prefix. |
This config allows to define so called Refresh groups.
Each refresh group is identified by the name of the section it is in, so the key of the section is the id of the refresh group.
| Path | Description | Default value | Valid values |
|---|---|---|---|
<id>.unit |
The time unit used for the time value. |
MILLISECONDS |
DAYSHOURSMINUTESSECONDSMILLISECONDSMICROSECONDSNANOSECONDS
|
<id>.time |
The amount of time a player has to wait until the loot of a container will refresh. (Refreshing starts at the time the container was opened initially or after the last refresh)0 means it will never refresh. |
0 |
Min: 0Max: 9223372036854775807
|
<id>.unique |
Enabling this will use the players unique id in combination with the loot table seed to generate loot. Making it so every player gets different loot from the same container. (Enabling this means the loot will be different from the vanilla minecraft seed)global will set this to whatever is set in the config.json. |
global |
globaltruefalse
|
<id>.incremental |
This will make it so the amount of times a container has been looted is being used in combination with the seed of the container to generate loot. Meaning each time a player opens the same container the loot generated will differ. This also works in combination with the unique loot option. |
true |
truefalse
|
In this section you will find configs which are per-world.
You can find them in plugins/JustLootIt/worlds/<world>.
This config provides various settings related to containers within a world.
Path explanations
| Path | Description |
|---|---|
blacklist |
This section allows to blacklist various things from the automatic conversion. Any setting in here does not affect the /jli convert conversion process.
|
refresh |
This section provides the ability to apply default refresh groups within this world without changing any containers. |
destruction |
This section defines options to set which kind of explosions are allowed to destroy JLI containers. |
Values
| Path | Description | Default value | Valid values |
|---|---|---|---|
whitelisted |
Whitelists this world. This setting is only relevant if worlds.enable-whitelist is enabled in the config.json. For more information read the description of said setting. |
false |
truefalse
|
blacklist.structures |
This namespaced key section allows you to blacklist structures from being processed in the automatic conversion process. | any namespaced key | |
blacklist.loottables |
This namespaced key section allows you to blacklist containers with the blacklisted loot tables from being converted in the automatic conversion process. | any namespaced key | |
blacklist.containers.vanilla |
This disables the creation of vanilla containers in the automatic conversion process. | false |
truefalse
|
blacklist.containers.static |
This disables the creation of static containers in the automatic conversion process. | false |
truefalse
|
blacklist.containers.frame |
This disables the creation of frame containers in the automatic conversion process. | false |
truefalse
|
blacklist.containers.compatibilities |
This list allows to disable compatibility containers of the listed compatibilities from being created in the automatic conversion process. | any plugin compatibility As of editing this wiki: betterstructurescustomstructuresiris
|
|
refresh.world_group |
Sets the default refresh group for this world. | any refresh group | |
refresh.container_groups |
This namespaced key section allows to set default refresh groups for container types or loot tables. The justlootit:container/static key represents static containers.The justlootit:container/compatibility/example_namespace/example_loot_table key represents a compatibility container.The justlootit:container/frame/example_namespace/example_item_id key represents a frame container. |
any refresh group | |
destruction.unknown_allowed |
Enables explosions unidentifiable to JLI to destroy JLI containers. | false |
truefalse
|
destruction.bed_allowed |
Enables bed explosions to destroy JLI containers. | false |
truefalse
|
destruction.respawn_anchor_allowed |
Enables respawn anchor explosions to destroy JLI containers. | false |
truefalse
|
destruction.creeper_allowed |
Enables creeper explosions to destroy JLI containers. | false |
truefalse
|
destruction.end_crystal_allowed |
Enables end crystal explosions to destroy JLI containers. | false |
truefalse
|
destruction.tnt_allowed |
Enables tnt explosions to destroy JLI containers. | false |
truefalse
|
destruction.player_unrecognised_explosion_allowed |
Enables explosions related to a player but unidentifiable to JLI to destroy JLI containers. | false |
truefalse
|
You think something is missing or could be improved? Tell me here!