Absender: Timo Sandmann
Datum: Fr, 02.10.2009 19:35:38
In-reply-to:
<000001ca4357$57297170$0200a8c0@mexpnew>
References:
<000001ca4357$57297170$0200a8c0@mexpnew>
Hi Frank,1. Der Schach-Parcours ist jetzt schon mal im SVN, falls jemand den Patch ausprobieren möchte. 2. Der Autor des Schachcodes hat auch eine Version, die deutlich aussagekräftigere Variablennamen verwendet: http://home.hccnet.nl/h.g.muller/maximax.txt ich wäre dafür, dass wir diese Version im Verhalten benutzen. Ich habe aber leider überhaupt keine Infos auf der Webseite gefunden, wie man den Code verwenden darf. 3. Wenn ich das Verhalten auf dem echten Bot ausführe, wird mein erster Zug (z.B. e2 nach e3) sofort abgewiesen, Debug-Ausgabe:
[ 683] DEBUG vor GO erstmaliges INIT [ 522] DEBUG -NEWGAME- [ 478] DEBUG Neues Spiel [ 530] DEBUG GO STATE [ 435] DEBUG Zug wurde eingegeben und parsen [ 453] DEBUG Zug? war nicht gueltig [ 530] DEBUG GO STATE [ 435] DEBUG Zug wurde eingegeben und parsen [ 453] DEBUG Zug? war nicht gueltigIch habe es auch schon geschafft, dass der Bot von a8 nach a8 zieht oder sich komplett aufhängt. Mache ich da irgendetwas bei der Eingabe falsch, oder ist das ein Problem im Code?
Gruß, Timo Am 02.10.2009 um 13:56 schrieb Frank Menzel:
Hallo,der beigefügte Parcour stellt das Schachbrett mit seinen Quadraten (8x8) dar. Ein normales Schachbrett nummeriert die senkrechte von unten links beginnend mit 1-8 durch und die Waagerechte von unten links von A-H. Istja leider so nicht im sim darstellbar, muss man sich denken bzw.parallel dazu ein echtes Brett aufbauen und die Spielzüge mitmachen. Manselbst ist nach GO der Anfangsspieler und tippelt seinen Zug ein, nach GO zieht der bot und fährt zur Figur-Position (z.B. Bauer von A2 nach A4) A2 und anschließend nach A4. Nun ist man selbst wieder an der Reihe...Das transportieren einer echten Figur und vorheriges Einfangen steht alsZukunftsvision an... Soweit erst mal das Allereinfachste zum Micro-Max Chess... Gruß, Frank -----Ursprüngliche Nachricht----- Von: ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx [mailto:ct-bot-entwickler-bounces@xxxxxxxxxxxxxxxxx] Im Auftrag von Benjamin Benz Gesendet: Freitag, 2. Oktober 2009 09:23 An: Entwicklung rund um den c't-bot Betreff: Re: [ct-bot] Bot spielt Schach... -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi,das klingt ziemlich cool. Was ich aber noch nicht ganz verstanden habe:Zu einem Schahspiel gehören doch ne ganze Menge Figuren. Wo stehen die denn, wenn der Bot auf dem Brett herumfährt? Transportiert er sie in seinem Transportfach, oder verstehe ich da was falsch? Ciao Benjamin Frank Menzel schrieb:Hallo, anbei mal ein Patch, um den bot Schach spielen zu lassen. Weiterhin der Chessparcour. Zur Beschreibung mal aus der Quelle rauskopiert:* Der Bot spielt Schach! Das Schachverhalten ermoeglicht diemanuelle Eingabe * eines Schachzuges des Spielers 1 (weiss) ueber das Screeninterface. Nach Betaetigen * der GO-Taste zieht der Bot-Spieler und der Bot fährt aufdemSchachbrett diesen * Zug nach. Nun ist der menschliche Spieler wieder am ZugviaScreeneingabe bzw. drückt sofort GO, * um fuer sich den Zug machen zu lassen. Am besten ist es (weil ja die Schachfiguren nicht visualisiert werden), * sich parallel dazu ein echtes Schachbrett aufzubauen und manuell die Zuege nachzuvollziehen. In meinem ersten Test * musste ich eine Niederlage gegen den Bot einstecken:-) * Fuer das Verhalten ist das Chess-Layout zu laden, damit wenigstens die Schachfelder visualisiert werden und damit die * Botfahrten der gegnerischen Schachzuege. Die gruenenFelderstehen hierbei stellvertretend fuer die weissen Felder. * Inspiriert zu diesem Verhalten wurde ich durch folgende Seiten: * http://bralug.de/wiki/BLIT2008-Board_spielt_Schach * Detailliertes zu dem Micro-Max Schach ist hier zu finden: * http://home.hccnet.nl/h.g.muller/max-src2.html * * Brainstorming fuer moegliche Erweiterungen: * Der Bot koennte gegen den anderen spielen ohne Mensch,d.h.Bot 1 ist Spieler 1 und der andere der Gegenspieler. * Jeder bot macht jeweils einen Zug und fährt diesen ab. Danach ist der andere dran. Dies muesste/koennte dann ueber die * bot_2_bot-Kommunikation laufen. Noch schoener waere es natuerlich, echte Spielfiguren auf dem Java3D-Schachbrett zu haben * (oder zuerst auch einfache Objekte), wobei der bot sich jeweils die Figur greift (bot_catch_pillar) und an der Zielposition * ablaedt (bot_unload_pillar)... * Da es mir endlich geglückt war, Eclipse-Galileo mit allem notwendigen Zeugs zu installieren, konnte ich endlich den Patch auf die aktuelle Quelle fertig stellen. So wünsche ich viel Spaß:-) Gruß, Frank