Vielen Dank für den Beitrag, sehr hilfreich.
Leider kann ich nicht zustimmen.
Der Maker geht meiner Meinung nach keinen wirklichen Weg. Die meisten Features scheinen zufällig gewählt worden zu sein und lassen in meinen Augen nicht auf überhaupt irgendein Muster schließen.
Auf der einen Seite kann man Variablen als Indizes auf andere Variablen nutzen, ähnlich zu Pointern in Arrays. Auf der anderen Seite ist dieses Feature allerdings nur in wenigen Bereichen möglich, zum Beispiel nicht für Pictures oder dergleichen.
Es ist inkonsistent ohne ersichtlichen Grund. Der Aufwand zum Implementieren wäre minimal, komplexer würde das Ganze dadurch auch nicht werden.
Dann gibt es wiederum Event-Code mit gewissen Bedingungen und Aktionen, die allerdings bei weitem nicht alles abdecken, auch wenn es sehr einfach geworden wäre dies zu ermöglichen. Zum Beispiel die Event-Seiten für Kampfspezifische Events. Dort gibt es nichteinmal nahezu ausreichend Möglichkeiten Auslöser zu definieren.
Für mich schließt das alles auf Unentschlossenheit und keine ausgereifte Planung der Software.
Das Interessante daran ist, dass das Programmieren sehr sehr simpel ist sobald man das Grundgerüst und die kryptische Syntax von Programmiersprachen ignoriert.
Wie du selbst festgestellt hast ist es schon sehr einfach, auch für jemand unerfahrenen, simple Abläufe im Maker umzusetzen. Das ist bereits Programmierung.
Die Idee hinter dem GUI-Code ist es, die komplizierten Gegebenheiten von Programmiersprachen sauber und ordentlich nach Außen an den Anwender zu bringen und die Hässlichkeiten zu verstecken. Außerdem werden alle Möglichkeiten aufgelistet und kategorisiert und direkt mit einer Beschreibung versehen.
Zudem wird die Möglichkeit für Programmfehler vermindert.
Wie leicht oder kompliziert das Endprodukt wird hängt stark davon ab wie viel Mühe man sich damit macht es "ordentlich" zu gestalten. Es sollte möglichst intuitiv und selbsterklärend sein. Dann können auch Anfänger sehr schnell lernen damit umzugehen.
Was die RPG-Maker machen ist es Features in Form von Event-Commands abzulösen und die Arbeit auf den Endnutzer zu überwälzen. Die Entwickler von Enterbrain sind nicht motiviert genug um tiefergehende Event-Commands zu implementieren und geben daher dem nutzer den Source-Code und sagen ihm "da, mach dir selbst.".
Das sieht auf den ersten Blick zwar nach einer tollen Möglichkeit aus um allerlei mächtige Funktionalität einzubauen, in Wirklichkeit ist es meiner Meinung nach aber eine schlechte Unternehmenspolitik, welche sich versucht zu verbergen.
Es ist wie eine Waage: Wie viel Arbeit macht sich der Software-Entwickler und wie viel Arbeit muss der Endnutzer letzten Endes übernehmen. Enterbrain ging mit dem XP den Weg so gut wie alles auf den Endnutzer ab zu wälzen.
Ich stimme dieser Taktik schlichtweg nicht zu.
Die RPG Maker 2k und 2k3 sind, meiner Meinung nach, von grundauf schlecht designed. Kompliziertere Systeme sind nur dann möglich, wenn man bereit ist wie ein Sklave zu arbeiten, für ein Ergebnis, welches mit einer ordentlichen Programmierung nur wenige Minuten gedauert hätte.
Das hat nichts damit zu tun, weil eine Scriptsprache nicht zur Verfügung steht. Das hat damit zu tun, dass Enterbrain eine schlechte Arbeit geleistet hat.
Wenn man ordentliche, typisierte Variablen definieren könnte, und zwar lokal und global, dann würde das ganz anders aussehen.
Ich habe nicht gesagt, dass ein Programmierer sich lediglich eine Grafikengine nehmen soll.
Es gibt sehr gute Spieleengines zur kostenlosen (und auch kostenpflichtigen) Nutzung im Internet.
Jeder dürfte sich jederzeit eine dieser Engines nehmen und sofort anfangen das Spiel zu programmieren.
Schau nur einmal hier:
http://de.wikipedia.org/wiki/Liste_von_Spiel-Engines
Dort findet sich unter anderem:
CryEngine
Unreal Engine
Quake-Engine
und viele weitere bekannte Namen. Alles kostenlos zu nutzen.
Das sind nicht nur Grafikengines. Du hast bereits ein komplettes fertiges Spiel in manchen Fällen. Dieses kannst du dann ganz einfach mit neuen Resourcen und zusätzlichem Code bearbeiten.
Ein Plugin-System wäre vielleicht ganz interessant, möglicherweise aber schwer umzusetzen. Darüber muss ich ein wenig nachdenken.