File Details
OrbisGuard-ALL-0.7.0.zip
- R
- Jan 24, 2026
- 444.45 KB
- 265
- Early Access
File Name
OrbisGuard-ALL-0.7.0.zip
Supported Versions
- Early Access
[0.7.0] - 2026-01-24
Updated to work with latest Hytale Server version.
Added
Protection Hook API - Other plugins can now hook into OrbisGuard's protection checks. Register via OrbisGuardAPI.getInstance().getProtectionHookRegistry(). Hooks return ALLOW, DENY, or ABSTAIN.
NICE_NAME flag - Custom display name for region titles. Usage: /rg flag spawn nice-name <<green>>Spawn Zone
Hyfaction integration - Faction territories and party claims now show on the world map.
Exit flag actually works now - Setting exit to deny will teleport non-members back when they try to leave.
Inline flag conditions - Add conditions to flags using [condition] prefix. Example: /rg flag spawn build [{player_rank}==vip]allow
Inline command conditions - Same syntax for entry/exit commands. Example: /rg flag vip entry-command add [{player_vip}==true]CONSOLE:give %player% diamond 1
Full WPAPI support in commands - Entry/exit commands now parse all WiFlowPlaceholderAPI placeholders, not just %player%.
Global flag conditions - New flagConditions config section. Set allowIf/denyIf conditions that apply to all regions. Good for things like blocking combat-tagged players from entering safe zones.
PAPI status in startup - Shows whether WiFlowPlaceholderAPI is detected.
total_players metric - FancyAnalytics now tracks unique region members/owners.
Performance
Spatial indexing - Region lookups use 256-block buckets now. Way faster with lots of regions.
Bounded caches - Chunk cache capped at 10k entries with LRU eviction. No more memory creep.
Map batching - Minimap updates batched to 2 second intervals instead of per-change.
Chunk region precompute - Minimap builder caches region data per chunk instead of checking every pixel.
Less GC pressure - PlayerState is mutable now, MethodHandles cached in mixins, flags use HashMap instead of ConcurrentHashMap.
Changed
These flags now default to NON_MEMBERS group: use, seat, item-pickup, item-pickup-auto, item-drop, crafting, entry, exit. Members/owners won't be blocked by default anymore.
SelectionVisualizer runs on game thread now instead of separate scheduler.
Cleaner startup logs.
Fixed
Inverted entry/exit events - Entry commands and titles were firing on exit (and vice versa) due to RegionTitleSystem using a different position source than EntryProtectionSystem.
Thread safety - Race conditions in chunk cache and tick data fixed.
Shutdown cleanup - Everything actually cleans up properly now.
Memory leaks - Tick data for disconnected players no longer sticks around forever.
Condition Syntax
Works the same everywhere (inline flags, commands, config):
{placeholder}==value- equals{placeholder}!=value- not equals{placeholder}- truthy (not empty/false/0/no)
Examples
/rg flag arena pvp [{combatlog_active}]deny
/rg flag mine block-break [{player_level}!=0]allow
/rg flag vip entry-command add [{player_vip}==true]CONSOLE:give %player% diamond 1
Config:
"flagConditions": {
"entry": { "allowIf": "{combatlog_active} == false" },
"pvp": { "denyIf": "{arena_mode} != true" }
}