promotional bannermobile promotional banner

MysticVanish

Layered stealth, silent moderation, and permission-based invisibility.
Back to Files

MysticVanish-1.0.0.jar

File nameMysticVanish-1.0.0.jar
Uploader
AlphineAlphine
Uploaded
Jun 30, 2026
Downloads
21
Size
98.4 KB
File ID
8348467
Type
R
Release
Supported game versions
  • 0.5

What's new

[1.0.0] — 2026-06-30

First release. MysticVanish is a layered vanish system for Hytale servers: every player has a vanish level (how concealed they are) and a see level (how much they can see), and a viewer sees a vanished player only when viewer.seeLevel >= target.vanishLevel.

  • Requires: Hytale Server >=0.5.6 <0.6.0
  • Optional integrations: LuckPerms, PlaceholderAPI

Added — Core

  • Layered visibility model. A single rule (viewer.seeLevel >= target.vanishLevel) drives every visibility decision, producing natural staff hierarchies. Players always see themselves; non-vanished players are always visible.
  • Permission-driven levels. Vanish level resolves from the highest mysticvanish.level.<N> node a player holds; see level from the highest mysticvanish.see.<N>. Any non-negative integer tier is supported. Vanishing requires a resolved level of at least 1.
  • Wildcard-safe resolution. Level/see wildcards are ignored and mysticvanish.admin does not grant levels, so platform-wide admin groups never silently inherit vanish power.
  • Reactive visibility updates on join, world change, permission change, and vanish toggle, applied per-viewer on the correct world thread.
  • Optional periodic safety sweep (settings.visibility_refresh_interval_seconds, disabled by default) to correct rare desyncs.
  • Per-player vanish state with vanish flag, level, profile, and the set of features active for the session.

Added — Stealth features

Each feature is independently gated by config (enabled, require_permission) and a permission node.

  • Hide from tab list (hide_tab) — removes the player from the tab/player list for viewers who can't see them; restored automatically on visibility change.
  • Hide from map (hide_map) — hides the player and their marker from the map.
  • Hide nameplate / nametag (hide_nameplate) — removes the floating name.
  • Suppress join & leave messages (settings.hide_join_leave_messages).
  • No entity target (no_entity_target) — registers an NPC attitude override that forces hostile entities to ignore vanished holders, globally and with no per-NPC configuration.
  • No trigger volume (no_trigger_volume) — cancels entity interactions (NPCs/scripted entities) for vanished holders, and surfaces a VanishFeatureCheckEvent so scripts/mods can skip trigger-volume logic.
  • Chat protection (chat_protection) — blocks accidental public chat with mode block (cancel + warn) or redirect_to_staff_chat (route to a [Staff] channel).
  • Command protection (command_protection) — blocks a configurable list of risky commands while vanished (default: msg, tell, r, reply, me, tpa, tpahere, trade, party invite).

Added — Visuals

  • Vanish glow — persistent colour highlight on vanished players, seen only by viewers who can already see them. Eight preset colours (cyan, blue, green, red, purple, gold, white, pink), bundled as effect assets. Cleaned up on unvanish/disconnect so no infinite effect can linger.
  • Vanish aura — per-viewer particle effect around vanished players, visible only to those who can see them. Distinct one-way vs mutual particle systems and colours, distance limiting, and gap-based scaling that grows the aura larger and brighter as the see-level/vanish-level gap widens.
  • Vanish HUD — on-screen VANISHED Level {level} indicator shown to the vanished player, driven by a bundled client-side .ui layout and fully configurable.

Added — Commands

  • /vanish (aliases /v, /mvanish, /mysticvanish) — toggle your own vanish.
  • /vanish off — force vanish off.
  • /vanish status [player] — show vanish status, level, see level, and profile.
  • /vanish <player> — toggle vanish for another player.
  • /vanish reload — reload config and messages.
  • /vchat <message> — send intentional public chat while vanished.
  • Vanish level comes from rank only; the legacy /vanish <level> form is rejected with an explanatory message.

Added — Permissions

  • Command/action nodes: mysticvanish.use, mysticvanish.toggle.others, mysticvanish.status.others, mysticvanish.reload, and the mysticvanish.admin wildcard (excludes levels).
  • Level nodes: mysticvanish.level.<N>, mysticvanish.see.<N>.
  • Feature nodes under mysticvanish.feature.*, each overridable in config.

Added — Integrations

  • LuckPerms (auto-detected) — reads level/see/feature nodes including inherited groups, and listens for permission changes to re-apply visibility live.
  • PlaceholderAPI (auto-detected) — registers the mysticvanish expansion exposing state, level, see level, profile, per-feature flags, and live hidden_from_count / visible_to_count. A placeholders.json reference file is generated for admins.
  • Both are optional compileOnly dependencies and are guarded so the plugin loads cleanly when they are absent.

Added — Configuration

  • Self-generating config.json, messages.json, and placeholders.json in mods/MysticVanish/, created from in-code defaults on first run.
  • Configurable sections: settings, storage, permissions, profiles, features, glow, aura, hud, and placeholderapi.
  • Named level profiles (helper, moderator, admin, owner by default) for documenting tiers and enumerating native-permission level numbers.
  • Fully customisable, colour-code-aware player messages.
  • /vanish reload re-reads config and messages, refreshes visibility, and restarts the aura task at runtime.

Added — Developer API

  • MysticVanishAPI published via the static MysticVanishProvider (isRegistered() / get()), with read/write methods for vanish state, levels, canSee, and visibility updates.
  • Immutable VanishState and the VanishFeature enum on the public surface.
  • Lifecycle events keyed by player UUID: VanishEnableEvent, VanishDisableEvent, VanishLevelChangeEvent, VanishVisibilityUpdateEvent, VanishChatBlockedEvent, VanishCommandBlockedEvent, and VanishFeatureCheckEvent.
  • Pluggable storage behind a VanishStorage interface, selected by StorageManager.

Added — Documentation

Notes & known limitations (Hytale Server 0.5.6)

  • Storage is in-memory only. Vanish state is per-session and resets on restart. The yaml, sqlite, and redis storage types are reserved and currently fall back to memory.
  • silent_chests and silent_interactions are reserved no-ops. Server 0.5.6 has no API to suppress a sound/particle without cancelling the whole action.
  • hide_commands is reserved and currently has no behaviour.
  • Trigger volumes cannot be cancelled in 0.5.6, so no_trigger_volume signals other mods via VanishFeatureCheckEvent instead of preventing the volume directly.
  • Command protection operates on chat-routed commands because 0.5.6 exposes only a chat event, not a dedicated command-preprocess event.
  • Changing storage.type or toggling no_entity_target requires a full server restart (both are wired at startup); other changes apply via /vanish reload.

This mod has no additional files