-
Ritter
Das Grundprinzip jeder Programmiersprache ist denkbar einfach.
Auf der einen Seite hat man die rohe Hardware, die nichts weiter als Sequenzen von 0 und 1 verarbeiten kann und auf der anderen Seite den Menschen, der als Programmierer gerne verschiedene berechenbare Funktionen durchführen will. Aufgabe der Sprache ist beides zu vermitteln. Dafür fungieren bestimmte Sequenzen als Befehlssequenz um rudimentäre Aufgaben wie das kopieren eines Wertes von einem Register in ein anderes oder das addieren eines Wertes zu einem bereits vorhandenem Wert. Fertig ist in dem Sinne die unterste aller Sprachen, der Assembler.
Problem dabei ist, daß in Assembler schreiben furchtbar aufwendig ist und die Sprache Prozessorabhängig ist (da jeder Prozessertyp andere Bytesequenzen als Befehle kennt). Also wird das ganze um eine Stufe abstrahiert. Dabei werden möglich Konzepte benutzt die das Programmieren einerseits vereinfachen, andererseits aber keine künstliche Grenzen aufweisen. Also benutzt man Variablen um Speicher anzusprechen und if- und Schleifenkonstrukte um den Programmfluss zu steuern sowie Funktionsaufrufe um Code wiederverwenden zu können. Fertig ist die Hochsprache, sozusagen C.
(Anmerkung: Das ganze ist hier stark vereinfacht dargestellt und es gab sicherlich viele verschiedene Sprachen zwischen dem reinem Assembler und dem ersten Auftauchen von C, das ganze soll hier nur verdeutlichen welche Idee hinter den Konzepten innerhalb einer Sprache steht)
Als ASCII das Eventscript entwickelt hat wollte sie dem Benutzer die Möglichkeit das Spiel in bestimmten Grenzen nach seinen Wünschen zu gestalten. Dafür hat es dann bestimmte Befehle eingebaut, die typischerweise in RPGs benutzt werden, wie "Show Message" oder "Call Shop". Aber genauso haben sie dem Entwickler die rudimentären Werkzeuge aller Programmiersprachen an die Hand gegeben, nämlich Variablen und eine Flusskontrolle durchs Ifs. Da diese Konzepte universell für jede Art von Programm benutzt werden können, können sie im Maker auch in Zusammenarbeit mit den anderen Befehlen, die speziellere Aufgaben übernehmen, zu einer unglaublichen technischen Möglichkeit führen. Was sich in den heutigen eigenen Kampfsystemen und Menüs ja äußert. Genau so wie Programmiersprachen dazu dienen mit wenigen aber dafür vielseitig verwendbaren Konzepten dem Programmierer zu helfen, so sind die Eventbefehle genau so vielseitig verwendbar. Zusammen mit der Tatsache, daß im Event-Script man immer nur einen Befehl auf einmal ausführen lassen macht dies Eventscript sogar ziemlich Assembler-ähnlich.
Ein Umschreiben des Makers ist allerdings, wie bereits schon gesagt, nahezu unmöglich, bzw die Möglichkeiten die man dazu hätte (Rückumwandlung des Maschinencodes in Assembler oder sogar C) sind illegal. Das Schreiben eines eigenen Makers ist da sicherlich die bei einfachere Methode (im Sinne von weniger komplex - was mehr aufwand ist kann ich nicht beurteilen, aufgrund der fehlenden Kommentare im Rückgeführten Makercode ist das Umschreiben aber wohl auch aufwendiger als das Neuschreiben, wo man auf zahllose Bibliotheken zurückgreifen kann um sich arbeit zu sparen), davon abgesehen, daß man dann auch mehr Freiheiten hat.
PS:
Der Rm2k und vermutlich auch der Rm2k3 wurden in Delphi geschrieben. Der RPG Maker XP ist dagegen mit großer Wahrscheinlichkeit in C bzw C++ geschrieben und beinhaltet einen eingebetteten Ruby-Interpreter (mir ist nämlich keine andere Sprache bekannt, in der man Ruby einfach einbetten kann). Der XP ist mit absoluter Sicherheit NICHT in Ruby geschrieben. Ich fände es schön wenn Leute so etwas nur schreiben wenn sie sich absolut sicher sind. Spekulationen und Halbwissen helfen hier niemandem.
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln