Kartenspiele

  • Coole Sache!!! Wenn ich Dich irgendwie dabei unterstuetzen kann, dann lass es mich wissen. Natuerlich spaetestens zum Test-Zocken. ;) Ich vermute mal, der Plan ist, Zeichensatz-Grafik zu benutzen? Wenn es so weit ist, versuche ich mich gerne an einem Custom-ZS - hab zwar noch nie wirklich Grafik in Zeichensatz gemacht, aber das krieg ich schon hin irgendwie. Es gibt ja auch Converter von MC. Es gab ja mal ein Werbe-Skatkartenspiel von Commodore (bin gluecklicher Besitzer von einem), das sollte man eigentlich als Vorlage nehmen. Hatte noch dazu das coole Blatt von Loriot, falls das noch jemand kennt. :)
    Ein Hinweis vielleicht noch zur Taktik: der Schwerpunkt bei der Taktik muesste sich im Prinzip ja auch noch etwas aendern im Spielverlauf, je nachdem, wieviele Karten schon gespielt und gezogen wurden (damit aendert sich ja auch die Wahrscheinlichkeit, ob die Cutter-7 ueberhaupt schon im Spiel ist), wieviele Karten der Gegner auf der Hand hat, und ob man selbst eh noch eine Mange andere Punkte in der Hand hat (speziell Sonderkarten wie As oder 2 - die sind ja normalerweise eh von der Punktereduzierungstaktik ausgenommen; mit einer Ausnahme: ist z.B. Herz die Cutter-Farbe, und man hat die Herz-7, aber noch mehr als 25 Punkte in der Hand, kann es Sinn machen, auch wenn eh grad Herz gespielt wird, sich nochmal per As Herz zu wuenschen - nur um die Punkte wegzukriegen.)
    Noch eine kleine Finesse: will man, dass die momentane Farbe weitergespielt wird, weil man noch mehrere Karten dieser Farbe hat, kann es sinnvoll sein, zuerst die 7 zu legen, da der Gegner dann nur (vorausgesetzt, er hat noch einige Karten, koennte also wahrscheinlich nicht cutten) 2 Farben zur Auswahl hat, auf die er theoretisch wechseln koennte, wenn er die jeweilige 7 haette (weil er die Cutter-7, falls er sie den hat, nicht legen kann, weil er >25 Punkte hat), anstatt
    alle 3 Fraben. Dazu kommt natuerlich noch, ob man selbst ein Bild noch in anderen Farben auf der Hand haelt - das macht es einerseits unwahrscheinlicher, dass der Gegner die Farbe wechseln kann; andererseits kann man sich dieses Bild auch als letzte Karte der gespielten Farbe aufheben, in der Hoffnung, dass der Gegner die Farbe eh nicht bedienen kann, das Bild also liegenbleibt und man selbst dann die Farbe wechseln kann... Ich hoffe, das ist jetzt alles nicht kompllett verwirrend oder ueberfluessig. ;)
  • Noch eine Idee ist mir heute gekommen: um den Computergegner noch etwas unberechenbarer zu machen, koennte man vielleicht noch einen Zufallsfaktor einbauen - also z.B. dass der Computerspieler mit einer Wahrschinlichkeit von soundsoviel Prozent absichtlich nicht die optimale Karte spielt, sondern eine Alternative (falls vorhanden natuerlich). Damit koennte man das Spiel vielleicht noch etwas offener gestalten.
  • @ Bugjam

    Ist es ok für Dich wenn ich Matatu auf dem Plus/4 umsetze? Oder muss es der C64 sein.
    Der Plus/4 hat besseres Basic und bessere Möglichkeiten, Bildschirmkoordinaten (Zeichenweise) anzusteuern.
    Ich will mich eigentlich nicht tot poken müssen.. auch die Abfragen lassen sich besser anlegen dank besserer Schleifen/Bedingungsbefehle. Gerade wenn Du eine passable KI willst wäre mir auch ein besseres Basic recht.

    Aber wenn Du C64 Hardcore Vertreter bist machen wir C64. Deine Wahl.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von Bytebreaker ()

  • Bytebreaker schrieb:

    Ist es ok für Dich wenn ich Matatu auf dem Plus/4 umsetze? Oder muss es der C64 sein.
    Der Plus/4 hat besseres Basic und bessere Möglichkeiten, Bildschirmkoordinaten (Zeichenweise) anzusteuern.
    Ich will mich eigentlich nicht tot poken müssen.. auch die Abfragen lassen sich besser anlegen dank besserer Schleifen/Bedingungsbefehle. Gerade wenn Du eine passable KI willst wäre mir auch ein besseres Basic recht.
    cc65 nehmen.
    Yes, I'm the guy responsible for the ACME cross assembler
  • @Mac Bacon

    Ich kann noch kein C. Ich lerne zuerst Java. Soll ich zuerst C lernen? Was ist geeigneter wenn man als Hochsprache nur Basic kann und ein bisschen Skriptsprache (MS DOS Batch, AmigaRexx, AmigaDOS) und den objektorientierten Ansatz noch gar nicht kennt?

    Wenn ich erst C lernen muss, dann muss Bugjam noch ein bisschen länger warten. ;)
  • Hmmm, aus C64-Sicht ist sicher C die bessere Wahl, vermute ich - aber ich ueberlasse das natuerlich Dir. An Geduld mangelt es nicht. :)
    Eine Idee fuer eine nette, simple Option hatte ich noch heute morgen: man koennte auf Wunsch dasselbe Spiel wiederholen koennen (also mit derselben Kartenverteilung), um zu sehen, wie es ausgeht, wenn man anders spielt.
    Und noch ein kleiner Hinweis zur AI: manchmal macht es ja Sinn, eine Karte zu ziehen, auch wenn man eigentlich bedienen koennte - in der Hoffnung, etwas Hilfreiches zu ziehen (z.B. eine 2 oder ein As). Genauso kann es Sinn machen, per As die Farbe zu aendern, obwohl man bedienen koennte - und eventuell sogar eine Farbe zu waehlen, die man selbst garnicht hat, nur um zu verhindern, dass der Gegner sofort gewinnt (wenn bekannt ist, dass er eine bestimmte Farbe nicht hat). Da muss die AI auch erstmal dahintersteigen. :)
  • Bytebreaker schrieb:

    @ Bugjam

    Ist es ok für Dich wenn ich Matatu auf dem Plus/4 umsetze? Oder muss es der C64 sein.
    Der Plus/4 hat besseres Basic und bessere Möglichkeiten, Bildschirmkoordinaten (Zeichenweise) anzusteuern.
    Ich will mich eigentlich nicht tot poken müssen.. auch die Abfragen lassen sich besser anlegen dank besserer Schleifen/Bedingungsbefehle. Gerade wenn Du eine passable KI willst wäre mir auch ein besseres Basic recht.

    Aber wenn Du C64 Hardcore Vertreter bist machen wir C64. Deine Wahl.
    Biete mich an, deine +4 Version auf dem C64er umzusetzen. Sag mir einfach nur bescheid.
  • RKSoft schrieb:

    @Bytebreaker
    Nur auf Sound muss dann verzichtet werden. Komme mit dem gePOKE und dem SID einfach net klar. Liegt vielleicht auch daran, daß ich kein Musiker bin ^^.
    Och, das kriegen wir bestimmt auch noch hin. Muss ja dann nur die Abspielroutine angesprungen warden, falls jemand so nett ist und einen Tune beisteuert. :)
    Uebrigens noch ein Wort zur Punktezaehlung: vergesst, was die App da macht - das ist ein eher skurriles System (vor allem kriegt man die Punkte von einem Spiel immer gutgeschrieben, egal, ob man gewinnt oder verliert...). Entweder man zaehlt einfach nur gewonnene Spiele, oder man zaehlt die Punkte, die der Verlierer jeweils noch auf der Hand hat, und es geht darum, moeglichst wenig Punkte zu machen. Dann koennte man z.B. einstellen, dass bis zu einem gewissen Wert gespielt wird, bei dessen Erreichen quasi das "Match" vorbei ist.
  • Danke für den Hinweis.
    Matatu wird als eines meiner nächsten Projekte kommen, erstmal nur mit Text Ausgabe. Dann mit Symbolen und schöneren chars. Ich fürchte eine bessere ki als bei der Android App bekomme ich in basic auch nicht hin.

    Ich kann höchstens per Zufalls Generator Intelligenz simulieren oder auch Denkfehler.
  • Bytebreaker schrieb:

    Danke für den Hinweis.
    Matatu wird als eines meiner nächsten Projekte kommen, erstmal nur mit Text Ausgabe. Dann mit Symbolen und schöneren chars. Ich fürchte eine bessere ki als bei der Android App bekomme ich in basic auch nicht hin.

    Ich kann höchstens per Zufalls Generator Intelligenz simulieren oder auch Denkfehler.
    Aehm, das macht wenig Sinn. Die Android-App hat absolut NULL KI - und folgt noch nicht mal richtig der grundlegendsten, simpelsten Logik. Also die App kannst Du komplett vergessen, was den Gegner angeht - die ist nur gut, um die Regeln zu verstehen.
  • @ bugjam

    Dann stellt sich aber die Frage, ob C64 V2 Basic die richtige Entwicklungsumgebung für Deine Ansprüche ist.

    Ich kenne die Matatu App nur vom iPhone her, da wird es aber nicht anders sein als bei Android.
    Ein 150-Euro-Android-Smartphone hat die erforderliche Rechenkapazität, um einen KI-Spieler glaubhaft darzustellen, also besser zu sein als die aktuelle Matatu-App.

    An meinem C64 in Basic kann ich Matatu programmieren für 2 Spieler, d.h. der C64 achtet auf reine Regelbefolgung und ggf. ein Player vs primitive KI Mode, die sich an gewisse Faustregeln hält.

    Das komplexe Bedingungsnetz von dem Du sprichst ist theroetisch zwar umsetzbar, aber ich will ehrlich gesagt nicht eine halbe Minute pro KI-Zug warten müssen und mir die Umsetzung so vieler Details in Basic auch nicht antun.

    Ich gebe das Thema damit frei. RKSoft, übernimmst Du?

    Wenn es Dir einfach um ein gescheites Spielprogramm geht, unabhängig von der Plattform, dann stell Deine Anfrage doch mal in einem Java-Forum. Mit Objekten und Methoden dürfte das auch sauberer umsetzbar sein als mit gosubs und gotos und Zeilennummern bis zum Abwinken.

    Vielleicht mache ich Matatu irgendwann selbst in Java, dennich lerne die Sprache nebenher. Offiziell bin ich aus der Nummer aber raus. Wenn ich doch irgendwann mal so etwas in Java fertig habe, schicke ich Dir eine PN.