MOTD - Message of the Day-0.1.4.jar
What's new
v0.1.4 Command Architecture Refactor & Permission System Fixes
🛠️ Refactoring & Modernization
Direct ECS Entity Resolution: The command now natively extracts the live Player component directly from the world's EntityStore context via store.getComponent().
DRY Architecture Implementation: Created and implemented the abstract MotdSubCommand base class. Subcommands now inherit global setup properties natively, drastically reducing boilerplate code across individual command classes.
🐛 Bug Fixes
Resolved Server Boot Crash: Fixed a critical initialization failure (IllegalArgumentException: Invalid permission node) where Hytale attempted to generate permission strings containing spaces derived from the plugin's display name. Solved globally by overriding canGeneratePermission() -> false.
Fixed Client Autocomplete Leakage: Wrapped subcommand visibility logic securely inside the native hasPermission(CommandSender) lifecycle hook. Sensitive administrative subcommands like reload and config are now completely hidden from the client-side prefill menu for unauthorized players.
⚙️ Configuration & Permissions
Dynamic Node Registration: Re-introduced explicit this.requirePermission() registration to the core constructors to keep the engine's underlying PermissionsModule mapping synced correctly on startup.
Live-Reload Compliance: Standardized permission checks to dynamically read ModConfig.get().commandPermissions on execution. This ensures that permission group adjustments made via /motd reload evaluate instantly on the backend without requiring a full server reboot.
This mod has no additional files

