REDIVIVUS

Proposals / #835

Name the Properties.txt val column parameter nVal across the ITEMPROP_ family

applied · by jaenster · submitted 2026-11-02, applied 2026-11-02

Ghidra v1809 · 9528519

Stack[0x14] is the 7th slot of the shared fpProperties signature that all 25 ITEMPROP_ handlers implement, and the dispatcher ITEMMOD_ApplyPropertyToUnitStatsExpansion (0065fd70) fills it with (uint)(ushort)pPropTxt->val[i], the val column of the D2PropertiesTxt row for the func slot being applied. That is the whole provenance of the parameter, so it is named after the column it carries. Counting parameters from one, Stack[0x14] is the 7th, which matches the two handlers already named for it: ITEMPROP_AddStat_WithLayerFromParam7 (0065fb50) is the one handler where this slot is not left dw-prefixed and unread, and ITEMPROP_AddStat_LayerFromRoll_ValueFromParam7 (0065fba0). Several handlers ignore the slot entirely, ITEMPROP_AddStat_Simple among them, which never touches [EBP+0x18]. Types are left as they are.

Changes 25, applied together

  1. Rename variable win 0x0065eb30 Stack[0x14]

    namedwParam1→nVal
  2. Rename variable win 0x0065eba0 Stack[0x14]

    namedwParam2→nVal
  3. Rename variable win 0x0065ec10 Stack[0x14]

    namedwParam1→nVal
  4. Rename variable win 0x0065ec80 Stack[0x14]

    namedwParam2→nVal
  5. Rename variable win 0x0065ecf0 Stack[0x14]

    namedwParam2→nVal
  6. Rename variable win 0x0065ee80 Stack[0x14]

    namedwParam2→nVal
  7. Rename variable win 0x0065f010 Stack[0x14]

    namedwParam2→nVal
  8. Rename variable win 0x0065f2b0 Stack[0x14]

    namedwParam2→nVal
  9. Rename variable win 0x0065f310 Stack[0x14]

    namedwParam2→nVal
  10. Rename variable win 0x0065f390 Stack[0x14]

    namedwParam2→nVal
  11. Rename variable win 0x0065f3f0 Stack[0x14]

    namedwParam2→nVal
  12. Rename variable win 0x0065f470 Stack[0x14]

    namedwParam2→nVal
  13. Rename variable win 0x0065f590 Stack[0x14]

    namedwParam3→nVal
  14. Rename variable win 0x0065f6a0 Stack[0x14]

    namedwParam3→nVal
  15. Rename variable win 0x0065f870 Stack[0x14]

    namedwParam3→nVal
  16. Rename variable win 0x0065f960 Stack[0x14]

    namedwParam2→nVal
  17. Rename variable win 0x0065f9d0 Stack[0x14]

    namedwParam2→nVal
  18. Rename variable win 0x0065fa40 Stack[0x14]

    namedwParam2→nVal
  19. Rename variable win 0x0065fae0 Stack[0x14]

    namedwParam3→nVal
  20. Rename variable win 0x0065fb50 Stack[0x14]

    namenParam12→nVal
  21. Rename variable win 0x0065fba0 Stack[0x14]

    namedwParam2→nVal
  22. Rename variable win 0x0065fbf0 Stack[0x14]

    namedwParam2→nVal
  23. Rename variable win 0x0065fc40 Stack[0x14]

    namedwParam2→nVal
  24. Rename variable win 0x0065fc90 Stack[0x14]

    namedwParam1→nVal
  25. Rename variable win 0x0065fd20 Stack[0x14]

    namedwParam3→nVal