SmileBASIC
BASIC?
Die Programmiersprache BASIC bestimmte Anfang der 80er Jahre die Computerspiele-Industrie. Unter anderem setzte der Commodore 64, der am weitesten verbreitete Heimcomputer aus dieser Zeit, auf dieses Entwicklungswerkzeug. Ein (sehr einfaches) Stück BASIC-Code sieht in etwa so aus:1 PRINT "ERSTE ZAHL"
2 INPUT A
3 PRINT "ZWEITE ZAHL"
4 INPUT B
5 C=A+B
6 PRINT "SUMME: ";C
Tatsächlich kann selbst jemand, der noch nie in seinem Leben programmiert hat, irgendwie verstehen, was diese Zeilen tun. Wenn ihr nun jedoch ein komplettes Spiel entwickeln, dieses an eine Framerate koppeln, Joypad-Eingaben verarbeiten und Sprites rendern wollt, gestaltet sich das schon ungleich schwieriger. Es war nämlich nicht unbedingt die Einfachheit der Programmiersprache BASIC, die ihr zu ihrem Durchbruch verhalf, sondern ihre Zugänglichkeit. Jeder konnte sich einen C64 kaufen und hatte dann bereits eine vollwertige BASIC-Entwicklungsumgebung in seinem Wohnzimmer stehen.
Ein Buch mit mehr als nur sieben Siegeln
Die Spielanleitung wiederum erklärt uns ein Hello-World-Programm - und endet an dieser Stelle. Stattdessen schließt sich der Kreis und wir werden wieder zurück an die Software verwiesen: Diese enthält ein "?"-Symbol, mit dem wir uns die Bedeutung des gerade im Editor markierten Schlüsselwortes anzeigen lassen können. Eine solche Funktion ist als einziges Lehrmittel natürlich völlig ungenügend. Ein gutes Programmier-Tutorial für angehende Spieleentwickler erklärt uns Schritt für Schritt, wie wir überhaupt ein Raumschiff auf dem Bildschirm darstellen können. Im zweiten Kapitel lernen wir dann, wie wir es nach rechts und links bewegen; anschließend, wie wir einen Schuss abfeuern können. Dann werden die Space Invaders gerendert. SmileBASIC unternimmt noch nicht einmal den Versuch, Interessenten derartige Tutorials an die Hand zu geben.
Somit bleiben uns also die Beispielapplikationen. Neben einigen fragwürdigen Apps finden sich an dieser Stelle auch ein paar Spiele, die die bekanntesten Genres rudimentär abdecken. Dumm ist nur, dass sie alle aus dem Buch "Terrible Old Games You've Probably Never Heard Of" von Stuart Ashens stammen könnten: Sie haben massive Probleme mit Steuerung und Kollisionsabfrage und erzeugen bereits nach weniger als einer Minute das dringende Bedürfnis, den 3DS auszuschalten. Wenn wir uns also monatelang in SmileBASIC einarbeiten und mit der 3DS-Tastatur mehrere tausend Zeilen Programmcode eintippen, können wir irgendwann Spiele auf diesem Niveau abliefern. Hurra!
Eine Software ohne Sinn
Wer nun vielleicht noch ein bisschen Resthoffnung hegt, dass er durch das Lesen des Programmcodes der beiliegenden Spiele zumindest ein bisschen Programmieren lernen könnte, muss leider auch enttäuscht werden. Denn sobald wir in BASIC irgendetwas komplexeres als ein Textadventure programmieren wollen, artet die vermeintlich einsteigerfreundliche Programmiersprache sehr schnell aus. Codezeilen, die die Knöpfe des 3DS abfragen oder tatsächlich Grafiken auf den Bildschirm bringen, erinnern eher an nicht mehr von Menschen lesbaren Assembler- oder Maschinencode. Dass BASIC eine vergleichsweise intuitive Programmiersprache sei, traf vielleicht mal zu, als diese auf den Markt kam - aber das war im Mai des Jahres 1964. Im letzten halben Jahrhundert haben sich nicht nur die technischen Möglichkeiten, sondern auch die Nutzerfreundlichkeit der gängigen Programmiersprachen immer weiter entwickelt. Wenn ihr wirklich Spiele entwickeln wollt, stehen euch dazu diverse kostenlose Tools zur Verfügung - beispielsweise die Unity-Engine oder das XNA-Framework in Verbindung mit Visual Studio Community. Der Einstieg in diese Entwicklungswerkzeuge ist sehr frustrierend und es wird vermutlich Tage dauern, bis ihr eure Entwicklungsumgebung lauffähig bekommen und ein erstes "Hello World"-Programm gestartet habt. Doch wenn diese Hürde erst mal genommen ist, lassen sich deutlich schnellere und deutlich bessere Ergebnisse erzielen als mit SmileBASIC.Natürlich wirkt es auf den ersten Blick unfair, eine kleine Download-Applikation für den 3DS mit professionellen Entwicklungswerkzeugen zu vergleichen. Da SmileBoom seine App im eShop für Geld verkaufen will (und zudem noch Day-One-DLC und eine Gold-Mitgliedschaft im Monatsabo anbietet), muss die Software jedoch auch irgendeinen Nutzen bieten. Aber selbst wenn wir einmal ausblenden, dass SmileBASIC mit der Möglichkeit zur Entwicklung eigener Spiele wirbt und es stattdessen wirklich nur als Spielzeug betrachten, mit dem angehende Nachwuchs-Programmierer kleine "Sinnlos-Apps" wie einen textbasierten Taschenrechner entwickeln dürfen, können wir einen derartigen Nutzen nicht erkennen. Denn auch solche Programme lassen sich in modernen Programmiersprachen mindestens genauso schnell und genauso einfach entwickeln wie in BASIC.