Repository navigation
feat(framework): 96 own-move slots and a charge helper that answers switch_query - #119
Merged
Merged
Conversation
The registry, the fatigue helper's own costs and the stub's clamp follow EM_MOVES.MOVES: the move block is 12796 bytes (was 8764), the em_vhook block grows by the 96 cost bytes. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
em_vhook wraps MONSTER_VTABLE.QUERY (+0xDC, the AI script's switch_query) with a frame-free branchless leaf that answers the board's monster from a table and leaves every other entity to the species. The helper keeps the gauge, charged state, durability and cooldown in C on the AI step: charge-up own moves raise the gauge by HP band, hits chip the gauge or the durability, a full gauge plays the transform own move, a discharge pair or no durability discharges. CHARGE_QUERY_CHARGED/COOLDOWN are the shared constants. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
mhfu.em_charge arms the helper from a table (ups by slot, transform, chips, cooldowns, discharge pairs), em_charge_status reads it; mhfu_port.lua arms a moves module's charge table with the port, names through the one slot map, and drops it with the port. Lua API version 10. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This was referenced Oct 21, 2026
Merged
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.
Stacked on #118. The framework side of Zinogre's charge, and room for its own moves.
MONSTER_VTABLE.QUERY(+0xDC, whatswitch_querycalls; on the Tigrex a stub returning 0) with a frame-free, branchless leaf that answers the port's monster from a table and passes any other entity to the original.mhfu.em_charge/mhfu.em_charge_status(Lua API 10);mhfu_port.luaarms a moves module'schargetable.Tests: unicorn tests of the query leaf, host tests of the charge logic, the Lua arming. Not live yet.
🤖 Generated with Claude Code