fix: positive special_portrait fälschlich als Sonderbild-ID behandelt #26

Merged
DasAoD merged 1 commit from fix/special-portrait-sign into main 2026-08-10 01:15:03 +02:00
Owner

Problem

Nach PR #25 zeigte VIDEL (Equilibrium) plötzlich ein Portrait — aber das falsche: das Bild einer völlig anderen Person.

Ursache

Live-Check über alle 5 Gilden zeigt: special_portrait: 5 kommt bei zwei unterschiedlichen, ganz normalen Spielern vor (VIDEL und "Better Call Saul" in Equilibrium), beide mit vollständig gefüllten übrigen Portrait-Feldern (Haare, Augen, Bart, ...). Das kann keine eindeutige Bild-ID sein — offenbar ein unabhängiges Flag mit anderer, ungeklärter Bedeutung.

Der bisherige Check (special_portrait !== 0) hat jeden Nicht-Null-Wert als Sonderbild-Referenz behandelt und dadurch für VIDEL fälschlich special5.webp geladen (das Bild einer fremden Person), obwohl die normalen Portrait-Felder für eine korrekte Komposition vorhanden gewesen wären.

Nur negative Werte sind tatsächlich eine Bild-ID (siehe PR #25, ZsombeyHD: special_portrait: -259 → special259.webp, verifiziert gegen sfportrait.12hp.de).

Änderung

Check von special_portrait !== 0 auf special_portrait < 0 korrigiert. Positive Werte (und 0) rendern jetzt wieder normal über die Ebenen-Komposition.

Test

Die neue Bedingung gegen alle 4 bekannten Live-Datenpunkte durchgespielt: ZsombeyHD (-259 → Sonderbild ✓), VIDEL (5), Gweneth (3), Better Call Saul (5) → alle drei letzteren korrekt als "normal rendern" erkannt. Bitte nach Merge/Deploy nochmal am echten Modal für VIDEL gegenchecken.

## Problem Nach PR #25 zeigte VIDEL (Equilibrium) plötzlich ein Portrait — aber das falsche: das Bild einer völlig anderen Person. ## Ursache Live-Check über alle 5 Gilden zeigt: `special_portrait: 5` kommt bei **zwei unterschiedlichen, ganz normalen Spielern** vor (VIDEL und "Better Call Saul" in Equilibrium), beide mit vollständig gefüllten übrigen Portrait-Feldern (Haare, Augen, Bart, ...). Das kann keine eindeutige Bild-ID sein — offenbar ein unabhängiges Flag mit anderer, ungeklärter Bedeutung. Der bisherige Check (`special_portrait !== 0`) hat jeden Nicht-Null-Wert als Sonderbild-Referenz behandelt und dadurch für VIDEL fälschlich `special5.webp` geladen (das Bild einer fremden Person), obwohl die normalen Portrait-Felder für eine korrekte Komposition vorhanden gewesen wären. Nur **negative** Werte sind tatsächlich eine Bild-ID (siehe PR #25, ZsombeyHD: `special_portrait: -259` → `special259.webp`, verifiziert gegen sfportrait.12hp.de). ## Änderung Check von `special_portrait !== 0` auf `special_portrait < 0` korrigiert. Positive Werte (und 0) rendern jetzt wieder normal über die Ebenen-Komposition. ## Test Die neue Bedingung gegen alle 4 bekannten Live-Datenpunkte durchgespielt: ZsombeyHD (`-259` → Sonderbild ✓), VIDEL (`5`), Gweneth (`3`), Better Call Saul (`5`) → alle drei letzteren korrekt als "normal rendern" erkannt. Bitte nach Merge/Deploy nochmal am echten Modal für VIDEL gegenchecken.
Live-Check über alle Gilden zeigte: special_portrait: 5 kommt bei
mehreren unterschiedlichen, ganz normalen Spielern vor (u.a. VIDEL
und "Better Call Saul" in Equilibrium), jeweils mit vollständig
gefüllten übrigen Portrait-Feldern - offenbar ein unabhängiges Flag,
keine Bild-Referenz. Der bisherige Check (jeder Nicht-Null-Wert =
Sonderbild) hat dadurch für ganz normale Charaktere fälschlich ein
fremdes special{ID}.webp geladen (z.B. VIDEL bekam das Bild einer
komplett anderen Person, ID 5, zufällig weil abs(5)=5 existiert).

Nur negative Werte sind tatsächlich eine Bild-ID (siehe PR #25,
ZsombeyHD: special_portrait -259 -> special259.webp, verifiziert
gegen sfportrait.12hp.de). Check jetzt auf `< 0` statt `!== 0`
korrigiert; positive Werte und 0 rendern wieder normal über die
Ebenen-Komposition (die Felder dafür sind bei positiven Werten ja
vorhanden, wie der Live-Check zeigt).
DasAoD merged commit 0e26c2f991 into main 2026-08-10 01:15:03 +02:00
Sign in to join this conversation.
No description provided.