Setting up

First day on a new server

A checklist in the order it actually needs doing. Everything here is in game except where a file is named.

1. Set the spawn#

/setspawn

New players land here the first time they join. If you want one spawn per world, set spawn.per-world: true in modules/spawn.yml and run /setspawn in each.

To send players back to spawn every time they die, set spawn.teleport-on-respawn: true. A bed or a respawn anchor always wins over it, since that is the player's own choice.

2. Decide who can do what#

Nothing is granted by default except the handful of commands that are harmless. Everything else is op-only until you give it out, and running a server on op is not a plan.

Install a permissions plugin — LuckPerms is the usual one — and start from this:

lp creategroup member
lp creategroup vip
lp creategroup staff

lp group default parent add member

lp group member permission set chorus.home.use
lp group member permission set chorus.home.set
lp group member permission set chorus.home.delete
lp group member permission set chorus.home.list
lp group member permission set chorus.home.limit.3
lp group member permission set chorus.warp.use
lp group member permission set chorus.warp.list
lp group member permission set chorus.spawn.use
lp group member permission set chorus.tpa.use
lp group member permission set chorus.tpa.accept
lp group member permission set chorus.tpa.deny
lp group member permission set chorus.back.use
lp group member permission set chorus.economy.pay
lp group member permission set chorus.economy.balance
lp group member permission set chorus.kits.use
lp group member permission set chorus.kits.list
lp group member permission set chorus.shops.chest.use
lp group member permission set chorus.shops.chest.create

lp group vip parent add member
lp group vip permission set chorus.home.limit.10
lp group vip permission set chorus.utility.fly
lp group vip permission set chorus.utility.craft
lp group vip permission set chorus.utility.enderchest

lp group staff parent add vip
lp group staff permission set chorus.staff.tp
lp group staff permission set chorus.staff.vanish
lp group staff permission set chorus.staff.gamemode
lp group staff permission set chorus.staff.freeze
lp group staff permission set chorus.utility.invsee
lp group staff permission set chorus.bypass.cooldown

The full list of 229 nodes is in Permissions, grouped by module.

3. Make the warps players will use#

/setwarp shop
/setwarp pvp
/warpset shop icon EMERALD
/warpset shop description The market
/warpset shop section Towns

Warps with a section are grouped in the /warps menu, which is what keeps twenty warps readable. A warp can also have its own price, cooldown and permission — see Warps and spawn.

4. Set up the economy#

Open config.yml:

economy:
  enabled: true
  provider: auto
  starting-balance: 100.0
  currency:
    symbol: "$"
    singular: coin
    plural: coins

provider: auto uses the built-in ledger unless another economy plugin has registered with Vault, in which case that one wins and everybody agrees on one set of balances.

Then look at modules/shops.yml and decide what the server pays for things. The list that ships is a starting point, not a recommendation: it has no idea what your server's economy looks like. Change it with /setworth <item> <price> in game, which writes back into the file.

5. Write the first kit#

The starter kit is handed out on first join. Edit it in a text editor, or in game:

/kitedit starter

That opens a screen where every setting is a button. See Kits.

6. Write the motd and the info pages#

plugins/ChorusCore/motd.txt is what players read as they join. info.txt holds the rules and anything else worth looking up, in chapters: /info rules, /info commands.

Both take colours the same way messages.yml does. See Utility, signs and powertools.

7. Turn the server's own language on, if you want it#

Spanish ships with the plugin:

language:
  default: es

/chorus reload, and the whole server speaks Spanish. See Languages.

8. Check what it all looks like#

/chorus status
/commands

/commands shows only what the player running it may actually use, so running it as a member account is the fastest way to see whether the permissions came out the way you meant.

Things worth deciding early#

Decision Where Why early
SQLite or MySQL config.yml, storage Changing later means moving the data by hand
How many homes a rank gets chorus.home.limit.<n> Taking homes away later is unpopular
Whether teleports have a warmup modules/*.yml, warmup-seconds It changes how PvP feels
Whether chest shops are on modules/shops.yml, chest.enabled Players build their economy around them
sell-multiplier modules/shops.yml It is the main tap on money entering the server