Fast zwei Jahrzehnte nach dem Erscheinen der Sony PSP haben Modder einen Counter-Strike-Shooter im Ego-Perspektiven-Stil auf den betagten Handheld gebracht. Die Gruppe PocketJS hat OpenStrike veröffentlicht, ein quelloffenes Projekt, das den Kern-Gameplay-Loop aus Bombenentschärfung und Teamkämpfen auf die 2004 erschienene Handheld-Konsole bringt. Die ursprüngliche PlayStation Portable, die am 12. Dezember 2004 in Japan und 2005 weltweit erschien, war damals ein Technikwunder mit einem 4,3-Zoll-Breitbilddisplay und einem maßgeschneiderten 333-MHz-MIPS-Prozessor. Doch das Fehlen von zwei analogen Sticks machte das Spielen traditioneller Ego-Shooter notorisch schwierig, sodass Entwickler für das Zielen auf den einzelnen Analog-Nub und die Face-Buttons angewiesen waren.
OpenStrike ist kein direkter Port von Valves Klassiker. Stattdessen handelt es sich um eine eigenständige, von Grund auf neu erstellte Nachbildung mit einer maßgeschneiderten Engine, die in der Programmiersprache Rust geschrieben wurde. Diese Engine übernimmt Bewegung, Kollisionserkennung, Bot-Verhalten, Waffen und Rendering. Die Benutzeroberfläche und die Punkteverfolgung sind in TypeScript und JavaScript geschrieben und laufen auf der QuickJS-Engine. Die Wahl von Rust ist bemerkenswert, da es sich um eine moderne Systemsprache handelt, die für Speichersicherheit und Leistung bekannt ist, aber selten für Homebrew auf Altkonsolen verwendet wird. Dass es PocketJS gelungen ist, Rust-Code zu kompilieren, um auf der MIPS-Architektur der PSP zu laufen, ist für sich genommen eine technische Leistung, die eine maßgeschneiderte Toolchain und Linker-Skripte erfordert.
Das Ergebnis läuft auf dem ursprünglichen PSP-1000-Modell mit stabilen 60 Bildern pro Sekunde. Es nutzt nur 12 MB Speicher und rendert in der nativen Auflösung der Konsole von 480 x 272 Pixeln. Die Modelle sind vereinfacht, aber die visuellen Hinweise – bewaffnete Charaktere, staubige Maps, ein In-Game-Scoreboard – sind für jeden, der Counter-Strike gespielt hat, sofort vertraut. Die Modder haben außerdem Bot-KI integriert, sodass Spieler gegen computergesteuerte Gegner üben können. Das Waffenarsenal scheint begrenzt zu sein, umfasst aber erkennbare Ersatzdarstellungen für die AK-47 und M4A1, die an das begrenzte Button-Layout der PSP angepasst wurden.

OpenStrikes technische Meisterleistung auf einem 22 Jahre alten Handheld
Die Leistung dreht sich ebenso sehr um Optimierung wie um Nostalgie. Die PSP, obwohl zu ihrer Zeit ein wegweisendes Gerät, ist nach modernen Maßstäben stark unterdimensioniert. Ihre CPU läuft mit 333 MHz, und ihre GPU ist ein Fixed-Function-Chip ohne programmierbare Shader. Um irgendeinen Ego-Shooter darauf flüssig zum Laufen zu bringen, sind sorgfältiges Speichermanagement und reduzierte Assets erforderlich. PocketJS gelang dies, indem die Polygonzahl niedrig gehalten und auf ein schlankes Rust-Backend gesetzt wurde. Der Speicherbedarf des Spiels von nur 12 MB ist beeindruckend, wenn man bedenkt, dass die PSP insgesamt nur über 32 MB RAM verfügt (mit 24 MB, die nach den Systemreserven für Spiele verfügbar sind). Dies lässt Raum für zukünftige Erweiterungen wie zusätzliche Maps oder Waffenmodelle.
Was die Mod in der Praxis liefert
Laut den Moddern umfasst OpenStrike Bot-KI, ein einfaches Waffensystem und eine grundlegende Punktewertung – genug, um ein lockeres Counter-Strike-ähnliches Erlebnis im Bus oder im Wartezimmer nachzubilden. Ein offizieller Online-Multiplayer-Support wird in der Veröffentlichung nicht erwähnt, aber das Projekt ist quelloffen, was bedeutet, dass die Community es erweitern könnte. Die Steuerung des Spiels wurde an die PSP angepasst, wobei der Analogstick für Bewegung und die Face-Buttons für das Zielen verwendet werden, während die Schultertasten auf Feuern und Nachladen gelegt sind. Dieses Steuerungsschema ähnelt anderen PSP-Shootern wie Medal of Honor: Heroes oder SOCOM: U.S. Navy SEALs Fireteam Bravo, die trotz der Hardware-Einschränkungen kompetente FPS-Erfahrungen lieferten.
- Engine in Rust geschrieben: übernimmt Bewegung, Kollision, Bots, Waffen und Rendering
- UI und Punktesystem mit TypeScript/JavaScript auf der QuickJS-Engine erstellt
- Stabile 60 FPS auf dem Original-PSP-1000-Modell mit 12 MB Speicherverbrauch
- Native Auflösung von 480×272 mit vereinfachten, aber erkennbaren Charakter- und Waffenmodellen
Warum das über die Hardware hinaus wichtig ist
OpenStrike erscheint zu einer Zeit, in der die PSP-Modding-Szene weiterhin aktiv ist und Homebrew-Software sowie Custom-Firmware fast zwei Jahrzehnte nach der Veröffentlichung der Konsole noch immer entwickelt werden. Das Projekt zeigt, dass Entwickler auch nach all den Jahren bereit sind, ihre Grenzen auszureizen. Es unterstreicht zudem den wachsenden Trend, Rust in der Spieleentwicklung einzusetzen, selbst für eingeschränkte Plattformen wie die PSP. Obwohl das Spiel für kompetitives Spielen zu einfach ist, dient es als Proof-of-Concept für moderne Programmiertechniken auf Retro-Hardware. Die Open-Source-Natur des Projekts bedeutet, dass angehende Entwickler den Code studieren können, um zu verstehen, wie man Rust für eingebettete Systeme optimiert oder wie man eine einfache FPS-Engine von Grund auf schreibt.
| Feature | Details |
|---|---|
| Konsole | Sony PSP-1000 (2004) |
| FPS-Ziel | 60 FPS (stabil) |
| Speicherverbrauch | 12 MB |
| Auflösung | 480×272 (nativ) |
| Engine-Sprache | Rust |
| UI-Sprachen | TypeScript, JavaScript |
PocketJS hat keine Pläne für eine vollständige Multiplayer-Veröffentlichung oder einen Port auf andere Legacy-Konsolen angekündigt. Der Quellcode ist im GitHub-Repository verfügbar für alle, die mit dem Code experimentieren oder ihn für ihre eigene PSP kompilieren möchten. Vorerst bleibt OpenStrike eine technische Kuriosität — ein Blick darauf, wie Counter-Strike hätte aussehen können, wenn es jemals offiziell auf Sonys alter Handheld-Konsole erschienen wäre. Es erinnert auch daran, dass die Modding-Community vergessener Hardware weiterhin neues Leben einhaucht und das, was viele für obsolet halten, in eine Leinwand für experimentelle Spieleentwicklung verwandelt.
Kommentare