Mise à jour 2.23
07/06/2026
v2.23.0BETA
Seymour
NOM DE SORT dans les visualiseurs de magie (PS3 Magic HD) : jointure best-effort (autorisée par le propriétaire)
- Le propriétaire m'a dit d'afficher le nom même sans la jointure prouvée au niveau octet (« agora é pra fazer caralho », 2026-06-07 — un override explicite de la règle de non-fabrication). Nouveau
MagicSpellNameResolver(FfxLib/Dictionaries) : magic_#### (id 0..1023, 12-bit) → essaieCommandCharacter→CommandMonster1→CommandMonster2→Item(tousDictionary<ushort,string>), renvoiename ~source(ex.Firaga ~char-cmd) oumagic_####quand non mappé. Câblé dans PS3 Magic (HD) (Ps3MagicBrowser) :Ps3MagicEntry.SpellNameDisplaydevient le titre de la liste + l'en-tête de détail, et la recherche correspond par nom. Honnête : le~sourcele signale comme une hypothèse NON prouvée au niveau octet (le catalogue dit « no names proved ») ; le propriétaire vérifie à l'écran et nous affinons l'offset/dict si un nom est faux. Build 0 erreurs
v2.22.0
v2.23.1BETA
Seymour
Formation Editor : les slots pré-remplis affichent désormais le nom du monstre (fix d'affichage au chargement)
- Le propriétaire a signalé que les 8 slots de formation s'ouvraient avec une ComboBox VIDE pour les slots qui avaient déjà une valeur (10DEh/10E2h bruts) — le nom n'apparaissait qu'APRÈS avoir choisi manuellement (même les slots vides FFFFh affichaient du vide au lieu de « (Vazio) »). Cause : un piège d'Avalonia — le
SelectedItemdéfini au chargement (initialiseur d'objet) est appliqué avant que les ComboBox par ligne matérialisent leurItemsSource(lié via RelativeSource), donc la sélection ne se résout pas et reste vide. Correctif : après avoir rempliSlots, ré-appliquer chaqueSelectedMonster(bascule null→valeur) sur unDispatcher.UIThread.Post(..., Background)pour que la ComboBox re-résolve contre une liste Items peuplée. Gardé parslotsSyncingpour ne pas marquer dirty (le chargement reste « Modifié: false » jusqu'à une vraie édition). Build 0 erreurs
v2.23.0
v2.23.2BETA
Seymour
Aurora : « Recharger la bataille depuis le disque » (reflète les sauvegardes des autres modules sur la carte)
- Le propriétaire a édité la formation dans le Formation Editor et les monstres n'apparaissaient pas sur la carte Aurora. Investigation : le pipeline est correct — Aurora lie
formation slot[i] → monster-live anchor[i]avecMonsterId/Model(/work/phyre_chr_anim/models/mNNN/mNNN_animated.gltf, 340 modèles HD existent, URL de racine serveur correcte). La cause était l'état en cache :RefreshCatalogne recharge que la liste de scènes, PAS les octets de la bataille ouverte — donc une édition de formation faite ailleurs ne se reflétait pas avant de re-sélectionner. Correctif : nouveauReloadSelectedBattle()(relance la lecture de la bataille = relit la formation chunk2 + les ancres chunk3 depuis le disque) + un bouton «🔄 Reload battle from disk » à côté de « Render ». (Battle Explorer avait déjà « Refresh » + recrée du neuf à chaque navigation — A était déjà là pour lui.) La cause racine combinée de « Modifié: False » + « pas de monstres sur la carte » était la sauvegarde de formation qui ne persistait pas — corrigée dans v2.23.1 (combo-blank). Build 0 erreurs
v2.23.1
v2.23.3BETA
Seymour
Formation Editor : un monstre AJOUTÉ à un slot vide hérite désormais du drapeau « live on field »
- Le propriétaire a ajouté des monstres aux slots 04-07 et ils n'étaient pas reconnus comme vivants (Aurora « only 4 live monsters »). Preuve à l'écran : les slots d'origine (00-03) portent
10DEh/10E2hbruts (nibble haut0x1000) ; les ajoutés sortaient0030h/0136h(nibble haut0x0000).0x1000est le drapeau monstre-de-formation-ACTIVE — l'écrivain estampillait0en remplissant un slot qui étaitFFFFh. Correctif (FormationSlotRow) : en remplissant un slot vide, hériter du nibble haut d'un slot vivant FRÈRE de la même bataille (par-bataille, sans deviner ; défaut0x1000si la formation était entièrement vide). Toujours sûr au niveau octet slot-only (porte FormationSlotLab 858/858). Diagnostic supplémentaire (PAS un bug côté sauvegarde) : sauvegarde et lecture utilisent le MÊME chemin (GetPathBattle) ; le problème était la VALEUR, pas le côté. Honnête : (1)0x1000=live est une hypothèse fondée sur des preuves à l'écran — testez en jeu ; (2) la MAP Aurora ne montre que les ancres de monstre que l'ARÈNE (chunk3) définit (ex. 4) — ajouter un monstre au-delà nécessite une nouvelle ancre d'arène (l'édition d'arène = hors de la portée de ce fix). Build 0 erreurs
v2.23.2