PHP-Entwicklung

PHP-Entwicklung

Posts 1-10 of 14
  • Thomas Pfeiffer
    Thomas Pfeiffer    Premium Member   Group moderator
    The company name is only visible to registered members.
    Skript-Robots gegeneinander spielen lassen
    Hallo,

    schon seit längerem schwirrt eine wirre Idee in meinem Kopf herum: Ich würde gerne einmal ein Skript schreiben und es gegen andere Skripte antreten lassen.

    Z.B. ein Skript, das das Kinderspiel "Schere - Stein - Papier " (http://de.wikipedia.org/wiki/Schere%2C_Stein%2C_Papier) spielen kann und bspw. gegen ein anderes skript 1000 mal spielt. Und das in einer Liga mit mehrere Skripten. Die Skripte könnten die Ergebnisse der einzelnen Runden auswerten, um evtl. in der Zukunft bessere Züge zu machen.

    Man müsste sich dann auf gemeinsame Regeln einigen und wie die Skripte gegeneinander antreten können. Aber das wäre alles möglich und würde bestimmt jede Menge Spaß machen.


    Ich fände es schön , wenn jmd. mitplanen bzw. mitcoden würde.

    Schöne Grüße
    Thomas
  • Thomas Pfeiffer
    Thomas Pfeiffer    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re: Skript-Robots gegeneinander spielen lassen
    Weiter gedacht....

    php muss es nicht unbedingt sein. Man könnte auch unterschiedliche Sprache gegeneinander antreten lassen und die Daten per XML untereinander austauschen.


    Das Spiel könnte dann so laufen:

    // Hole die Spielzüge
    $zugA=$spiel->zug($spielerA);
    $zugB=$spiel->zug($spielerB);

    // Finde den Sieger heraus, setze den Punktestand
    [...]

    // Sende den gegnerischen Spielzug an die Spieler
    $spiel->teile_zug_mit($spielerA,$zugB);
    $spiel->teile_zug_mit($spielerB,$zugA);


    Das holen und verschicken der Spielzüge könnte mit XML passieren, dann kann jeder Teilnehmer sein Skript auf seinem eigenen Server laufen lassen (allerdings hat man dann u.U. hohen Traffic). Aber so könnte jede Programmiersprache mit dabei sein.
  • Post visible to registered members
  • User photo
    Armand Turpel
    (not a XING member)
    Re: Skript-Robots gegeneinander spielen lassen
    Hallo,
    Das gab es schon in den 80igern.
    http://de.wikipedia.org/wiki/Core_War

    Vielleicht können sie ja darauf aufbauen. Sie müssen den Befehlssatz oder Regeln drastisch einschränken. Eine Idee wäre es das CoreWar Prinzip auszuweiten und global unabhängig von der Progammiersprache eine Arena einzurichten in der das alles stattfindet. Diese könnte dann in php geschrieben werden.
    Gruss,
    Armand
  • Post visible to registered members
  • Thomas Kraft
    Thomas Kraft    Premium Member
    The company name is only visible to registered members.
    Re^2: Skript-Robots gegeneinander spielen lassen
    Ich habe vor Jahren einmal einen "Bot" bei RealTimeBattle programmiert http://realtimebattle.sourceforge.net/ das ist so etwas ähnliches, nur deutlich anspruchsvoller als Schere Stein Papier. Die Kommunikation der Bots mit dem Server der das Spielgeschehen kontrolliert geschieht hierbei über die Standard Ein- bzw. Ausgabe was dem Programmierer in der Wahl der Programmiersprache freie Hand lässt, hier würde auch PHP funktionieren.

    Hat den schönen Effekt, das man direkt eine grafische Benutzeroberfläche hat und "zuschauen" kann, wie sich der aktuelle Bot im direkten Vergleich zu anderen verhält. Ich muss zugeben, das war während meiner Studienzeit ein Lustiger Zeitvertreib mit Chips und Bier vor dem Monitor zu sitzen und nach ein paar Runden immer wieder kleinste Verbesserungen am Bot zu programmieren damit er besser wird. (Hat im Endeffekt auch den kurz danach ausgetragenen "World Championship" gewonnen)
  • Thomas Pfeiffer
    Thomas Pfeiffer    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^3: Skript-Robots gegeneinander spielen lassen
    Hallo,

    okay, Schere, Stein, Papier ist wirklich Kindergarten. Wie wäre es denn mit "4-gewinnt"?
  • Post visible to registered members
  • Thomas Pfeiffer
    Thomas Pfeiffer    Premium Member   Group moderator
    The company name is only visible to registered members.
    Re^5: Skript-Robots gegeneinander spielen lassen
    Okay, wer würde denn (bei welchem Spiel auch immer) mitmachen und einen eigenen Robot programmieren und antreten lassen?
  • Herbert Mückenheim
    Herbert Mückenheim    Premium Member
    The company name is only visible to registered members.
    Re^6: Skript-Robots gegeneinander spielen lassen
    okay, Schere, Stein, Papier ist wirklich Kindergarten. Wie wäre es denn mit "4-gewinnt"?
    "4 gewinnt" ist effektiv auch Kindergarten, weil man alle möglichen Spielzüge vorausberechnen kann und dann nur einen geeigneten Zug auswählen muß. Ein Bot mit dieser Spielzugdatenbank kann immer ein Unentschieden erreichen.

    Anspruchsvoll wäre die Aufgabe nur, wenn sich nicht der gesamte Spielbaum vorausberechnen läßt - entweder weil er zu groß ist (z.B. Schach) oder weil die Spieler nur unvollständige Informationen (z.B. Skat) haben oder weil Zufallselemente vorkommen (z.B. Mensch ärgere dich nicht). Dann muß man wirklich Gehirnschmalz in eine 'optimale' Strategie verwenden.

    Interessieren würde mich die Sache auf jeden Fall. Aber wie Thomas Kraft schon geschrieben hat, ist meine Studentenzeit lange vorüber und damit auch die Zeit für derlei 'Spielereien'.

    Mein Favorit: Kuhhandel! (falls das jemand kennt) Das Spielprinzip versteht jeder Fünfjährige und es könnte fast als Wirtschaftssimulation durchgehen.
    http://de.wikipedia.org/wiki/Kuhhandel_(Spiel)

    Gruß Herbert