Ergebnis 1 bis 18 von 18

Thema: Black Jack

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1
    Zitat Zitat von Thuin8 Beitrag anzeigen
    Schwieriger stelle ich es mir da eigentlich vor, die KI vernünftig zu programmieren. Man kann natürlich die Gegner einfach simpel nach einem Schema-F spielen lassen, aber ob das auf Dauer für den nötigen Spielspaß sorgt...
    Schema-F-Methode wäre zB den Gegner ab einem bestimmten Kartenwert nicht mehr ziehen zu lassen.

    EDIT: Bin mal gespannt was anti-freak so konstruiert

    Geändert von TwoFace (10.06.2013 um 19:25 Uhr)

  2. #2
    ach, hab mal keine so großen Erwartungen. Letzendlich wird das ganze bloß ein Konstrukt aus einem array (um die karten per index anzusprechen) und dem Modulo (um zu prüfen, welchen Wert sie hat).
    Dabei werden die Variabeln mit dem entsprechenden Index einfach auf 0 (im Deck), 1 (der Dealer hat) oder 2 (der Spieler hat sie) gesetzt. Mit dem Modulo Operator finde ich dann ganz einfach heraus, welchen Wert sie hat.
    Also, es gibt 13 verschiedene Karten je "Farbe", also nutzen wir Modulo 13.
    Sagen wir also, Index 25 wurde gezogen:
    25/13 = 1 Rest 12.
    Demnach hat die gezogene Karte den Wert 12, ist also die Dame (11 = Bube, 12 = Dame, 13 = König). Bei 1 (Ass) hätte man die Wahl ob die Karte 1 oder 11 Punkte wert sein soll, kommt aber erst später bei der Berechnung zum Tragen.

    Da ich jetzt keine Lust habe, mir irgendwelche Bilder anzuzeigen und solchen Schnickschnack, und ich mal wieder merke, wie beschränkt der Maker doch ist, stelle ich das hiermit ein!

    Nochmal kurz gefasst. Wir reservieren uns die Variabeln mit dem Index von 1 - 52 (13 Karten je Farbe, 4 Farben, möchte man mit mehreren Decks spielen, muss man das komplette Set multiplizieren. Mit 2 Decks also 1-104, mit 3 Decks 1-156, usw). Diese werden vor jeder Runde genullt (auf 0 gesetzt), damit keine Rückstände übrig bleiben. Soll jetzt eine Karte gezogen werden, generieren wir uns eine Zufallszahl zwischen 1-x (52*Anzahl der Decks). Das ist unser Kartenindex. Mit diesem Index schauen wir dann nach, ob die Variabel noch auf 0 steht (ist noch im Deck), wenn nicht, generieren wir uns eine neue Zufallszahl, bis wir eine Karte gefunden haben (Schleife).
    Nachdem das geschehen ist, gehen wir einfach durch die ganzen Variabeln durch, und rechnen zusammen, welche Variabeln auf 1 und welche auf 2 stehen. Wenn einer über 21 ist, hat derjenige verloren (kann man noch optimieren), wenn nicht über 21 Fragen, ob man noch eine Karte möchte. Wenn beide verneinen, aufdecken, zusammenzählen und vergleichen
    Wie man die Werte ermittelt, habe ich ja oben bereits beschrieben.

    Das wäre zumindest so mein erster Ansatz, wie ich sowas über die Maker Möglichkeiten umsetzen würde. In c++ wäre das nicht mehr als ein 20Zeiler :P

    mfg

    Geändert von DNKpp (10.06.2013 um 23:51 Uhr)

  3. #3
    Zitat Zitat von anti-freak Beitrag anzeigen
    Das wäre zumindest so mein erster Ansatz, wie ich sowas über die Maker Möglichkeiten umsetzen würde. In c++ wäre das nicht mehr als ein 20Zeiler :P

    mfg
    Warum dann nicht per DynRPG?^^

    Wobei dein Ansatz wirklich interessant klingt und ja, sowas direkt im Maker abzubilden ist vielleicht ein wenig aufwändig, aber alles andere als unmöglich. Und um lange Skriptsequenzen zu realisieren, kann man sich auch per RMEventFactory behelfen^^

    PeAcE
    MorDen

  4. #4
    Weil es für mich tatsächlich interessant war, das ganze per RM zu machen. Bin dann aber doch etwas zu demotiviert dafür :P

  5. #5
    Kann ich verstehen^^ Manchmal hat es schon was, wenn man versucht etwas mit beschränkten Mitteln zu realisieren.

    Nur ist dem Threadersteller damit ja immernoch nicht geholfen^^ Deshalb dachte ich, dass ein DynRPG-Plugin da helfen könnte xD

    PeAcE
    MorDen

  6. #6
    Er hat doch gefragt, wie sowas geht, und das habe ich versucht zu erklären
    Nach ner vorgefertigten Lösung hatte er ja nicht gefragt.

  7. #7
    Stimmt auch wieder.
    Wobei sone Kartenspielsammlung als RM2k/3-Game sicher mal interessant wäre^^

    PeAcE
    MorDen

  8. #8
    Weil ich heute ein wenig Zeit hatte, habe ich mich mal an ein Black Jack Spiel in einfacher Variante gesetzt.

    http://www.multimediaxis.de/threads/...Viva-las-Vegas

  9. #9
    Da ich es grade nicht downloaden kann, frage ich hier einfach mal, wie du das technisch gelößt hast

  10. #10
    Quelltext kann ich dir leider gerade auch nicht hier reinposten, da ich selber aktuell nicht die Möglichkeit habe das Spiel auf einem Maker zu öffnen.
    Habe für die Überprüfung welche Karte gezogen wurde deine Methode gewählt, mit Modulo 13. Mit dem DestinyPatcher und der beigefügten Skriptsprache war es dann auch vom Aufwand überschaubar, da damit ja vernünftige Schleifen möglich sind und man für die Darstellung z.b. auch bei Bildnamen einen String mit anhängen kann oder auch variablen sehr viel einfacher ändern, ohne immer abfragen zu müssen, wer am Zug ist usw.

  11. #11
    Achso, also doch gecheated :P
    Mit entsprechenden Patches ist das natürlich vom Aufwand her wirklich kein Kunststück.

  12. #12
    Achja, es ging mir letztlich nicht darum, das mit limitierten Mitteln zu lösen, sondern allgemein zu basteln.

    Geändert von Thuin8 (12.06.2013 um 15:16 Uhr)

Stichworte

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •