Reverse engineering σε περιβάλλον DOS

Η πρόκληση του εγχειρήματος ξεκίνησε από τον εντοπισμό των κρίσιμων δεδομένων (θέση σκάφους, ταχύτητα, διάνυσμα περιστροφής) μέσα στο περιορισμένο address space των 640K του DOS. Μέσω της σύγκρισης στιγμιότυπων μνήμης (memory snapshots) κατά τη διάρκεια κίνησης και στάσης, οι δημιουργοί κατάφεραν να απομονώσουν τις διευθύνσεις μνήμης που αντιστοιχούσαν στις οντότητες του παιχνιδιού, χρησιμοποιώντας τον debugger του DOSBox.

Υπέρβαση των Borland overlays

Ένα από τα σημαντικότερα τεχνικά εμπόδια ήταν η διαχείριση των Borland overlays, τα οποία φόρτωναν κώδικα δυναμικά σε διαφορετικές διευθύνσεις. Για να εκτελέσουν δικό τους κώδικα (π.χ. για τον έλεγχο του wingman), οι δημιουργοί εφάρμοσαν ένα σύστημα trampoline: αντικατέστησαν αχρησιμοποίητα strings στη μνήμη με κώδικα που αποθήκευε τα registers, εκτελούσε την επιθυμητή συνάρτηση και επέστρεφε τον έλεγχο στο main loop του παιχνιδιού, διατηρώντας τη συνοχή του stack frame.

Εκσυγχρονισμός μέσω WebRTC και Emscripten

Η τελική φάση του project μετέτρεψε μια τοπική τροποποίηση σε μια προσβάσιμη web εφαρμογή. Χρησιμοποιώντας το Emscripten, το παιχνίδι μεταγλωττίστηκε για το Web, ενώ το lobbylink —ένα custom σύστημα βασισμένο σε WebRTC— ανέλαβε την ενορχήστρωση (orchestration) της επικοινωνίας μεταξύ των παικτών. Η χρήση TURN servers διασφαλίζει τη διαλειτουργικότητα (interoperability) ακόμη και πίσω από περιοριστικά firewalls, καθιστώντας το κλασικό παιχνίδι άμεσα διαθέσιμο μέσω browser.