Von Modern nach Retro in 3 Schritten

Wisst ihr, was der Vorteil dabei ist, selbst verantwortlich für seinen eigenen Blog zu sein, unabhängig Inhalte bereitzustellen und niemandem dafür Rechenschaft schuldig zu sein? Ganz einfach… Thema und Ausrichtung können sich auch mal ganz schnell ändern, und die Leser können nix dagegen tun, außer sich anderweitig nach Blogs umzuschauen, die über verblüffend lange Zeiträume ihrem Ur-Thema treu bleiben. Für solche Blogger habe ich übrigens einen Riesenrespekt!

Mein Blog hingegen zeichnet sich voraussichtlich eher durch das absolute Gegenteil aus. Obwohl… so ganz stimmt das auch nicht. Denn obwohl ich – das gebe ich fairerweise zu – im Moment den Draht zu MonoGame wieder verloren zu haben scheine (darin sind andere einfach besser als ich), wird sich dieser Blog weiterhin um das Grundthema „Softwareentwicklung“ drehen und dabei auch weiterhin den Fokus aufs Game Development haben. Warum? Weil mich dieses Thema nun einmal enorm interessiert. 🙂

Was also begeistert mich momentan?

Hier also der assoziative Pfad von Modern nach Retro in 3 Schritten.

Schritt 1

Nachdem ich mit höchster Aufmerksamkeit über etwa ein dutzend Folgen Tom mit seinem Projekt #octoawesome gefolgt bin – immerhin kennen wir uns schon seit einigen Jahren und ich war neugierig wohin ihn das Projekt wohl führen würde – verkündete er eines Tages, der Sprung in den 3D Raum würde vermutlich über OpenGL erfolgen. Da ich persönlich mit OpenGL nichts anfangen kann, habe ich ihn kurzerhand davon überzeugt, stattdessen MonoGame einzusetzen. Was er zu der Zeit nämlich noch nicht wusste, ist, dass MonoGame analog zu XNA über so etwas wie eine Rendering Pipeline verfügt. Genau nach so einem Feature suchte Tom nämlich. Gefunden. Also los. Einige Folgen Refactoring später stand #octoawesome also auf neuen Beinen. Und während ich noch am überlegen war, ob ich mich jetzt mit ins Getümmel stürze, finde ich auf seiner Codeplex Seite nicht nur einen Link zu meinen MonoGame Videos (Danke, Tom!!), sondern auch zu Casey Muratoris Serie Handmade Hero.

Schritt 2

Und was habe ich gelacht. Zunächst. Ich meine… echt jetzt? Okay, Casey blickt zurück auf ca. 30 Jahre Erfahrungen in der Games Branche und man merkt ihm sofort an, dass er in jedem Moment weiß, wovon er spricht. Wovon er denn spricht? Einfach gesagt ist sein Ziel, ein Commercial Quality Game zu entwickeln und zu vermarkten. Und der Weg dorthin führt über Live Broadcasts via Twitch. Fünf Tage die Woche, jeweils eine Stunde Main Stream gefolgt von einer halben Stunde Q&A. Davor geschaltet: Eine Intro Serie. Und jetzt geht’s los: Intro to C on Windows. Genau. Kein Scherz. C. Nicht C#. Nicht Java. Nicht HTML5 und CSS3 oder NAMEYOURFAVOURITEFANCYFRAMEWORK.js. Nö. C. Plain old C. Nicht mal C++. und wo wir schon dabei sind: Nicht mal eine moderne Entwicklungsumgebung mit IntelliSense oder so. Nope. Visual Studio? Ja,… als Debugger. Programmiert wird mit Emacs. Wie gesagt… ich kam aus dem Lachen nicht mehr raus. Vor allem, als es losging mit Erläuterungen zur Bedienung der Kommandozeile unter Windows. Denn gebaut wird hier. Mit Batch-Dateien. Alles hand-made. Keine Fremdbibliotheken. Keine Game Engines.

Okay. Als ich fertig war mit Lachen, habe ich mir die Intro-Serie angeschaut. Und die hat mich schlicht vom Hocker gehauen. Der Mann ist sympathisch! Er spricht fließend Sarkasmus (ich liebe das!), ist selbstkritisch und weiß einfach scheiße viel! Vor allem: Er kann es rüberbringen. Sein erklärtes Ziel: Nach 30 Jahren in der Szene hat er so fundamentales Wissen aufgebaut, dass es Zeit ist, es an die nächste Generation weiterzugeben. Sonst tut es ja keiner. Und wer schon immer mal wissen wolle, was eine Byte-Reihenfolge im Speicher ist, warum sie sich auf verschiedenen Prozessertypen unterscheidet, was Gullivers Reisen damit zu tun haben und warum die Kenntnisse um OpCodes, Mnemonics, Compilerbau u.v.m. noch immer wichtig ist, schaltet hier unbedingt mal rein. Es lohnt sich derbst! Hier lernt man das Thema von der Pieke an. Krass!

Übrigens: Für gerade mal 15 USD (einmalig) erwirbt man nicht nur das Recht, das Spiel selbst zu erhalten (sobald es verfügbar ist), sondern auch den Zugriff auf ein täglich aktualisiertes Repository mit den neuesten Sourcen.

Schritt 3

Und während ich so in der alten Zeit schwelgte, quasi den Jahren bevor OOP mich versaut hat, stolperte ich über ein Hörbuch: Extraleben. Von Constantin Gillies. Zwei alternde Nerds zocken fast jeden Abend auf uralten Computern Retrospiele und stoßen dabei zufällig auf einen versteckten Code in einem Spiel. Eines führt zum anderen und plötzlich finden sie sich auf einem Roadtrip durch die USA wieder auf den Spuren einer Firma, die es längst nicht mehr geben dürfte. Nicht nur, dass David Nathan als Sprecher wirklich alles aus dem Plot rausholt (genial wie immer!), nein, gefühlte 3/4 des Buches spielt gedanklich in den 80’ern. Anekdoten, Anspielungen, Erinnerungen, die wach werden. Herrlich! Achja… und natürlich an jeder Ecke C64’er, Spieleautomaten, Amigas und dergleichen mehr.

Was lag da also näher, als sich über Ebay auch mal wieder damit einzudecken? Und schon nenne ich wieder einen C64 mit 1541-II, VC1531 Datassette, Quickshot Pro, ein paar Spielen auf Tape und Disk und mehr mein eigen. Hammer. Und wo ich sowieso schon auf dem Retro-Trip bin und wieder mit C herumexperimentiere (Casey sei Dank!), kann ich doch auch mal schauen, ob…

Retro!

… man heutzutage nicht auch an Informationen herankommt darüber, wie man für den Commodore 64 Software entwickelt. Insider denken jetzt: Mist, wir wurden enttarnt. Ja sorry Jungs… was soll ich sagen… das Thema ist einfach zu krass geil! Ich meine… hättet IHR gedacht – liebe Leser – dass es eine aktive Community gibt, die heute noch Spiele für den Brotkasten entwickelt, oder Disc Mags? Oder Musik? Oder BBS Software (wer jetzt fragt, wofür BBS steht, ist definitiv zu jung :))? Aber das gibt’s! Und ich hab’s gefunden. Yeah!

Mittels Cross Compiler lässt sich sogar in C für den C64 programmieren. Wie geil ist das denn bitte sehr?!

Vielleicht werde ich in Zukunft das eine oder andere darüber hier schreiben. Einfach nur deshalb, weil es mich im Moment ziemlich interessiert. Auf jeden Fall folgt demnächst ein Beitrag, in dem ich auf verschiedene Inhalte eingehen werde, die Seiten verlinken und Tipps geben, wo man Informationen zu diesem Thema findet. Vielleicht verirrt sich ja der eine oder andere Retro-Spinner hierher und sucht genau wie ich nach solchen Dingen. Dann wird er hier evtl. fündig.

That’s it for today. I’m outta here.

Advertisements