Skip to content

Decompile 31_Shop/Actor/ActorTetra (45%)#166

Draft
SammygoodTunes wants to merge 18 commits into
zeldaret:mainfrom
SammygoodTunes:decomp/ActorTetra
Draft

Decompile 31_Shop/Actor/ActorTetra (45%)#166
SammygoodTunes wants to merge 18 commits into
zeldaret:mainfrom
SammygoodTunes:decomp/ActorTetra

Conversation

@SammygoodTunes

@SammygoodTunes SammygoodTunes commented May 15, 2026

Copy link
Copy Markdown
Contributor

Decompilation of 31_Shop/Actor/ActorTetra

Closes #160

Type Progress
.data 0%
.text 45%

(According to objdiff v3.7.1)

@decomp-dev

decomp-dev Bot commented May 15, 2026

Copy link
Copy Markdown

Report for usa (0bb7400 - 289d208)

📈 Matched code: 2.76% (+0.02%, +636 bytes)

✅ 12 new matches
Unit Item Bytes Before After
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_f4() +255 0.62% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_90(TilePos*, int) +74 66.36% 100.00%
src/00_Core/Map/MapBase MapBase_func_ov00_0207e940::~MapBase_func_ov00_0207e940() +40 0.00% 100.00%
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_c4() +37 9.50% 100.00%
src/00_Core/Map/MapManager MapManager::GetOverlappingTrigger(Vec3p*) +16 0.00% 100.00%
src/00_Core/Map/MapManager MapManager::func_ov00_020838f8(Exit*) +16 0.00% 100.00%
src/14_Land/Actor/Character/ActorGenericCharacter ActorGenericCharacter::~ActorGenericCharacter() +16 60.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_5c(TilePos*) +8 0.00% 100.00%
src/00_Core/Map/MapBase MapBase_func_ov00_0207e968::~MapBase_func_ov00_0207e968() +4 0.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_bc(TilePos*, int) +4 0.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_c0(TilePos*, int) +4 0.00% 100.00%
src/14_Land/Actor/Character/ActorGenericCharacter ActorGenericCharacter::~ActorGenericCharacter() 0 71.43% 100.00%
🥀 4 broken matches
Unit Item Bytes Before After
src/00_Core/Map/MapBase MapBase::vfunc_5c() -8 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e968() -4 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::vfunc_bc() -4 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::vfunc_c0() -4 100.00% 0.00%
📈 16 improvements in unmatched items
Unit Item Bytes Before After
src/31_Shop/Actor/ActorTetra ActorTetra::Create() +110 1.43% 99.89%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e0f0(int) +102 74.87% 99.57%
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_20(bool) +46 3.33% 99.58%
src/00_Core/Map/MapBase MapBase::AddEntrance(Entrance*) +40 29.48% 61.94%
src/00_Core/Map/MapBase MapBase::AddCameraViewpoint(CameraViewpoint*) +32 54.20% 73.49%
src/00_Core/Map/MapBase MapBase::AddExit(Exit*) +31 61.93% 80.98%
src/00_Core/Map/MapManager MapManager::func_ov00_02082e1c(int*, int*) +28 68.55% 73.24%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e08c(int*, int) +27 71.16% 98.40%
src/00_Core/Map/MapManager MapManager::func_ov00_02086044(Vec3p*, Vec3p*, int) +26 45.12% 49.62%
src/00_Core/Map/MapBase MapBase::AddTrigger(TriggerBase*) +24 47.65% 56.73%
src/00_Core/Map/MapBase MapBase::AddUnk_130(TriggerBase*) +24 45.00% 55.43%
src/00_Core/Map/MapBase MapBase::func_ov00_0207ff88(TriggerBase*) +22 35.60% 45.91%
src/00_Core/Map/MapBase MapBase::func_ov00_02080140(Exit*) +16 65.34% 68.73%
src/00_Core/Map/MapBase MapBase::func_ov00_020809b8(TriggerBase*) +14 35.25% 42.67%
src/00_Core/Map/MapBase MapBase::GetTileBounds(TilePos*, AABB*) +5 69.40% 72.19%
src/00_Core/Map/MapBase MapBase::func_ov00_02080824(unsigned int, char*) 0 95.81% 95.93%
📉 6 regressions in unmatched items
Unit Item Bytes Before After
src/00_Core/Map/MapManager MapManager::func_ov00_02085c60(UnkStruct*, int*, int*, unsigned int) -645 64.77% 0.00%
src/00_Core/Map/MapBase MapBase::vfunc_6c(Vec3p*, int*, Vec3p*) -67 42.13% 36.47%
src/00_Core/Map/MapBase MapBase::vfunc_70(Vec3p*) -39 49.21% 41.12%
src/00_Core/Map/MapBase MapBase::vfunc_68(Vec3p*, bool) -8 38.18% 37.47%
src/00_Core/Map/MapBase MapBase::AddTrigger(TriggerParams*) -2 82.13% 81.31%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e940(char*) -1 4.00% 0.00%

Report for eur (0bb7400 - 289d208)

📈 Matched code: 2.79% (+0.02%, +684 bytes)

✅ 14 new matches
Unit Item Bytes Before After
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_f4() +255 0.62% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_90(TilePos*, int) +74 66.36% 100.00%
src/00_Core/Map/MapBase MapBase_func_ov00_0207e940::~MapBase_func_ov00_0207e940() +40 0.00% 100.00%
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_c4() +37 9.50% 100.00%
src/00_Core/Map/MapManager MapManager::GetOverlappingTrigger(Vec3p*) +16 0.00% 100.00%
src/00_Core/Map/MapManager MapManager::func_ov00_020838f8(Exit*) +16 0.00% 100.00%
src/14_Land/Actor/Character/ActorGenericCharacter ActorGenericCharacter::~ActorGenericCharacter() +16 60.00% 100.00%
src/31_Shop/Actor/ActorTetra ActorTetra::~ActorTetra() +16 60.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_5c(TilePos*) +8 0.00% 100.00%
src/00_Core/Map/MapBase MapBase_func_ov00_0207e968::~MapBase_func_ov00_0207e968() +4 0.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_bc(TilePos*, int) +4 0.00% 100.00%
src/00_Core/Map/MapBase MapBase::vfunc_c0(TilePos*, int) +4 0.00% 100.00%
src/14_Land/Actor/Character/ActorGenericCharacter ActorGenericCharacter::~ActorGenericCharacter() 0 71.43% 100.00%
src/31_Shop/Actor/ActorTetra ActorTetra::~ActorTetra() 0 71.43% 100.00%
🥀 4 broken matches
Unit Item Bytes Before After
src/00_Core/Map/MapBase MapBase::vfunc_5c() -8 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e968() -4 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::vfunc_bc() -4 100.00% 0.00%
src/00_Core/Map/MapBase MapBase::vfunc_c0() -4 100.00% 0.00%
📈 16 improvements in unmatched items
Unit Item Bytes Before After
src/31_Shop/Actor/ActorTetra ActorTetra::Create() +110 1.43% 99.89%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e0f0(int) +102 74.87% 99.57%
src/31_Shop/Actor/ActorTetra ActorTetra::vfunc_20(bool) +46 3.33% 99.58%
src/00_Core/Map/MapBase MapBase::AddEntrance(Entrance*) +40 29.48% 61.94%
src/00_Core/Map/MapBase MapBase::AddCameraViewpoint(CameraViewpoint*) +32 54.20% 73.49%
src/00_Core/Map/MapBase MapBase::AddExit(Exit*) +31 61.93% 80.98%
src/00_Core/Map/MapManager MapManager::func_ov00_02082e1c(int*, int*) +28 68.55% 73.24%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e08c(int*, int) +27 71.16% 98.40%
src/00_Core/Map/MapManager MapManager::func_ov00_02086044(Vec3p*, Vec3p*, int) +26 45.12% 49.62%
src/00_Core/Map/MapBase MapBase::AddTrigger(TriggerBase*) +24 47.65% 56.73%
src/00_Core/Map/MapBase MapBase::AddUnk_130(TriggerBase*) +24 45.00% 55.43%
src/00_Core/Map/MapBase MapBase::func_ov00_0207ff88(TriggerBase*) +22 35.60% 45.91%
src/00_Core/Map/MapBase MapBase::func_ov00_02080140(Exit*) +16 65.34% 68.73%
src/00_Core/Map/MapBase MapBase::func_ov00_020809b8(TriggerBase*) +14 35.25% 42.67%
src/00_Core/Map/MapBase MapBase::GetTileBounds(TilePos*, AABB*) +5 69.40% 72.19%
src/00_Core/Map/MapBase MapBase::func_ov00_02080824(unsigned int, char*) 0 95.81% 95.93%
📉 5 regressions in unmatched items
Unit Item Bytes Before After
src/00_Core/Map/MapBase MapBase::vfunc_6c(Vec3p*, int*, Vec3p*) -67 42.13% 36.47%
src/00_Core/Map/MapBase MapBase::vfunc_70(Vec3p*) -39 49.21% 41.12%
src/00_Core/Map/MapBase MapBase::vfunc_68(Vec3p*, bool) -8 38.18% 37.47%
src/00_Core/Map/MapBase MapBase::AddTrigger(TriggerParams*) -2 82.13% 81.31%
src/00_Core/Map/MapBase MapBase::func_ov00_0207e940(char*) -1 4.00% 0.00%

@SammygoodTunes SammygoodTunes changed the title Decompile 31_Shop/Actor/ActorTetra (14%) Decompile 31_Shop/Actor/ActorTetra (44%) May 15, 2026
@SammygoodTunes SammygoodTunes changed the title Decompile 31_Shop/Actor/ActorTetra (44%) Decompile 31_Shop/Actor/ActorTetra (45%) May 15, 2026
@SammygoodTunes SammygoodTunes marked this pull request as draft May 15, 2026 23: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.

src/31_Shop/Actor/ActorTetra.cpp

1 participant