OrbisGuard | Region Management

Region protection plugin for Hytale servers. Define areas, set flags (block-break, block-place, use), and control who can build where. Based on WorldGuard for Minecraft.

File Details

OrbisGuard-0.8.4.jar

  • R
  • Mar 3, 2026
  • 465.74 KB
  • 393
  • Early Access

File Name

OrbisGuard-0.8.4.jar

Supported Versions

  • Early Access

[0.8.4] - 2026-03-03

Performance

Hook architecture refactored for 10-100x performance improvement - Migrated from slow reflection-based System.properties ConcurrentHashMap lookups to high-performance AtomicReferenceArray with MethodHandle caching. All 26 mixins now use indexed slots (O(1) access) and cache MethodHandles with identity checks to avoid repeated reflection overhead.

  • Old: ConcurrentHashMap<String, Object>getMethod()invoke() (~1-10μs per call)
  • New: AtomicReferenceArray<Object>[slot] → cached MethodHandle.invoke() (~0.01-0.1μs per call)
  • Enhanced error tracking: Log first error + every 100th error (not every error)
  • Bridge identity checking detects plugin reloads and invalidates MethodHandle cache

Added

RESPAWN-LOCATION flag enhanced - Override player respawn locations per region. When players die in a region with this flag set, they respawn at the configured location instead of their bed/spawn. Usage: /og flag <region> respawn-location <x> <y> <z>

minimapShowAllRegions config option - Control whether all regions appear on the minimap or only those with show-on-minimap flag set.

  • true - All regions appear on the minimap (can still be customized with minimap-color, minimap-opacity, etc.)
  • false - Only regions with show-on-minimap=true flag appear (default, preserves existing behavior)

Located under settings.minimapShowAllRegions. Useful for servers that want all regions visible without manually setting flags on each one.

HyCitizens integration - NPCs spawned by HyCitizens are now automatically whitelisted and exempt from MOB_SPAWNING protection. This ensures HyCitizens NPCs can spawn in protected regions even when mob-spawning is denied, while still blocking natural hostile mob spawns.

Fixed

OrbisGuard protection bypassed when SimpleClaims is installed - Both SimpleClaims and OrbisGuard register ECS event systems with RootDependency.first(), causing undefined execution order. When SimpleClaims ran first and cancelled events (e.g., BreakBlockEvent, PlaceBlockEvent), OrbisGuard's protection systems would return early without checking their own regions, completely bypassing OrbisGuard protection. All 8 protection systems now:

  • Remove the early return on event.isCancelled() — OrbisGuard checks regions even if SimpleClaims already cancelled the event
  • Un-cancel events when OrbisGuard allows the action — If SimpleClaims denies but OrbisGuard region allows, the event is un-cancelled
  • Bypass mode explicitly un-cancels — Ensures /og bypass works regardless of SimpleClaims state

Affected systems: BlockBreakProtection, BlockPlaceProtection, UseProtection (portals, doors, containers, general use), DamageProtection (PvP, PvE, mob damage, fall damage), ItemDropProtection, ItemPickupProtection, CraftingProtection, HammerProtection.

Result: Both plugins now work together correctly — if either allows an action, it succeeds. Both must deny for it to be blocked.

Auto pickup hook bypassing protection hook overrides - isPickupAllowed() now calls protection hooks for both item-pickup and item-pickup-auto checks, so claim plugins can explicitly allow/deny pickup behavior for trusted ranks.

blocked-cmds not respecting allowed-cmds priority - Commands were incorrectly blocked even when a higher priority region had them in allowed-cmds. Example: /help blocked in "spawn" (priority 200) but allowed in "bank" (priority 250) would still be blocked in bank. Fixed by checking allowed-cmds before blocked-cmds, ensuring whitelist takes priority over blacklist when both flags are present across overlapping regions.

Workbench chest-access filter bypassing protection hook overrides - Workbench container filtering now evaluates protection hooks before final chest access decisions. This fixes rank-based integrations where chest access via nearby workbench material search could ignore claim plugin permissions.

Changed

Hook registration migrated to ProtectionBridge. HookRegistry remains for backward compatibility but is deprecated. Third-party plugins using the hook system should migrate to ProtectionBridge for better performance.

Compatibility

SimpleClaims/EasyClaims integration - OrbisGuard and claim plugins no longer conflict. Protection hook system continues to work for fine-grained rank-based overrides.