Skip to content

Decomp State tables for Villager and Animal - #288

Merged
bwrsandman merged 3 commits into
openblack:mainfrom
bwrsandman:gstates
Aug 14, 2026
Merged

Decomp State tables for Villager and Animal#288
bwrsandman merged 3 commits into
openblack:mainfrom
bwrsandman:gstates

Conversation

@bwrsandman

Copy link
Copy Markdown
Member

No description provided.

@decomp-dev

decomp-dev Bot commented Aug 10, 2026

Copy link
Copy Markdown

Report for BW1W110 (24bc07a - aab1a69)

✅ 2 new matches
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInHand(unsigned char) +43 0.00% 100.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInFlying(unsigned char) +37 0.00% 100.00%
🥀 2 broken matches
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInHand(enum VILLAGER_STATES) -43 100.00% 0.00%
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInFlying(enum VILLAGER_STATES) -37 100.00% 0.00%
📈 2 improvements in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(unsigned char, unsigned char) +28 0.00% 99.88%
runblack/Black/Villager public: virtual unsigned int __thiscall Villager::ExitReaction(unsigned char) +4 0.00% 7.00%
📉 2 regressions in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(enum VILLAGER_STATES, enum VILLAGER_STATES) -28 99.88% 0.00%
runblack/Black/Villager public: virtual int __thiscall Villager::ExitReaction(enum VILLAGER_STATES) -4 7.00% 0.00%

Report for BW1W100 (24bc07a - aab1a69)

✅ 2 new matches
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInHand(unsigned char) +43 0.00% 100.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInFlying(unsigned char) +37 0.00% 100.00%
🥀 2 broken matches
Unit Item Bytes Before After
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInHand(enum VILLAGER_STATES) -43 100.00% 0.00%
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInFlying(enum VILLAGER_STATES) -37 100.00% 0.00%
📈 6 improvements in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::ExitNoChangeState(unsigned char) +71 0.00% 99.21%
runblack/Black/VillagerChild public: unsigned int __thiscall Villager::ChildBecomesAdult(void) +39 0.00% 99.91%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(unsigned char, unsigned char) +28 0.00% 99.88%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterScriptWander(unsigned char, unsigned char) +20 0.00% 99.86%
runblack/Black/Villager public: virtual unsigned int __thiscall Villager::ExitReaction(unsigned char) +4 0.00% 7.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterPlayAnim(unsigned char, unsigned char) +4 0.00% 1.44%
📉 3 regressions in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerChild public: bool __thiscall Villager::ChildBecomesAdult(void) -39 99.45% 0.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(enum VILLAGER_STATES, enum VILLAGER_STATES) -28 99.88% 0.00%
runblack/Black/Villager public: virtual int __thiscall Villager::ExitReaction(enum VILLAGER_STATES) -4 7.00% 0.00%

Report for BW1W120 (24bc07a - aab1a69)

Total code: 4691777 bytes (-444 bytes)
Total functions: 28972 (+122)
📈 Matched code: 5.53% (+1.65%, +77242 bytes)
📈 Matched data: 0.84% (+0.60%, +44352 bytes)

✅ 20 new matches
Unit Item Bytes Before After
runblack/Black/GStates _$E32 +63825 0.00% 100.00%
runblack/Black/GStates .bss +44352 0.00% 100.00%
runblack/Black/GStates _$E35 +13209 0.00% 100.00%
runblack/Black/VillagerCivic public: unsigned int __thiscall Villager::ArrivesAtStoragePitForBuildingMaterials(void) +107 0.00% 100.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInHand(unsigned char) +43 0.00% 100.00%
runblack/Black/VillagerChild public: unsigned int __thiscall Villager::ChildBecomesAdult(void) +40 0.00% 100.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::ExitInFlying(unsigned char) +37 0.00% 100.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(unsigned char, unsigned char) +29 0.00% 100.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterScriptWander(unsigned char, unsigned char) +21 0.00% 100.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::ExitScriptWander(unsigned char) +16 0.00% 100.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::ExitPlayAnim(unsigned char) +16 0.00% 100.00%
runblack/Black/VillagerCheck public: unsigned int __thiscall Villager::InteractDecideWhatToDo(void) +8 0.00% 100.00%
runblack/Black/GStates public: unsigned int __thiscall Villager::SaveInFlying(class GameOSFile &) +8 0.00% 100.00%
runblack/Black/GStates public: unsigned int __thiscall Villager::LoadInFlying(class GameOSFile &) +8 0.00% 100.00%
runblack/Black/GStates public: unsigned int __thiscall Villager::SaveWaitForAnim(class GameOSFile &) +8 0.00% 100.00%
runblack/Black/GStates public: unsigned int __thiscall Villager::LoadWaitForAnim(class GameOSFile &) +8 0.00% 100.00%
runblack/Black/VillagerReaction public: unsigned int __thiscall Villager::ExitReactToTeleport(unsigned char) +6 93.23% 100.00%
runblack/Black/GStates public: unsigned int __thiscall Villager::AlwaysReactToTownEmergency(void) +6 0.00% 100.00%
runblack/Black/GStates _$E33 +5 0.00% 100.00%
runblack/Black/GStates _$E36 +5 0.00% 100.00%
🥀 9 broken matches
Unit Item Bytes Before After
runblack/Black/VillagerCivic public: unsigned int __thiscall Villager::CheckNeededForTownDesire(void) -64 100.00% 0.00%
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInHand(enum VILLAGER_STATES) -43 100.00% 0.00%
runblack/Black/VillagerStates public: virtual int __thiscall Villager::ExitInFlying(enum VILLAGER_STATES) -37 100.00% 0.00%
runblack/Black/VillagerStates public: virtual unsigned int __thiscall Villager::EnterInHand(enum VILLAGER_STATES, enum VILLAGER_STATES) -29 100.00% 0.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterScriptWander(enum VILLAGER_STATES, enum VILLAGER_STATES) -21 100.00% 0.00%
runblack/Black/VillagerScript public: virtual int __thiscall Living::ExitScriptWander(enum VILLAGER_STATES) -16 100.00% 0.00%
runblack/Black/VillagerScript public: virtual int __thiscall Living::ExitPlayAnim(enum VILLAGER_STATES) -16 100.00% 0.00%
runblack/Black/VillagerCheck public: void __thiscall Villager::InteractDecideWhatToDo(void) -8 100.00% 0.00%
runblack/Black/VillagerChild public: unsigned int __thiscall Villager::ChildAtCreche(void) -4 100.00% 0.24%
📈 11 improvements in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerCivic public: unsigned int __thiscall Villager::ArrivesAtBuildingSite(void) +327 0.00% 97.89%
runblack/Black/VillagerShepherd public: unsigned int __thiscall Villager::ShepherdMoveFlockToWater(void) +254 0.00% 97.62%
runblack/Black/VillagerWorshipper public: unsigned int __thiscall Villager::ExitAtWorshipSite(unsigned char) +136 0.00% 96.32%
runblack/Black/VillagerShepherd public: unsigned int __thiscall Villager::ShepherdGotoFlock(void) +127 0.00% 95.77%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::ExitNoChangeState(unsigned char) +71 0.00% 99.31%
runblack/Black/VillagerFood public: unsigned int __thiscall Villager::ShowPoisoned(void) +31 0.00% 46.59%
runblack/Black/Villager public: unsigned int __thiscall Villager::LookAtPreviousStateReactToTownEmergency(void) +5 0.00% 66.67%
runblack/Black/Villager public: virtual unsigned int __thiscall Villager::ExitReaction(unsigned char) +4 0.00% 7.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterPlayAnim(unsigned char, unsigned char) +4 0.00% 1.44%
runblack/Black/Villager public: unsigned int __thiscall Villager::ExitDance(unsigned char) +3 0.00% 6.36%
runblack/Black/VillagerCheck public: unsigned int __thiscall Villager::InteractDecideWhatToDoForOtherVillager(void) +3 0.00% 1.82%
📉 13 regressions in unmatched items
Unit Item Bytes Before After
runblack/Black/VillagerShepherd public: bool __thiscall Villager::ShepherdMoveFlockToWater(void) -254 97.44% 0.00%
runblack/Black/VillagerWorshipper public: bool __thiscall Villager::ExitAtWorshipSite(unsigned char) -136 96.14% 0.00%
runblack/Black/VillagerShepherd public: bool __thiscall Villager::ShepherdGotoFlock(void) -126 95.46% 0.00%
runblack/Black/VillagerScript public: virtual int __thiscall Living::ExitNoChangeState(enum VILLAGER_STATES) -71 99.31% 0.00%
runblack/Black/VillagerChild public: bool __thiscall Villager::ChildBecomesAdult(void) -39 99.55% 0.00%
runblack/Black/VillagerFood public: bool __thiscall Villager::ShowPoisoned(void) -31 46.36% 0.00%
runblack/Black/Villager public: enum VILLAGER_STATES __thiscall Villager::LookAtPreviousStateReactToTownEmergency(void) -5 66.67% 0.00%
runblack/Black/Villager public: virtual int __thiscall Villager::ExitReaction(enum VILLAGER_STATES) -4 7.00% 0.00%
runblack/Black/VillagerScript public: virtual unsigned int __thiscall Living::EnterPlayAnim(enum VILLAGER_STATES, enum VILLAGER_STATES) -4 1.44% 0.00%
runblack/Black/Villager public: bool __thiscall Villager::ExitDance(unsigned char) -3 6.36% 0.00%
runblack/Black/VillagerCheck public: void __thiscall Villager::InteractDecideWhatToDoForOtherVillager(void) -2 1.30% 0.00%
runblack/Black/GroupBehaviour .rdata -1 0.60% 0.51%
runblack/Black/VillagerShepherd public: unsigned int __thiscall Villager::VillagerBecomesShepherd(class Flock *) -1 69.22% 67.97%

@bwrsandman
bwrsandman force-pushed the gstates branch 9 times, most recently from e5ccca2 to 4b2e397 Compare August 14, 2026 02:23
@bwrsandman
bwrsandman merged commit 824d1e4 into openblack:main Aug 14, 2026
4 checks passed
@bwrsandman
bwrsandman deleted the gstates branch August 14, 2026 03:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant