2.1.2.0 - Offline Player Management, Forge Event Bus 7 & MC 26.1+ Permissions
Curse Maven Snippet
What's new
New features
/mt check <player>and/mt reset <player>now work on players who are not currently on the server. Previously the target was resolved through a name-to-UUID lookup that only queried online players, so both commands failed withplayer-not-foundas soon as the player logged off — even though their violation levels and mining state were still held in memory.ViolationEnginenow maintains a bidirectional name↔UUID history (knownPlayerIds,knownPlayerNames), populated on every violation increase. This index is deliberately not cleared byresetViolation, so a player who has just been reset stays addressable by name.- Each platform resolves a target name through: engine history → platform-side name cache → online lookup → offline profile (Bukkit only, guarded by
hasPlayedBefore()/isOnline()). - Tab completion for
checkandresetoffers the union of online players and known player names.kickremains online-only.
/mt reset <player>now also clears the mining-behaviour counters (mining path, vein count, vein clusters, air exposure) and the placed-block / artificial-air tracking maps, in addition to zeroing the violation level. Resetting only the violation counter left a stale mining path behind, which caused the next rare-ore break to immediately re-evaluate the old path and push the violation level back up.
Fixed BUG
/mt kick <player>no longer broadcasts the kick message and the lightning effect for a player who is not online. Since name resolution became offline-aware, the command would otherwise report success and kick nobody.- Forge: listener registration no longer relies on the legacy event bus, which has been removed in recent Forge versions. Lifecycle, mining and server-tick listeners are now registered on the EventBus 7 static
BUSfields, which had silently stopped firing. - Forge / NeoForge: mod resources (
config.yml,language.yml, and theConfiguration/*.ymlgroup files) are now loaded through the mod-file resource API instead of the classloader, which could not see them inside the mod JAR. - Forge / NeoForge: a missing bundled resource or a missing YAML file is now reported as a warning and treated as an empty config, instead of throwing and aborting startup. The same guard was applied to the core resource loader.
- Fabric: permission-gated commands now work for OP players on Minecraft 26.1+ without LuckPerms installed. The MC 26.1+ permission model is detected once at class-load time, and the bypass and verbose checks now share a single OP-level check.
Other Changed
pack.mcmetais now bundled into the mod JAR, making it a valid resource pack.- Resource filtering during the build is forced to UTF-8 to keep non-ASCII config content intact.
- Replaced a non-ASCII em-dash in a
mods.tomlcomment.
This mod has no additional files