dpslog: CLEU rename, DPSMate absorb pipeline, WSBT adapter, module version API

- Rename COMBAT_LOG_EVENT -> COMBAT_LOG_EVENT_UNFILTERED across Zig/Lua
- DPSMate CLEU adapter: absorb pipeline (SetUnregisterVariables, Absorb,
  ConfirmAbsorbApplication, UnregisterAbsorb), BuildFail type 2/3,
  "(Periodic)" suffix, removed dead handler
- WSBT (Weird Scrolling Battle Text): CLEU adapter fork of MSBT with
  dispatch table, A/B combat profiling, selective event unregistration
- Module version API: GetWeirdUtilsVersion(name?) Lua function + WeirdUtils
  global table, additive across independent DLLs. Build system passes
  per-module version strings via build_options.
- Hook Glue_LoadScriptFunctions (0x46ABB0) for login screen availability
- Rename lsf_hook -> register_commands_hook (real name: Player_LoadScriptFunctions)
- lua.zig: add setglobal/getglobal via LUA_GLOBALSINDEX (-10001)
This commit is contained in:
MarcelineVQ
2026-03-18 14:20:16 -07:00
parent 86da3bcc03
commit fc762ac200
14 changed files with 6672 additions and 402 deletions
+14
View File
@@ -144,3 +144,17 @@ pub fn checknumber(L: State, index: i32) f64 {
const f: *const fn (State, i32) callconv(hook.cc.fastcall) f64 = @ptrFromInt(0x6F4C80);
return f(L, index);
}
// Lua 5.0 pseudo-index for globals table
pub const GLOBALS_INDEX: i32 = -10001;
pub fn setglobal(L: State, name: [*:0]const u8) void {
pushstring(L, name);
insert(L, -2); // swap: value is now at -1, name at -2 → after insert: name at -2, value at -1
settable(L, GLOBALS_INDEX);
}
pub fn getglobal(L: State, name: [*:0]const u8) void {
pushstring(L, name);
gettable(L, GLOBALS_INDEX);
}