Repository navigation
EasyScripting 0.2.0
EasyScripting 0.2.0 repairs group following and rebuilds NPC combat.
Following
- Rows and columns are aligned on one shared grid and oriented by the direction the leader is actually travelling. Previously the heading came from
Player#getVelocity, which Bukkit never populates from walking input, so the formation tracked where the leader looked rather than where they walked. follow-columnssets the width;0keeps an automatic square block.- Formation places are numbered over present, free members, so a casualty closes the gap instead of reshuffling the group and no two members share a slot.
- A slot inside a wall compresses toward the leader instead of stranding a member,
follow-resume-marginstops a settled formation stuttering, and the shared path budget is ranked by need so stragglers are not starved.
Combat
weapon-cooldownmakes NPCs wait for the held weapon to recharge instead of attacking on a fixed timer and landing partly charged hits.attack-cooldown-ticksbecomes a floor and its default drops to 10; an existingactor-ai.ymlkeeps its own value, so lower it to 10 to see weapon-paced attacks.- Reach is measured eye-to-hitbox, so an enemy on a slab or stair can be hit. Engaged members think every two ticks, several attackers surround one enemy instead of stacking, and a dead enemy is reassigned at once.
- Optional critical hops before a ready swing.
Self preservation
- The shield now also answers a mace holder alongside, not only overhead, and holds while that threat remains.
- New
survivalsection: break off and eat a carried golden apple belowheal-health, throw a carried ender pearl belowescape-health. Eating hands consumption to Paper so the apple's own effects apply; a hit interrupts the meal and returns the apple. An NPC that would die to its own pearl's 5 damage keeps fighting. Neither reaction creates supplies. - NPCs sprint in, walk the last blocks, circle between swings and back away still facing their enemy.
Eleven new actor-ai.yml keys are added to existing files automatically on load.
Validation: 171 unit tests, Paper 1.21.8 compilation, Java 21 bytecode, production/test/smoke compilation. No Minecraft server or client was launched for this release. The unit coverage is layout, allocation and configuration logic; navigation feel, the attack-strength ticker, hitbox reach and the Paper item-use APIs behind NPC eating are not exercised by any fixture. Verify these on a test server before a production shoot — see TESTING.md for the acceptance cases.
EasyScripting-0.2.0.jar SHA-256: C1F4FE64E5F44EAC5B79FF6CDAFA800ADC95550011F25E2B922439C8A11338A0
EasyScripting-0.2.0-sources.jar SHA-256: 61C1C23014DC8241BCC9201DC3F5BA220C1A559F2C9F9765DE2FC23EA802474E