=============================================================================== ___ _ _ _____ _ _ | _`\ ( ) ( ) (_ _) (_ ) ( ) | (_) ) __ _| | ___ _ _| | __ | | _ _ | | | |/') | , / /'__`\ /'_` | /'___) /'_`\ /'_` | /'__`\ | | /'_` ) | | | , < | |\ \ ( ___/( (_| |( (___ ( (_) )( (_| |( ___/ | |( (_| | | | | |\`\ (_) (_)`\____)`\__,_)`\____)`\___/'`\__,_)`\____) (_)`\__,_)(___)(_) (_) =============================================================================== #3 November 2010 Redcode Talk is a newsletter promoting the game of Corewar, a game of skill played between two or more computer programs on behalf of the players who create them. If you haven't a clue what I'm talking about then check out the following websites for more information: FAQs are available from: http://www.koth.org/corewar-faq.html http://bio.freelogy.org/wiki/REC.GAMES.COREWAR.FAQ Web pages are at: http://www.koth.org/ - KOTH http://sal.math.ualberta.ca/ - SAL Hills http://www.corewar.co.uk/ - J.Metcalf http://www.corewar.info/ - Fizmo http://users.obs.carnegiescience.edu/birk/COREWAR/koenigstuhl.html - C.Birk http://para.inria.fr/~doligez/corewar - Planar Newbies should check the above pages for the FAQs, language specification, guides, and tutorials. Post questions to news://rec.games.corewar or come to #corewars at irc://irc.freenode.net/#COREWARS All new players are infinitely welcome! =============================================================================== Greetings! It's been a while since issue #2 but finally here it is #3. I hope you enjoy reading something about corewar. I'd be very pleased if a few other corewar player send me their stories, articles, observations for the next issue. Fizmo _______________________________________________________________________________ The undiscovered area between LP and 94draft by Fizmo Part III: Paper vs. LP Warriors This time I will show the impact of -p between papers and LP warriors. For this reason I run every paper (pap) from the fsh94nopv0.3 against some selected LP warriors. Usually LP warriors are optimized for max. processes 8, so I haven't a clue how they will perform against 94nop warriors with more processes. Let's start with some lp papers. At first I used Digital Rain against the 12 papers. Digital Rain -p %W %L %T 16000 48.9 18.5 32.6 8000 48.9 18.5 32.6 4000 49.2 18.6 32.2 2000 49.6 18.5 31.9 1000 53.2 18.4 28.4 500 59.1 14.4 26.5 200 63.8 11.7 24.5 100 77.0 9.6 13.4 Wow, that's really unexpected. Digital Rain easily win against papers under 94nop conditions. Also Muffineer makes a pretty good job especially below -p 1000. Muffineer -p %W %L %T 16000 31.7 21.6 46.7 8000 31.7 21.7 46.6 4000 31.7 21.8 46.5 2000 32.0 21.8 46.2 1000 36.1 21.9 42.0 500 42.1 19.1 38.8 200 53.9 16.2 29.9 100 67.7 14.9 17.4 Most of the other tested LP papers significantly gain wins below -p 1000. How about LP scanners? I used From Beyond the Core and it seems it is really optimized for low max. processes, as it starts gaining wins just below -p 1000. From Beyond the Core -p %W %L %T 16000 21.7 72.8 5.5 8000 21.7 72.8 5.5 4000 21.7 72.8 5.5 2000 21.8 72.5 5.7 1000 28.5 65.1 6.4 500 35.0 59.4 5.6 200 39.3 55.9 4.8 100 53.1 43.1 3.8 The same seems true for LP bombers, like fbomber: fbomber -p %W %L %T 16000 4.9 76.5 18.6 8000 4.9 76.3 18.8 4000 4.9 76.4 18.7 2000 5.0 73.9 21.1 1000 7.5 68.5 24.0 500 16.1 58.8 25.1 200 33.5 45.0 21.5 100 45.6 35.2 19.2 What I've discovered so far is the strength of the different strategy classes for 94nop and LP style warriors changes at different max. processes and with different impact. To look in more depth in the range between -p 100 and -p 1000 makes absolute sense. Maybe one would find an optimum -p for a nice coexistence of 94nop and LP style warriors (just if desired). I'm curious if it would be possible to generate a graph with "hill success" vs "max. processess" for every 94nop and LP strategy. However, I'm quite sure that it also re-opens a nice playground for yet unknown strategies without being too far from existing warriors. _______________________________________________________________________________ Extra Extra - Scanning Paper AI by Christian Schmidt The idea for this warrior was based on the results of the article above. I was curious if I could add also some anti-imp power to a LP paper. The results were quite promising. It turns out I got the most wins when I was using 3 mov instructions to bomb the core with anti-imp dats. Here are the results against the fsh94nopv0.3: %W %L %T pwi 17.4 9.2 73.4 pap 39.3 13.5 47.2 pws 32.6 11.7 55.7 sai 24.4 26.3 49.3 sbi 51.3 17.0 31.8 stn 25.2 70.9 3.8 scn 9.2 89.9 1.0 cds 12.4 84.8 2.8 clr 13.9 83.5 2.6 However, the paper was very weak against scanners, although it scores quite well against most warriors containing 3-pts imps (although it's not very optimized). So I tried to combine it with a small scanning dwarf. The dwarf bombs until it finds something besides its own bombs. If fighting against a scanner it is likely that it hit the scanner and damage it. Then the LP paper can be started as the endgame strategy. In case of fighting a paper, paper/imp or a stone/imp it might not be too late for the LP paper to beat it. Here are the results against the fsh94nopv0.3: %W %L %T pwi 20.6 16.3 63.1 pap 38.4 19.7 41.9 pws 34.5 23.9 41.6 sai 25.2 36.3 38.5 sbi 44.3 31.0 24.6 stn 30.2 65.5 4.3 scn 46.5 50.6 2.9 cds 34.0 60.5 5.5 clr 28.2 65.4 6.5 Well, we're losing a bit of offensive power against imp warriors, but we gain a lot of wins against scanners. It now looks more like an all-round warrior than the LP paper itself. I'm sure there's still a lot of room for improvement. One can add a decoy or decoy maker, maybe combine it with a qscan and boot the complete code away or maybe just run the dwarf and LP paper in parallel, etc. I haven't tried many variations yet. So feel free to play around with the warrior and let it become more powerful: ;redcode-94 ;name Scanning Paper AI ;author Christian Schmidt ;strategy bomb/scan then replicate ;assert 1 ;----Replication---- l equ 26 zofs equ 2309 ;------Bombing------ bo1 equ 6327 bo2 equ 2285 color equ 686 a equ 4029 b equ 5354 c equ 4846 sOff1 equ 4208 sOff2 equ 4064 sStep1 equ 3003 sStep2 equ 105 add.f sTab, sScan sScan mov.i }sOff1, sOff2 jmz.f -2, {sScan sub.a #20, sScan mov.i a mov d1 , >b mov d1 , >c mov from, }color to jmz zofs, *0 d1 dat <5334 , <2667 end sScan _______________________________________________________________________________ Questions? Concerns? Comments? Complaints? Post them to rec.games.corewar or tell them in irc://irc.freenode.net/#COREWARS.