REDIVIVUS

Proposals / #1144

Mac AI_Fn1_SiegeBeast: void __cdecl (pGame, pUnit, pAiParam) AI-think prototype

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

Mac 0x0029dfc4 is "undefined (void)", convention unknown. Body reads [EBP+8] (pGame, 0x0029dff8), [EBP+0xc] (pUnit, 0x0029dff1/0x0029e0e9/0x0029e168), [EBP+0x10] (pAiParam, 0x0029dfd6); no ECX/EDX on entry; plain RET at 0x0029e306. It is an AI Fn1 think handler, the same slot type as Mac AI_Fn1_Npc 0x002a53d3 (void __cdecl pGame, pUnit, D2AiParamStrc* pAiParam), and matches its Windows twin 0x005e1900 void (pGame, pUnit, D2AiParamStrc* pAiParam).

Changes 1, applied together

  1. Set prototype mac 0x0029dfc4

    signatureundefined AI_Fn1_SiegeBeast(void)→void AI_Fn1_SiegeBeast(D2GameStrc * pGame, D2UnitStrc * pUnit, D2AiParamStrc * pAiParam)
    conventionunknown→__cdecl