![Joshua Barretto Joshua Barretto](/im/Files/7/6/1/8/0/0/2/0/super%20mario%2064%20GBA21.png?impolicy=teaser&resizeWidth=700&resizeHeight=350)
Ein unmöglicher Port: «Super Mario 64» auf dem Game Boy Advance
Ein Softwareentwickler tüftelt in seiner Freizeit an einem Port von «Super Mario 64» für den Game Boy Advance. Sein Antrieb für dieses vermeintlich unmögliche Unterfangen: Beweisen, dass es eben doch geht.
«Super Mario 64» ist ein Meilenstein der Gaming-Geschichte. Dem revolutionären Plattformer gelang es 1996, das klassische Jump'n'Run-Gameplay von 2D-Mario-Spielen in die dritte Dimension zu übersetzen. Die intuitive Steuerung im dreidimensionalen Raum und die wunderschönen 3D-Grafiken sorgten bei Nintendo-Fans für offene Münder.
![«Super Mario 64» setzte neue Massstäbe für 3D-Gamedesign.](/im/Files/7/6/1/6/2/0/6/0/NSwitch_SuperMario3DAllStars_SuperMario64_02_image950w.jpg?impolicy=resize&resizeWidth=430)
Quelle: Nintendo
Softwareentwickler Joshua Barretto hat es sich zum Ziel gesetzt, das legendäre 3D-Spiel auf den Game Boy Advance (GBA) zu portieren. Auf ein System ohne dedizierte 3D-Hardware und ohne die nötige Rechenleistung, um solch komplexe Landschaften und Charaktermodelle darstellen zu können.
«Du bist verrückt, das ist unmöglich» – so lauteten die ersten Reaktionen aus der GBA-Entwicklerszene, als Joshua sein Projekt angekündigt hat. Nun will er beweisen, dass dieses unmögliche Vorhaben doch irgendwie möglich ist.
Ich habe mich mit Joshua über seine Beweggründe, den technischen Hintergrund und seine zukünftigen Pläne zum Projekt ausgetauscht.
![Spoiler: So sieht der aktuelle Stand von Joshuas Projekt aus.](/im/Files/7/6/1/8/3/9/7/6/sm64%20gba.jpg?impolicy=resize&resizeWidth=430)
Quelle: Joshua Barretto
Der erste Prototyp sorgt für Aufsehen
Joshua ist mittlerweile fast 30 Jahre alt und schon seit langer Zeit Nintendo-Fan. In den frühen Nullerjahren war er stolzer Besitzer von Nintendos lilafarbenem Handheld. Er hat sich damals gewünscht, auf seinem GBA «Super Mario 64» spielen zu können. Joshua erinnert sich: «Ich habe sogar naiverweise in Erwägung gezogen, eine Petition für eine Portierung an Nintendo zu stellen». Seinen Traum von «Super Mario 64» auf dem GBA verwirklicht sich Joshua rund zwanzig Jahre später selbst.
Am 8. Mai 2024 veröffentlicht der Softwareentwickler auf seinem Youtube-Kanal ein erstes Video zu seinem «Super Mario 64»-Projekt für den GBA. Darin zu sehen ist das Anfangsgebiet des Spiels mit Peachs Schloss und Garten. Ein kleines rotes Dreieck rennt und hüpft durch die Gegend. Der Prototyp läuft mit einer niedrigen Framerate, die Texturen und die Geometrie verzerren die leere Landschaft bei der kleinsten Bewegung zu abstrakten Kunstwerken. Aber der Prototyp funktioniert – inklusive Kollisions- und Physiksystem.
Das Video verbreitet sich schnell in der Retro- und GBA-Entwicklerszene. Eben jener Szene, die ihm von diesem Unterfangen abgeraten hat, weil es «unmöglich» sei. Das hat den Softwareentwickler damals nicht abgeschreckt. Im Gegenteil, es hat ihn angespornt: «Ich liebe es, Hypothesen aufzustellen und zu widerlegen».
Stetiger Fortschritt
Für die nächsten Updates konzentriert sich Joshua auf das Charaktermodell und technische Optimierungen. Das abstrakte Dreieck als Spielcharakter ist Geschichte. Jetzt rennt ein «echter» Mario durch die pixelige Gegend – auch wenn er noch nicht animiert ist und lediglich in der T-Pose verharrt. Neu kann man auch das innere von Peachs Schloss sowie das erste Level des Spiels erkunden. Das Spiel läuft indessen auch deutlich geschmeidiger. In gewissen Spielszenen erreicht Joshua bis zu 30 FPS.
Für das Projekt benutzt Joshua die Rust-Programmiersprache. Den gesamten Code hat er von Grund auf neu geschrieben – es handelt sich also streng genommen nicht um einen «Port», sondern um ein von Grund auf neu entwickeltes Remake für den GBA. Wobei der Begriff «Demake» aufgrund der technischen Limitationen der Hardware besser passt.
Es sei unglaublich schwierig, ein solch komplexes 3D-Game ohne Grundlage komplett neu für Nintendos kleinen Handheld zu entwickeln. Die Hardware habe viele Limitationen, um die Joshua herumprogrammieren muss. Der GBA unterstütze in seiner Berechnungslogik keine Gleitkomma-, sondern nur ganze Zahlen. Der Handheld habe zudem keine dedizierte 3D-Hardware, weshalb alles Pixel für Pixel gerendert werden muss – so wie es beispielsweise bei «Doom» und «Quake» der Fall war:
Ebenfalls Probleme verursachen die niedrige RAM-Menge (32 KB schneller Speicher, 256 KB langsamer Speicher) sowie die schwache Rechenleistung des Systems: «Der GBA ist locker mehrere tausend Mal langsamer als ein heutiger Mittelklasse-Laptop».
Sein grosses Know-How im Bereich der GBA-Hardware hat Joshua diversen Vorreitern in der GBA-Entwicklerszene zu verdanken: «Ich möchte Projekten wie OpenLara und Leuten wie 3DSage dafür danken, dass sie der Welt gezeigt haben, was mit modernem Wissen auf dem GBA möglich ist».
![Im GBA schlummern trotz grosser Limitationen ungeahnte Kräfte.](/im/Files/7/6/1/6/2/1/1/5/gba%20digitec.jpg?impolicy=resize&resizeWidth=430)
Quelle: Shutterstock
Trotz dieser Limitationen schafft es Joshua innert kürzester Zeit, signifikante Fortschritte zu machen. Rund einen Monat nach dem Start des Projekts rennt Mario schon mit echten Animationen durch die Welt. Der Klempner hat zudem einen Teil seines Movesets aus dem Originalspiel wieder gelernt. Hechtsprünge, Vorwärts- und Rückwärtssaltos, lange Sprünge, Dreifachsprünge – das sieht schon sehr nach dem «echten» Game aus! Auch die Framerate ist dank diverser Optimierungen im Hintergrund um einiges stabiler und höher.
Der aktuelle Stand und ein Blick in die Zukunft
Im neuesten Update hat Joshua an weiteren Inhalten gearbeitet. Neu gibt es im Spiel sammelbare Sterne und funktionierende Türen, die den Klempner in verschiedene Levels transportieren. Mario hat zudem weitere Moves gelernt (Ground Pound, Wall Sliding und Wall Jumping) und bewegt sich dank flüssigerer Animationen und besserer Kamera viel natürlicher durch die Spielumgebung.
Joshua gibt sich aber noch nicht zufrieden: «Das Hinzufügen komplexerer Elemente wie Gegner wird der nächste Schritt sein. Aber es bleibt abzuwarten, ob sie in das Leistungsbudget passen werden».
Um weitere Elemente einbauen zu können, arbeitet Joshua im Hintergrund fleissig weiter an der Optimierung des Spiels. So besteht das aktuelle Mario-Modell lediglich aus 134 Dreiecken – das Original auf dem N64 hatte satte 764 Dreiecke. Joshua versichert mir, dass das Spiel in der aktuellen Fassung tatsächlich auf Original-GBA-Hardware läuft: «Auf dem GBA sieht es sogar noch besser aus, weil das LCD einen «Ghosting»-Effekt hat, der dafür sorgt, dass aufeinanderfolgende Frames ineinander verschmelzen. So spielt sich das Ganze noch flüssiger».
![So sieht Joshuas Mario-Modell aus.](/im/Files/7/6/1/7/0/8/5/1/Stars%20doors%20and%20a%20sky%20SM64%20GBA%200-41%20screenshot.png?impolicy=resize&resizeWidth=430)
Quelle: Joshua Barretto
Das komplette «Super Mario 64»-Spiel mit allen Levels und Funktionen möchte der Softwareentwickler aber nicht replizieren: «Mein Ziel ist es zu beweisen, dass es grundsätzlich machbar ist» erklärt Joshua. Wenn das klappt, könne er sich vorstellen, mit der erarbeiteten Grundlage ein komplett neues 3D-Spiel für den GBA zu schreiben: «Ich bin ein grosser Fan von Open-World-Spielen, und ich denke, dass eine grosse offene Welt auf dem GBA eine beeindruckende Demonstration dessen wäre, was die Konsole wirklich leisten kann, wenn sie an ihre Grenzen gebracht wird».
Besonders spannend findet Joshua Voxel-Engines – er könne sich deshalb vorstellen, als Nächstes an einem «Minecraft»-Demake für den GBA zu arbeiten. Erfahrung mit offenen Spielwelten in Voxel-Optik hat Joshua schon gesammelt. Er arbeitet seit längerer Zeit am Open-World-RPG «Veloren», das du für Windows, Mac und Linux kostenlos herunterladen kannst.
![«Veloren» sieht ziemlich hübsch aus.](/im/Files/7/6/1/6/2/0/6/2/veloren.png?impolicy=resize&resizeWidth=430)
Quelle: Joshua Barretto
Dass Joshua das «Super Mario 64»-Projekt irgendwann veröffentlicht, sei unwahrscheinlich: «Nintendo schützt sein geistiges Eigentum sehr streng, daher kann ich nichts mit Nintendo-Assets verbreiten. Trotzdem werde ich den Quellcode bereinigen und veröffentlichen, damit andere davon lernen oder das Spiel kompilieren können, um es selbst zu spielen».
46 Personen gefällt dieser Artikel
![User Avatar](/im/Files/7/5/5/5/4/4/5/4/6H2A2427%20small.jpg?impolicy=avatar&resizeWidth=96)
![User Avatar](/im/Files/7/5/5/5/4/4/5/4/6H2A2427%20small.jpg?impolicy=avatar&resizeWidth=80)
Meine Liebe zu Videospielen wurde im zarten Alter von fünf Jahren mit dem ersten Gameboy geweckt und ist im Laufe der Jahre sprunghaft gewachsen.