Repository navigation
Conversation
- The config updater appends bytes and never rewrites config.yml. Bukkit 1.8 reads the file in the system charset, so a UTF-8 rewrite damaged accented letters on some Windows servers. - The action system keeps one tag for each target. Before, each hit added a tag, and each tag sent the action message again. - DAMAGE: ANY is now found by its key, not its message. The hit listener skips its message only when the action system is on. - The action listener tags the attacker before it sends the DAMAGE message. Damage causes such as LAVA now work for all damage, not only entity hits. - Action messages follow the same rules as health messages: worlds, regions, permissions and the toggle. - The toggle message shows only while the player looks at an entity. - A cancelled hit (Region PvP false) shows the health without the damage. - WorldGuard 6 and 7 are read through reflection. WorldGuardWrapper had no commits since 2023. The jar is now about 94 KB instead of 922 KB. - New Adventure action bar method, used if Paper removes the BungeeCord chat API. The log names the method that works. - Folia: hit and action messages run on the thread of the player when another thread owns the player. Action bar sends no longer share a lock. - The jar is reproducible. Spigot's public repository replaces codemc. - CI: newer action versions (Node 24) and a fixed ubuntu-24.04 image. - Tests: 13 new unit tests, and 4 new bot checks (method, toggle-message, action-damage, action-tags). Paper 1.21.11 and 1.16.5 run with Adventure. - Version 3.8.1. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
… action bars Paper 1.16.5 does not start on Java 17. Paper's Adventure API sends the action bar in a title packet on 1.11 to 1.16, so the bot now reads that packet too. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes four bugs from the post-3.8.0 scan. It also removes WorldGuardWrapper, adds a fallback action bar method for Paper, makes the jar reproducible and updates CI. The version is 3.8.1.
Bugs fixed
config.ymlin the system charset, for example windows-1252 on Windows. 3.8.0 read and wrote the whole file as UTF-8. Now the updater appends bytes and never writes the existing bytes again. The default config is ASCII, so the new text is the same in every charset. This affected only files that were not saved as UTF-8 and had non-ASCII text.TagAmount: 2, two hits on one player also pushed out the second target. Now there is one tag for each target.DAMAGE: ANYwas never found. The check read the message instead of the key. The hit listener now skips its own message only whenAction.Enabledis true. Without that, a key-only fix would have turned off health-on-hit for every server, because the default config hasDAMAGE: ANY.Toggle Messagegot it every second, even when looking at nothing. Now it shows only while the player looks at an entity.Other behavior changes
LAVA(the example in the config) now work for all damage. Before, only hits by an entity checked the cause.Use Permissions,Show Mob/Show Player, and the toggle.Region PvP: false, a cancelled hit shows the health without the damage. The hit did no damage. The config comment forRegion PvPnow says what the option does.Dependencies and platform
support/WorldGuardSupport.javareads regions on WorldGuard 6 and 7. WorldGuardWrapper had no commits since June 2023. The jar is now about 94 KB instead of 922 KB.Audience#sendActionBarand is second in the list, after the Spigot API. The log now names the method that works, for exampleSending action bars with the Spigot API.The system property-Dactionhealth.actionbar=adventurestarts with a later method, for tests.ubuntu-24.04, becauseubuntu-latestmoves to Ubuntu 26 on October 19, 2026.Tests
ActionStoreTest: ANY detection, one tag for each target, tag limits and expiry.ConfigUpdaterTest: keeps the bytes of a windows-1252 file, does not write a complete file, the default config is ASCII, and sections have no new options. The updater adds only top-level options, so the last test fails if a new option goes inside a section.method,toggle-message,action-damageandaction-tags. I ran them against the 3.8.0 jar on Spigot 1.21.11. All four fail there, so they catch the old bugs.Not tested
LAVAand other non-entity damage causes in the action system.🤖 Generated with Claude Code