Category Archives: Programming Methodologies

Programming Methodologies, WS1314

Hinweis Aufgabe 1 Teil 2:

  • In welchen Räumen gibt es Spieler deren Waffen mehr Schaden anrichten als die in den Räumen vorhandenen Gegner.

Gemeint ist, ob der Spieler mit der mächtigsten Waffe in einem Raum in der Lage ist jeden Gegner zu besiegen. Dafür muss die Waffe des Spielers mehr Damage austeilen, als der Gegner Hitpoints hat.

Im Player muss das Attribut fighting ergänzt werden:
SDMLib-Code:

player.withAttribute("fighting", "boolean");

 

Hinweis SDMLib unter MacOS:

Um die Grafikgenerierung mit Graphviz und dem Tool dot unter MacOS lauffähig zu machen, ist folgendes Vorgehen notwendig:

Programming Methodologies, WS1314

Vor der Vorlesung kam soeben folgende Frage auf:

  • “Wieso ist die ausgegebene Anzahl an Groups auf dem klassischen Weg unterschiedlich zur Anzahl an Groups per SDMLib?”

Dies trifft im Speziellen zu, wenn die Groups per Hochzählen einer Variablen gezählt werden. Die Objektstruktur enthält tatsächlich, wie auch im Datenmodell vorgesehen, Gruppen mit mehreren Spielern. Dies ist per Definition des Models zulässig. Da wir eure Lösung auch auf anderen als der gegebenen Objekstruktur testen, müsst ihr diesen Fall ebenfalls einbeziehen und abdecken. Eine Gruppe, die zwei Spieler beinhaltet, darf nicht doppelt gezählt werden. Passt bitte ggf. euren Code an, da es sonst zu Punktabzug kommen kann. Die von SDMLib ausgegebene Gruppenobjektanzahl ist korrekt.

  • Wie ist die Aufgabe “Wenn Spieler und Gegner gleich stark sind, gewinnen die Spieler (global) das Spiel (boolean Ausgabe)?” zu verstehen?

Ihr könnt euch gerne eigene Algorithmen ausdenken, wenn ihr sie in der Ausgabe erläutert. Gedacht war die Aufgabe so, dass falls Spieler und Gegner kontinuierlich gleich viele Hitpoints verlieren, wer steht dann am Ende noch auf den Beinen?

  • Gibt es ein aktualisiertes GitHub Repository

Das Repository wurde auf den Stand von dem Repository von Prof. Zündorf aktualisiert:

https://github.com/digitalhoax/SDMLib

Programming Methodologies, WS1314

Die nächste Übung findet, wie gewohnt, am Tag nach der Abgabe der letzten Hausaufgabe statt, also am 17.01.2014 statt.

Wir wurden auf zwei Fehler in der aktuellen Quoridor-Implementierung aufmerksam gemacht. Der Test, ob eine Wall gebaut werden darf (Klasse Player, Methode buildWall), ist nicht korrekt implementiert.

Ebenso werden die Zielfelder nicht korrekt gesetzt, hier liegt der Fehler im Datenmodell.