Update 2.185
30.6.2026
v2.185.0.0BETAMINOR
Seymour27. Juni 2026
Overdrive: „LAB"-Tag entfernt + Per-Step-Target-Selector
- LAB" aus allen benutzersichtbaren Overdrive-Block-Strings entfernt. Jeder Finisher-Sequenz-Schritt hat jetzt einen eigenen Target-ComboBox (Random frontline / Lowest HP).
AddOverdriveFinisherSequenceverlortemplateundfallbackTarget-Params — jeder Befehl trägt sein eigenes Target.OverdriveFinisherStep-VM-Klasse. Build 0 Fehler. RT0-Gate 330/330 PASS
v2.184.1.0
v2.185.1.0BETAPATCH
Wakka26. Juni 2026
Arena+ Cross-Map-Deferred-Restore: Zufallsbegegnungs-Bins nicht korrumpieren
- Fügt
ArenaPlus_ArmDeferredFileRestore+ArenaPlus_TickDeferredFileRestorein dllmain.cpp hinzu. Nach erfolgreichem Cross-Map-781D60-Launch armiert einen ~30s-Timer (1800 Frames). Bei Ablauf stellt.spiraforge.baküber den komponierten Bin wieder her. Ursache: Cross-Map-Deploy (z. B. Macalania Forest) schrieb Dark Aeons inmcfr00_00.bin, das auch eine Zufallsbegegnungs-Formation ist — Zufallsbegegnungen spawnen Dark Aeons statt normaler Feinde. DLL gebaut + deployed
v2.185.0.0
v2.185.4.0BETAPATCH
Sin27. Juni 2026
Sin Flüche Lab v2: AiQueryProperty entfernt, SinScaleInject v2 CLI, Docs
- AiQueryProperty-Hook (RVA 0x3B2DD0) entfernt — war FFX_Battle_AggregateActorProperty, Detour crashte Menü. F7-Zone-Submenü zurückgesetzt. g_sinPreset[93] VAR behalten. SinScaleInject v2 CLI: --area, --seed, --intensity, --save-clean, --restore, --dry-run, XorShift32-RNG, HP/Stats-Skalierung. ATEL-Injection deaktiviert (AiInstruction-Rewrite ausstehend). Docs: SIN_CURSE_LAB_SESSION_2026-06-27.md (13 Abschnitte), SIN_CURSE_V2_BIN_FIRST_PLAN_2026-06-27.md (.bin-first-Plan)
v2.185.3.0
v2.185.5.0BETAPATCH
Sin27. Juni 2026
Sin Flüche Lab v2: SinScaleInject funktioniert + Hook vereinfacht
- SinCurseHook.cpp: MonsterLoad, SetScaleAxis, AiQueryProperty, LaunchRestore entfernt. btlmap-Filter. CREATE_NO_WINDOW. SinScaleInject v2 nutzt Monster_StatSheet.ReadSingle/WriteSingle. Saubere Bins aus Repo neu generiert. 62 verwaltete DLLs deployed
v2.185.4.0
v2.185.6.0BETAPATCH
Sin27. Juni 2026
Sin Lab v2.1: Code-Review + Bugfixes + Threat-Sync
- SinScaleInject: Kernel-Namen jetzt vor jedem
--areaaus Clean wiederherstellen (ProcessArea, SaveClean, RestoreAll). SaveClean und RestoreAll decken jetzt kernel/monster*.bin ab. RNG mit C++ abgeglichen:seed = seed ^ (seed << 16). g_sinPreset[93] entfernt (toter Code). time(nullptr) aus Seed entfernt (deterministischer RNG). kAreaTable (C++) und AREA_T (C#) mit CSV-Threat-Caps synchronisiert: 14 Werte korrigiert, tMin=0 immer, Regionen hinzugefügt (zanarkand, postgame, thunder_plains_cross, macalania_bosses)
v2.185.5.0
v2.185.7.0BETAPATCH
Rikku28. Juni 2026
UI-Politur: weichere Palette + sichtbare Auswahl
- StudioTokens.axaml-Akzent
#5DD0B4→#2A9D8F, ruhigere Fills/Borders, StudioTheme.axaml ListBox-Auswahl#15323B→#1A3040mit sichtbarem 1px-Rahmen. Auswahl/Tab/Expander/Status-Tokens aktualisiert. Release-Build 0 Fehler
v2.185.6.0
v2.185.8.0BETAPATCH
Sin28. Juni 2026
SIN-Patch-Review-Follow-up: CLI-Härtung + Hook-Build-Sanity-Gate
SinScaleInject:--restore-areaerfordert jetzt eine ID; ungültige--seed,--tund--intensityschlagen früh mit klaren Meldungen fehl; negatives--twird abgelehnt;--intensityauf0..100begrenzt;MonsterStatSheetStruct.StatSheethat jetzt einen Default-Init, um die Nullability-Warnung zu entfernen.build_hooks.ps1: hältversion.resviacl.exeeingebettet und lehnt jetzt PolyHook-Builds ab, wenn die finaleffx-hooks.dllverdächtig klein herauskommt, wodurch stille Artefakt-Regressionen verhindert werden. Review/Follow-up indocs/ai/SIN_PATCH_REVIEW_2026-06-28.mddokumentiert
v2.185.7.0
v2.185.9.0BETAPATCH
Sin28. Juni 2026
SinScaleInject sauber nach `modules\\tools` deployen
- Neues
RuntimeTools/SinScaleInject/deploy-sinscaleinject.ps1veröffentlichtSinScaleInjectin einen sauberen Ordner und ersetztmodules\\tools\\SinScaleInject\\mit einem minimalen Standalone-Payload (SinScaleInject*,SinCoreLib.dll,Xe.BinaryMapper.dll), wodurch der versehentlicheFFXProjectEditor.exe/Avalonia-Drag aus dem Spielordner entfernt wird.Program.csleitetGameRootjetzt ausAppContext.BaseDirectoryab, wenn es ausmodules\\tools\\SinScaleInjectläuft, sodass es nicht mehr vom hartkodiertenSteamLibrary\\...für In-Game-Datenpfade abhängt. Lokal validiert: Release-Build0 errors / 0 warnings, sauberes Publish und echter Deploy in den Spielpfad. Status:Needs TestingIn-Game; Repo-Pfade (clean-base/roster-dir) bleiben maschinenlokal by design
v2.185.8.0
v2.185.10.0BETAPATCH
Lulu28. Juni 2026
Monster AI Phase Rotation: stabile Variablen-IDs + sofortiger Battle-Start-Opener
- Der
Phase Rotation Managerleitetvar[N]nicht mehr aus einem textuellenIndexLabel-Parse ab:AiPhaseVariableAuditRowträgt jetzt eine stabile numerischeVariableIndex, und die UI zeigtID###direkt, sodass Aliase/Text nicht mit der echten Variablen-ID verwechselt werden können. Phasen mitAs soon as the battle startsemittieren jetztforcePerformCommand (0x705A)stattperformCommand (0x700B), sodass der Opener nicht von der regulären Aktions-Queue während des Starts abhängt.RuntimeTools/AiScriptLab --phase-rotation-rt0enthält jetzt einen Battle-Start-Opener-Fall und PASST weiterhin319/319; der Editor-Release-Build schloss mit 0 Fehlern. Status:Needs Testingin-game, besonders Opener-Reihenfolge/Animation und der echtem020-Fall
v2.185.9.0
v2.185.11.0BETAPATCH
Lulu28. Juni 2026
Monster AI Phase Rotation: portable Authoring-IDs + nicht-destruktive Var-Materialisierung
- Der
Phase Rotation Managertrennt jetzt diereal IDjeder Variable von derauthoring/template ID: die UI zeigt beide, speichert die bevorzugte ID in lokalen Metadaten und lässt Rezepte ein höheresvar[N]anfordern, ohne Aliase mit dem echten Operanden zu verwechseln. Beim Anwenden materialisiert der Editor zusätzliche Deskriptoren, indem er Aliase für denselben Storage/Slot anhängt, ohne bestehende Vars zu überschreiben; wenn die angeforderteIDbereits von einer anderen Variable belegt ist, wandert das Rezept zum nächsten freien Index. Phasen-Guards werden ebenfalls auf den materialisierten Index umgemappt.RuntimeTools/AiScriptLab --var-growbleibt PASS185/185und--phase-rotation-rt0bleibt PASS319/319; der Editor-Release-Build schloss mit 0 Fehlern. Status:Needs Testingin-game, besonders Rezept-Import/Export über Monster mit unterschiedlichen Var-Tabellen
v2.185.10.0
v2.185.12.0BETAPATCH
Lulu28. Juni 2026
Monster AI Phase Rotation: echte Top-Insert-Battle-Start + `forcePerformCommand`-Round-Trip
- Der
Phase Rotation ManagerbehandeltAs soon as the battle starts-Schritte jetzt als physische Top-Insertion am Entrypoint statt nur ein neues Block am Ende des Codes zu verketten. Das hält den Opener buchstäblich über dem älteren Handler-Body und reduziert denm020-Fehlermodus, bei dem eine sofortige Aktion den Pass vor den verbleibenden Openers verbrauchen konnte. Der Draft-Reader erkennt jetzt auchforcePerformCommand (0x705A), sodass das Wiederöffnen/Neuanwenden von Opener-Rezepten diese Blöcke nicht mehr ignoriert.RuntimeTools/AiScriptLab --phase-rotation-rt0bleibt PASS319/319und der Editor-Release-Build schloss mit 0 Fehlern. Status:Needs Testingin-game, besonders die echtem020 - Teste Não Funcional 2.bin-Öffnungsreihenfolge
v2.185.11.0
v2.185.13.0BETAPATCH
Lulu28. Juni 2026
Monster AI Phase Rotation: AI-Battle-Start deaktiviert; ehrlicher Trigger zu Pending-Runtime/CTB-Edge-Arbeit verschoben
- Der
Phase Rotation Managertut nicht mehr so, als seiAs soon as the battle startsein sicherer Gameplay-Trigger innerhalb derAiFile. Der Writer lehnt jetztBattleStart-Apply-Versuche ab, die UI benennt diesen Pfad alsCombatHandler init (disabled LAB)um, und Warnungen zeigen auf die korrekte Route: einen Runtime-Hook an der CTB-Edge für das gewünschte „nach jedem gültigen Zug" Verhalten.RuntimeTools/AiScriptLab --phase-rotation-rt0wurde auf ein vollständigesonTurn-Rezept zurückgebracht und PASST weiterhin; die lokalem020.bin-Testdatei wurde außerhalb des Repos auf die saubere Baseline wiederhergestellt
v2.185.12.0
v2.185.14.0BETAPATCH
Lulu29. Juni 2026
Monster AI Phase Rotation: echter `AfterAnyValidTurn`-Dispatch an der CTB-Edge
PhaseTurnEdgeHookist nicht mehr Probe-only: der Runtime-Callback löst jetzt den Edge-Actor auf, leitet das Live-m###ab, scannt jeden passenden Sidecar-Eintrag für dieses Monster und queued die authored commands über die strukturelle Brücke (resolveTargetMask -> queue script command) im selben CTB-Edge-Kontext. Die Runtime hältonlyOnce-State proentry x actorSlot, setzt diesen State zurück, wenn sich die Battle-Signatur ändert, und loggt jetzt echten Dispatch-Erfolg/Fehler statt nur Probe-Lines. Im Editor werdenAfterAnyValidTurn-Sidecars jetzt in diemodules\\configdes Spiels exportiert, wenn das ProjektGameInstallRootauflösen kann, und die UI/Warnungen wurden gehärtet, um den wahren Umfang zu spiegeln: Runtime v1 = sofortiger Command-Dispatch, am besten als One-Shot;guardVarist weiterhin Metadaten, kein Out-of-Turn-Var-Mutationspfad.RuntimeTools/PhaseTurnEdgeLabwurde auf das echten6/a2-Log-Format synchronisiert. Status:Needs Testingin-game — Offline-Builds sind grün, RT2 ist noch ausstehend
v2.185.13.0
v2.185.15.0BETAPATCH
Seymour29. Juni 2026
Obsidian-Vault + Docs-Frontmatter + Tooling-Infra
- Obsidian-Vault am Repo-Root konfiguriert: graph.json mit 11 Farbgruppen nach Ordner/Tag, CSS-Snippets (colorful-graph, colorful-folders) mit Graph-Glow und lebendigen Farben. docs/obsidian-vault/ mit 30+ vernetzten Notizen (Hubs, RE-Notizen, Battle AI, Spira Reforge, Sessions, Referenzen) + 4 Mermaid-Diagramme (SinScaleInject-Architektur, Phase-Rotation-Flow, ATEL-VM, Monster-Worker-Struktur). DeepSeek-Organizer verarbeitete ~1900 .md-Dateien und fügte Frontmatter (tags, aliases, date) hinzu, um die Graph-Ansicht zu bereichern. 5 FFX-Spezialist-Skills erstellt (monster-ai-specialist, runtime-hooks-engineer, wpf-module-architect, re-ida-analyst, data-diff-patch-engineer) mit Auto-Routing in AGENTS.md. GitHub-MCP mit Env-Var-Token + .bashrc-Update konfiguriert. .gitignore aktualisiert (.mcp.json eingeschlossen). Standardisiertes Frontmatter zu AGENTS.md hinzugefügt
v2.185.14.0
v2.185.16.0BETAPATCH
Seymour29. Juni 2026
Monster-Stat/Knete/AP-Rebalance: Macalania, Bikanel, Calm Lands + 7 OD-Designs
- Schmelke (m026) und Mafuto-Panzer (m004) nach Familienmustern gebufft. Kaktor (m208) gebufft (HP 800→1500, AGI 24→40, MDEF 255 behalten). Calm Lands: AGI und Sekundär-Stats für 10 Monster gebufft. Knete/AP über 3 Gebiete erhöht (Macalania, Bikanel, Calm Lands) mit OD-Bonus. APovk auf 2× standardisiert. 7 ODs entworfen: Mushu Fushu (Sand Breath), Montisaurus (Sonic Storm), Kaktor (10,000 Needles), Quahl (Blaster Cannon), Chimära-Hirn (Mighty Guard + Psychic Storm), Ogre (Ogre Smash×2). 4-Target-Sync (repo/steam/extract/clean-bins) als Projektregel dokumentiert
v2.185.15.0
v2.185.17.0BETAPATCH
Seymour30. Juni 2026
Monster AI Phase Rotation P1+P2 + Seymor RE zweite Schicht + IDU-Editability-Vorschlag
- Branch-sensitiver Reader P1+P2:
AiDetectedBranchActionträgt jetztTargetProvenance/CommandProvenancemit pfadlokaler Provenance, die der Walker erhält (PUSHV/POPV, findMatchingChr).Monster AI Editor-UI zeigt mehrzeilige read-only-Blöcke mit cmd/target/label-Ursprüngen. 0 Build-Fehler, RT0 PASS. Seymor m124: zweite Schicht RE komplett — Opcode 0x6051 (SetupWaitTimer) via CTB-Countdown identifiziert, 0x604D (MenuAnimationKind) gemappt, 0x604B (BattleEventString) als String-Tabelle mit internem Maschinencode strukturiert. CTB-Setup-Flow untersucht: Battle-Start-Event 0x01→0x704A (QtMG/Engine-Scripting-Layer), nicht reines ATEL. Indirect Dispatch Unit: Recherche komplett — 57 indirekte Tabellen, 147 Dispatch-Operationen, visueller Editor-Vorschlag. Home (Gundappo): azit03-Formationen committed. Knowledge Base + FastEntrypoints + Session Handoff synchronisiert
v2.185.16.0
v2.185.18.0BETAPATCH
Seymour30. Juni 2026
Seymour-Opener-Beweis in Bible/Atlas + In-App-Guardrail
- Das
Shell/Protect before the party acts-Opening ist jetzt ohne externe Hooks geschlossen:mcyt06_00 ?StartEndHooks2::HookStartsetztAllMonsters.FirstStrike = true,AllMonsters.CurrentTurnDelay = 0,Monster#01.CurrentTurnDelay = 1und schiebt Party/Reserven um+2; mit der echten Formationslot0=m141,slot1=m124,slot2=m141,slot3=m125beweist das, dass der Opener ein encounter-getriebenes natives Setup ist, kein versteckter lokaler Seymor-performCommand-Trick. Der Befund wurde in die dauerhaften Docs (ATEL Bible,Monster AI Corpus Atlas) und in die In-App-BIBLE OF SPIRAviaAiBibleCatalogaufgenommen, mit ehrlicher Produktgrenze:Battle Corpus Crosswalk/Aurorakönnen dies read-only anzeigen, aberHookStart/ initiale CTB-Seed-Authoring ist weiterhin keine öffentliche Writer-Oberfläche. Konsolidierte Seymour-Native-Proof-Docs wurden mit dem Paket versioniert
v2.185.17.0