Migrating to >=V1.16.43

This is also the migration guide for 1.12.23, 1.13.38, 1.14.36, 1.15.37

This release focuses on adding full support for a multi server setup. Typically this includes having a bungee network setup and a hub server redirecting players to the different MC servers.

This was already possible by connecting every server instance running Staff++ to the same MySQL database. But this was never really supported and having this setup might have caused some bugs with certain features.

Step 1: shutdown

Make sure every staff member has exited staff mode. Shut down the server! Replace the old Staff++ jar with the new one. Start the server up so that the configuration file can be generated. After successful start up shut the server down again so we can start configuration.

Step 2: Server name

server-name

Search for the property: server-name inside the configuration file. The server name should be unique for this server. If you have a multi-server setup every server running Staff++ must configure this with a different name. If you are running a minecraft server network make sure to give this property the same name as the server name used by the network.

I recommend keeping the server-name property alphanumeric. Underscore, dashes and spaces can be used.

Step 3: Staff mode

This release has recoded part of the staff mode system. This has little to no impact on the functionality. However we now do support persisting staff-mode when exiting and reentering the server.

staff-mode:
  # Whether or not staff mode will be enabled for staff when they login.
  enable-on-login: false

  # Whether or not staff mode will be disabled for staff when they logout. If false the staff mode will be reenabled on login.
  disable-on-logout: false

If you want to keep the previous behavior where Staff++ would automatically exit staff mode when you exit the server, change the property disable-on-logout to true.

If you want to enable the below mentioned server synchronization for staff-mode. Both these properties must be false.

Multi server setup

If you are only using SQLITE database setup you are done here. You won't be able to use any of the below features. Should you have a multi-server setup and want to use any of the synchronization features, you will need to use an MySQL database.

Step 4: Server synchronization

server-sync-module

Look for the following section in the configuration file.

server-sync-module:
    vanish-sync: false
    staffmode-sync: false
    ban-sync: false
    report-sync: false
    warning-sync: false
    mute-sync: false
    kick-sync: false

For more information on these properties check the server-synchronization documentation page. However if you were already using a multi-server setup with a shared MySQL database, you will probably want to set all these properties to true. This will give you the same behavior as before.

All warnings/bans/kicks/mutes/reports created before migrating to this version will always be visible on all servers, disregarding of the above properties. This is due to the fact there is no way the system can know on what server they got generated. Everything generated after switching to this release will work as intended.

Last updated