Ich habe vor vielen Jahren angefangen zu programmieren. Jetzt versuche ich Spiele zu machen. Ich habe viele Empfehlungen gelesen, um mit dem Klonen einiger bekannter Spiele wie Galaga, Tetris, Arkanoid usw. zu beginnen. Ich habe auch gelesen, dass ich das ganze Spiel spielen sollte (einschließlich Menüs, Sound, Partitur usw.).
Gestern habe ich die erste vollständige Version meines Arkanoid-Klons fertiggestellt. Aber es ist noch lange nicht vorbei. Ich kann noch monatelang daran arbeiten (ich programmiere als Hobby in meiner Freizeit), indem ich einen Bildschirmauflösungs-Umschalter einsetze, die Steuertasten neu zuordnete, Power-ups, die von zerbrochenen Ziegeln fallen, und ein riesiges usw.
Aber ich möchte nicht für immer lernen, wie man EIN Spiel klont. Ich habe das Bedürfnis, zum nächsten Klon zu gelangen, um einige Gestaltungsideen anzuwenden, auf die ich bei der Entwicklung dieses Arkanoid-Klons gestoßen bin (gleichzeitig lese ich das GoF-Buch und viel Quellcode aus dem Ludum Dare 21-Spielewettbewerb).
Die Frage ist also: Soll ich den Arkanoid-Klon so lange verbessern, bis er alle Funktionen des Originalspiels aufweist? oder sollte ich zum nächsten Klon übergehen (es gibt fast unendlich viele Spiele zum Klonen) und anfangen, die Dinge zu reparieren, die ich mit dem vorherigen Klon falsch gemacht habe?
Dies kann eine sehr subjektive Frage sein. Bitte beschränken Sie die Antworten auf den effektivsten Weg, um zu lernen, wie ich meine eigenen Spiele mache (keine Ideen von jemandem klonen). Vielen Dank!
KLÄRUNG
Um zu verdeutlichen, was ich implementiert habe, mache ich diese Liste:
Funktionen implementiert:
- Sprungfähigkeiten (der Ball springt an Wänden, auf Ziegeln und auf der Stange).
- Hört sich an, wenn der Spieler auf Ziegelsteinen und der Leiste aufprallt und gewinnt oder verliert.
- Grundlegendes Titelmenü (nur neues Spiel und beenden). Auch In-Game-Menü und Gewinn / Verlust-Menüs.
- Nur drei Level, aber das Kartensystem ist so einfach, dass ich nicht glaube, dass es mir viel beibringen wird (irre ich mich?).
Funktionen nicht implementiert:
- Power-Ups beim Brechen der Steine.
- Komplexe Steine (mit mehr als einem "Trefferpunkt" und unbesiegbar).
- Bessere Grafik (ich bin nicht wirklich gut darin).
- Programmieren des Polierens (Designmuster intensiver verwenden).
Hier ist ein Link zu seiner (minimalen) Webseite: http://blog.acamara.es/piperine/ Ich schäme mich, das zu zeigen, also bitte schlag mich nicht zu fest :-)
Meine Frage bezog sich auf die nicht implementierten Funktionen. Ich fragte mich, was der schnellste (optimale) Weg zum Lernen war. 1) Implementiere die nicht implementierten Funktionen in diesem Projekt, die immer größer werden, oder 2) erstelle ein neues Spiel, das mir wahrscheinlich diese und neue Lektionen beibringen wird.
ANTWORTEN
Ich wähle @ ashes999 Antwort, weil ich in meinem Fall denke, ich sollte mehr polieren und versuchen, das Spiel "zu versenden ". Ich denke, alle anderen Antworten sind ebenfalls wichtig zu berücksichtigen. Wenn Sie also mit derselben Frage hierher gekommen sind, bevor Sie eine Eilentscheidung treffen, lesen Sie die gesamte Diskussion.
Danke euch allen!