You can find an interesting function by searching for the string miniMapMode and finding the xref to it.
If you look at the parameters to the function at 140a1b620 rdx (2nd param) is a label and and r8 (3rd param) is usually a static address.
Example: FUN_140a1b620(param_1,"miniMapMode",(longlong)&DAT_142268b74,4,4,(uint *)0x0);
So statically by iterating through the refs to 140a1b620 or perhaps dynamically hookig it and getting the params you can build the attached table.
I did this in Ghidra by highlighting the function and running the Windows->Script Manager->Functions->ShowCCallsScript.java then some search and replace to have the following to add those addresses to the table. I figure there are better ways but this might help anybody looking for a pointer to more obscure functionality, you'll have to figure out the datatype(byte,bool,word, etc) it may be passed to the function but I didn't look into that, and what it actually does on your own, while not every one will change something, finding out what writes to them often will lead to something interesting. For those interested, you can also see what the internal name is for many of the variables that are already in the cheat table in the OP.
Code: Select all
refvars = {
["quizdata"]=0x142211cf8,
["saveSpace"]=0x142212780,
["skill_point"]=0x1422184c0,
["selected_node"]=0x1422184c4,
["skill_state"]=0x1422184e0,
["atelier_making_data"]=0x1422187e0,
["eventFlag"]=0x14221d268,
["item"]=0x14221d654,
["recipe"]=0x14221e670,
["monster"]=0x14221ed48,
["fieldMap"]=0x14221f028,
["potential"]=0x14221f4d8,
["eff"]=0x14221fe90,
["party"]=0x142222d6c,
["hasPastAppDatas"]=0x14221c1a0,
["saveData"]=0x14218bc80,
["value"]=0x142222e10,
["battleExp"]=0x142223010,
["mixExp"]=0x142223014,
["winBattle"]=0x142223020,
["loseBattle"]=0x142223024,
["escapeBattle"]=0x142223028,
["maxDamage"]=0x14222302c,
["outgoingDamage"]=0x142223030,
["incomingDamage"]=0x142223034,
["jumpNum"]=0x142223038,
["swingNum"]=0x14222303c,
["useMoney"]=0x142223040,
["getMoney"]=0x142223044,
["killEnemy"]=0x142223048,
["useItem"]=0x1422231b8,
["mixItem"]=0x1422239c6,
["harvestItem"]=0x142223d32,
["getItem"]=0x142224540,
["harvestItemNum"]=0x142224d4e,
["harvestNum"]=0x14222555c,
["rockBreak"]=0x142225560,
["treeKnock"]=0x142225564,
["fishing"]=0x142225568,
["slingshot"]=0x14222556c,
["moveDistance"]=0x142225570,
["num_mix"]=0x142225578,
["num_rebuild"]=0x14222557c,
["num_mix_key"]=0x142225580,
["num_mix_linkcall"]=0x142225584,
["num_keymake_battle"]=0x142225588,
["num_keymake_landmark"]=0x14222558c,
["ver"]=0x14222598f,
["costumeFlag"]=0x142225788,
["newCostumeFlag"]=0x142225988,
["currentCostume"]=0x1422256e0,
["isNew"]=0x142225888,
["openCostume"]=0x142225989,
["currentGlassesCostume"]=0x142225718,
["currentHeadBandCostume"]=0x142225750,
["feeding_data"]=0x142226e80,
["LambRoastV4_V2SelectedChara"]=0x14218bce4,
["LambRoastV4_V3SelectedChara"]=0x14218bce8,
["checkLibraryItem"]=0x142231a10,
["checkLibraryMonster"]=0x1422319f8,
["checkLibraryEff"]=0x142231aa0,
["checkLibraryPot"]=0x142231c30,
["checkLibraryBaseMatEff"]=0x142231a98,
["checkLibraryGlossary"]=0x142231c18,
["checkLibraryTutorial"]=0x142231c80,
["checkLibraryTips"]=0x142231c90,
["checkLibraryMemories"]=0x142231ca0,
["wishItem"]=0x142231cb0,
["wishMonster"]=0x142231d38,
["wishEff"]=0x142231d50,
["wishPot"]=0x142231ed0,
["wishBaseMatEff"]=0x142231ec8,
["mix_recipe_status"]=0x142231f30,
["SpontaneousQuest"]=0x142232700,
["RcvQuest"]=0x142233150,
["isClearedSpontaneousQuest"]=0x142232650,
["plantDataTbl"]=0x142234800,
["objectStatusTbl"]=0x142249da0,
["secretkey_general"]=0x142250640,
["secretkey_innocent"]=0x142250b40,
["enable_exec_key_make_num"]=0x142250630,
["last_create_key_tag"]=0x14218bd00,
["m_dlcbgm_data"]=0x142258550,
["short"]=0x14225c3d0,
["execFlag"]=0x142264600,
["date"]=0x142265740,
["eventFlag"]=0x142265310,
["questRecievedDate"]=0x1422656fc,
["m_userDataFMCollectNum"]=0x142268b68,
["m_userDataCheckBarrelCount"]=0x142268b6c,
["m_behaviorStatus"]=0x142268b70,
["m_presentedDate"]=0x142269370,
["m_isChangedWeather"]=0x142268b80,
["miniMapMode"]=0x142268b74,
["m_landmarkEnergyLastUsedTime"]=0x142268c20,
["m_isUsedLandmarkKeyMake"]=0x142268b78,
["userMapMaker"]=0x142268de8,
["m_bitMemoriesFound"]=0x1422694c8,
["m_bitMemoriesComplete"]=0x1422694d8,
["m_treasureBoxOpenNum"]=0x142268e20,
["m_deerStumpData"]=0x1422694f0,
["m_curAdvKeyEff"]=0x14218bd44,
["m_curAdvKeyEffRemainTime"]=0x1422692d4,
["m_curAdvKeyEffInitTime"]=0x1422692d8,
["m_isArrangedAdvKeyEffEnemy"]=0x142268c1a,
["m_advKeyEffEnemyData"]=0x1422692f8,
["m_portalUsedMap"]=0x14218bd4c,
["m_v3PortalUsedPos"]=0x14226a410,
["m_portalUsedBehavior"]=0x14218bd50,
["cookingRawEffects"]=0x142269310,
["cookingEffInitTime"]=0x1422692ec,
["cookingEffRemainTime"]=0x142269328,
["item_basket_units"]=0x14226a4a0,
["item_basket_impt_units"]=0x142279ea0,
["item_container_units"]=0x142281ba0,
["item_container_impt_units"]=0x1423ba320,
["item_container_expen_units"]=0x1423c2020,
["mix_gem"]=0x1423c6bec,
["m_squad"]=0x1423c6c50,
["m_battleMember"]=0x1423c6c88,
["m_nLifePoint"]=0x1423c6ca4,
["m_coreShard"]=0x1423c6cc0,
["m_dualGauge"]=0x1423c6cc4,
["m_orderDriveData"]=0x1423c6de8,
["m_btlControllerIndex"]=0x1423c6c9c,
["tips"]=0x1423cd8e0,
["basetag"]=0x1423cd970,
["appeared"]=0x1423cd9b0,
["ardraAnimTag"]=0x1423cd9d8,
["ardraColor"]=0x1423cd9dc,
["ardraAnimEndTime"]=0x1423cd9e0,
["version"]=0x1423cd9e8,
}
function addrefvars(lrefvars)
local al = getAddressList()
for refaddr, refname in pairs(lrefvars) do
local rec = al.createMemoryRecord()
rec.setAddress(string.format("%X",refname))
rec.setDescription(refaddr)
end
end
addrefvars(refvars)