Skip to content

Releases: HyperSystemsDev/Werchat

Werchat v1.11.2

26 Feb 05:49

Choose a tag to compare

Fixes\n- Fixed chat format parsing so PlaceholderAPI is applied to the full format string before Werchat token replacement.\n- Prevented per-literal PAPI parsing during token assembly, which could leave some placeholders unresolved for certain configs.\n\n## Build\n- Built against latest release channel server version via Maven resolution.\n\n## Artifacts\n- Werchat-1.11.2.jar

Werchat v1.11.1

21 Feb 20:24

Choose a tag to compare

Werchat v1.11.0

21 Feb 03:40

Choose a tag to compare

Werchat 1.11.0

UI

  • Added a unified /ch settings UI with Main, Channels, and moderator management views.
  • Added password popup flow for joining locked channels from the UI.
  • Added modal management lists for bans, mutes, and moderators.
  • Added channel owner and selected-channel online roster data to the UI.
  • Added dynamic command help panel in Main view.
  • /ch help now opens the UI help view (permission-filtered command list).
  • /ch list now opens the Channels view directly.

UI Scalability

  • Replaced overflowing moderator button strip with a dropdown selector + Open action.
  • Fixed moderator dropdown routing bug that could show Unknown moderator tab.
  • Adjusted help panel scrolling so long command lists no longer create large empty space.

Channels

  • Added channel descriptions (description, descriptionEnabled) and UI visibility support.
  • Added channel MOTD (motd, motdEnabled) and UI visibility support.
  • MOTD delivery is session-safe (once per login for eligible members).
  • Added auto-disambiguated default nicks when creating channels without explicit nick:
    • Uses first character, then suffixes for collisions (1, 1-2, 1-3).

Commands

  • Added /ch description <channel> <text|on|off|clear>.
  • Added /ch motd <channel> <text|on|off|clear>.
  • Added /ch reload support in the UI command help list (permission-aware).

PlaceholderAPI

  • Added channel keys for description and MOTD:
    • description
    • motd
    • has_description
    • has_motd
    • description_enabled
    • motd_enabled

Stability & Hardening

  • Removed UI test-ban seeding logic from moderation list rendering.
  • Improved save-thread safety for debounced channel/player persistence.
  • /ch reload now flushes pending debounced saves before disk reload.
  • /ch unmod now blocks removing channel owner moderator status.
  • Quick-chat symbol matching now prefers longest symbol first (deterministic tiebreak).
  • Added permission enforcement for /ignorelist (werchat.ignore, werchat.*, or *).

Werchat 1.10.1

19 Feb 21:56

Choose a tag to compare

Werchat 1.10.1

  • Bumped plugin version to 1.10.1 for a new release artifact.
  • Built against latest Hytale release server version resolved at build time.
  • No UI branch work included in this release.

Werchat 1.10.0

19 Feb 02:54

Choose a tag to compare

Quick Changelog

  • Added clickable URL support in channel chat and private messages.
  • Added clickableUrls.enabled config toggle (default: true).
  • Added braced PAPI channel selectors for underscore-safe channel names:
    • %werchat_channel_{<selector>}%
    • %werchat_channel_{<selector>}_<key>%
  • Kept backward compatibility for existing selector/key syntax:
    • %werchat_channel_<selector>_<key>%
    • %werchat_channel_<selector>__<key>%
  • Fixed PAPI reload edge case for persistent Werchat expansion by making active alias config reads reload-safe.
  • Improved build pipeline to resolve Hytale ServerVersion from Maven metadata at build time.

Werchat 1.1.9

18 Feb 03:10

Choose a tag to compare

Werchat 1.1.9
Compatibility
Added explicit Hytale ServerVersion targeting in manifest.json: 2026.02.17-255364b8e.
Added build-time validation so ServerVersion must be an exact build string.

Added
/ch reload command for reloading Werchat config and channel data safely.
PlaceholderAPI support is new in 1.1.9:
chat-format placeholder parsing (soft dependency),
built-in werchat expansion with global/player/channel placeholders,
Full list is available on the werchat docs/wiki
Public Werchat API improvements for integrations:
typed action/membership result objects,
API capability/version surface,
pre/post hook registration,
exact and fuzzy channel lookup modes.

Changed
Channel permission terminology is now read (replacing legacy view/see language).
Added optional channel permission enforcement for normal /ch usage and chat routing (off by default).
Enable it with channelPermissions.enforce: true in config.json.
Example for a staff channel: grant werchat.channel.staff.join, werchat.channel.staff.read, and werchat.channel.staff.speak.
Persistence moved from periodic autosave to dirty + debounced saves (20s) with final flush on shutdown.
Default channel announcements now route through a single default-channel broadcast path.

Fixed
Fixed repeated join/leave announcement spam behavior.
Fixed PM command flow to respect allowPrivateMessages (/msg and /r).
Removed deprecated/unused API paths and dead code discovered during cleanup.

Werchat v1.1.8

17 Feb 04:04

Choose a tag to compare

New Features

Separate Tag & Text Colors

Set independent colors for channel tag and message text.

  • /ch color <channel> <#tag> [#text] — one color sets both, two colors set them independently
  • Example: /ch color Global #55FF55 #FFFFFF gives a green tag but white message text
  • Shown in /ch info when a separate text color is set
  • Backward compatible: existing channels continue using tag color for both

Per-Channel Quick Chat

Quick chat symbol triggers are now controlled per channel.

  • Each channel has quickChatEnabled (true/false) in channels.json
  • Moved from global config.json toggle to per-channel control
  • Existing channels with symbols auto-enable on first load

Multi-World Channels

Restrict channels to one or more worlds.

  • Set "worlds": ["world1", "world2"] in channels.json
  • Players can only send/receive messages when in an allowed world
  • /ch world <channel> add <world> — add a world to the restriction list
  • /ch world <channel> remove <world> — remove a world from the list
  • /ch world <channel> none — clear all world restrictions
  • Requires werchat.world permission
  • World restriction shown in /ch info and /ch list
  • Backward compatible: old "world": "name" format auto-migrates to array

Admin Targeting for Nicknames & Message Colors

Admins can set other players' nicknames and message colors.

  • /ch playernick <player> <name> [#color] [#gradient] — requires werchat.playernick.others
  • /ch msgcolor <player> <#color> [#gradient] — requires werchat.msgcolor.others
  • Use /ch playernick <player> reset or /ch msgcolor <player> reset to clear

Ignore Chat Cancellations

Optional ignoreChatCancellations setting in config.json.

  • When enabled, Werchat processes chat even if another plugin cancelled the event
  • Useful when running alongside plugins that have their own chat formatters