REDIVIVUS

Proposals / #1188

Mac Skills_SrvDoFunc_071_IronMaiden_GenericCurse: BOOL __cdecl SrvDoFunc (pGame, pUnit, eSkill, nSkillLvl)

approved · by KierTaylor · submitted 2026-11-05, approved 2026-11-05

Mac 0x0024f638 is "undefined (void)", convention unknown. Skill SrvDoFunc: [EBP+0x10] is the skill id (sign test, bound-checked against the skills.txt record count at tables+0xba0 and multiplied by 0x23c = sizeof D2SkillsTxt at 0x0024f654-0x0024f682); no ECX/EDX read before being loaded; plain RET. Same table slot type as Mac Skills_SrvDoFunc_001_ShootArrow (0x0026ab6e, BOOL __cdecl (D2GameStrc*, D2UnitStrc*, eD2Skills, int32_t)); Windows twin 0x005d8570 has the same 4-arg signature.

Changes 1, applied together

  1. Set prototype mac 0x0024f638

    signatureundefined Skills_SrvDoFunc_071_IronMaiden_GenericCurse(void)→BOOL Skills_SrvDoFunc_071_IronMaiden_GenericCurse(D2GameStrc * pGame, D2UnitStrc * pUnit, eD2Skills eSkill, int32_t nSkillLvl)
    conventionunknown→__cdecl