Und denke ich sollte man nicht unbedingt mit der Überlegung: "Welches Pattern würde sich hier eignen" heran gehen, sondern maximal mit: "Hier würde Pattern X sich prima eignen".
Das ist eben der Knackpunkt, damit das funktioniert, braucht man eine gewisse Erfahrung. Damit sieht man dann bei bestimmten Problemstellungen automatisch, dass sich ein Pattern gut anwenden lässt oder eben nicht.
Bei dem dem Spiel "Master of Orbs" auch Designprobleme bzw. keine Ahnung wie ich ein 'Design Dokument' erstellen soll.
Dazu gibt es verschiedene Meinungen, was in ein Gamedesign-Dokument gehört. Es kann teilweise schon techniklastig sein, oder nur reine Spielekonzepte beinhalten. Eventuell ist es eine gute Idee, wenn du dein Spiel erstmal grob als Brettspiel gestaltest und damit die Spielemechaniken testest. Evtl. hilft dir das
hierweiter. Eine "Vorlage" findet sich bei
Gamasutra, wobei du solche Vorlagen
immer an deine Bedürfnisse und Wünsche anpassen musst.
Zum Abschluss noch eine ganze Latte von GameDesign Dokumentenvorlagen auf
Google.
Als Vergleich nur mal wie lange ich schon an meine Engine sitze. Bis jetzt dürfte ich etwa 3 Jahre an meiner Engine arbeiten und im Gegensatz zu dir setze ich wo ich nur kann auf 3rd-Party Bibliotheken (Renderer, Audio, Input, Szenendateiformat, Scripting, GUI, Partikelsystem, Skysystem, Physik, etc.) und trotzdem ist es ein riesen Berg Arbeit, den ich am Anfang total unterschätzt habe. Dazu kommt noch die Toolchain, die mMn wirklich
essentiell (man kann es nicht oft genug und fett genug schreiben) ist, um den Aufwand beim Erstellen der Assets/Inhalte des Spiels gering zu halten. Und gerade bei der Toolchain wird es schwieriger sich auf 3rd-Party-Tools zu verlassen, weil man in diesem Bereich dann doch recht schnell auf Rahmenbedingungen stößt, die durch die eigene Engine vorgegeben sind, durch welche es sinnvoll werden kann, seine Tools selber zu schreiben ( was ich nun zwischenzeitlich mache, was den Szeneneditor angeht).
Wenn man dann schlußendlich dazu kommt ein Spiel (bzw. in meinem Fall einen Editor zuschreiben) welches die Engine verwendet, wird einem ersteinmal klar wo die eigene Engine Fehlentscheidungen im Design aufweist, die das Programmieren eines Spiels nicht möglich oder total unpraktikabel machen. Da gibts dann nur die Möglichkeit "zurück ans Reißbrett" und das Enginedesign ändern. Wohl dem der schon ein Enginedesign hat, welches im nachhinein noch solche Änderungen ohne zu viel Arbeitsaufwand zu lässt.
In diesem Sinne: Denke gut darüber nach wie du deine eigene Engine schreibst, was du wirklich selber machen willst und wo du vielleicht besser auf die bereits existierenden "Räder" anderer zurückgreifst.
Thoran