You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 5a0ca1b
Browse filesBrowse the repository at this point in the historyBrowse files
feat(framework): the Lua API declared once, require and api_version (#25)
* feat(framework): the Lua API is declared once, require and api_version
lua/meta/mhfu.d.lua declares every binding; tools/lua_api.py renders the
registered table from it, and -Werror=missing-declarations makes the two
sides fail the build when they disagree. require reads mods/lib/ and
reloads a changed library in place; boot lines are written after the
script load. Freecam's bindings leave the API until it is installed.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* test(framework): a Lua runtime with the declared mhfu faked
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat(framework): the ported-monster runtime is a library, mhfu_port
A mod does `local port = require("mhfu_port")` and `port.mod(name, fn)`,
which runs its setup at once; the mhfu.port global and the queue
bootstrap are gone. It refuses to load below api_version 1, and takes the
player entity, the species table and its struct offsets from mhfu.addr.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* feat(framework): three example Lua mods to start from
An action override on the executor, a second Tigrex through the ADD path, and a ported Brute
on mhfu_port, each tested in lupa against the declared API.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(framework): mhfu_port's log queue survives a library reload
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* docs(framework): every mhfu binding typed and documented for LuaLS
mhfu.d.lua declares params, returns and one doc line per binding, with
classes for the event contexts and em_status/em_rule tables. The prelude
annotates its handles where the code lives (mhfu is a partial class there,
so no inject-field). Binding comments in lua_host point at the declaration.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(framework): mhfu_port's claimed moves typed for LuaLS
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* fix(framework): ported_brute reports instead of a charge the engine refuses
Live, the manifest's charge (2,8) bounced to (0,1) within a tick when
requested, and (1,4) parked in its last phase, so the example no longer
scripts a move; it shows the port loading and a brain that reports.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
0 commit comments