Gomoku für Tüftler

Diese erweiterte Gomoku-Version funktioniert in gleicher Weise wie die einfache Variante, wenn man die Steuerelemente auf der rechten Seite ignoriert. Nur unter Opponent tauchen zwei zusätzliche Einträge auf: custom 1 und custom 2. Diese beiden Gegner kannst du selbst konfigurieren, und zwar über die Schieber auf der rechten Seite.

Ich schrieb das Programm vor gut zwei Jahren, daher weiß ich nimmer so recht, wie sich die einzelnen Schieber auf das Spielverhalten auswirken. Px_mix schaltet zwischen zwei Berechnungsarten um, Px_gew_y setzt die Gewichte für eigene Steine, Px_geg_y für gegnerische Steine und Px_pot_y sind zusätzliche Multiplikatoren, aber wie genau sie wirken, weiß ich nicht mehr. (Ich werde es hier Nachtragen, wenn ich mal die Muße hab, mich wieder in den Code reinzudenken.) Auch die vier anderen Opponent-strategien (level 1 bis 4) sind allein durch diese Parameter definiert; ihre Werte sind auf dieser Seite unter dem Spielfeld angegeben.

Über die Taste Autoplay kannst du die beiden selbst konfigurierten Strategien gegeneinander spielen lassen. Sie spielen so lange bis Autoplay erneut gedrückt wird. Der Kasten darunter zeigt den Spielstand an.

Beachte: Die Tasten Autoplay und Play dürfen nicht gleichzeitig aktiviert (schwarz) sein. Mit der Restart-Taste wird das Spielfeld gesäubert und der Spielstand zurückgesetzt.

Viel Spaß!

Created with NetLogo, Quellcode: gomoku.nlogo.


Werte für die Opponent level 1 bis 4

  if Opponent = "level 4"  ;; won 9:1 against level 3
    [
      set M_gew_1 6
      set M_gew_2 4
      set M_gew_3 3
      set M_pot_1 1
      set M_pot_2 2
      set M_pot_3 3
      set M_geg_1 10
      set M_geg_2 10
      set M_geg_3 100
      set M_mix true
    ]
  if Opponent = "level 3" ;; won 6:4 against level 2
    [
      set M_gew_1 8
      set M_gew_2 7
      set M_gew_3 5
      set M_pot_1 1
      set M_pot_2 2
      set M_pot_3 3
      set M_geg_1 10
      set M_geg_2 10
      set M_geg_3 100
      set M_mix true
    ]
  if Opponent = "level 2" ; 6:1 gegen level 1
    [
      set M_gew_1 7
      set M_gew_2 6
      set M_gew_3 5
      set M_pot_1 1
      set M_pot_2 1
      set M_pot_3 1
      set M_geg_1 10
      set M_geg_2 10
      set M_geg_3 10
      set M_mix false
    ]
  if Opponent = "level 1"
    [
      set M_gew_1 9
      set M_gew_2 7
      set M_gew_3 5
      set M_pot_1 1
      set M_pot_2 1
      set M_pot_3 2
      set M_geg_1 2
      set M_geg_2 3
      set M_geg_3 4
      set M_mix false
    ]


Alle Rechte liegen bei mir, Klaus Steiner. Wenn du etwas von meinen Seiten verwenden willst, schick mir bitte eine E-Mail.

Ich weiß nicht, ob es für mich als Österreicher nötig ist, mich vom Inhalt der verlinketen Seiten zu distanzieren, so wie es den Deutschen ein Urteil ihres Bundesgerichtshofs vorschreibt. Nichtsdestotrotz übernehm ich für die Links natürlich keinerlei Haftung.


Zur Startseite