Mein erstes Qualifikationsprojekt „PacNet“ ist eine Art 2D-Sidescroller-Pacman mit Elementen von Super Mario, die es über eine Netzwerkverbindung erlauben, das Game neben dem Singleplayer auch über ein LAN-Netz mit einem Gegenspieler via Splittscreen zu spielen.
Als ein an der x-Achte fixierter „Pac“ kann man sich nur nach oben und unten bewegen um somit Gegnern, wie zum Beispiel Geistern auszuweichen, sowie Items sammeln.
Die Punkte des Levels sind zufällig generiert. Sie erhöhen die Score und sind – wie jeder weiß - der Grundgedanke eines jeden „Pacman“‘s. Erwischt man sie nicht, erhält man Minuspunkte. Außerdem gibt es auch die bekannten Früchte die Bonuspunkte bringen zum Beispiel Kirschen oder Erdbeeren. Sie dienen allein dazu, die Score zu erhöhen.
Als besonderes Item kann die Super Mario-Blume gesehen werden. Hat man das Glück eine zu erwischen kann PacNet Feuerbälle schießen! Man hat jedoch pro gesammelte Blume nur ein Kontingent von 10 Schuss, was jedoch pro Blume addiert wird. Es gibt hierfür also keine Obergrenze. Die Feuerbälle sind deshalb sehr praktisch da das Spiel nach einer Kollision mit einem Geist beendet ist und man neu beginnen muss.
Grundsätzliches Ziel des Spieles ist es so viele Punkte wie nur möglich zu erlangen und den Geistern geschickt auszuweichen um damit auf der Highscore-Liste zu erscheinen. Dieser persönliche Highscore ist lokal in einer XML-Datei gespeichert und kann im Startmenü eingesehen werden.
Das Spiel kann auch im 2 Playermodus gespielt werden. Dabei eröffnet ein Spieler den Server und ein anderer kann dieses – sofern ihm die IP-Adresse bekannt ist – spielen. Der Multiplayermodus wurde durch einen Split-Screen umgesetzt. Man selbst befindet sich in dem unteren Bildschirm. Die Bewegung des Gegners können darüber beobachtet werden. Der Multiplayermodus funktioniert über jedes (lokale) Netzwerk. Das Spiel im Multiplayermodus ist beendet, sobald jemand das Spiel verliert beziehungsweise die Anwendung schließt. Ziel des Multiplayermodus ist es, besser als der Gegner zu sein und länger zu Überleben. Das Spiel ist dafür konzeptioniert, dass man dem Gegner über Items wie Kanonen oder die angesprochenen Feuerbälle schaden kann. Jedoch ist diese Erweiterung nicht implementiert.
Das Projekt ist in c++ geschrieben und verwendet die Bibliotek cinder sowie tinyxml-2 für das Speichern und Auslesen der Highscores und boost für die Threads der Netzwerkverbindung.