Hier die Folien vom ersten Treffen: 01 – Projekt “MLM” – Einführung
All posts by Andreas Scharf
Wie auch schon die Vorlesung, fällt die PM Übung heute aus!
Hier der Termin für das erste Projekttreffen:
Wann: Donnerstag, 21.04.2011 um 13 Uhr
Wo: R1340 (Seminarraum FG Software Engineering)
Hier der Termin für das erste Projekttreffen:
Wann: Dienstag, 19.04.2011 um 15 Uhr
Wo: R1340 (Seminarraum FG Software Engineering)
Bitte beachtet: Zur Teilnahme am Projekt müsst ihr bereits den SE1 haben!
Worum gehts?
In der letzten SE1 Veranstaltung im WS10/11 wurden Clients sowie Künstliche Intelligenzen entwickelt, die mit einem am Fachgebiet entwickelten Spieleserver kommunizierten. Bei dem Spiel handelt es sich um “Mega Lo Mania”. Weitere Informationen zu dem Spiel findet ihr weiter unten.
Eure Aufgabe wird es sein, den Spiele Server für die kommende SE1 Veranstaltung im WS11/12 weiter zu entwickeln sowie Tools zum Testen und Debuggen zu erstellen. Weitere Informationen gibt es beim ersten Projekttreffen.
Wichtig: Um an diesem Projekt teilnehmen zu können, benötigt ihr den SE1 Schein!
Mega Lo Mania
Um einen ersten Eindruck von Mega Lo Mania zu bekommen, könnt ihr euch das Spiel hier herunterladen und ein bisschen spielen:
Das Spiel muss in einem Emulator (DosBox) gestartet werden, den ihr hier herunterladen könnt:
Ein Tutorial wie man nun ein Spiel mit der DosBox startet lässt sich hier finden: DoxBox Tutorial. Wer die Konsolenanwendung nicht verwenden will, dem empfehle ich einen der vielen grafischen Frontends unter DosBox Frontends. Zu gebrauchen ist z.B. der DosBoxGameLauncher.
Hi Leute,
der Doodle Poll hat entschieden. Unser SE 1 Abschlussevent steigt
am Freitag den 01.04.11 ab 14 Uhr im SE Labor
Der genaue Ablauf wird beim Turnier bekannt gegeben. Grundsätzlich wird zunächst auf dem alten Server (Port 4000) gespielt. Danach können wir die KIs auf dem neuen Server (vll. auch mit anderen Maps!?) testen. Damit wir am Turniertag mit möglichst wenig technischen Problemen kämpfen, checkt vorher eure Clients und KIs auf Funktion. Eure KI muss in der Lage sein, an einem beliebigen Spiel teilzunehmen (d.h. einloggen, Spiel joinen, Sektor wählen, Starten, Spielen).
Gruß,
Andreas
Hi,
seit eben ist der neue MLM Server auf Port 5000 wieder online! Happy testing!
Hi Leute,
einige von euch werden es schon bemerkt haben: Der neue SE1 Server auf Port 5000 ist seit dem späten Samstag Abend down. Aufgrund eines Bugs wird er voraussichtlich auch erst am Mittwoch wieder online gehen.
WICHTIG: Für unsere SE1 Veranstaltung ist ausschließlich der Server auf Port 4000 ausschlaggebend! Der neue Server dient nur zum Testen neuer Funktionalität die keine Anforderung seitens der Kunden war!
Gruß,
Andreas
Hi,
vor Server Version 1.0.6 war es möglich mehr als 1 Mann (d.h. eine Army mit mehreren Soldaten) in ein Turret zu schicken. Das ist prinzipiell ein Bug, da die Verteidiger 3x so stark sind wie die Angreifer. Ticket 35 adressiert das Problem!
Für das Turnier bleibt dieser Bug jedoch zunächst eingebaut, d.h. es können auch Armies mit mehr als einem Soldaten in ein Turret gesetzt werden!
Der neue MLM Server unterstützt in der Version 2.0.1 nun auch das Reparieren von Gebäuden mittels der SHIELD “Waffe”. Hierzu gibt es den neuen “REPAIR” Befehl. Der Vollständigkeit halber hier die komplette Befehlstabelle.
Action | Keys | Beispiel | Bemerkung |
---|---|---|---|
CHOOSE_SECTOR |
sector |
{"@action":"CHOOSE_SECTOR","properties":{"entry":{"key":"sector","value":"Sector@1a3b6f"}}} |
Wählt den Startsektor aus. sector muss eine ID sein. |
START_GAME |
keiner | {"@action":"START_GAME"} |
Startet das spiel wenn jeder Spieler einen Startsektor gewählt hat. |
LEAVE_GAME |
keiner | {"@action":"LEAVE_GAME"} |
Verlässt das aktuelle Spiel. |
TRANSFER_MEN |
source , target , amount |
{"@action":"TRANSFER_MEN","properties":{"entry":{"key":"source","value":"Tower@1a3b6f"},"entry":{"key":"target","value":"Invention@b54ddf"},"entry":{"key":"amount","value":"12"}}} |
Transferiert amount Men von einem Ort zum anderen, solange es keine Armee betrifft. source und target erwarten die ID eines Towers , einer Invention oder einer Resouorce |
CREATE_ARMY |
tower , amount , (weapon ), (target ) |
{"@action":"CREATE_ARMY","properties":{"entry":{"key":"tower","value":"Tower@1a3b6f"},"entry":{"key":"weapon","value":"Invention@b54ddf"},"entry":{"key":"amount","value":"12"},"entry":{"key":"target","value":"Sector@1a3b6f"}}} |
Erzeug mit amount men aus dem per ID angegebenen tower eine neue Army . Die Army wird mit der per ID angegebenen weapon ausgerüstet, wenn genügend waffen im tower verfügbar sind, oder erstellt werden können. Als target kommen per ID angegebene Turret s oder angrenzende Sector en in Frage. |
MOVE_ARMY |
army , target |
{"@action":"MOVE_ARMY","properties":{"entry":{"key":"army","value":"Army@d54a23"},"entry":{"key":"target","value":"Sector@1a3b6f"}}} |
Versetzt die army an das angegebene target , welches ein Tower oder ein Sector sein kann. |
RESEARCH |
tower , invention |
{"@action":"RESEARCH","properties":{"entry":{"key":"tower","value":"Tower@123abc"},"entry":{"key":"invention","value":"Invention@f45a3b"}}} |
Erforscht die per ID angegebene invention im per ID angegebenen tower . Es wird ein Research -Objekt erzeugt, dem per TRANSFER_MEN noch Forscher zugewiesen werden müssen. |
MESSAGE |
message , (audience ), (recipient ) |
{"@action":"MESSAGE","properties":{"entry":{"key":"message","value":"Hallo"},"entry":{"key":"audience","value":"USER"},"entry":{"key":"recipient","value":"jfd"}}} |
Siehe Chatprotokoll. |
REPAIR |
shield , building |
{"@action":"REPAIR","properties":{"entry":{"key":"building","value":"Tower@5974b827"},"entry":{"key":"shield","value":"Invention@c11da53"}}} |
Repariert das Gebäude building mit dem Shield shield . Repariert werden könne alle Gebäude die sich im gleichen Sektor wie der Tower in dem das Shield erforscht wurde befinden. |