NexusShout icon

NexusShout 1.2.0

NexusShout is a powerful and customizable global chat plugin for Velocity proxy servers.

NexusShout is a powerful and customizable global chat plugin for Velocity proxy servers, allowing players to communicate across all connected Minecraft servers.

NexusShout-Feat-1.png

Features

  • Configurable global chat commands
  • Chat prefix support (e.g., !hello there)
  • Permission-based cooldowns
  • Custom placeholders with LuckPerms integration
  • Multiple text formatting options (Legacy, MiniMessage, Smart)
  • Server filtering
  • Extensive configuration options


Language Support
The plugin supports 18 languages out of the box:

- Arabic (ar_SA)

- Chinese Simplified (zh_CN)

- Dutch (nl_NL)

- English (en_US) (Default)

- French (fr_FR)

- German (de_DE)

- Hindi (hi_IN)

- Indonesian (id_ID)

- Italian (it_IT)

- Japanese (ja_JP)

- Korean (ko_KR)

- Polish (pl_PL)

- Brazilian Portuguese (pt_BR)

- Russian (ru_RU)

- Spanish (es_ES)

- Swedish (sv_SE)

- Turkish (tr_TR)

- Vietnamese (vi_VN)

 

Requirements

  • Velocity 3.2.0 or later
  • Java 17 or later
  • LuckPerms (permission)


Installation
1. Download the latest release from the releases page
2. Place the JAR file in your Velocity server's plugins directory
3. Start/restart your Velocity server
4. Configure the plugin in plugins/nexusshout/config.yml

Commands
By default, the following commands are available:

  • /gchat <message> - Send a global message
  • /shout <message> - Alias for /gchat
  • /nshoutreload - Reload the plugin configuration

Commands can be customized in the configuration file (see Configuration section).

Permissions

  • nshout.use - Permission to use global chat (if enabled)
  • nshout.formatting - Permission to use color/formatting codes in messages
  • nshout.reload - Permission to reload the plugin configuration

Example Permissions

  • nshout.name.admin - Example permission for custom name formatting
  • nshout.name.vip - Example permission for custom name formatting
  • nshout.cooldown.admin - Example permission for cooldown bypass
  • nshout.cooldown.vip - Example permission for reduced cooldown
  • nshout.rank.admin - Example permission for custom rank display
  • nshout.rank.mvp - Example permission for MVP rank display
  • nshout.rank.vip - Example permission for VIP rank display

 

Configuration

# NexusShout Configuration

# Command Settings
commands:
  # List of commands that can be used for global chat
  aliases:
    - "gchat"
    - "shout"
  # Whether to register all aliases as separate commands
  # If false, only the first alias will be registered as the main command
  # and others will be handled as command aliases
  register-all-as-commands: true

# Default locale for messages
# This will be used if a player's client language is not available
default-locale: "en_US"

# Whether to detect and use player's client language
# If disabled, default-locale will be used for all players
detect-player-language: true

# How the message should be displayed
# Default placeholders:
# {server} - The server name player is in, as configured in Velocity config
# {name} - The player's name
# {message} - The message
format: "&bGlobal &8| &a{server} &8|{custom_rank} {custom_name}&f: {message}"

# Formatting (color and style)
# Select a formatter for your text, default is minimessage.
# Options:
# - legacy: Traditional Minecraft color codes (e.g., &a, &b)
# - minimessage: Modern formatting system (e.g., <green>, <bold>)
# - smart: Converts legacy format (&a, &b) to MiniMessage format, then processes everything as MiniMessage.
#         Use this if you want to mix both formats but prefer MiniMessage as the primary format.
formatter: "smart"

# Custom placeholders
# This will require LuckPerms
# You can define your own placeholders here with permission-based values
# The '_default_' value will be used if no permission matches
placeholders:
  # An example of a custom placeholder
  custom_name:
    # These can be any permissions, doesn't have to be 'nshout.[something]'
    'nshout.name.admin': "&b&l{name}" # player with permission 'nshout.name.admin' will use this
    'nshout.name.vip': "&6{name}" # player with permission 'nshout.name.vip' will use this
    '_default_': "&f{name}" # default fallback
  # Another example
  custom_rank:
    'nshout.rank.admin': " <gradient:#f12711:#f5af19>Admin</gradient>" # This gradient use minimessage
    'nshout.rank.mvp': " &6&lMVP&r"
    'nshout.rank.vip': " &eVIP&r"
    '_default_': ""
  # You can create you own custom placeholder here

# Message cooldown
# In seconds, 0 then instant
# You can define different cooldowns based on permissions
cooldown:
  # These can be any permissions, doesn't have to be 'nshout.[something]'
  'nshout.cooldown.admin': 0 # no cooldown
  'nshout.cooldown.vip': 7.5
  '_default_': 30

# Permission to shout
# This permission is required to use global chat
# If you want to disable permission, set it to ""
permission: "" # no permission required, or you can set it to "nshout.use" for example

# Permission to use color/style
# If empty then everyone can use color/style formatting in their message
# This permission is required to use formatting codes in messages
formatting-permission: "nshout.formatting"

# The list of servers that player can shout
# Leave to empty "[]" to enable all servers
# The same server name as configured in Velocity config
enabled-servers: []
# Example:
# - "Lobby-1"
# - "SkyBlock"

# Server aliases
# Map actual server names to display names
# Format: "ActualServerName:DisplayName", this supports color codes
server-aliases:
  - "Lobby-1:Hub"
  - "Lobby-2:Hub"
  - "Skyblock-prototype:&cSecret"

# Shout prefix
# If player's chat starts with this character, it will be sent as global chat
# Just set to empty ("") to disable
chat-prefix: "!"

# Debug mode
# Enable this to get detailed logging information
# This is useful for troubleshooting issues
debug: false

# Debug settings
# Additional debug options when debug mode is enabled
debug-settings:
  # Log placeholder resolutions
  log-placeholders: true
  # Log cooldown checks
  log-cooldowns: true
  # Log command executions
  log-commands: true
  # Log chat messages
  log-chat: true
  # Log configuration reloads
  log-reloads: true

 

Support
If you encounter any issues:
1. Check the configuration file for errors
2. Enable debug mode to get more information

chat

global

chat

global

shout

proxy

velocity