Mise à jour 2.38
07/06/2026
v2.38.0BETA
Seymour
AURORA : ÉDITER les vrais paramètres de caméra de bataille (angle · distance · position · roll) dans le panneau
- Répondant à « et comment je vois/édite ça ? » : la carte 🎥 Camera a gagné « 🎚 Paramètres de caméra (MODIFIABLES) ». RE (IDA + FFXDataParser cross-check, sur l'indice du propriétaire) : la caméra de bataille est CALCULÉE PAR SCRIPT dans chunk0 — des appels namespace Camera (
camSetPolar(angle,distance),refSetPos(x,y,z),camSetRoll,camSetScrDpt) dont les params sont des constantes FLOAT dans le pool. Nouveau lecteurFfxLib/BattleMap/BattleCameraSetup_File.csextrait chaque appel + résout les floats + les boutons éditables distincts ;WithFloatédite le pool de floats byte-local (même longueur, réutiliseAiScript_File.EditFloatConst), préservant les autres chunks. Le panneau liste les boutons groupés par type (polar/refPos/roll/screenDepth) avec filtre + recherche (la caméra est un script cinématique ~730 coupes par bataille, donc on navigue par groupe/recherche, pas une liste brute), chacun éditable ; « 💾 Enregistrer les paramètres de caméra » applique les floats changés (backup-once + reload). PorteBattleCameraScanLabétendue : 855 bins avec caméra, 623,981 appels, round-trip d'édition float 855/855 (byte-local + réversible). Honnête : éditer un float change TOUTES les coupes qui le partagent ; un angle personnalisé EST dans le fichier (renverse l'ancien « = scène authoring ») ; effet en jeu = RT2. Docdocs/reverse/FFX_BATTLE_CAMERA_SHOT_TABLE_IDA_2026-06-07.md§6. Build 0 erreur
v2.37.3
v2.38.1BETA
Seymour
Monster AI Editor : actions STAT nommées (fin de « stat 0xNN ») — `setStatField` utilise la MÊME table
- Le propriétaire a signalé à l'écran que les stats 📊 montraient encore du brut (« stat 0xDA = 8 »). Finding (cross-check FFXDataParser ScriptFuncLib) :
setStatField(0x70AB)/getStatField(0x70AA) utilisent le mêmebtlActorPropertyindexType quereadChrProperty(0x700F)/writeChrProperty(0x7018) — c.-à-d. la MÊME table de champs ; mon hypothèse d'« espace séparé » était fausse. Pourquoi ils restaient bruts : les ids comme0xDA/0xDB/0xE6ontname=nulldans le parser (seulement uninternalName:stat_round/stat_round_return/stat_attack_inc_speed), et le premierAiChrPropertyNamesne prenait que ceux avec un nom convivial. Fix : régénéré le dict pour inclure le symbole interne du jeu comme repli quand il n'y a pas de nom anglais (222 → 341 champs) et câblé dans la branche stat du détecteur. Maintenant « stat 0xDA = 8 » devient « stat_round = 8 ».FfxLib/Ai/AiChrPropertyNames.cs+AiAutomation(branche Stat viaStatusFieldName). Porte--ai3PASS (4156 stats ; RT0 byte-identique — affichage seulement) ; éditeur 0 erreur. Honnête : les noms anglais sont de la RE publique ; lesinternalNames sont le vrai symbole du jeu (type « unknown » = sémantique fine pas 100% mappée, mais le symbole est honnête et bien mieux que l'hex)
v2.38.0