Skip to content

Installation

Florianpal1 edited this page Aug 6, 2026 · 1 revision

Installation

FMessage ships as two jars that work together:

Jar Where it goes Role
FMessageVelocity-2.4.5.jar or FMessageBungee-2.4.5.jar the proxy commands, database, message routing
FMessageBukkit-2.4.5.jar every backend server captures chat, applies anti-flood/anti-caps and PlaceholderAPI, displays the relayed messages

⚠️ The Bukkit jar is not a standalone plugin. It cancels every chat event and forwards it to the proxy. If no FMessage plugin is running on the proxy, chat simply disappears. Install both sides, or neither.

Pick one proxy jar — Velocity or BungeeCord, never both.


1. Requirements

  • A BungeeCord (1.20+) or Velocity 3.x proxy
  • One or more Bukkit / Spigot / Paper backend servers (API 1.16 or newer)
  • Java 21
  • A MariaDB or MySQL database reachable from the proxy
  • PlaceholderAPI installed on every backend server — the Bukkit module calls it directly and will error without it

2. Install the proxy plugin

  1. Download FMessageVelocity-2.4.5.jar or FMessageBungee-2.4.5.jar from the releases page.
  2. Drop it into the proxy's plugins/ folder.
  3. Start the proxy once so the configuration files are generated:
    • Velocity → plugins/fmessage/
    • BungeeCord → plugins/FMessageBungee/
  4. Stop the proxy and edit database.yml with your credentials — see Proxy Configuration.
  5. Start the proxy again. FMessage creates its four tables automatically on first connection (see Database).

You should see FMessage enabled in the proxy console.

3. Install the backend plugin

On each backend server:

  1. Make sure PlaceholderAPI is installed.
  2. Drop FMessageBukkit-2.4.5.jar into plugins/.
  3. Restart the server — the configuration is generated in plugins/FMessageBukkit/.
  4. Edit config.yml to set your chat format — see Bukkit Configuration.

No database configuration is needed on the backend servers: they never talk to the database, only to the proxy.

4. Verify the setup

  • Join the network and type a message in chat → it should appear on every backend server.
  • Run /msg <player> hello with a player connected to a different backend server → the message should go through.
  • Run /chatspy with a permission-holding account → you should see private messages relayed by the proxy.

If chat disappears or nothing is relayed, go to Troubleshooting.


Updating

  1. Stop the proxy and the backend servers.
  2. Replace the jars — keep the same version on both sides.
  3. Start again. Configuration files are versioned and auto-updated on the proxy (BoostedYAML version key), so new options are merged into your existing files without losing your values.

Uninstalling

Remove the jars from the proxy and from every backend server. The database tables (fm_groups, fm_groupMembers, fm_ignores, fm_nickname) are left untouched — drop them manually if you want a clean database.

Clone this wiki locally