Ergebnis 1 bis 10 von 43

Baum-Darstellung

  1. #5
    Der mit Anatidaephobie Avatar von blackberry
    Registriert seit
    11.07.2008
    Beiträge
    2.350

    Standard AW: Official F-H Coding Contest 2017

    Zitat Zitat von Barny Beitrag anzeigen
    Wenn Spieler 1 eine 7 legt, dann ist Spieler 2 an der Reihe und wird mit nachfolgender Meldung zum Zug aufgefordert:
    Code:
    {
        "status" : "okay",
        "topCard" : 19,
        "drawTwoCards" : true,
        "skipped" : false,
        "wishedColor" : -1
        "cardsLeft" : 7,
        "drawedCards" : [
                   4,
                   9
                 ]
    }
    Weil die topCard 19 auch in der Doku vorkommt, könnte das zwar jetzt ein Copy&Paste-Fehler sein, aber trotzdem der Einwand: 19 ist KreuzBube, also sicher keine 7.
    Das merke ich an, weil ich auch beim Kommunizieren mit dem Server komische Missverständnisse habe, die ich mir nicht erklären kann.

    Auf meiner Bot-Seite sieht alles soweit in Ordnung aus (ich habe zwei Bots "A" und "B" mit jeweiliger Eingabe vom Server "<<<" und Antworten ">>>"). Die Ausgabe sieht so aus: (Achtung: Ausgabe ist nicht JSON, sondern ein Python dict... Die Kommunikation mit dem Server benutzt aber das richtige Format mit " statt ', true statt True, usw.)
    Code:
    A <<< {'status': 'okay', 'sendName': True}
    A >>> {'status': 'okay', 'name': 'A'}
    A <<< {'status': 'okay', 'name': 'A', 'setName': True}
    B <<< {'status': 'okay', 'sendName': True}
    B >>> {'status': 'okay', 'name': 'B'}
    B <<< {'status': 'okay', 'name': 'B', 'setName': True}
    A <<< {'status': 'okay', 'gameStart': True}
    B <<< {'status': 'okay', 'gameStart': True}
    
    A <<< {'status': 'okay', 'cardsLeft': 7, 'skipped': False, 'turnOf': 'A'}
    B <<< {'status': 'okay', 'cardsLeft': 7, 'skipped': False, 'turnOf': 'A'}
    
    A <<< {'hand': [4, 7, 21, 19, 31, 27, 26], 'drawTwoCards': False, 'status': 'okay', 'wishedColor': -1, 'cardsLeft': 7, 'skipped': False, 'topcard': 0}
    A [*] Top card "♠Pik 7 (#0)".
    A [*] Playing card "♣Kreuz Bube (#19)".
    A     wishing color 1
    A >>> {'status': 'turn', 'wishedColor': 1, 'skipped': False, 'selectedCard': 19, 'name': 'A'}
    A <<< {'status': 'okay', 'cardsLeft': 7, 'skipped': False, 'turnOf': 'B'}
    B <<< {'status': 'okay', 'cardsLeft': 7, 'skipped': False, 'turnOf': 'B'}
    
    B <<< {'hand': [20, 23, 29, 8, 28, 17, 13], 'drawTwoCards': False, 'status': 'okay', 'wishedColor': 1, 'cardsLeft': 7, 'skipped': False, 'topcard': 19}
    B [*] Top card "♣Kreuz Bube (#19)".
    B [*] Playing card "♦Karo 10 (#13)".
    B >>> {'status': 'turn', 'wishedColor': -1, 'skipped': False, 'selectedCard': 13, 'name': 'B'}
    B <<< {'drawedCards': 15, 'status': 'error'}
    B [*] Drawing punishment card "♣Kreuz 10 (#15)".
    A <<< {'status': 'okay', 'cardsLeft': 6, 'skipped': False, 'turnOf': 'A'}
    B <<< {'status': 'okay', 'cardsLeft': 6, 'skipped': False, 'turnOf': 'A'}
    Auf der Server-Seite sieht das so aus:
    Code:
    [#] Ein Spieler hat sich verbunden![#] Ein Spieler hat sich verbunden!
    [#] Zug von Spieler A
    [#] Spieler A legt die Karte Kreuz Ass
    [#] Spieler A wünscht sich die Farbe Karo
    [#] Zug von Spieler B
    [!] Spieler B erhält eine Strafkarte!
    [#] Zug von Spieler A
    [!] Spieler A erhält eine Strafkarte!
    [#] Zug von Spieler B
    [!] Spieler B erhält eine Strafkarte!
    [#] Zug von Spieler A
    [#] Spieler A legt die Karte Herz König
    Da werden völlig falsche Karten angezeigt. Mich wundert auch, dass sich Spieler A trotz angeblicher Kreuz Ass (vom Bot wurde aber ein Bube gespielt!) eine Farbe wünschen darf. Warum Spieler B danach eine Strafkarte bekommt, kann ich nicht nachvollziehen.

    Was mir am Protokoll auch nicht gefällt ist, dass den anderen Spielern scheinbar nicht mitgeteilt wird, was die anderen Spieler machen. Angenommen wir hätten drei Spieler, Spieler 1 ist dran, spielt, Spieler 2 und 3 spielen -- Spieler 1 ist nun wieder dran und sieht wohl an topCard, was Spieler 3 gelegt hat. Aber was hat Spieler 2 gelegt? Diese Information ist wichtig, wenn man analysieren möchte, welche Karten die Gegner überhaupt noch auf der Hand haben können. Außerdem ist zu Spielbeginn nicht klar, wie viele Spieler (und mit welchen Namen) im Spiel sind. Das erfährt man scheinbar auch erst nach und nach, wenn man eine Runde gespielt hat und der Server jedem Spieler mal einen Zug gegeben hat.

    Weitere Anmerkungen:
    (1) Der Server mag es glaube ich nicht, wenn man seine Nachrichten so mit Zeilenumbrüchen formatiert, wie das in der Dokumentation beschrieben wird. Das ist am Anfang etwas verwirrend, wenn der Server dann die (eigentlich korrekten) JSON-Nachrichten ablehnt.
    (2) http://en.bab.la/conjugation/english/draw
    Geändert von blackberry (25.03.2017 um 18:27 Uhr)

    PDFTT cr3w a.E. — ReiDC0Re, lindor, Sera, berry
    please do feed the trolls crew and elk
    Ehrenwerte Mitglieder im Ruhestand: OpCodez, SFX.
    "Was sich blackberry gerade denkt" — Vorsicht! Frei laufender Wahnsinn!
    Zitat von fuckinghot19: "PS: Blackberry ist auf FH der Trollkönig ^^."
    An dieser Stelle danke ich all meinen Fans und Hatern gleichermaßen ^.^

Ähnliche Themen

  1. Free-Hack Coding Contest - A New Begining
    Von krypt0n im Forum Competitions
    Antworten: 127
    Letzter Beitrag: 07.12.2010, 08:05
  2. Certified Ethical Hacker 3.0 Official Course
    Von meckl im Forum Biete Tutorials
    Antworten: 7
    Letzter Beitrag: 21.08.2008, 21:48

Stichworte

Berechtigungen

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