Das Spawn-Fenster stimmt jetzt. WELLE.fenster sagt, über wie viele Sekunden eine Welle
ihre Gegner ausschüttet. Nur das Spiel selbst richtet sich nicht danach — die Zahl lesen
ausschließlich die beiden Entwurfswerkzeuge, und sie war 1,4- bis 3-mal zu groß, auf
Welle 49 um 143 Sekunden. Am Spiel ändert sich dadurch nichts.
- Die alte Formel
max(16 + n, stueck * 0,55)nahm die gesamte Stückzahl mal dem Drohnenabstand. Aber nur Drohnen stehen in einer Kette; Schwärme, Orbs, Spinner, Festungen und Meteore werden aus Zeitfenstern gewürfelt. Ein zu großes Fenster macht „nötig“ (Druck je Sekunde) zu klein — das Werkzeug meldete Leerlauf, wo keiner war. - Ersetzt durch zwei Geraden, gemessen an 15 Stichproben je Welle aus
buildWave():11,7 + 1,18 × Wellefür normale Wellen,9,2 + 1,10 × Wellefür Wächterwellen. Beide treffen die Messung auf ±2 s. Die pauschalen 45 s für Wächterwellen stimmten ohnehin nicht mehr, seit diese ein Gefolge haben: gemessen 16 s auf Welle 10 und 64 s auf Welle 50. kurve.mjsbehält den Vergleich als Wachhund: Weicht das Fenster wieder stark von der gemessenen Wellendauer ab, hat sich am Wellenbau etwas geändert, ohne dass die Formel nachgezogen wurde.
Und ein zweiter Fehler, den der erste verdeckt hat. scripts/schwierigkeit.mjs brachte
sein eigenes Spielermodell mit und hatte die Eichung aus 0.112.0 nie bekommen — kein
Gaben-Term, alte Waffenstufen-Kurve. Solange auch das Fenster zu groß war, hoben sich beide
Fehler ungefähr auf. Mit dem korrigierten Fenster blieb nur der verbliebene stehen, und das
Werkzeug meldete für einen Piloten ohne Werft eine Wand in Sektor 3 — die Telemetrie misst
dort im Schnitt Welle 9,9.
- Das Spielermodell steht jetzt einmal, in
scripts/modell.mjs: Gabenzahl, Waffenstufe, Schiffsstufe, Schlagkraft, Hülle und die drei Ausbaustände. Beide Werkzeuge lesen es von dort, können also nicht mehr auseinanderlaufen. - Die Wand-Werte sind damit wieder plausibel und decken sich mit den Gradbeschreibungen in
js/data.js: Veteran ohne Werft endet in Sektor 4 („Ohne halb ausgebaute Werft ist in Sektor 3 Schluss“), Legende ohne Werft in Sektor 1. - Ohne Telemetrie rechnet
kurve.mjsnicht mehr mit einem Gaben-Faktor von 0, sondern mit dem inmodell.mjshinterlegten gemessenen Wert (+7,4 % je Gabe) — und sagt dazu, dass er nicht frisch geeicht ist. tierWeichF()(die Schadensrampe aus 0.114.0) ist vonjs/sim.jsnachjs/data.jsgewandert, damitschwierigkeit.mjsdieselbe Zahl rechnet. Verhalten unverändert.