Skip to content

zNPCTypeBossPlankton & zNPCTypeBossSB2 work#589

Merged
SquareMan merged 4 commits intobfbbdecomp:mainfrom
LivewireCB:dev8
Aug 13, 2025
Merged

zNPCTypeBossPlankton & zNPCTypeBossSB2 work#589
SquareMan merged 4 commits intobfbbdecomp:mainfrom
LivewireCB:dev8

Conversation

@LivewireCB
Copy link
Contributor

Did quite a few functions in zNPCTypeBossPlankton and zNPCTypeBossSB2

@github-actions
Copy link

⚠️ 🔥

+3936 bytes
🆗 Bot Rating: Amazing contribution, you are the decomp GOAT 🐐

Regressions: 1

⚠️ main/SB/Game/zNPCTypeBossPlankton - .rodata -1883 bytes -> 26.91%

Progress: 53

📈 main/SB/Game/zNPCTypeBossSB2 - .text +103 bytes -> 30.04%
📈 main/SB/Game/zNPCTypeDutchman - .text +4 bytes -> 32.88%
📈 main/SB/Game/zNPCTypeBossPlankton - .text +2023 bytes -> 43.34%
📈 main/SB/Game/zEntPlayerOOBState - .text +112 bytes -> 6.86%
📈 main/SB/Game/zNPCTypeDutchman - .bss +904 bytes -> 23.84%
📈 main/SB/Game/zNPCTypeBossPlankton - .bss +761 bytes -> 80.70%
📈 main/SB/Game/zNPCTypeBossPlankton - .data +25 bytes -> 71.77%
📈 main/SB/Game/zNPCTypeBossPlankton - .sdata2 +4 bytes -> 69.39%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::Reset() +63 bytes -> 17.02%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::init_beam() +276 bytes -> 82.14%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::setup_beam() +4 bytes -> 1.32%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonAmbush::Enter(float, void*) +16 bytes -> 8.33%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonBeam::Enter(float, void*) +100 bytes -> 97.73%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonIdle::Enter(float, void*) +116 bytes -> 70.73%
main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonAttack::Enter(float, void*) +152 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::kill_sound(int) +4 bytes -> 2.78%
📈 main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::update_move_accel(xVec3&, zNPCBPlankton::move_info&, float) +4 bytes -> 2.86%
📈 main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::kill_sound(int, unsigned int) +4 bytes -> 2.94%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonBeam::Exit(float, void*) +56 bytes -> 96.55%
📈 main/SB/Game/zEntPlayerOOBState - oob_state::@unnamed@zEntPlayerOOBState_cpp@::drop_state_type::update_fade_in(xScene&, float&) +4 bytes -> 3.57%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::reappear() +104 bytes -> 100.00%
📈 main/SB/Game/zEntPlayerOOBState - oob_state::@unnamed@zEntPlayerOOBState_cpp@::reset_camera() +72 bytes -> 81.82%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::RenderExtraPostParticles() +88 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::vanish() +84 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::next_territory() +88 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::sickum() +4 bytes -> 4.55%
main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonIdle::Exit(float, void*) +88 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::Setup() +72 bytes -> 94.74%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::play_beam_fly_sound(xLaserBoltEmitter::bolt&, void*) +72 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::kill_beam_fly_sound(xLaserBoltEmitter::bolt&, void*) +68 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::update_follow(float) +40 bytes -> 58.82%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::ParseINI() +64 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::PostSetup() +32 bytes -> 53.33%
📈 main/SB/Game/zNPCTypeDutchman - @unnamed@zNPCTypeDutchman_cpp@::set_volume(int, unsigned int, float) +4 bytes -> 6.67%
main/SB/Game/zNPCTypeBossSB2 - @unnamed@zNPCTypeBossSB2_cpp@::reset_sound() +56 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::reset_territories() +4 bytes -> 7.14%
📈 main/SB/Game/zEntPlayerOOBState - oob_state::@unnamed@zEntPlayerOOBState_cpp@::set_rect_vert(rwGameCube2DVertex&, float, float, float, iColor_tag, float) +4 bytes -> 8.33%
main/SB/Game/zNPCTypeBossSB2 - @unnamed@zNPCTypeBossSB2_cpp@::tweak_group::load(xModelAssetParam*, unsigned int) +48 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::tweak_group::load(xModelAssetParam*, unsigned int) +48 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::play_beam_fire_sound(xLaserBoltEmitter::bolt&, void*) +44 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::play_beam_hit_sound(xLaserBoltEmitter::bolt&, void*) +44 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::reset_sound() +40 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::SysEvent(xBase*, xBase*, unsigned int, const float*, xBase*, int*) +40 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::check_player_damage() +4 bytes -> 11.11%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::reset_beam() +36 bytes -> 100.00%
main/SB/Game/zEntPlayerOOBState - oob_state::@unnamed@zEntPlayerOOBState_cpp@::drop_state_type::supdate_fade_in(oob_state::@unnamed@zEntPlayerOOBState_cpp@::drop_state_type&, xScene&, float&) +32 bytes -> 100.00%
📈 main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::have_cronies() const +4 bytes -> 12.50%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::follow_player() +32 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::follow_camera() +32 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonAttack::Exit(float, void*) +32 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCGoalBPlanktonAmbush::Exit(float, void*) +32 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - @unnamed@zNPCTypeBossPlankton_cpp@::get_player_loc() +19 bytes -> 100.00%
main/SB/Game/zNPCTypeBossPlankton - zNPCBPlankton::here_boy() +12 bytes -> 100.00%


zNPCBoss::Setup();
zNPCBPlankton::setup_beam();
tmpVar = xStrHash("NPC_NEWSCASTER");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It looks like the regression is because this string comes before all the debug tweak strings the rodata and now the diff algorithm doesn't see the tweak string data as matching. I'm not gonna worry about it for now since this file is clearly very WIP but it might be as simple as a function ordering issue.

@SquareMan SquareMan merged commit 59b5ee6 into bfbbdecomp:main Aug 13, 2025
5 checks passed
LivewireCB added a commit to LivewireCB/bfbb-decomp that referenced this pull request Sep 2, 2025
* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton
SquareMan added a commit that referenced this pull request Sep 22, 2025
* ported zNPCSupport code, zNPCTypeCommon

* build fix

* zNPCTypeBossPlankton & zNPCTypeBossSB2 work (#589)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox, xScrFx & misc (#590)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox work and xScrFx

* Floating point error handler func

* zAssetTypes done for now (#588)

* Progress

* zAssetTypes done for now

* Mark zAssetTypes equivalent

* Couple functions in zNPCMessenger. Misc fixes

* build fix

* xFX work and misc

* Dutchman + misc

* Review Fixes

---------

Co-authored-by: Steven Casper <sebastiancasper3@gmail.com>
JoshSanch pushed a commit that referenced this pull request Oct 3, 2025
* ported zNPCSupport code, zNPCTypeCommon

* build fix

* zNPCTypeBossPlankton & zNPCTypeBossSB2 work (#589)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox, xScrFx & misc (#590)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox work and xScrFx

* Floating point error handler func

* zAssetTypes done for now (#588)

* Progress

* zAssetTypes done for now

* Mark zAssetTypes equivalent

* ported zNPCSupport code, zNPCTypeCommon

* Cleaned code

* Forgot to remove %

---------

Co-authored-by: Steven Casper <sebastiancasper3@gmail.com>
JoshSanch pushed a commit that referenced this pull request Oct 18, 2025
* ported zNPCSupport code, zNPCTypeCommon

* build fix

* zNPCTypeBossPlankton & zNPCTypeBossSB2 work (#589)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox, xScrFx & misc (#590)

* ported zNPCSupport code, zNPCTypeCommon

* build fix

* BossSB2 & BossPlankton

* zTalkbox work and xScrFx

* Floating point error handler func

* zAssetTypes done for now (#588)

* Progress

* zAssetTypes done for now

* Mark zAssetTypes equivalent

* ported zNPCSupport code, zNPCTypeCommon

* Cleaned code

* Forgot to remove %

* zNPCGoalRobo

---------

Co-authored-by: Steven Casper <sebastiancasper3@gmail.com>
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