Multiplayer golf

Top  Previous  Next

Christof Firlus und Torsten Simon haben sich die Zeit genommen, einige Fragen zu beantworten.

 

F: Können Sie uns etwas über die Mitglieder Ihres Teams erzählen?

A: Hauptsächlich besteht unser Team aus zwei Leuten: Christof (22) und Torsten (16). Torsten ist Programmierer und für die Texturen verantwortlich, er programmiert auch einige Tools für unsere Spiele. Christof ist Level Designer und hat immer gute Ideen. Leider haben wir keinen guten Modeler.

 

F: Wie haben Sie C-Skript erlernt?

A: Ich muss sagen, dass das Erlernen einer Programmiersprache nicht so einfach ist, wie viele denken. Sie benötigen viel Zeit und müssen Interesse am Programmieren mitbringen, um wirklich gut zu werden. Am besten: experimentieren, experimentieren, experimentieren! Versuchen Sie, sich selbst Herausforderungen zu stellen, aber überfordern Sie sich nicht.

 

F: Was waren die größten Probleme während der Entwicklung des Spiels?

A: Das größte Problem das wir hatten und zum Teil immer noch haben ist die Spielsequenz zu speichern, vor allem bei hohen Verzögerungen beim Onlinespiel. Es ist nicht so einfach, nur so viel Daten zu übertragen wie nötig, weil es manchmal unsicher ist, ov eine bestimmte Variable oder ein String gesendet werden muss oder nicht.

 

F: Können Sie erläutern, welche Daten über das Netzwerk übertragen werden und wie das geschieht?

A: Zunächst muss ich sagen, dass wir nicht das Entity Transfer System der Engine nutzen, wir haben unser eigenes programmiert. Der aktuelle Spieler sendet die Position des Spielobjektes (des Golfballs) und die anderen Spieler erzeugen eine Dummy Entity an dieser Position. Es ist wichtig, dass der Server diese Positionen zu allen Clients sendet. Es gibt bereits 6 Variablen (Position und Ausrichtung), die in jedem Frame versandt werden. Desweiteren gibt es "alive" Variablen, die überprüfen, ob ein Spieler aus dem Spiel geflogen ist oder nicht. Und dann sind da noch die Strings aus dem Chatsystem. Und natürlich müssen wir noch die Anzahl der benötigten Schläge eines Spielers übertragen, damit diese auf der Punktetafel angezeigt werden können.

 

F: Haben Sie Ihr Spiel im Internet getestet? Wie gut lief es?

A: Natürlich testen wir es meistens über das Internet (wir nutzen unsere eigene IP Adresse, um gegeneinander zu spielen). Mit Pingraten unter 200 ms läuft es flüssig. Ist der Ping höher, gibt es manchmal Verzögerungen, wie man sie auch bei anderen Onlinespielen sehen kann.

 

F: Verwenden Sie Freeware oder günstige Tools zur Entwicklung? Nennen Sie bitte Namen...

A: Natürlich. Wir verwenden Easy Particles 3 (wer tut das nicht? ;-) ), Blender, Vue 5 Easel (für Logos) und GIMP.

 

F: Welche Engine Features vermissen Sie am meisten? Was würden Sie in naher Zukunft gern implementiert sehen?

A: Es wäre großartig, wenn jeder Client, der beitritt eine Identifikationsnummer bekäme (so wie 1, 2, 3, ...) und wir darüber Variablen oder Strings an nur diesen Client senden könnten. Oder wenn man eine Variable an alle Clients mit Ausnahme eines bestimmten senden könnte. Die kick Funktion könnte besser sein; außerdem wäre es gut, wenn man bestimmte IP-Adressen bannen könnte.

 

F: Bitte geben Sie einige Tipps für Anfänger.

A: Sie sollten nicht mit einem zu komplexen Spiel anfangen. Versuchen Sie sich an kleineren Codeschnipseln, einfachen Models und kleineren Levels. Wenn Sie dann besser werde, versuchen Sie ein einfaches Spiel zu schreiben und nicht gleich Crysis nachzubauen. ;-)

 

Vielen Dank.