Skip to content

Revisions

  • Audit pass 2: correct hooks, utilities, localization and module pages - isNegaBetter makes NEGATIVE values win (the unlimited sentinel), not lower ones; highest still wins among non-negatives. Also documents the lowercase-key requirement, the -1-on-no-match return, and the int cast that breaks getGroupValueDouble for fractions. - Vault helpers are null-safe and return empty values rather than failing. Conversely the engine's hook getters CAN be null even with the plugin installed, since WorldGuard/Citizens/MythicMobs are hooked only from the PluginEnableEvent path. - PlayerUT.setExp adds to the current total rather than setting it; setTotalExperience is the absolute form. - LocUT.getFirstGroundBlock is not what /unstuck uses. - MsgUT.isJSON checks for Codex's inline {json:} markup, not chat components. sendTitles is deprecated. - Debugger gates warn and err as well as log, and writes to System.out. - Corrected EffectUT, RangeUtil, Zipper, NamespaceResolver and the SoundUT/EnumUT rationale (registry-backed Keyed, not renamed constants). - StringUT.replace returns a copy; the previous examples were no-ops. - Localization: documents the two independent message systems sharing one file, that language selection keys off general.lang rather than the documented core.lang, and that the general.* set is never localised. - Chat module does not persist data at all; documents the name-truncation and reset bugs. - Scoreboard module registers no boards of its own; /board list is per-player; /board show requires lowercase and always reports failure. - Join/interact: delays are cumulative, PlaceholderAPI is not expanded, material and as are matched case-sensitively and fail silently, and there is no click-type filter. - Configuration: bungee_id is a server label not a channel, debug is inert, removeBoatOnExit returns the boat to the player, locale.world-names has no consumers, command-cooldown-message is mccore-only, unstuck keys have no defaults.

    @claude claude committed Aug 16, 2026
  • Mark mccore-derived features as deprecated Everything under studio.magemonkey.codex.mccore is legacy ProMCCore code and should not be used in new setups or new plugin code. - Chat Module and Scoreboard Module pages get deprecation banners and are grouped separately in the sidebar and on Home - Features.chat-enabled / scoreboards-enabled documented as deprecated, with the sample config now showing them disabled - file-timings noted as read only by the legacy config layer, so it has no effect on JYML-based configs - Developer Getting Started now documents JYML as the config API and flags getConfigFile/registerConfig as returning the deprecated mccore Config type - Added a legacy-package table mapping each mccore subpackage to its current replacement, including the mccore.commands vs codex.commands naming overlap

    @claude claude committed Aug 15, 2026
  • Expand wiki from single page to full documentation set The wiki previously consisted of one Home page covering a stale command list and a config.yml dump. This replaces it with 20 pages covering the plugin as it actually exists. Corrections to previously documented content: - /corereload no longer exists; the command is /codex reload - command-aliases default is codex,codexengine,codexcore - bungee_id default is codexcore - documented previously missing keys: file-timings, action-bar-legacy New server-owner pages: Installation, Configuration, Commands, Permissions, Join and Interact Commands, Chat Module, Scoreboard Module, Localization, Version Support. New developer pages: Developer Getting Started, Actions Engine, Item Providers, Menus and GUIs, Compat and NMS, Hooks, Events, Utilities. Adds _Sidebar.md and _Footer.md for persistent navigation.

    @claude claude committed Aug 15, 2026