Skip to content

it: match 14 item functions#2300

Merged
PsiLupan merged 6 commits intodoldecomp:masterfrom
johnwinston:pr/it-items
Mar 15, 2026
Merged

it: match 14 item functions#2300
PsiLupan merged 6 commits intodoldecomp:masterfrom
johnwinston:pr/it-items

Conversation

@johnwinston
Copy link
Contributor

Summary

  • itClimbersice_UnkMotion0_Anim (48 bytes)
  • it_802C84A0, itGamewatchchef_UnkMotion0_Coll, itGamewatchchef_UnkMotion1_Coll (40–80 bytes)
  • it_802B211C, it_802B22B8 (56–72 bytes)
  • it_2725_Logic17_Spawned, itLugia_UnkMotion2_Phys, it_802D1DD8 (28–64 bytes)
  • it_2725_Logic18_Spawned, itHouou_UnkMotion2_Phys, it_802D2B4C, it_802D2C78 (28–80 bytes)
  • it_802D73F0 (140 bytes)

Verification

  • All functions verified 100% match via objdiff during overnight run
  • ninja builds cleanly

What these functions do

Pokeball summon callbacks for Lugia and Ho-Oh — spawn initialization, physics during flight, and the damage-on-contact logic that fires when they sweep across the stage. The Goomba (itOldkuri) initializer resets velocity and picks a patrol direction when spawning on Mushroom Kingdom. Ice Climbers' ice block (itClimbersice) handles the animation tick for the frozen projectile. Mr. Game & Watch's chef (itGamewatchchef) sausage projectiles get their collision callbacks for bouncing off platforms. The Pikachu Thunder (itpikachuthunder) functions handle the lightning bolt's downward travel logic.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

@decomp-dev
Copy link

decomp-dev bot commented Mar 15, 2026

Report for GALE01 (b8e78ea - a35d851)

📈 Matched code: 58.05% (+0.06%, +2328 bytes)

✅ 15 new matches
Unit Item Bytes Before After
main/melee/it/items/itoldkuri itOldkuri_UnkMotion2_Anim +196 0.00% 100.00%
main/melee/it/items/itoldkuri itOldkuri_UnkMotion2_Coll +188 0.00% 100.00%
main/melee/it/items/itlugia itLugia_UnkMotion2_Phys +172 0.00% 100.00%
main/melee/it/items/ithouou itHouou_UnkMotion2_Phys +172 0.00% 100.00%
main/melee/it/items/itgamewatchchef it_802C84A0 +160 0.00% 100.00%
main/melee/it/items/ithouou it_2725_Logic18_Spawned +156 0.00% 100.00%
main/melee/it/items/itlugia it_2725_Logic17_Spawned +152 0.00% 100.00%
main/melee/it/items/ithouou it_802D2B4C +148 0.00% 100.00%
main/melee/it/items/itoldkuri itOldkuri_UnkMotion9_Anim +148 0.00% 100.00%
main/melee/it/items/itpikachuthunder it_802B211C +140 0.00% 100.00%
main/melee/it/items/itgamewatchchef itGamewatchchef_UnkMotion0_Coll +140 0.00% 100.00%
main/melee/it/items/itlugia it_802D1DD8 +140 0.00% 100.00%
main/melee/it/items/ithouou it_802D2C78 +140 0.00% 100.00%
main/melee/it/items/itoldkuri it_802D73F0 +140 0.00% 100.00%
main/melee/it/items/itclimbersice itClimbersice_UnkMotion0_Anim +136 0.00% 100.00%
📈 4 improvements in unmatched items
Unit Item Bytes Before After
main/melee/it/items/itgamewatchchef itGamewatchchef_UnkMotion1_Coll +182 0.00% 99.24%
main/melee/it/items/itpikachuthunder it_802B22B8 +133 0.00% 97.94%
main/melee/it/items/itclimbersice .sdata2 +4 50.00% 66.67%
main/melee/it/items/ithouou .sdata2 +1 66.67% 71.43%

John Winston Garth and others added 6 commits March 15, 2026 19:50
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…otion0_Coll, itGamewatchchef_UnkMotion1_Coll

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…n2_Phys, it_802D1DD8

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…n2_Phys, it_802D2B4C, it_802D2C78

Decompile four functions in ithouou.c (Ho-Oh Pokemon item):
- it_2725_Logic18_Spawned: Pokemon spawn initialization
- itHouou_UnkMotion2_Phys: Motion state 2 physics (ascent with blast zone check)
- it_802D2B4C: Accessory callback (fire breath spawning)
- it_802D2C78: State transition on hit detection

Also updates itHououAttr struct fields (x8, xC, x14) and
it_802D2B4C/it_802D2D2C header signatures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@PsiLupan PsiLupan merged commit daf7370 into doldecomp:master Mar 15, 2026
7 checks passed
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.

2 participants