PR IBWL Dr. Gerhard Ortner SS 2001
Marcus Trunkenpolz 9802525
Thomas Weber 9806518
DIKTATOR - SPIEL

 

Aufgabenstellung

Es sollte ein interaktives Spiel programmiert werden, in dem ein "Diktator" bei einer fix zugewiesenen Menge (Geld od. Güter) entscheiden kann, wie viel davon er seinem Gegenspieler überlässt (anbietet).
Je nach Strategie des Gegenspielers soll auf das Angebot reagiert werden, d.h. abgelehnt bzw. darauf eingegangen.
 

Realisierung

Wir haben unser Programm basierend auf dem Java RMI- Mechanismus geschrieben.
Es soll prinzipiell 2 Möglichkeiten geben sich bei dem Spiel anzumelden: als normaler User (Spielername) oder als Administrator.

Der User kann als Diktator agieren und bekommt nun pro Spielrunde eine gewisse zufallsgenerierte Menge zugeteilt und nimmt sich den Anteil, den er für richtig hält. Je nach Strategie wird sein Angebot angenommen od. abgelehnt (siehe Admin-Strategie)

Der Administrator hat zusätzlich die Wahl:

· Toleranzgrenze (in Prozent) für alle Spiele festlegen  - bis zur Grenze: ablehnen, ab dieser Grenze: annehmen
· Startwert für jeden Spieldurchlauf setzen (dynam.)

Zusätzlich wird mitprotokolliert (Table Logging in der Access-Datenbank) welcher User welchen Betrag für sich behalten hat, wie hoch sein Angebot war, sowie zu welcher Reaktion sein Angebot geführt hat.
Dies soll u.a. nach mehreren gespielten Runden dem Anbieter ermöglichen, mehr über die Strategie seines Gegenspielers zu erfahren bwz. seine angebotene Menge der Strategie "anzupassen".
 
 
 
  Download der Datei: Diktator.zip

Was ist zu beachten(nützliche Hinweise):

SERVER:
1) Classpath setzen, dieser befindet sich in der Datei ss.bat (Start-Server). Derzeit ist er auf c:\java\ibwl
     eingestellt.
2) Die ComputeImpl_Stub.class  und ComputeImpl_Skel.class sollten am Client auch vorhanden sein!!
3) Da die Datenbank eine Ms-Access ist, wird diese mit ODBC angesprochen, der derzeitige name lautet
    "ibwl_pr" dieser wird in der JDBCConnection.java Datei geändert.
4) So die Datenkbank heißt Diktator.mdb, kann aber ohne weiteres umbenannt werden, wichtig ist nur, dass die
    Tabllen-namen gleich bleiben, die darin beinhalteten Felder und deren Werte. Man muss nur ODBC und    
    Datenkbank richtig angeben und
    der Server läuft problemlos!!
5) Notwendige Dateien: ComputeImpl.class, JDBCConnection.class, Compute.class(Interface), *skel.class,
    *stub.class Diktator.mdb, policy

CLIENT:
1) Beim Client muss nun die url bzw. die ip-Adresse des Servers angegeben werden.
2) Wie schon oben erwähnt, sollten die Datene ComputeImpl_Skel.class und ComputeImpl_Stub.class ebenfalls
    am Client liegen.
3) gestartet wird der Server mit SC.
4) Notwendige Dateien: ComputeClient.class, *skel.class, *stub.class, policy

COMMON:
1) Die Datei policy muss auf beiden Rechnern vorhanden sein.
2) Compute.class muss unbedingt auf beiden Rechner vorhanden sein, da diese Datei die Verbindung der
    Methoden deklariert
3) Der Einfachheit halber würde ich auf beiden Seiten alles reinkopieren, ausser auf der Client-Seite die
    Datenbank, Vorteil: Sie starten auf der Client-Seite einmalig SA.bat, brechen Sie dies danach ab, dadurch wird
    garantiert, dass alle Java-Files in diesem Verzeichnis compiliert werden + die notwendigen skel und stub
    Dateien vorhanden sind.
    Danach einfach sc.bat (Start Client) ausführen, so, das wärs.
    Beim Server ists noch einfacher, einfach nur sa.bat und er läuft!!
   
    VIEL SPASS !!!!