• Best Counter Graph for the X-Hill (write limit)

    From John Metcalf@21:1/5 to All on Fri Mar 17 06:31:04 2023
    Hi,

    Here's the best counter graph for Bill Shubert's x-hill (write limit
    500). This was inspired by the graphs created by inversed for the nano,
    tiny and LP hills (https://redd.it/wuui2l).

    * https://corewar.co.uk/xhill/xhill_best_counter_graph.png

    I used MTS to benchmark each warrior, then cut, grep and sed to rejig the results for Graphviz dot:

    (echo "digraph {"
    cut *.res -b 1-32 | grep "^ [12] " | sed -e "s/ *$//g"\
    -e "s/^ 1 /\"/g" -e "s/^ 2 / -> \"/g" -e "s/$/\"/g"
    echo "}") | dot -Tpng >best_counter_graph.png

    John

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zul Nadzri@21:1/5 to John Metcalf on Fri Mar 17 04:36:25 2023
    On Friday, 17 March 2023 at 14:31:06 UTC+8, John Metcalf wrote:
    Hi,

    Here's the best counter graph for Bill Shubert's x-hill (write limit
    500). This was inspired by the graphs created by inversed for the nano,
    tiny and LP hills (https://redd.it/wuui2l).

    * https://corewar.co.uk/xhill/xhill_best_counter_graph.png

    I used MTS to benchmark each warrior, then cut, grep and sed to rejig the results for Graphviz dot:

    (echo "digraph {"
    cut *.res -b 1-32 | grep "^ [12] " | sed -e "s/ *$//g"\
    -e "s/^ 1 /\"/g" -e "s/^ 2 / -> \"/g" -e "s/$/\"/g"
    echo "}") | dot -Tpng >best_counter_graph.png

    John
    Nice graph! :)

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Metcalf@21:1/5 to Zul Nadzri on Sun Mar 19 08:07:23 2023
    On Fri, 17 Mar 2023 04:36:25 -0700, Zul Nadzri wrote:

    Nice graph! :)

    Thanks, they're easy to create using Graphviz, just a list of "warrior x"
    "warrior y" statements. Here are a couple of examples which can be
    copy/pasted into the online version of Graphviz at http://webgraphviz.com

    The best counter graph for the current KOTH 94x hill. I've added labels showing the scores. (Note: Fatamorgana sitting to one side)

    digraph koth94x {
    node [shape = box]
    edge [fontsize = 11]
    "Mavin Manyshaped AX yeuv" -> "Void Runner" [label = " 257.2"]
    "Void Runner" -> "Discord" [label = " 124.0"]
    "Fatamorgana X" -> "Fatamorgana X" [label = " 300.0"]
    "Black Moods" -> "Void Runner" [label = " 192.8"]
    "Morlock" -> "Giant Hazy AX onej" [label = " 170.4"]
    "Fire and Brimstone" -> "Void Runner" [label = " 212.8"]
    "Pendulum X" -> "Void Runner" [label = " 270.0"]
    "Dried Frog Pills AX 9" -> "Giant Hazy AX onej" [label = " 172.8"]
    "Dried Frog Pills AX 133" -> "Giant Hazy AX onej" [label = " 146.4"]
    "Discord" -> "Mavin Manyshaped AX yeuv" [label = " 228.0"]
    "Despair X" -> "Slayer" [label = " 145.6"]
    "The Enemy Within" -> "Pendulum X" [label = " 162.4"]
    "Magenta Bifoil mvhr" -> "Pendulum X" [label = " 191.6"]
    "Giant Hazy AX onej" -> "The Enemy Within" [label = " 216.8"]
    "Slayer" -> "Puddleglum X xjcl" [label = " 198.8"]
    "Magenta Trefoil axmb" -> "Discord" [label = " 183.2"]
    "Puddleglum X xjcl" -> "Pendulum X" [label = " 176.4"]
    "paper X" -> "Giant Hazy AX onej" [label = " 159.2"]
    "REAMer DX iouf" -> "Pendulum X" [label = " 219.6"]
    "Rosebud ucuk" -> "Slayer" [label = " 168.0"]
    }

    And here's the state transition diagram for the p-switcher in Bulldozed
    by Christian Schmidt:

    digraph bulldozed {
    rankdir = LR
    node [shape = circle]
    edge [fontsize = 11]

    "9 Paper" -> "0 Bomber" [label="L/W"]
    "9 Paper" -> "3 Oneshot" [label="T"]

    "0 Bomber" -> "6 Scanner" [label = "L/T"]
    "0 Bomber" -> "1 Bomber" [label = "W"]
    "1 Bomber" -> "0 Bomber" [label = "L"]
    "1 Bomber" -> "2 Bomber" [label = "W"]
    "1 Bomber" -> "1 Bomber" [label = "T"]
    "2 Bomber" -> "2 Bomber" [label = "W/T"]
    "2 Bomber" -> "1 Bomber" [label = "L"]

    "3 Oneshot" -> "6 Scanner" [label = "L/T"]
    "3 Oneshot" -> "4 Oneshot" [label = "W"]
    "4 Oneshot" -> "3 Oneshot" [label = "L"]
    "4 Oneshot" -> "5 Oneshot" [label = "W"]
    "4 Oneshot" -> "4 Oneshot" [label = "T"]
    "5 Oneshot" -> "5 Oneshot" [label = "W/T"]
    "5 Oneshot" -> "4 Oneshot" [label = "L"]

    "6 Scanner" -> "9 Paper" [label = "L/T"]
    "6 Scanner" -> "7 Scanner" [label = "W"]
    "7 Scanner" -> "6 Scanner" [label = "L"]
    "7 Scanner" -> "8 Scanner" [label = "W"]
    "7 Scanner" -> "7 Scanner" [label = "T"]
    "8 Scanner" -> "8 Scanner" [label = "W/T"]
    "8 Scanner" -> "7 Scanner" [label = "L"]
    }

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Zul Nadzri@21:1/5 to John Metcalf on Fri Mar 24 00:38:24 2023
    On Sunday, 19 March 2023 at 16:07:25 UTC+8, John Metcalf wrote:
    On Fri, 17 Mar 2023 04:36:25 -0700, Zul Nadzri wrote:

    Nice graph! :)

    Thanks, they're easy to create using Graphviz, just a list of "warrior x"
    "warrior y" statements. Here are a couple of examples which can be
    copy/pasted into the online version of Graphviz at http://webgraphviz.com

    The best counter graph for the current KOTH 94x hill. I've added labels showing the scores. (Note: Fatamorgana sitting to one side)

    digraph koth94x {
    node [shape = box]
    edge [fontsize = 11]
    "Mavin Manyshaped AX yeuv" -> "Void Runner" [label = " 257.2"]
    "Void Runner" -> "Discord" [label = " 124.0"]
    "Fatamorgana X" -> "Fatamorgana X" [label = " 300.0"]
    "Black Moods" -> "Void Runner" [label = " 192.8"]
    "Morlock" -> "Giant Hazy AX onej" [label = " 170.4"]
    "Fire and Brimstone" -> "Void Runner" [label = " 212.8"]
    "Pendulum X" -> "Void Runner" [label = " 270.0"]
    "Dried Frog Pills AX 9" -> "Giant Hazy AX onej" [label = " 172.8"]
    "Dried Frog Pills AX 133" -> "Giant Hazy AX onej" [label = " 146.4"] "Discord" -> "Mavin Manyshaped AX yeuv" [label = " 228.0"]
    "Despair X" -> "Slayer" [label = " 145.6"]
    "The Enemy Within" -> "Pendulum X" [label = " 162.4"]
    "Magenta Bifoil mvhr" -> "Pendulum X" [label = " 191.6"]
    "Giant Hazy AX onej" -> "The Enemy Within" [label = " 216.8"]
    "Slayer" -> "Puddleglum X xjcl" [label = " 198.8"]
    "Magenta Trefoil axmb" -> "Discord" [label = " 183.2"]
    "Puddleglum X xjcl" -> "Pendulum X" [label = " 176.4"]
    "paper X" -> "Giant Hazy AX onej" [label = " 159.2"]
    "REAMer DX iouf" -> "Pendulum X" [label = " 219.6"]
    "Rosebud ucuk" -> "Slayer" [label = " 168.0"]
    }

    Cool network.

    For Fatamorgana X, I think excluding the self-fight result is more in line with the general concept. So, I changed the warrior to Void Runner.

    digraph koth94x {
    node [shape = box]
    edge [fontsize = 11]
    "Mavin Manyshaped AX yeuv" -> "Void Runner" [label = " 257.2"]
    "Void Runner" -> "Discord" [label = " 124.0"]
    "Fatamorgana X" -> "Void Runner" [label = " 234.8"]
    "Black Moods" -> "Void Runner" [label = " 192.8"]
    "Morlock" -> "Giant Hazy AX onej" [label = " 170.4"]
    "Fire and Brimstone" -> "Void Runner" [label = " 212.8"]
    "Pendulum X" -> "Void Runner" [label = " 270.0"]
    "Dried Frog Pills AX 9" -> "Giant Hazy AX onej" [label = " 172.8"]
    "Dried Frog Pills AX 133" -> "Giant Hazy AX onej" [label = " 146.4"]
    "Discord" -> "Mavin Manyshaped AX yeuv" [label = " 228.0"]
    "Despair X" -> "Slayer" [label = " 145.6"]
    "The Enemy Within" -> "Pendulum X" [label = " 162.4"]
    "Magenta Bifoil mvhr" -> "Pendulum X" [label = " 191.6"]
    "Giant Hazy AX onej" -> "The Enemy Within" [label = " 216.8"]
    "Slayer" -> "Puddleglum X xjcl" [label = " 198.8"]
    "Magenta Trefoil axmb" -> "Discord" [label = " 183.2"]
    "Puddleglum X xjcl" -> "Pendulum X" [label = " 176.4"]
    "paper X" -> "Giant Hazy AX onej" [label = " 159.2"]
    "REAMer DX iouf" -> "Pendulum X" [label = " 219.6"]
    "Rosebud ucuk" -> "Slayer" [label = " 168.0"]
    }

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From John Metcalf@21:1/5 to All on Sat Mar 25 12:10:26 2023
    Here are a few more graphs, this time for the top-50 of the 88, 94nop,
    94x, ICWS and p-space Koenigstuhl hills. I included self-fights to
    highlight the handshakers but can check what the true best counter should
    be.

    * https://github.com/impomatic/corewar-graphs

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)