Skip to content

d_a_obj_vyasi: 100% matching (GZLE01) - #1123

Open
LostGoron wants to merge 1 commit into
zeldaret:mainfrom
LostGoron:decompile-d_a_obj_vyasi
Open

d_a_obj_vyasi: 100% matching (GZLE01)#1123
LostGoron wants to merge 1 commit into
zeldaret:mainfrom
LostGoron:decompile-d_a_obj_vyasi

Conversation

@LostGoron

Copy link
Copy Markdown

Palm tree. 100% (GZLE01).

Ports the previously-completed 93/93-function decompilation onto the
current auto-generated actor skeleton (struct offsets and base class
are unchanged upstream, only placeholder names/signatures/includes
were regenerated). Re-verified: full GZLE01 build passes the REL hash
check and objdiff reports 100% fuzzy/matched for all three vyasi units.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@decomp-dev

decomp-dev Bot commented Jul 17, 2026

Copy link
Copy Markdown

Report for GZLE01 (c1513e9 - 2011f86)

📈 Matched code: 71.45% (+0.15%, +11824 bytes)
📈 Linked code: 58.26% (+0.15%, +11976 bytes)
📈 Matched data: 88.82% (+0.08%, +1889 bytes)
📈 Linked data: 48.51% (+0.08%, +1889 bytes)

✅ 90 new matches
Unit Item Bytes Before After
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::calc_dif_angle() +1865 0.21% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_create() +1100 0.36% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::JointNodeCallBack(J3DNode*, int) +960 0.41% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_collision() +921 0.43% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .data +862 11.37% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::quaternion_main() +724 0.55% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .rodata +585 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_init() +485 0.82% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::~Act_c() +468 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::create_heap() +416 0.95% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_init(int) +272 1.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_main() +225 1.75% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::~dCcD_Cps() +224 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::~dCcD_Sph() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cyl::~dCcD_Cyl() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_toNormal_main() +185 2.13% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::leaf_scale_main() +181 2.17% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_draw() +173 2.27% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_mtx() +156 2.50% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::dCcD_Cps() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Stts::~dCcD_Stts() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_first_process() +133 2.94% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::dCcD_Sph() +132 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_execute() +129 3.03% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .bss +115 65.38% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_main() +113 3.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::SetStopJointAnimation(J3DAnmTransformKey*, float, float) +109 3.57% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_normal_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_main() +93 4.17% 100.00%

...and 60 more new matches


Report for GZLP01 (c1513e9 - 2011f86)

📈 Matched code: 69.60% (+0.15%, +11824 bytes)
📈 Matched data: 87.59% (+0.08%, +1889 bytes)

✅ 90 new matches
Unit Item Bytes Before After
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::calc_dif_angle() +1865 0.21% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_create() +1100 0.36% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::JointNodeCallBack(J3DNode*, int) +960 0.41% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_collision() +921 0.43% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .data +862 11.37% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::quaternion_main() +724 0.55% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .rodata +585 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_init() +485 0.82% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::~Act_c() +468 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::create_heap() +416 0.95% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_init(int) +272 1.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_main() +225 1.75% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::~dCcD_Cps() +224 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::~dCcD_Sph() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cyl::~dCcD_Cyl() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_toNormal_main() +185 2.13% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::leaf_scale_main() +181 2.17% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_draw() +173 2.27% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_mtx() +156 2.50% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::dCcD_Cps() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Stts::~dCcD_Stts() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_first_process() +133 2.94% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::dCcD_Sph() +132 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_execute() +129 3.03% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .bss +115 65.38% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_main() +113 3.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::SetStopJointAnimation(J3DAnmTransformKey*, float, float) +109 3.57% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_normal_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_main() +93 4.17% 100.00%

...and 60 more new matches


Report for D44J01 (c1513e9 - 2011f86)

📈 Matched code: 63.81% (+0.12%, +9620 bytes)
📈 Matched data: 85.27% (+0.08%, +1889 bytes)

✅ 86 new matches
Unit Item Bytes Before After
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::calc_dif_angle() +1868 0.21% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_create() +1100 0.36% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::JointNodeCallBack(J3DNode*, int) +960 0.41% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .data +864 11.13% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .rodata +585 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_init() +485 0.82% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::~Act_c() +468 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_init(int) +272 1.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_main() +225 1.75% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::~dCcD_Cps() +224 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::~dCcD_Sph() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cyl::~dCcD_Cyl() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_toNormal_main() +185 2.13% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::leaf_scale_main() +181 2.17% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_draw() +173 2.27% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_mtx() +156 2.50% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::dCcD_Cps() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Stts::~dCcD_Stts() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::dCcD_Sph() +132 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_execute() +129 3.03% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .bss +115 65.38% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_main() +113 3.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::SetStopJointAnimation(J3DAnmTransformKey*, float, float) +109 3.57% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_normal_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_main() +93 4.17% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi cM3dGCps::~cM3dGCps() +92 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi cCcD_ShapeAttr::~cCcD_ShapeAttr() +92 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_GStts::~dCcD_GStts() +92 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_normal_main() +89 4.35% 100.00%

...and 56 more new matches

📈 4 improvements in unmatched items
Unit Item Bytes Before After
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_collision() +896 0.44% 98.17%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::quaternion_main() +700 0.55% 96.70%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::create_heap() +376 1.00% 95.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_first_process() +128 2.78% 91.11%

Report for GZLJ01 (c1513e9 - 2011f86)

📈 Matched code: 69.65% (+0.15%, +11816 bytes)
📈 Matched data: 88.25% (+0.08%, +1889 bytes)

✅ 90 new matches
Unit Item Bytes Before After
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::calc_dif_angle() +1865 0.21% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_create() +1100 0.36% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::JointNodeCallBack(J3DNode*, int) +960 0.41% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_collision() +913 0.44% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .data +862 11.37% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::quaternion_main() +724 0.55% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .rodata +585 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_init() +485 0.82% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::~Act_c() +468 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::create_heap() +416 0.95% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_init(int) +272 1.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_main() +225 1.75% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::~dCcD_Cps() +224 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::~dCcD_Sph() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cyl::~dCcD_Cyl() +204 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_toNormal_main() +185 2.13% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::leaf_scale_main() +181 2.17% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_draw() +173 2.27% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_mtx() +156 2.50% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Cps::dCcD_Cps() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Stts::~dCcD_Stts() +144 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::set_first_process() +133 2.94% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi dCcD_Sph::dCcD_Sph() +132 0.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::_execute() +129 3.03% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi .bss +115 65.38% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_main() +113 3.45% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::SetStopJointAnimation(J3DAnmTransformKey*, float, float) +109 3.57% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sag_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_normal_init() +96 4.00% 100.00%
d_a_obj_vyasi/d/actor/d_a_obj_vyasi daObjVyasi::Act_c::process_sagWind_main() +93 4.17% 100.00%

...and 60 more new matches

@LostGoron LostGoron mentioned this pull request Jul 18, 2026
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