Repository navigation
Conversation
# Conflicts: # src/mods/Loader.lua
# Conflicts: # docs/modding.md # src/mods/Loader.lua # src/world/WorldAPI.lua
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.
Gen2's GBA path did not bind native Choice Band state or apply the same manual, AI and forced-move selection consumers. Mods could therefore observe different restrictions, selected PP ownership and called-move bookkeeping.
Add the native move-end command and fresh held-effect planner reads, physical-item manual admission, four-slot limitations and ordinary wild selection. Preserve API-1/2 native handles and API-3 positional actions, public stale-offer/refusal paths, and explicit unlimited-enemy-PP rules. Forced actions follow a replaced PP slot; removing that slot still executes the planned attack without spending retired or other learned PP, including Pressure.
Track native versus authored callers through Sleep Talk, Baton Pass and failed Mirror Move. Resolve canonical GBA
ctx.callMove("TACKLE")references, preserve caller bookkeeping, and correct GBA Struggle's type handling. Canonical held/planner/speed ordering keeps actual host, guest and spectator simulations aligned with stateful hooks. Native command revision is 11; party codec remains 1.Stacked on #230. The branch contains that prerequisite; Gen1 is used only as an unchanged read-only reference.
Validation on clean feature
60d5a6feand combined candidate83346a19(subsequent changes are documentation and a CI path filter):Known limits remain explicit in the scoped contract: a separate actual-script probe still differs in PP visibility/event admission at
battle.move_used; successful Sleep Talk still has 10 native versus 11 host held reads. King's Rock/Shell Bell orchestration, successful Mirror Move history/target selection, Metronome catalog/RNG and complete playthrough/graphics parity are not certified here. Raw failures and interrupted matrices are retained separately from the completed acceptance runs. No ROMs, caches or normal saves are included.Published combined game-testing snapshot:
codex/portability-testingat4d82a31f. Its production, tests, tools and example trees are identical to the accepted combined runtime; subsequent edits only record scope and CI path selection.Hosted CI: all nine workflows currently require maintainer approval (
action_required); the dedicated enemy/action run has zero jobs. Local acceptance above is separate from hosted CI.