KeyAll v1.1
Bug fix and stability update
This update addresses issues reported after the initial release. No new configuration keys are required. Drop in the new jar and reload.
Bug Fixes
- Fixed:
/keyall skip,/keyall pauseand/keyall resumedisplayed the literal text%name%in the confirmation message instead of the actual event name.
- Fixed:
/keyall statsdisplayed%id%literally in every entry. Entry timestamps were also off by a factor of 1000, causing all execution dates to show as 1970.
- Fixed:
/keyall listwas documented in/keyall helpand in the plugin description but did nothing when called. The command now lists all loaded events with their current status and next execution time.
- Fixed: Countdown off-by-one error. A 60-second countdown fired after 61 seconds due to an incorrect boundary check. Timings now match configuration exactly.
- Fixed: Discord webhook sender name was placed into the embed
titlefield instead of the top-levelusernamefield. The configured name now appears as the message sender, not as a title inside the embed.
- Fixed: The
conditions.skippedmessage was only written to the server console. It now broadcasts to all online players whenannounce-skip: trueis set in the event config.
- Fixed: Status GUI inventory size was computed correctly from event count but the actual inventory was always created at the hardcoded maximum of 54 slots. The GUI now resizes to match the number of loaded events.
- Fixed: The built-in default event fallback used outdated configuration key names (e.g.
schedule-modeinstead ofschedule.mode). The fallback now generates configuration that matches the current format and loads without silent key mismatches.
- Fixed:
executeWorldRewards()did not fire theKeyAllExecuteEventAPI event before running world-specific rewards. Third-party plugins integrating with the KeyAll API now receive this event consistently regardless of which reward path executes.
- Fixed: Several YAML key paths in the event configuration loader were mismatched, causing settings such as schedule mode, announcement intervals, display type and sound configuration to silently fall back to defaults even when correctly defined in the event file.
Improvements
- Language fallback: Any translation key missing from the active language file (pl, es, de) now automatically falls back to the English value. Players no longer see
Missing translation: key.namefor keys not yet translated in their language.
- API event coverage: World reward execution now participates fully in the KeyAll API event system, consistent with the main reward path.
No configuration changes required for existing installations. Full backward compatibility with v1.0 configs.
