La prima console portatile di Sony torna al centro di un progetto homebrew particolarmente ambizioso. Lo sviluppatore Yifeng Wang, conosciuto online come doodlestrike, ha realizzato OpenStrike, una reinterpretazione di Counter-Strike capace di funzionare sulla PSP originale. Non si tratta di un porting diretto del gioco Valve, ma di una prova di concetto costruita attorno a tecnologie sviluppate appositamente.
Il progetto permette già di disputare partite a eliminazione contro avversari controllati dal computer. Wang ha inoltre verificato il funzionamento delle otto mappe originali di Counter-Strike, mentre gli strumenti messi a disposizione dovrebbero consentire agli appassionati di crearne altre. Non sono invece ancora operative le celebri fasi di acquisto che precedono i round nel gioco originale.
La dimostrazione raggiunge stabilmente i 60 fotogrammi al secondo alla risoluzione nativa di 480x272 pixel della console. Per ottenere questo risultato, gli elementi grafici vengono elaborati in anticipo e le mappe di illuminazione sono integrate direttamente nei colori dei vertici. Il sistema evita quindi di calcolare le luci in tempo reale oppure durante l'avvio della partita.
Alla base del titolo si trova Pocket3D, un motore tridimensionale scritto in Rust e affiancato da PocketJS, che gestisce regole di gioco e interfaccia attraverso JavaScript. Il rendering conserva il metodo BSP usato da numerosi sparatutto classici, così da escludere le aree non visibili. La gestione di eventi come gli spari è separata dal motore grafico, riducendo il rischio di improvvisi cali nelle prestazioni.
OpenStrike non è limitato alla vecchia portatile. Il codice funziona anche su PS Vita alla risoluzione nativa di 960x544 pixel, senza ricorrere all'aumento artificiale della risoluzione per la grafica tridimensionale o gli elementi bidimensionali. Il progetto può essere eseguito anche come normale gioco desktop ed è compatibile con l'emulatore PPSSPP.
Per avviare le partite, ciascun utente deve fornire una propria copia dei dati grafici di Counter-Strike, con un procedimento paragonabile all'impiego dei file WAD originali nei porting di Doom. L'applicazione può essere provata offline, occupa circa 12 MB di memoria e presenta numerosi componenti modificabili attraverso le API disponibili.
Pocket3D e PocketJS sono stati progettati come motori generici, mentre OpenStrike rappresenta la loro prima applicazione completa. L'architettura adotta una struttura basata su server, client ed eventi, lasciando separate la logica delle partite e la rappresentazione grafica. Il codice è open source, offrendo così agli sviluppatori interessati una base per ampliare lo sparatutto o sperimentare con altri progetti destinati allo stesso hardware.