Wie strukturiert man ein Spiel?
Verfasst: Dienstag 1. August 2017, 00:01
Guten Tag ,
nach einem Jahr Programmieren in Python versuche ich gerade mein erstes Spiel in Python zusammen zu schustern. Genauer gesagt geht es um das Kartenspiel 'Bonanza' der Firma 'Amigo Spiele'. Als Endprodukt stelle ich mir vor, dass man (erstmal) gegen eine definierbare Anzahl von AIs spielt.
Da es mir nur um die ungefähre Strukturierung eines solchen Kartenspieles geht, verzichte ich hier auf eine genauere Beschreibung des Spiels.
Meine jetzige Struktur:
Es gibt einen Input-Manager, der 'Input' einholt, einen Output-Manager, der jeglichen 'Output' verwaltet (auch die Aufforderung zu einer Eingabe seitens des Spielers) und die Logik.
Ich habe die Manager eingeführt, um mir den späteren Umstieg von der Konsole zu einer GUI mithilfe von pygame, zu erleichtern.
Rückgabe-Werte von Funktionen, die auch Fehler, wie beispielsweise eine nicht gültige Eingabe des Nutzers, zurückgeben können, werden als Instanzen der Klassen 'Output' und 'Error' zurückgegeben.
Die Klassen sehen ungefähr so aus:
Dieses System erachte ich allerdings nicht mehr als sinnvoll, sondern eher als sperrig und werde es wahrscheinlich abschaffen.
Soweit die kurze Beschreibung meines jetzigen Systems.
Ist eine solche Gliederung sinnvoll oder gibt es andere gängige Strukturen, die ich bei meinem Programm einführen könnte?
Ich bin für jegliche Art der Kritik dankbar.
Mit freundlichen Grüßen
lukcod3
nach einem Jahr Programmieren in Python versuche ich gerade mein erstes Spiel in Python zusammen zu schustern. Genauer gesagt geht es um das Kartenspiel 'Bonanza' der Firma 'Amigo Spiele'. Als Endprodukt stelle ich mir vor, dass man (erstmal) gegen eine definierbare Anzahl von AIs spielt.
Da es mir nur um die ungefähre Strukturierung eines solchen Kartenspieles geht, verzichte ich hier auf eine genauere Beschreibung des Spiels.
Meine jetzige Struktur:
Es gibt einen Input-Manager, der 'Input' einholt, einen Output-Manager, der jeglichen 'Output' verwaltet (auch die Aufforderung zu einer Eingabe seitens des Spielers) und die Logik.
Ich habe die Manager eingeführt, um mir den späteren Umstieg von der Konsole zu einer GUI mithilfe von pygame, zu erleichtern.
Rückgabe-Werte von Funktionen, die auch Fehler, wie beispielsweise eine nicht gültige Eingabe des Nutzers, zurückgeben können, werden als Instanzen der Klassen 'Output' und 'Error' zurückgegeben.
Die Klassen sehen ungefähr so aus:
Code: Alles auswählen
class Output:
def __init__(self, output):
self.output = output
self.type = 'output'
def get_output(self):
return self.output
def get_type():
return self.type
class Error(Output):
def __init__(self, error):
Output.__init__(self, error)
self.type = 'error'
Soweit die kurze Beschreibung meines jetzigen Systems.
Ist eine solche Gliederung sinnvoll oder gibt es andere gängige Strukturen, die ich bei meinem Programm einführen könnte?
Ich bin für jegliche Art der Kritik dankbar.
Mit freundlichen Grüßen
lukcod3