Seite 1 von 1
Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 10:51
von Kinimo
Hallo Forum,
Ich kenne mich leider noch nicht wirklich gut mit Python aus.
Aber Python interessiert mich und deshalb kenne ich auch schon grundlegende
Elemente. Jetzt habe ich vor ein kleines relativ simples Spiel zu entwickeln am liebsten
mit grafischer Oberfläche (vorzugsweise Tkinter). Da ich habe noch nicht weiß wie ich anfangen
soll und worauf ich achten muss, habe ich gehofft ihr zeigt mir ein paar Programme/Codes,
womit ich mir einen guten Überblick verschaffen kann und hinterher meine eigenen Ideen einfließen lassen kann.

Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 11:02
von mutetella
Hallo,
schau' Dich doch mal bei
pygame um, dort findest Du jede Menge kleinere und größere Spiele und deren Quellcode. IMHO wirst Du mit pygame auch glücklicher als mit tkinter, wenn es darum geht, ein Spiel zu programmieren.
mutetella
EDIT: Leider ist pygame.org gerade down, musste halt später nochmal versuchen... (ist heute schon die zweite Seite, die nicht erreichbar ist... grml...)
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 11:37
von BlackJack
@mutetella: Ob `Tkinter` reicht oder nicht hängt IMHO auch vom Spiel ab. Es gibt Spiele da ist Pygame besser geeignet, welche wo beides geht, und sogar welche wo `Tkinter` besser geeignet ist. Zum Beispiel dann wenn man weniger individuelle Grafik, dafür aber viele „traditionelle” GUI-Elemente benötigt, die man sich in Pygame erst selber programmieren müsste.
@Kinimo: Da wäre jetzt also die Frage was für ein Spiel Du schreiben möchtest.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 12:08
von Kinimo
Danke schon mal für die Antworten
@BlackJack
Ich bin da für alles offen von snake, ping pong, tetris bis zu 2D jump and run spiele.
Aber es wäre auf jeden viel cool, wenn ich diese grafisch darstellen könnte, bei einem simplen
Spiel hatte ich gehofft, dass Tkinter ausreicht aber wie gesagt, ich bin bereit neues zu lernen!
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 13:58
von BlackJack
@Kinimo: Also Snake, Pong, und Tetris dürften kein Problem sein mit Tkinter. Für ein Jump'n'Run wäre Pygame wahrscheinlich besser geeignet.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 15:28
von Kinimo
Gut dann probiere ich mal an Tetris aber wie fange ich das am besten an und was muss
ich dafür wissen?
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 15:41
von BlackJack
@Kinimo: Grundsätzlich erst einmal wie Tetris funktioniert und welche Bestandteile dafür entworfen und programmiert werden müssen. Dann musst Du Dir überlegen mit welchen Datenstrukturen Du die Bestandteile von dem Spiel am besten im Programm repräsentierst. Also zum Beispiel wie Du die Spielsteine und das Spielfeld intern darstellen willst und welche Operationen auf diesen Objekten benötigt werden. Zum Beispiel das man die Steine drehen können muss. Oder das man einen Test braucht der volle Zeilen ohne „Löcher” auf dem Spielfeld erkennen kann. Das hat übrigens alles noch gar nichts mit der Grafik zu tun! Das ist dann aber auch etwas was man irgendwann braucht: Code der die interne Repräsentation des Spiels auf eine grafische Anzeige abbildet.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 15:55
von Kinimo
Das hört sich ja dann doch ziemlich schwierig an
Kannst du mir da i.wie ein Beispiel Programmierprojekt zeigen oder ein Link einfügen, woran ich mich entlang hangeln kann um die kompelxe Struktur erstmal nach vollziehen zu können. :K
Denn bisher konnte ich erst mit einem Objekt umgehen und Listen braucht man bestimmt auch.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 16:06
von BlackJack
@Kinimo: Ja, Listen wären für Tetris sicher praktisch. Was meinst Du „mit einem Objekt” umgehen? Man müsste selber Klassen schreiben. Zum Beispiel eine Klasse für die Spielsteine. Und eine für das Spielfeld. Und später dann welche für die Benutzeroberfläche, zum Beispiel für die Darstellung des Spielfelds.
Man muss ein grösseres Problem auf kleinere Teilprobleme aufteilen. Und die dann auch wieder aufteilen. Solange bis man die einzelnen Teilprobleme einfach jeweils mit ein paar Zeilen Code lösen kann. Und die Teillösungen setzt man dann zu grösseren Teilllösungen zusammen bis man eine Gesamtlösung hat.
Tetris ist vielleicht nicht so praktisch weil man das nicht so gut ohne GUI umsetzen kann. Was im Grunde auch für Snake und Pong gilt. Die lassen sich aber IMHO etwas einfacher modellieren weil die nicht ganz so komplex sind wie Tetris.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 16:13
von Kinimo
Ok, dass hat sich ja schon zu einfach um wahr zu sein angehört..
Dann fange ich liebe mit etwas anderem an, dass nicht ganz so Komplex ist.
Trotzdem danke für deine Bemühungen!
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 18:25
von EyDu
Fang doch einfach mal mit Tic Tac Toe an, da kannst du gut schrittweise vorgehen. Am besten schreibst du es als erstes so, dass man auf der Konsole spielen kann. Dann kannst du dein Programm um eine Oberfläche mittels Tkinter erweitern. Abschließend bietet sich noch eine KI an, damit du auch gegen den Computer spielen kannst. Bei Tic Tac Toe ist das besonders einfach, daher gut für einen Einstieg geeignet.
Bie so einem kleinen Projekt ist es dann auch nicht so schlimm wenn du mal etwas größere Fehler machst. Dann wirfst du den Code halt noch einmal weg und schreibst ihn vernünftig auf. Das wird dir am Anfang sicher häufiger passieren, ist aber ganz normal. Auf jeden Fall sind deine Ziele/Spielideen realistisch und alle gut umsetzbar.
Re: Codebeispiele für einfache Spiele
Verfasst: Sonntag 29. September 2013, 21:35
von Kinimo
Danke, dann werde ich das erstmal versuchen!
Re: Codebeispiele für einfache Spiele
Verfasst: Dienstag 8. Oktober 2013, 00:39
von Malachite
*bump*
Falls du irgendwann mit Pygame anfängst, empfehle ich dir
diesen Artikel.
Re: Codebeispiele für einfache Spiele
Verfasst: Montag 14. Oktober 2013, 10:08
von siggi
Hier findest du viele Codebeispiele für Pygame, nämlich ch16 bis ch19.zip:
http://www.manning.com/sande/sourcecode ... y_Chapter/
Aus dem Buch
http://www.manning.com/sande/
Ist zwar für Python bis 2.7 vorgesehen, aber mit meinem Python3.3/Python3.2.0 (64bit, windows 8 bzw. Ubuntu 12.04) und den entsprechenden Pygames klappt es mit kleinen Änderungen ebenfalls
Re: Codebeispiele für einfache Spiele
Verfasst: Dienstag 15. Oktober 2013, 19:08
von siggi
Der Vollständigkeit halber:
Python/Pygame code listings (Downloadseite, s. obiges Posting):
* Skier, Listing 10.1: ein Skifahrer fährt abwärts, vermeidet Zusammenstoß mit Bäumen (Punkteabzug) und versucht Fähnchen zu sammeln (Punktegewinn)
* PyPong, Listing 19.5: Ballspiel mit Paddle, Hintergrundmusik und Sounds. Die Listings 16.1 bis 19.4 dienen der Einführung in Pygame und der schrittweisen Einführung in PyPong
* Lunar Lander, Listing 24.1: Computersimulation einer Mondlandung. Es ist gar nicht so einfach, den Schub des Raumfahrzeugs so einzustellen, dass eine weiche Mondlandung stattfindet.
Re: Codebeispiele für einfache Spiele
Verfasst: Mittwoch 16. Oktober 2013, 19:01
von siggi
Habe eben erst gesehen, dass es hier auch um Tkinter ging. Deshalb noch was für Python/Tkinter, das Stickmanspiel, läuft bei mir auf Python2 (dann Tkinter aufrufen), und Python3 (dann tkinter aufrufen). Gar nicht so leicht, den Stickman mittels <left>, <right> und <Leertaste> über die Barrieren bis nach oben zur Tür hüpfen zu lassen!
Es ist Chapter 18, stickmangame7.py auf
http://jasonrbriggs.com/python-for-kids/code.html