Aggiornamento 2.234
18/08/2026
v2.234.0.0BETAMINOR
Seymour18 ago 2026
Modelli mostro HD persistenti in Aurora: 340 bake `.chr`→glTF (mesh Phyre HD + scheletro PS2 + motion `.mgrp`) texturizzati/animati, Y-up, committati + path persistente relativo al repo. (letterale tecnico: repo-relative)
- Bake regeneration (
phyre_chr_gatepipeline recovered from commita731de5f): 340/341 monsters with real mesh, 328 textured, 237 with PS2 animations (18–25r0g0_..clips), 340 Y-up (--flip-y=flip_rootnode rotation [1,0,0,0] = 180° X). Onlym999(test dummy slot, no mesh) skipped. - Persistenza (richiesta perché gli utenti finali vedano mostri+texture): gli asset ~892MB spostati fuori da
work/(gitignored) inRuntimeTools/FFXModelAssets/chr/<id>/(committati). Nessun nuovo prefisso: l'EditViewer Aurora è servito dapython -m http.serverAT THE REPO ROOT (python does no prefix-mapping) -> the anchor path is REPO-RELATIVE. - Path ancora nell'editor:
AuroraChamber_DataModelora emette/RuntimeTools/FFXModelAssets/chr/m{id:D3}/m{id:D3}_animated.gltf(era/work/phyre_chr_anim/models/...). Richiede rebuild editor; ricaricare l'EditViewer per vedere i nemici come modelli (non più sfere). - Catalogo:
RuntimeTools/FFXModelAssets/catalog.json(340 voci, flag animated/textured). - Tooling: il runner rigenerabile
work/phyre_chr_anim/BakeBatch.ps1+ il tool recuperatowork/phyre_chr_gate_build/restano inwork/(gitignored); gli ASSET (risultato) sono committati. (letterale tecnico: ASSETS) - Onesto (limiti lane-HD): (letterale tecnico: HD-lane) (letterale tecnico: limits) la texture è il
.dds.phyreprimario; ~12 mostri non texturizzati di proposito (nessuntex/nel manifest); T-pose per quelli senza motion propria (237/340 animati); possibile torsione residua nel bind offline (A1/frame0/matrixParents già applicati — giudicare a schermo).AuroraFieldExplorer_ChrModelResolverresta su/work/(categoria separata npc/pc/sum/obj/wep, fuori scope). - Riconciliazione bump: assorbito il bump PATCH
v2.233.1.0(altra lane, csproj conteso) nel MINOR2.234.0.0; voci in CHANGELOG/changelogUS/VERSIONING. - Gates: build editor 0 errori (455 warning pre-esistenti); (letterale tecnico: pre-existing)
StringsIntegrityTests3/3 (non toccato). Validazione visiva RT2 in sospeso (rebuild + re-render manuale).
v2.233.1.0
v2.234.0.1BETAPATCH
Seymour18 ago 2026
Fix encoding + crash al caricamento del progetto: (letterale tecnico: project-load)`FfxEncoding.us.cs` rigenerato dalla baseline (UTF-8+BOM, caratteri corretti) con `UsEncoder` deduplicato (chiavi duplicate `char` facevano il `Dictionary<char,byte>` lanciare `ArgumentException` quando `FfxEncoding` veniva inizializzato durante `KernelMonsterMagicLiveSync` al caricamento del progetto); 279 `.cs` convertiti da cp1252 dallo script banner convertiti in UTF-8+BOM (prevengono il mojibake delle stringhe con default UTF-8 di SDK-10). (letterale tecnico: cp1252-ified)
- Causa radice crash:
UsEncoderinFfxEncoding.us.csaveva chiavicharduplicate (bug latente pre-esistente; ~192 voci). Un (letterale tecnico: pre-existing) (letterale tecnico: A)Dictionaryrifiuta chiavi duplicate → il ctor statico diFfxEncodinglanciava al primo uso (ora innescato daKernelMonsterMagicLiveSync.SyncProjectall'apertura di un progetto). Fix: rigenerareus.csdalla baseline (d91986a1) e dedup first-wins diUsEncoder. La baseline aveva già 56 chiavi dup — latenti, solo ora esposte. - Mojibake: lo script banner toglieva i BOM e cp1252-izzava i file UTF-8 con byte alti. 279 (letterale tecnico: cp1252-ified)
.csconvertiti a UTF-8+BOM (lossless) così SDK-10 (legge senza BOM come UTF-8) decodifica le stringhe correttamente. (letterale tecnico: BOM-less) - Gates: build 0 errori; l'editor si apre e carica un progetto senza crash.
v2.234.0.0
v2.234.1.0BETAPATCH
Yuna18 ago 2026
Aurora RealGame: fallback similarità contenuti in (letterale tecnico: content-similarity)`EncounterIndexBridge`; sblocca Open RealGame per le battaglie senza bin 0e/ byte-identico. (letterale tecnico: byte-identical)
- Causa radice: Open RealGame "non si apriva nemmeno" per
bika02_00perchéEncounterIndexBridge.TryResolverichiedeva un match SHA-256 byte-identico a un (letterale tecnico: byte-identical)0e/<id>.bin. Delle 858 battaglie vanilla, solo 614 hash-matchano l'estrazione 0e/ del noclip (817 bin); 244 restano SEM MATCH →BuildBattleUrlrestituivanull→ la finestra viewer non veniva mai creata. - Fix (provato da 3 fonti): nuovo fallback similarità a blocchi da 256 byte (FNV-1a, stile rsync) (letterale tecnico: block-similarity) (letterale tecnico: rsync-style) in
EncounterIndexBridge.Build— per ogni battaglia senza SHA esatto, scegliere il0e/con il maggiore overlap di blocchi, e se la frazione ≥MinSimilarityScore(0.50) registrarlo inBattleIdToNearestEncounter, sbloccando 191 delle 244 non corrispondenti.TryResolve/IsSimilarityResolvedespongono il fallback;Aurora3DLauncher.BuildBattleUrlriporta "approx match (similarity)" con onestà nello status. - Evidenza: (1) Python
work/probe_bika_v5.py:bika02_00 → 00d0.binscore 0.98 (91/93 blocchi), global 191/244 sbloccati; (2) Pythonwork/probe_bika_v6.py:bika02_00==00d0.binal 99.75% byte identici con gli stessi id mostro — lo STESSO incontro, solo estratto 32 byte più piccolo; (3) C# (letterale tecnico: SAME)RuntimeTools/Aurora3DLinkLab(build+run exit 0):bika02_00 -> 0e/00D0.bin via=SIMILARIDADE, altre probe intatte (azit03_00esatto,sfia00_00onestamente SEM MATCH). - Gates: build 0 errori (editor + lab). Non committato (worktree sporco multi-lane + RT2 in-game in sospeso), per regola di lane. L'override (letterale tecnico: dirty) (letterale tecnico: rule.)
0e/mantiene comunque il suo backup.aurora3d.bak.
v2.234.0.1