Skip to content

Dritter freiesMagazin-Programmierwettbewerb gestartet

Offizieller Teil:

Bereits zum dritten Mal hat das freiesMagazin-Team einen Programmierwettbewerb gestartet. Thema ist diesmal ein kleines Versteckspiel.

Im Spiel – mit dem Untertitel „Right2Live“ – gibt es zwei Mannschaften: Blau und Rot, Gut und Böse, Menschen und Zombies – je nachdem, was einem lieber ist. Am Anfang ist jeder Teilnehmer des Wettbewerbs im blauen Team und wechselt im Laufe des Spiels ins rote Team.

Ziel des Spiels ist es, möglichst viele Punkte zu sammeln. Zum einen, indem man lange im Team Blau bleibt, denn die Anzahl der Runden in diesem Team ergibt einen Teil der Punkte am Ende. Als Teammitglied im Team Rot sollten Sie natürlich dafür sorgen, dass die restlichen Mitglieder in Team Blau nicht mehr all zu lange dort sind, sondern zum Team Rot wechseln. Auch dafür gibt es Punkte.

Webseite mit den Regeln und Quellcode zur Teilnahme (Deutsch)

Webpage with rules and source code for participation (English)

Zu gewinnen gibt es Buchgutscheine im Wert von 50, 30 und 20 Euro. Der Wettbewerb endet am 19. Dezember 2010 um 23:59 Uhr.

Inoffizieller Teil:

So, nun ist es endlich vollbracht. Nach einem Jahr Arbeit (ich habe direkt nach dem zweiten Wettbewerb angefangen zu programmieren) ist der Code fertig, die Regeln ausgetüftelt und der dritte Wettbewerb konnte gestartet werden. Über 23.000 Zeilen Code (inklusive der Kommentare) sind zusammengekommen (was nicht unbedingt etwas über die Komplexität des Spiels aussagt, sondern nur über meinen Programmierstil ;)).

Eigentlich sollte das Thema „Zombie“ etwas mehr im Vordergrund stehen, ich habe mich dann aber nur in der Einleitung dafür entschieden und das Spiel funktioniert mit einem roten und blauen Team. Das Horrorthema hätte ggf. einige Leute abgeschreckt. Immerhin die grüne Giftwolke ist übrig geblieben.

Das Komplizierteste zu Programmieren in meinen Augen war der Server. Der verhält sich zwar immer noch sehr seltsam (z.B. muss ich den Clients immer etwas schicken, bevor der Server etwas von ihnen empfängt, daher das blöde „PING“ zwischendurch), aber es funktioniert ganz gut. Auch die GUI ist alles andere als performant, ich habe mit 2-D-Programmierung aber keinerlei Erfahrung, was das Ergebnis erklärt.

Ich hoffe, dass die zwei Monate zur Teilnahme ausreichen, um etwas zu Programmieren. Normalerweise sollte der Client und Interpreter der Kommandos recht fix programmiert sein. Danach stellt sich ja eigentlich nur die Frage, welche Taktik man wählt, um sich irgendwo zu verstecken bzw. wie man andere Spieler fangen kann. Mit der Beispiel-KI sah das immer sehr zufällig aus (was logisch ist, bewegt sich die Beispiel-KI ja auch nur zufällig), ich bin gespannt, wie es aussieht, wenn Spieler sich wirklich jagen.

Der Wettbewerb wird (hoffentlich) auch in Full Circle Magazine erwähnt, daher gibt es auch extra eine englische Anleitung. So wird die Teilnehmerzahl vielleicht etwas größer. (Ich hoffe nur, nicht zu groß, bei mehr als 25 Leuten müssen die Karten riesig sein.)

Nach Google, Linux-Magazine und 3DCenter darf man nun also auch für freiesMagazin in die Tastatur hauen. Viel Spaß dabei!

Trackbacks

deesaster.org am : Umfrage zum freiesMagazin-Programmierwettbewerb

Vorschau anzeigen
Bei freiesMagazin gibt es eine Umfrage zum aktuellen Programmierwettbewerb, über den ich auch berichtet habe. Nach einiger Überlegung habe ich mich gefragt, ob die Türen wirklich einen taktischen Mehrwert zum Spiel beitragen oder die Regeln nur verkompliz

deesaster.org am : Gewinner des dritten freiesMagazin-Programmierwettbewerbs

Vorschau anzeigen
Am 13. Oktober 2010 startet der dritte Programmierwettbewerb von freiesMagazin und vor fünf Tagen wurden die Gewinner bekannt gegeben. Insgesamt ist die Teilnahme eher enttäuschend; gerade einmal sechs Leute haben teilgenommen. Da muss man ernsthaft überl

Kommentare

Ansicht der Kommentare: Linear | Verschachtelt

Stefanie am :

Hallo!

Die Aufgabe finde ich super! Leider habe ich keine Ahnung von Bots, KI, Game Engine etc., da ich bis jetzt noch nix mit Spielen gemacht habe.

Kurze generelle Frage, ist die Aufgabe mit Python machbar (bezügl. der oben genannten Themen)?
Danke

Dee am :

Zur Frage: Ja, das ist problemlos in Python machbar.

Zur Aufgabe: „Bots, KI, Game Engine“ sind nur unwichtige Worte ohne Aussagekraft. Effektiv geht es darum: Du kriegst gesagt, wo Du auf einem Spiefeld stehst und wo sich einige Deiner Gegner befinden. Und Deine Aufgabe ist dann „nur“ zu entscheiden, in welche Richtung Du Dich als nächstes auf dem Feld bewegen willst (entweder um Dich zu verstecken oder um jemanden zu fangen).

Marco am :

Hi!

Bin zufällig bei Ubuntuusers.de über den Wettbewerb gestolpert.
Hab auch gleich mal angefangen einen Bot in Java zu schreiben ;-)

Der Interprter für die Befehle ist schnell geschrieben gewesen. Jetzt haperts nur leider ein wenig beim laufen, der Bot bleibt ständig an Ecken hängen :-/
Naja hab ja noch genug Zeit bis zum Einsedeschluss.

Auf jeden Fall eine schöne Idee der Wettbewerb.
Die GUI wo man das Geschehen verfolgen kann ist aber echt langsam, ich musste meinen Bot schon bremsen weil der Server von den Runden sonst um einiges weiter gewesenist als die GUI.

Viel Spass und Erfolg den anderen Mitstreitern ;-)

Dee am :

Zur genauen Analyse des eigenen Bots eignet sich die Option "-w" der Engine, dann muss man nach jedem Schritt "Enter" drücken. So kommt die GUI auf alle Fälle hinterher.

Leider habe ich keine Erfahrung mit 2-D-Programmierung, daher ist das wohl so langsam. Ggf. findet sich ja jemand, der eine GUI mit pygame schreibt. :)

Marco am :

Die Karte board1.map hat noch einen Fehler, wenn man direkt links der Türen 'H' startet ist man dort quasi gefangen!

Dee am :

Oh, stimmt. man kommt nicht an die Schlüssel zu den Türen E, F oder H. Werde das gleich ändern ... Danke.

Mathis am :

Ich habe letztes Wochenende eine Alternativ-GUI in Haskell geschrieben (mit GTK und Cairo). Die Darstellung ist noch etwas roh, aber schon deutlich schneller als vorher. Wenn Du interessiert bist, dann meld Dich einfach per E-Mail und ich sehe, ob (bzw. bis wann) ich sie noch fertig bekomme.

Kommentar schreiben

Die angegebene E-Mail-Adresse wird nicht dargestellt, sondern nur für eventuelle Benachrichtigungen verwendet.
Formular-Optionen