«Είχα αυτή την ιδέα», είπε ο Λίντεν. «Ας πάμε σε ένα μαγαζί και να αγοράσουμε τα κασετώματα του Star Fox, να πάρουμε τρία ή τέσσερα.»
Και πράγματι, παρά την τεχνική μαγεία του Λίντεν, ούτε αυτός μπορούσε να κάνει κάτι για το υποδυναμωμένο hardware· και, όπως μπορεί να σας πει οποιοσδήποτε το έχει παίξει, ενώ η απλή ύπαρξη του Doom στο SNES μπορεί να φαίνεται μαγική, το να το παίζεις δεν είναι καθόλου.
Τελικά, ο ίδιος ο Λίντεν δεν είναι ικανοποιημένος μ’ αυτό. Σήμερα μπορείς εύκολα να παίξεις μια τέλεια εκδοχή του Doom στο PC, στο Switch 2 ή στο Steam Deck, αλλά τι θα γινόταν, αναρωτήθηκε ο Λίντεν, αν αντί να «διορθώσει» τον Doom βάζοντάς τον σε ένα νέο, πιο ισχυρό σύστημα, γυρνούσε πίσω και διόρθωνε την έκδοση του SNES; Μίλησα με τον Λίντεν για να μάθω την ιστορία του πώς «έφτιαξε» το παιχνίδι του και πραγματοποίησε ένα όνειρο, 30 χρόνια μετά.
Φτιάχνοντας τον Doom με ταινία και τσίχλα
Το 1994, ο Doom ήταν ενός έτους και αντιπροσώπευε την αιχμή ενός νεοδημοφιλούς είδους που τελικά θα ονομαζόταν first-person shooters (αν και τότε συνήθως τα αποκαλούσαν «Doom clones»). Ήταν η ίδια χρονιά που ο Ράνταλ Λίντεν άρχισε να δουλεύει σε ένα μεγάλο αποθήκη στο Σαν Ντιέγκο για την Sculptured Software με έδρα το Σολτ Λέικ Σίτι. Ο Λίντεν ενώθηκε με τους συναδέλφους του σε μια ιδιωτική εκδήλωση της Nintendo, όπου παρουσιάστηκε το Star Fox να τρέχει στο chip SuperFX.
«Έλαβε χειροκρότημα όρθιοι», θυμάται ο Λίντεν, «και εκείνη τη στιγμή η Sculptured αποφάσισε ότι ήθελε να φτιάξει ένα παιχνίδι Super FX».
Ο φίλος του και συνάδελφος στην Sculptured Software, Τζον Μόργκαν, ήταν γνωστός για τις ικανότητές του στα 3D και στα μαθηματικά, και του ανατέθηκε ένα project που θα γινόταν το 3D dirtbike racer Dirt Trax FX. Το πρόβλημα, όμως, ήταν ότι η Sculptured Software δεν διέθετε σύστημα ανάπτυξης και σχεδόν δεν γνώριζε τα τεχνικά χαρακτηριστικά του νέου chip της Nintendo.
«Είχα αυτή την ιδέα», είπε ο Λίντεν. «Ας πάμε σε ένα μαγαζί και να αγοράσουμε τα κασετώματα του Star Fox, να πάρουμε τρία ή τέσσερα. Να ανοίξουμε το κασέτωμα και να αντικαταστήσουμε το ROM με λίγη RAM και ένα μικροσκοπικό boot ROM». Ο Λίντεν έγραψε το λογισμικό για το boot ROM, το οποίο τους επέτρεπε να συνδέσουν το κασέτωμα απευθείας στο Amiga όπου έκανε το μεγαλύτερο μέρος του προγραμματισμού του, και μετά έγραφαν προγράμματα απευθείας στο νέο κολλημένο chip RAM.
Με αυτό το σπιτικό development kit στη θέση του και λειτουργώντας όπως το είχε σχεδιάσει ο Λίντεν, ήξερε ότι χρειαζόταν έναν τρόπο να δοκιμάσει το chip Super FX. «Σκέφτηκα, “ποιος καλύτερος τρόπος από το να αρχίσω να γράφω μια έκδοση του Doom;”» Και αυτό ακριβώς έκανε. Δεν υπήρχε περίπτωση ο κώδικας του Doom για PC να τρέξει στο περιβάλλον του κονσόλας, οπότε ο Λίντεν έκανε reverse-engineering στον Doom μόνος του. «Δεν ήταν σαν να μπορούσα να πάρω τηλέφωνο την Id Software και να πω, “Γεια, έχω αυτή την τρελή ιδέα να βάλω τον Doom σε αυτό το νέο chip του Super NES.”»
«Χρειαζόμασταν να μάθουμε πώς λειτουργεί ο χάρτης μνήμης και κάποια βασικά πράγματα σαν κι αυτό, και η Nintendo έστειλε ελάχιστες πληροφορίες που ήταν βασικά μόνο οι προδιαγραφές του επεξεργαστή». Από αυτές, ο Λίντεν κατάφερε να γράψει έναν προσαρμοσμένο assembler και linker και έναν debugger επιπέδου πηγής βασισμένο στο σύστημα ανάπτυξης Amiga που είχε χρησιμοποιήσει για άλλα παιχνίδια του Super NES όπως το Home Alone και το Wayne Gretzky Hockey.
Με τον assembler στα χέρια του και πρόσβαση στο Super FX εξασφαλισμένη, ο Λίντεν πήρε τα “Unofficial Doom Specs” του Μάθιου Φελ και άρχισε να γράφει τη δική του μηχανή παιχνιδιού για τον Doom. Δεν έμεινε κανένα ίχνος της μηχανής της Id.
Παρόλο που ήταν ένα project μάθησης, η δουλειά του Λίντεν στον Doom εντυπωσίασε τόσο τους προϊσταμένους του, που πέταξαν στο Τέξας στην Id Software και παρουσίασαν το σχέδιο. Η Id εντυπωσιάστηκε και συμφώνησε να προχωρήσει η Sculptured Software με τη μεταφορά του Λίντεν.
Με εμφανή προβλήματα στο framerate, ειδικά στα τελευταία επίπεδα, και θυσίες όπως αλλαγμένα επίπεδα, καθόλου υφές δαπέδων και οροφών και ολόκληρο το τέταρτο επεισόδιο κομμένο, ο Doom στο Super NES δεν ήταν καλή έκδοση του παιχνιδιού, αλλά ήταν ο Doom να τρέχει στο Super NES και, μόνο γι’ αυτό, η ιδιοφυΐα του Λίντεν αξίζει αναγνώριση.
Επιστροφή στη δουλειά
Τώρα ο Λίντεν επέστρεψε και αυτή τη φορά είναι αποφασισμένος, με τη βοήθεια ενός Raspberry Pi, να τελειοποιήσει τον Doom στο SNES. Αλλά ποια τρελή ιδέα ήταν να πάρεις μια διαβόητα κακή έκδοση του Doom και να τη βελτιώσεις στο αρχικό hardware τρεις δεκαετίες αργότερα;
«Η αρχική ιδέα ήρθε από εμένα τότε», είπε ο Όντι Σόρλι, που ήταν θαυμαστής της δουλειάς του Λίντεν από παιδί στην Ευρώπη και τώρα δουλεύει για την Limited Run Games. «Δεν μπορούσα να το πιστέψω όταν ήμουν παιδί ότι το Dragon’s Lair [που μετέφερε ο Λίντεν] ήταν στο Amiga».
Ο Σόρλι επικοινώνησε πρώτη φορά με τον Λίντεν το 2020, όταν ο προγραμματιστής δημοσίευσε τον πλήρη πηγαίο κώδικα της έκδοσης SNES, οδηγώντας σε συνέντευξη γι’ αυτό στο Digital Foundry. «Χωρίς να ξέρω πού θα μας οδηγούσε η μοίρα», θυμάται ο Σόρλι, «έκανα μια ερώτηση της στιγμής για τον πηγαίο κώδικα του Doom». Αν δούλευες ποτέ ξανά σε αυτό, ρώτησε, θα έκανες βελτιώσεις ή θα έκανες κάτι διαφορετικά;
«Ναι», απάντησε ο Λίντεν. «Έχω πολλές ιδέες αν μπορούσα να γυρίσω πίσω, αλλά, ξέρεις, δεν νομίζω ότι κάποιος μου ζητάει να γυρίσω στο Super Nintendo Doom και να το βελτιώσω».
Πέρασαν λίγα χρόνια και ο Σόρλι εντάχθηκε στην Limited Run Games ως επικεφαλής παραγωγός του τμήματος ανάπτυξης. Όταν η LRG του ζήτησε να καταγράψει τις πιο τρελές του ιδέες, μια νέα, βελτιωμένη έκδοση του Doom του Ράνταλ Λίντεν ξεπρόβαλε. Το να πείσει τον Λίντεν ήταν εύκολο και ο Σόρλι είπε ότι ακόμα και οι άνθρωποι της Bethesda, κατόχου της άδειας, ενθουσιάστηκαν περισσότερο παρά οτιδήποτε άλλο.
«Θέλετε να γυρίσετε και να αναπτύξετε για Super Nintendo;» ρώτησαν τον Σόρλι. «Σοβαρά;»
«Επειδή ήμασταν τόσο ειλικρινείς και ο Ράντι επέστρεφε, δεν χρειάστηκε να τους πείσουμε πολύ», εξήγησε ο Σόρλι. «Ήταν εξίσου ενθουσιασμένοι όταν αρχίσαμε να στέλνουμε πρωτότυπα».
Όταν ξεκίνησαν το project, ο Σόρλι ήταν σίγουρος ότι ο Λίντεν θα μπορούσε να καταλάβει πώς να εφαρμόσει διάφορες λογισμικές βελτιώσεις, αλλά υπήρχαν μεγάλα ερωτηματικά για το πώς να κάνουν hardware βελτιώσεις για να βοηθήσουν με τα νέα χαρακτηριστικά που ήθελαν να εισάγουν στο παιχνίδι—όπως circle strafing, γρηγορότερο framerate και ακόμα και rumble μέσω ενός νέου χειριστηρίου που ονειρεύτηκε ο Λίντεν.
«Το κόλπο ήταν πολύ ωραίο», είπε ο Λίντεν. «Είναι εδώ». Έδειξε σε ένα chip στο πρωτότυπο κασέτωμα του SNES, παρόμοιο με αυτό που μου έστειλε η Limited Run για να δοκιμάσω το παιχνίδι. «Είναι ένα Raspberry Pi 2350». Τα chip Super FX δεν παράγονται πια για προφανείς λόγους, αλλά με ένα έξυπνο κομμάτι προγραμματισμού, ο Λίντεν κατάφερε να φορτώσει λογισμικό στο Raspberry Pi που ξεγελά το SNES να πιστεύει ότι το παιχνίδι έχει ένα. «Το Super Nintendo δεν ξέρει ότι δεν μιλά σε ένα αυθεντικό Super FX», εξήγησε. Όταν προγραμματίζει γι’ αυτό, γράφει κώδικα σχεδόν πανομοιότυπο με αυτόν που θα έγραφε για ένα γνήσιο chip Super FX.
«Έπρεπε να γυρίσω και να κάνω reverse-engineering στον δικό μου κώδικα από 30 χρόνια πριν», γέλασε ο Λίντεν. «Ήταν σαν, τι έκανα εδώ; Και τι έκανα εκεί; Ναι, ήταν αρκετά δύσκολο, κάποιος από τον κώδικα. Ήμουν σαν, wow, ήμουν πολύ έξυπνος τότε».
Η καλύτερη έκδοση του Doom
Το αποτέλεσμα της δουλειάς του Λίντεν; Είναι ο Doom, να τρέχει κανονικά σε ένα Super Nintendo, αλλά είναι πιο ομαλός, γεμάτος νέο περιεχόμενο και περιλαμβάνει ακόμα και rumble. Ως κάποιος που έχει ελαφρώς εμμονή με τον SNES Doom από τότε που πρωτοεμφανίστηκε, μαγεμένος από ένα τέλειο παιχνίδι να τρέχει ατελώς, το να βάλω το κασέτωμα στην παιδική μου κονσόλα και να το ξεκινήσω σε CRT ένιωθε, για άλλη μια φορά, σαν μαγεία.
Ως κάποιος που έχει παίξει πολλά ROM hacks τα τελευταία χρόνια, πολλά από τα οποία βελτιώνουν τις αρχικές εκδόσεις των παιχνιδιών μέσω γυαλισμένων μεταφράσεων, νέων χαρακτηριστικών και επαναφερμένου περιεχομένου, ο Doom της Limited Run είναι μοναδικός στον τρόπο που δεν απλώς χακάρει τον κώδικα, αλλά χακάρει και την ίδια την κονσόλα. Υπάρχει τόση ομορφιά στις δημιουργικές απαιτήσεις που έρχονται με τα τεχνικά όρια, μια ανάγκη για δημιουργική επίλυση προβλημάτων που χάνουμε καθώς τα υποδυναμωμένα συστήματα παιχνιδιών δίνουν τη θέση τους στην επεκτατική κλίμακα της νέας τεχνολογίας.
Έχουμε δει director’s cuts ταινιών, Taylor’s Versions άλμπουμ και προτιμώμενες εκδόσεις συγγραφέων μυθιστορημάτων, αλλά σπάνια βλέπουμε δημιουργούς παιχνιδιών να επιστρέφουν στο δικό τους έργο με τριάντα χρόνια εμπειρίας πίσω τους και τριάντα χρόνια νέων εργαλείων να δουλεύουν μαζί τους. Καθώς ο Ράνταλ Λίντεν επιστρέφει στην έκδοση του Doom για το SNES, ένα θαύμα παρά τα πολλά ελαττώματά του, επιστρέφουμε στα σκοτεινά υπνοδωμάτιά μας, τη λάμψη των μικρών μας τηλεοράσεων και μια υπενθύμιση ότι η καλύτερη έκδοση του Doom είναι αυτή που έχεις.
Αλλά θα μπορούσε να είναι καλύτερη.