Den Screencast zur Übung 11 findet ihr unter:
Zur Erinnerung: Die neue Hausaufgabe ist im HMS erhältlich.
Den Screencast zur Übung 10 findet ihr unter:
Das Aufgabenblatt befindet sich im Abgabesystem.
Hinweis Aufgabe 1 Teil 2:
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:
Vor der Vorlesung kam soeben folgende Frage auf:
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.
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?
Das Repository wurde auf den Stand von dem Repository von Prof. Zündorf aktualisiert:
https://github.com/digitalhoax/SDMLib
Auf Grund des Umfangs der Aufgabe 3 ist die Abgabefrist für Compilerbau um eine Woche verlängert worden.
Tipp: Falls ihr bspw. bei Ausdrücken, die if-Bedingungen oder while-schleifen vergleichbar zu “x=0 while x<10 {x=x+1 15+3} x” enthalten, Probleme mit der Stackhöhe bekommt, versucht erstmal innerhalb der Blöcke (von if-Bedingungen oder while-schleifen) ohne expressions zu arbeiten, d.h. Ausdrücke vergleichbar zu”x=0 y=1 while x<10 {x=x+1 y=y+3} y” auswerten zu können.
Den Screencast zur Übung 9 findet ihr unter:
Das Aufgabenblatt befindet sich im Abgabesystem.
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.
Den Screencast zur Übung 8 findet ihr unter:
Das Aufgabenblatt befindet sich im Abgabesystem.
Zur Erinnerung: Die neue Hausaufgabe ist im HMS erhältlich. Abgabeschluß ist, wie im HMS vermerkt, der 21. Januar 2014