Website/docs/customization/config.md

378 lines
10 KiB
Markdown
Raw Normal View History

2022-02-01 05:49:02 +00:00
---
id: config
title: Configuration
---
# Introduction
This page will show you how to modify the configuration file. The configuration file is located at: ```/plugins/Plex/config.yml```.
2022-02-04 22:26:27 +00:00
## Default configuration
2022-02-02 02:15:26 +00:00
Below is the default `config.yml` file when Plex is loaded for the first time.
```yaml title=/plugins/Plex/config.yml
# Plex Configuration File
2022-02-28 04:04:20 +00:00
# For documentation, please visit: https://plex.us.org
2022-02-02 02:15:26 +00:00
server:
name: "Plexus"
motd: "%servername% - Minecraft %mcversion%"
colorize_motd: true
2022-02-22 07:43:56 +00:00
sample:
- "&cForums: https://forum.plex.us.org"
titles:
2022-02-28 04:04:20 +00:00
masterbuilders: [ ]
2022-02-22 07:43:56 +00:00
owners:
- Telesphoreo
2022-02-02 02:15:26 +00:00
2022-02-07 06:13:08 +00:00
# Ban message is customized in the messages.yml file. The URL to appeal at is below.
2022-02-02 02:15:26 +00:00
banning:
2022-02-22 07:43:56 +00:00
ban_url: "https://forum.plex.us.org"
2022-02-02 02:15:26 +00:00
2022-02-22 07:43:56 +00:00
chat:
2022-03-21 22:12:12 +00:00
# Should the server use Plex's chat system? It is recommended to keep this on if you are using ranks.
# If you are using permissions, you should turn this off and use Vault to handle prefixes with a different chat plugin
enabled: true
# The maximum amount of characters a player can have for their tag
2022-04-09 05:16:24 +00:00
# This does not include color tags such as <red> or <rainbow>
max-tag-length: 64
2022-02-28 04:04:20 +00:00
# Color code for name color
name-color: 'f'
2022-02-02 02:15:26 +00:00
2022-04-09 05:16:24 +00:00
# Should Plex use a "true op" system with ranks or only permission nodes
# Options are "permissions" or "ranks"
system: ranks
2022-02-02 02:15:26 +00:00
data:
central:
storage: sqlite # Use mariadb, mongodb, or sqlite here
user: ""
password: ""
hostname: 127.0.0.1
port: 27017
db: "plex"
side: # This is Redis, leave password blank if auth is false
2022-02-04 08:23:29 +00:00
enabled: false
2022-02-02 02:15:26 +00:00
auth: true
hostname: 127.0.0.1
port: 6379
password: ""
2022-04-09 05:16:24 +00:00
# Mob limiter / Entity wiping config
# All entities listed here will NOT be wiped upon wiping entities
# By default this includes all mobs, as the mobpurge command can be used to purge mobs.
entitywipe_list:
- "ITEM_FRAME"
- "AXOLOTL"
- "BAT"
- "BEE"
- "BLAZE"
- "CAT"
- "CAVE_SPIDER"
- "CHICKEN"
- "COD"
- "COW"
- "CREEPER"
- "DOLPHIN"
- "DONKEY"
- "DROWNED"
- "ELDER_GUARDIAN"
- "ENDER_DRAGON"
- "ENDERMAN"
- "ENDERMITE"
- "EVOKER"
- "FOX"
- "GHAST"
- "GIANT"
- "GLOW_SQUID"
- "GOAT"
- "GUARDIAN"
- "HOGLIN"
- "HORSE"
- "HUSK"
- "ILLUSIONER"
- "IRON_GOLEM"
- "LLAMA"
- "MAGMA_CUBE"
- "MULE"
- "MUSHROOM_COW"
- "OCELOT"
- "PANDA"
- "PARROT"
- "PHANTOM"
- "PIG"
- "PIGLIN"
- "PIGLIN_BRUTE"
- "PILLAGER"
- "POLAR_BEAR"
- "RABBIT"
- "RAVAGER"
- "SALMON"
- "SHEEP"
- "SHULKER"
- "SILVERFISH"
- "SKELETON"
- "SKELETON_HORSE"
- "SLIME"
- "SNOWMAN"
- "SPIDER"
- "SQUID"
- "STRAY"
- "STRIDER"
- "TRADER_LLAMA"
- "TROPICAL_FISH"
- "TURTLE"
- "VEX"
- "VILLAGER"
- "VINDICATOR"
- "WANDERING_TRADER"
- "WITCH"
- "WITHER"
- "WITHER_SKELETON"
- "WOLF"
- "ZOGLIN"
- "ZOMBIE"
- "ZOMBIE_HORSE"
- "ZOMBIE_VILLAGER"
- "ZOMBIFIED_PIGLIN"
- "PUFFERFISH"
# Automatically wipe the specified entities
autowipe:
# Should we automatically wipe entities?
enabled: true
# How often, in seconds, to automatically wipe entities. Default is 5 minutes.
interval: 300
# Entities to automatically wipe
entities:
- "DROPPED_ITEM"
# Should we allow drops from players?
allowdrops: true
# What blocks should be blocked?
blockedBlocks:
- "SPAWNER"
- "STRUCTURE_BLOCK"
- "JIGSAW"
# What entities should be blocked?
blockedEntities:
- "WITHER"
- "ENDER_DRAGON"
- "MINECART_TNT"
2022-02-28 04:04:20 +00:00
# See https://plex.us.org/docs/customization/config#worlds for documentation
2022-04-09 05:16:24 +00:00
# These gamerules apply to all worlds on the server
global_gamerules:
- "doWeatherCycle;true"
- "doDaylightCycle;true"
- "doMobSpawning;false"
- "keepInventory;true"
- "doFireTick;false"
- "doMobLoot;false"
- "mobGriefing;false"
- "doTileDrops;false"
- "commandBlockOutput;false"
- "naturalRegeneration;true"
- "announceAdvancements;false"
- "showDeathMessages;false"
- "sendCommandFeedback;false"
2022-02-02 02:15:26 +00:00
worlds:
flatlands:
name: "Flatlands"
2022-02-22 07:43:56 +00:00
permission: "plex.world.flatlands"
noEdit: "&cYou can't edit this world!"
2022-02-28 04:04:20 +00:00
gameRules:
2022-04-09 05:16:24 +00:00
# The gamerules here override the global gamerules
2022-02-28 04:04:20 +00:00
- "doWeatherCycle;false"
- "doDaylightCycle;false"
2022-02-02 02:15:26 +00:00
parameters:
grass_block: 1
dirt: 32
stone: 16
bedrock: 1
adminworld:
name: "Admin World"
2022-02-22 07:43:56 +00:00
permission: "plex.world.adminworld"
requiredLevels:
- "Rank.ADMIN" # Minimum rank requirement
noEdit: "&cYou can't edit this world!"
2022-02-28 04:04:20 +00:00
gameRules:
- "doWeatherCycle;false"
- "doDaylightCycle;false"
2022-02-02 02:15:26 +00:00
parameters:
grass_block: 1
dirt: 32
stone: 16
bedrock: 1
masterbuilderworld:
name: "MasterBuilder World"
2022-02-22 07:43:56 +00:00
permission: "plex.world.masterbuilderworld"
requiredLevels:
- "Title.MASTER_BUILDER" # Title has no "minimum", so this will have to be their title
noEdit: "&cYou can't edit this world!"
2022-02-28 04:04:20 +00:00
gameRules:
- "doWeatherCycle;false"
- "doDaylightCycle;false"
2022-02-02 02:15:26 +00:00
parameters:
grass_block: 1
dirt: 32
stone: 16
bedrock: 1
2022-04-09 05:16:24 +00:00
# What branch should Plex fetch updates from?
update_branch: master
2022-02-02 02:15:26 +00:00
# Additional logging for debugging
debug: false
```
2022-02-04 22:26:27 +00:00
## Server
2022-02-02 02:15:26 +00:00
### server.name
The name of your server goes here and is used throughout Plex.
### server.motd
The text here will appear on the server list.
### server.colorize_motd
This determines if the message of the day should randomly be colorized. You can disable this option and manually colorize your MOTD.
2022-02-22 07:43:56 +00:00
### server.sample
This lets you specify a custom message under the player count in the server list.
## Titles
### titles.masterbuilders
A list of players who will show up as a masterbuilder.
### titles.owners
A list of players who will show up as an owner.
2022-02-02 02:15:26 +00:00
2022-02-04 22:26:27 +00:00
## Banning
2022-04-09 05:19:49 +00:00
### banning.ban_url
2022-04-09 05:16:24 +00:00
The URL to be used when a player sees the ban message. The full ban message can be changed in `messages.yml`.
2022-02-02 02:15:26 +00:00
2022-02-22 07:43:56 +00:00
## Chat
2022-03-21 22:12:12 +00:00
### chat.enabled
2022-04-09 05:16:24 +00:00
**Default:** `true`
2022-03-21 22:12:12 +00:00
Determines if the chat system should be enabled. It's useful to turn this off if you're using permissions and want to use prefixes from another plugin instead.
2022-02-22 07:43:56 +00:00
### chat.max_tag_length
2022-04-09 05:16:24 +00:00
**Default:** `64`
2022-02-22 07:43:56 +00:00
The maximum length a tag may be in game.
### chat.name-color
2022-04-09 05:16:24 +00:00
**Default:** `f`
2022-02-22 07:43:56 +00:00
The default color a tag should be if a player doesn't specify any colors.
2022-04-09 05:16:24 +00:00
## System
### system
2022-02-02 02:15:26 +00:00
**Options:** `ranks` or `permissions`
This determines how Plex's command system works. If `ranks` is selected, Plex will use a ranking system and give all players operator status. If `permissions` is selected, no players are given operator. Instead, every command will have a permission attached to it which can be assigned in any permission system.
2022-02-04 22:26:27 +00:00
## Data
2022-02-02 02:15:26 +00:00
### data.central.storage
2022-04-09 05:16:24 +00:00
**Options:** `sqlite`, `mariadb`, `mongodb`
2022-02-02 02:15:26 +00:00
Select which database software you would like to use. `sqlite` is the default. Note that if you change which data storage you use, no data will be transferred.
### data.central.user
This is the username for whichever database software you use. Note that `sqlite` does not require a username.
### data.central.password
This is the password for whichever database software you use. Note that `sqlite` does not require a password.
### data.central.hostname
This is the hostname for whichever database software you use. Note that `sqlite` does not require a hostname.
### data.central.port
This is the port for whichever database software you use. Note that `sqlite` does not require a port.
### data.central.db
This is the name for whichever database software you use. Note that `sqlite` does not require a name.
2022-02-04 08:23:29 +00:00
### data.side.enabled
2022-04-09 05:16:24 +00:00
**Options:** `true` / `false`
2022-02-04 08:23:29 +00:00
This will enable Plex's Redis functionality.
2022-02-04 08:23:29 +00:00
2022-02-02 02:15:26 +00:00
### data.side.auth
2022-04-09 05:16:24 +00:00
**Options:** `true` / `false`
2022-02-02 02:15:26 +00:00
This is whether authentication mode for Redis is turned on or not.
2022-02-02 02:15:26 +00:00
:::info
It is highly recommended to have Redis authentication turned on.
:::
### data.side.hostnane
This is the hostname for Redis. This is required for Redis to work.
### data.side.port
This is the port that Redis is listening on. This is requird for Redis to work.
### data.side.password
This is the password for your Redis instance. Note that this can be left blank if authentication is turned off.
2022-02-02 02:15:26 +00:00
2022-04-09 05:16:24 +00:00
## Entity wiping
### entitywipe_list
All items in the list will not be wiped. By default, this includes all mobs as these can be purged with the `mobpurge` command.
## Autowiping
### autowipe.enabled
**Options:** `true` / `false`
Should autowiping be enabled?
### autowipe.interval
**Default:** 300
How often, in seconds, to automatically wipe entities. Default is 5 minutes.
### autowipe.entities
A list of entities to automatically wipe.
### allowdrops
**Options:** `true` / `false`
Should drops be allowed at all?
## Blocking
### blockedBlocks
A list of blocks that should be blocked.
### blockedEntities
A list of entities that should be blocked.
## Global gamerules
### global_gamerules
These gamerules apply to all worlds on the server. Gamerules in the generated worlds will override the global gamerules.
2022-02-02 02:15:26 +00:00
2022-02-04 22:26:27 +00:00
## Worlds
2022-02-02 02:15:26 +00:00
An infinite amount of worlds can be generated from the configuration file. A few are automatically generated by default. The format for generating new worlds is as follows:
```yaml title=/plugins/Plex/config.yml
<world_name>:
name: 'Human readable name'
2022-02-22 07:43:56 +00:00
permission: 'plex.world.example'
requiredLevels:
- "Rank.ADMIN" # The minimum rank required to edit the world
2022-02-22 08:04:52 +00:00
noEdit: "&cThis message will display if a player doesn't have permission to edit a world."
2022-02-28 04:04:20 +00:00
gameRules:
- "doWeatherCycle;false"
- "doDaylightCycle;false"
2022-02-02 02:15:26 +00:00
parameters:
grass_block: 1
dirt: 32
stone: 16
bedrock: 1
```
Note that in the `parameters` section, this is how the world should actually be generated. The order is from top to bottom. In the example above, a world will generate with one grass layer, 32 layers of dirt, 16 layers of stone, and one layer of bedrock.
For a list of Ranks and Titles, you can refer to the Javadocs: [Ranks](https://docs.plex.us.org/javadocs/dev/plex/rank/enums/Rank.html), [Title](https://docs.plex.us.org/javadocs/dev/plex/rank/enums/Title.html).
2022-02-28 04:04:20 +00:00
The gamerule section is what gamerules are set for the world by default. The syntax is the official gamerule name, a semicolon, and either `true` or `false`.
2022-04-09 05:16:24 +00:00
## Updates
update_branch
The branch to use for update checking.
2022-02-04 22:26:27 +00:00
## Debugging
2022-02-02 02:15:26 +00:00
**Options:** `true` / `false`
The `debug` option is standalone and enables additional logging. This may be useful for diagnosing issues as more information will be displayed in the console. It is recommended to keep this option turned off.