Skip to main content
hChat runs inside the backend servers, not on the proxy. Keep these points in mind when running a network.

What works automatically

  • Player#getUniqueId and %player_name% keep working behind Velocity and BungeeCord — Paper forwards the real UUID and name to the backend.
  • {world} and [coords] placeholders resolve on the backend the player is currently on.

What is per-server

Private messages, offline messages, ignore lists, and DND state are per backend server. A player connected to server A cannot /msg a player on server B. For cross-server chat, use a proxy-side solution or the planned DiscordSRV bridge.

Auto-broadcasts

The update checker, faststats.dev metrics, and the auto-broadcast scheduler run once per backend instance. Disable auto-broadcast on all but one server if you run a network and do not want duplicated announcements.

DiscordSRV

When DiscordSRV is installed at startup, hChat logs a confirmation and reserves the integration for the upcoming chat bridge. Forwarding of /msg and /broadcast to Discord is not implemented yet — see ROADMAP.md for the planned bridge.