Devlog
Kurze, ehrliche Notizen aus der Entwicklung — was gebaut wurde, was
schiefging und was daraus geworden ist. Neuester Eintrag oben. Die Demo
ist in einem frühen Entwicklungsstand direkt
im Browser spielbar.
# Die Zone bekommt Farbe
Juli 2026 · Texturen · HUD · Audio-Vollausbau
Der bislang größte Merge auf einmal: Die Zone ist keine dunkle Testfläche
mehr, sondern eine helle Betonwelt — Boden, Ruinen, Mauern und Container
haben echte Texturen bekommen. Das HUD läuft jetzt komplett auf
Design-Tokens und sitzt auf eigenen Panels statt lose überm Bild. Die
NPC-Rettung ist damit erstmals im neuen
Gesamtbild spielbar, und das Audio ist auf Vollausbau: 23 Sounds, eine
Spannungs-Ebene, die sich ans Gefahrenlevel koppelt, und ein eigenes
Basis-Thema. Die Screenshots auf der Startseite sind frisch aus diesem
Stand gezogen.
Das ehrliche Spieltest-Fazit dazu: Das Spiel ist gerade zu
einfach — wer halbwegs in Bewegung bleibt, extrahiert bequem. Und
beim Audio stimmt jetzt zwar die Menge, aber noch nicht überall die
Qualität. Beides ist keine Deko-Frage, sondern der Kern des Spiels,
deshalb läuft die nächste Runde genau dazu: Balancing und Klang-Politur.
# Der erste Überlebende
Juli 2026 · M17 · NPC-Rettung v1
Das größte Versprechen aus dem Konzept ist jetzt zum ersten Mal spielbar:
Irgendwo in der Zone sitzt ein Zivilist — weit weg von den
Extraktionszonen, natürlich. Ein Ortungspuls verrät ihn, wenn man in der
Nähe ist; wer ihn findet, hat ab da einen Begleiter, der folgt, getroffen
werden kann und lebend mit zur Extraktion muss. Klappt es, zieht
er in die Basis ein und wird gezählt; die Belohnung gibt es obendrauf.
Eigene Sounds fürs Finden, Verletzen und Retten sind gleich mitgekommen.
Ehrlicherweise: Der Zivilist verkeilt sich noch gern an Mauerkanten —
intern heißt das schon „Eskorten-Frust", und Wand-Entlanggleiten steht
auf der Liste. Und Namen haben die Geretteten bewusst noch keine: erst
wenn NPCs in der Basis wirklich etwas tun, bekommen sie
Persönlichkeit. Versprochen ist versprochen, aber der Reihe nach.
# Scharf gestellt
Juli 2026 · M16 + Sprites v0.1
Der erste richtige Spieltest brachte ein hartes, berechtigtes Urteil:
Das Bild wirkte verschwommen und verpixelt zugleich. Der Grund war
schnell gefunden — die Demo rannte auf einem fixen 960×540-Canvas, den
der Browser einfach hochskalierte, ohne Rücksicht auf hochauflösende
Displays. Die Kur: natives Rendering in Fenstergröße mal
devicePixelRatio, der Kamera-Zoom leitet sich seitdem aus einer
Ziel-Sichthöhe ab. Gleiche Sicht für alle, aber endlich knackscharf.
Zeitgleich haben Spieler, Raider, Rostschütze, Extraction-Beacon und
Schrott ihre ersten echten Sprites bekommen — als SVG mit Supersampling
gerastert. Der Umweg der Woche: Der Dev-Server liefert bei fehlenden
Dateien keine 404, sondern die Startseite — und Phasers SVG-Loader
quittierte das mit einem unbehandelten Crash. Seitdem prüft ein kleiner
Vorab-Check jede Sprite-Datei, und wenn sie fehlt, springt der alte
Platzhalter ein. Das Spiel bricht nie wegen eines Assets.
# Jetzt mit Ohren
Juli 2026 · M15 · Audio v1 → v2
Scraphaven hat Ton — komplett synthetisiert per WebAudio, ohne eine
einzige Audiodatei. Schüsse (pro Waffe unterschiedlich), Treffer,
Aufsammeln, Extraktion, dazu Ambient-Flächen für Zone und Basis mit
Crossfade. Stummschalten geht jederzeit mit [M].
Der ehrliche Teil: Die erste Ambient-Version fiel im Spieltest
gnadenlos durch — das Eigentümer-Urteil im Original: „komplett kake".
Statt beleidigt zu sein, wurde neu gedacht: Version 2 setzt auf ein
ruhiges Fundament mit sparsamen Ereignis-Klängen statt Dauer-Drones.
Inzwischen koppelt sich obendrauf eine Spannungs-Percussion ans
Gefahrenlevel, und die Basis hat ein eigenes kleines
Spieluhr-Thema. Aus „kake" wurde Atmosphäre.
# Drei Läufe, ein Schrank
Juli 2026 · M13 + M14 · Rostschütze & Waffenschrank
Bis hierhin gab es genau einen Gegnertyp: den Raider, der stumpf auf
dich zuläuft. Jetzt hält der Rostschütze dagegen —
er sucht Distanz und feuert rostrote Projektile, die von Deckung
geblockt werden. Plötzlich sind Mauern nicht mehr nur im Weg, sondern
Rettung.
In der Basis steht seitdem der Waffenschrank: Neben der Schrottpistole
warten die Schrottflinte (Streufächer, gnadenlos auf kurze Distanz) und
der Nagelwerfer (schnelle Einzelschüsse) — kaufbar für extrahierten
Schrott, und was gekauft wird, ist sofort ausgerüstet. Alle Werte
liegen in Daten-Dateien statt im Code; neue Waffen sind damit eher
Balancing-Frage als Programmier-Aufwand.
# Die Zone wird ungemütlich
Juli 2026 · M8–M12 · Eskalation, Rucksack, Map, Game Feel
Ohne andere Spieler muss die Zone selbst den Druck machen. Genau dafür
kamen drei Hebel ins Spiel: Ein sichtbares Gefahrenlevel
steigt mit der Zeit und schickt Verstärkungswellen; der
Rucksack hat endlich Grenzen (und ein kaufbares
Upgrade); und statt leerer Testfläche gibt es die erste handgebaute Map —
Ruinen, Fabrikmauern, Container, zwei Extraktionszonen, und die fetten
Loot-Spots liegen bewusst im Norden, maximal weit weg von beiden
Ausgängen. Dazu Game Feel: Partikel, Knockback, Mündungsblitz,
Schadens-Popups.
Lieblings-Bug der Phase: Nach M7 lief der Spieler plötzlich keinen
Schritt mehr — WASD tot. Schuld war Phasers Tasten-API, die mit einem
Alias-String statt einem Objekt registriert wurde. Ein Einzeiler,
gefunden nach viel zu langem Starren auf völlig korrekten
Bewegungs-Code.
# Vom leeren Canvas zum Loop
Juli 2026 · M0–M7 · Mini-Demo
Acht kleine Meilensteine, jeder einzeln lauffähig und geprüft: Erst ein
Projektgerüst (Vite, TypeScript strict, Phaser 3, Vitest), dann Schritt
für Schritt bewegen, zielen, schießen, Gegner, Schrott, Extraktionszone,
Werkbank-Upgrade — und zum Schluss der Baustein, der aus einem Testlauf
ein Spiel macht: Lebenspunkte und Tod mit Beuteverlust.
Seitdem existiert der Moment, um den sich hier alles dreht: „Riskiere
ich noch mehr oder extrahiere ich jetzt?"
Zwei Entscheidungen von Tag 1 zahlen sich bis heute aus: Die komplette
Spiellogik lebt Phaser-frei in reinen Funktionen mit Tests daneben, und
aller Zufall läuft über einen seedbaren Generator — jeder Run ist damit
reproduzierbar, was Bugs jagen ungemein entspannt. Der Spielstand landet
versioniert im localStorage: kein Account, kein Server, einfach spielen.