Skip to content

d_a_npc_uri almost matching#2400

Merged
hatal175 merged 4 commits intozeldaret:mainfrom
hev7:d_a_npc_uri
Apr 19, 2025
Merged

d_a_npc_uri almost matching#2400
hatal175 merged 4 commits intozeldaret:mainfrom
hev7:d_a_npc_uri

Conversation

@hev7
Copy link
Copy Markdown
Contributor

@hev7 hev7 commented Apr 18, 2025

STATIC_ASSERT(sizeof(daNpc_Uri_c) == 0x1018);

struct daNpc_Uri_HIOParam {
/* 0x00 */ f32 field_0x00; // 200.0f
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

instead of putting the float values as comments here, i'd rather put a comment in the actual data initializer with the name of each value. reasoning being the values are supposed to be tweaked and such, while the names arent

mDoMtx_stack_c::ZrotM(mStagger.getAngleX(0));
}

if ((f32)0.0 < field_0x1004) {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

why the cast instead of 0.0f?

void daNpc_Uri_c::chkPlayerGetWoodShield() {
// NONMATCHING
BOOL daNpc_Uri_c::chkPlayerGetWoodShield() {
return g_dComIfG_gameInfo.info.getPlayer().getCollect().isCollect(2, 0);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

should use dComIfGs_isCollectShield in here

if (talkProc(NULL, 0, NULL, 0) && mFlow.checkEndFlow() &&
(s32)mFlow.getEventId(&local_48) == 1)
{
if (mItemId == -1) {
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

since it's an actor ID, you can use fpcM_ERROR_PROCESS_ID_e

Comment on lines 1861 to 1876
s32 daNpc_Uri_c::getBackboneJointNo() {
return 1;
}

/* 80B2CD64-80B2CD74 0066A4 0010+00 1/0 0/0 0/0 .text checkChangeJoint__11daNpc_Uri_cFi
*/
void daNpc_Uri_c::checkChangeJoint(int param_0) {
// NONMATCHING
BOOL daNpc_Uri_c::checkChangeJoint(int param_0) {
return param_0 == 4;
}

/* 80B2CD74-80B2CD84 0066B4 0010+00 1/0 0/0 0/0 .text checkRemoveJoint__11daNpc_Uri_cFi
*/
void daNpc_Uri_c::checkRemoveJoint(int param_0) {
// NONMATCHING
BOOL daNpc_Uri_c::checkRemoveJoint(int param_0) {
return param_0 == 8;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

with these small funcs being all the way here at the end of the TU, i have a strong suspicion they are supposed to be inlined weak functions

@decomp-dev
Copy link
Copy Markdown

decomp-dev bot commented Apr 19, 2025

Report for GZ2E01 (c5f9d8d - 880a10b)

Changes

  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::~daNpc_Uri_c() +248 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::create() +745 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::CreateHeap() +745 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTevKColorAnm::~J3DTevKColorAnm() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTevKColorAnm::J3DTevKColorAnm() +20 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTevColorAnm::~J3DTevColorAnm() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTevColorAnm::J3DTevColorAnm() +20 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTexNoAnm::~J3DTexNoAnm() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTexNoAnm::J3DTexNoAnm() +32 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTexMtxAnm::~J3DTexMtxAnm() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTexMtxAnm::J3DTexMtxAnm() +20 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DMatColorAnm::~J3DMatColorAnm() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DMatColorAnm::J3DMatColorAnm() +20 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::Delete() +48 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::Execute() +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::Draw() +144 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::createHeapCallBack(fopAc_ac_c*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::ctrlJointCallBack(J3DJoint*, int) +85 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::getType() +113 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::isDelete() +140 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::reset() +1116 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::afterJntAnm(int) +204 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::setParam() +368 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::checkChangeEvt() +421 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::setAfterTalkMotion() +176 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::srchActors() +152 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::evtTalk() +156 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::evtCutProc() +196 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::action() +284 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::beforeMove() +193 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::setAttnPos() +828 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::setCollision() +441 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::drawOtherMdl() +213 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::afterSetMotionAnm(int, int, float, int) +52 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::changeBck(int*, int*) +41 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::changeBtp(int*, int*) +41 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::selectAction() +333 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::chkAction(int (daNpc_Uri_c::*)(void*)) +41 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::setAction(int (daNpc_Uri_c::*)(void*)) +165 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::chkPlayerCarryBasket() +113 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::chkPlayerGetWoodShield() +48 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::getTutorialCond(cXyz) +1700 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutConversation(int) +476 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutStartCarryTutorial(int) +548 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutEndCarryTutorial(int) +756 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutConversationWithMoi(int) +416 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutFindWolf(int) +836 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::cutMeetingAgain(int) +760 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::krun(void*) +785 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::wait(void*) +2472 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::walk(void*) +1768 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::sitWait(void*) +1392 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::talk(void*) +580 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_Create(void*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_Delete(void*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_Execute(void*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_Draw(void*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DTexNoAnm::calc(unsigned short*) const +44 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cCcD_GStts::~cCcD_GStts() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::~daNpcT_c() +900 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cXyz::~cXyz() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | csXyz::~csXyz() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_ActorMngr_c::~daNpcT_ActorMngr_c() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_Path_c::~daNpcT_Path_c() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_ActorMngr_c::daNpcT_ActorMngr_c() +56 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cM3dGCyl::~cM3dGCyl() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cM3dGAab::~cM3dGAab() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::daNpcT_c(const daNpcT_faceMotionAnmData_c*, const daNpcT_motionAnmData_c*, const daNpcT_MotionSeqMngr_c::sequenceStepData_c*, int, const daNpcT_MotionSeqMngr_c::sequenceStepData_c*, int, const daNpcT_evtData_c*, char**) +1025 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_JntAnm_c::~daNpcT_JntAnm_c() +248 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_MotionSeqMngr_c::~daNpcT_MotionSeqMngr_c() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | dBgS_AcchCir::~dBgS_AcchCir() +108 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | dCcD_GStts::~dCcD_GStts() +89 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | dBgS_ObjAcch::~dBgS_ObjAcch() +108 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | J3DFrameCtrl::~J3DFrameCtrl() +68 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_JntAnm_c::setEyeAngleY(cXyz, short, int, float, short) +280 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_JntAnm_c::setEyeAngleX(cXyz, float, short) +516 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::afterMoved() +4 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::decTmr() +20 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::getFaceMotionAnm(daNpcT_faceMotionAnmData_c) +44 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpcT_c::getMotionAnm(daNpcT_motionAnmData_c) +44 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cLib_calcTimer<int>(int*) +28 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | cLib_getRndValue<float>(float, float) +60 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | __sinit_d_a_npc_uri_cpp +248 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::daNpc_Uri_c(const daNpcT_faceMotionAnmData_c*, const daNpcT_motionAnmData_c*, const daNpcT_MotionSeqMngr_c::sequenceStepData_c*, int, const daNpcT_MotionSeqMngr_c::sequenceStepData_c*, int, const daNpcT_evtData_c*, char**) +200 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::checkChangeJoint(int) +12 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_c::checkRemoveJoint(int) +12 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | daNpc_Uri_Param_c::~daNpc_Uri_Param_c() +13 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | @36@__dt__12dBgS_ObjAcchFv +8 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | @20@__dt__12dBgS_ObjAcchFv +8 bytes -> 100.00%
  • d_a_npc_uri/d/actor/d_a_npc_uri | dAttention_c::getDistTable(int) +16 bytes -> 100.00%

@hatal175 hatal175 merged commit f63b2db into zeldaret:main Apr 19, 2025
1 check 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.

3 participants