REDIVIVUS

Proposals / #782

Resolve the Mac stat-list skill-ID getter to its existing enum return

applied · by Commit-Will · submitted 2026-11-01, applied 2026-11-02

Ghidra vmac 109 · 39698f0

Mac00197725 GetSkillId currently returns undefined4. Its complete11-byte body returns the entire eSkill field at+28, whose existing type is the four-byte eD2Skills enum. Independent native state-argument producer/consumer paths preserve the same eD2Skills identity, and all four code callers use the full result as a skill ID. Set only the return to that existing enum, retaining the chosen pStatList name/type, one cdecl stack argument, plain RET and every other definition. Windows original code and its existing enum return corroborate the same field read. No enum definition, underlying signedness, pointee layout, helper return, runtime or build gain is inferred.

Changes 1, applied together

  1. Set prototype mac 0x00197725

    signatureundefined4 GetSkillId(D2StatListExStrc * pStatList)→eD2Skills GetSkillId(D2StatListExStrc * pStatList)
    convention__cdecl