From: "Mizcu" Subject: Re: paper-stone-scissors analogy Date: Sat, 1 Mar 2003 13:35:01 +0200 Message-ID: > Reepicheep survived today's oneshot onslaught without a scratch. Strong. > But alas poor Monowire - had it been published before Unfortunate Delay? Monowire would have survived the onslaught, but i killed it since there is no point keeping it on the hill with warrior that is just the same with a small change. Monowire's code had been published at least week ago before Unfortunate Delay. The Monowire i held currently on the hill was not exactly the one published, but a newer version, that was actually minimally stronger than Unfortunate Delay that was polished off the published version. From: Lukasz Grabun Subject: Re: newbie Date: Sat, 1 Mar 2003 14:07:49 +0000 (UTC) Message-ID: On Fri, 28 Feb 2003 23:14:56 -0000, Robin Neatherway wrote: > I am something of a newbie to this game, after having found out about it > while researching a presentation on AI. I was wondering how much of a > community still existed, and whether you could point me in the direction of > some approproate sites. Hi, It is always good to see a newcomer! First, all useful links are on our - I won't fear to say - home http://www.koth.org. Next. you should visit one of sites (sorry, only these URLs I remember): http://de.geocities.com/fizmo_master or http://www.astercity.net/~grabek You will find there links to other sites... -- Lukasz Grabun (reply-to field is fake, use grabek (at) acn dot waw dot pl to reply) From: Lukasz Grabun Subject: Re: paper-stone-scissors analogy Date: Sat, 1 Mar 2003 14:19:01 +0000 (UTC) Message-ID: On Sat, 1 Mar 2003 13:35:01 +0200, Mizcu wrote: >> Reepicheep survived today's oneshot onslaught without a scratch. Strong. >> But alas poor Monowire - had it been published before Unfortunate Delay? > > Monowire would have survived the onslaught, but i killed it since there is > no point keeping it on the hill with warrior that is just the same > with a small change. Monowire's code had been published at least week ago > before Unfortunate Delay. The Monowire i held currently on the hill was not > exactly the one published, but a newer version, that was actually minimally > stronger than Unfortunate Delay that was polished off the published version. Aw, I get the nitpick. Ok, here comes the deadly jmp 0,0. UD was, actually my first one shot try. I confess I've taken a lot from Monowire and Janeczek's oneshots from the former round. That is why I published it in a unchanged form. Boot distance was preserved. But since it is - I agree - not nice to hold on the hill two, slighltly different version of a warrior. I think, Mizcu, that for Monowire a decoy maker instead of decoy would actually be better. Monowire is slaughtered by Unfortunate Delay (18/79/4), counted for Monowire. I have not optimized decoy positioning, though - it was only placed in such a way as not to trigger the sne line. -- Lukasz Grabun (reply-to field is fake, use grabek (at) acn dot waw dot pl to reply) From: waknuk@yahoo.com Subject: Re: newbie Date: 1 Mar 2003 16:43:21 GMT Message-ID: Lukasz Grabun wrote: > On Fri, 28 Feb 2003 23:14:56 -0000, Robin Neatherway wrote: > >> I am something of a newbie to this game, after having found out about it >> while researching a presentation on AI. I was wondering how much of a >> community still existed, and whether you could point me in the direction of >> some approproate sites. > There's also http://corewars.sourceforge.net which contains several REDCODE hills including a beginner hill http://corewars.sourceforge.net/cgi-bin/control.py?hill=rcbeginner&action=showhill Although this newsgroup is the heart of corewar there are relatively few posts here. Most of the action takes place on the above hills or the main 'pro' hill http://www.koth.org/lcgi-bin/current.pl?hill94nop and much of the talk is conducted via irc at irc.koth.org #corewars especially late afternoon Sunday European time. There's also an on-going non-stop tournament open to everyone - for details see Fizmo's site above. Newcomers have been doing well in it. -- Philb From: "Mizcu" Subject: Re: paper-stone-scissors analogy Date: Sat, 1 Mar 2003 17:11:17 +0200 Message-ID: > I think, Mizcu, that for Monowire a decoy maker instead of decoy > would actually be better. Not by the results i have been getting from benchmarks. But whatever, case closed. 2nd place on 'nop was enough. From: Lukasz Grabun Subject: Re: paper-stone-scissors analogy Date: Sat, 1 Mar 2003 23:53:45 +0000 (UTC) Message-ID: On Sat, 1 Mar 2003 17:11:17 +0200, Mizcu wrote: >> I think, Mizcu, that for Monowire a decoy maker instead of decoy >> would actually be better. > > Not by the results i have been getting from benchmarks. But whatever, case > closed. 2nd place on 'nop was enough. In this case: either boot distance is wrongly selected or decoy *was* actually scanned by the warrior. -- Lukasz Grabun (reply-to field is fake, use grabek (at) acn dot waw dot pl to reply) From: Koth Subject: KOTH.ORG: Status - 94 No Pspace 03/03/03 Date: 3 Mar 2003 08:10:17 -0500 Message-ID: <200303030509.AAA09205@gevjon.ttsg.com> Weekly Status on 03/03/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sun Mar 2 09:03:18 EST 2003 # %W/ %L/ %T Name Author Score Age 1 45/ 40/ 15 Toxic Spirit Philip Thorne 151 193 2 38/ 27/ 35 Reepicheep Grabun/Metcalf 150 739 3 38/ 28/ 34 Thunderstrike Lukasz Grabun 148 113 4 35/ 25/ 40 Son of Vain Oversby/Pihlaja 145 1508 5 43/ 42/ 15 Harmony Snoot Lukasz Grabun 145 83 6 36/ 29/ 34 Pixie Lukasz Grabun 143 156 7 34/ 24/ 42 PolyPap Jakub Kozisek 143 2 8 43/ 43/ 14 Hazy Test 63 Steve Gunnell 142 283 9 30/ 18/ 52 Dawn Roy van Rijn 142 124 10 41/ 41/ 19 Return of Vanquisher Lukasz Grabun 140 270 11 44/ 47/ 9 Solo Roy 140 4 12 37/ 34/ 30 My First Paper Michal Janeczek 140 107 13 40/ 41/ 19 Acid & Oil John Metcalf 140 1 14 30/ 21/ 48 Firestorm John Metcalf 139 544 15 32/ 25/ 44 Revenge of the Papers Fizmo/Roy 139 546 16 44/ 49/ 7 Claw Fizmo 139 476 17 27/ 17/ 56 paper test Christian Schmidt 138 22 18 39/ 42/ 19 Driftwood John Metcalf 137 192 19 39/ 43/ 18 Earthfire John Metcalf 135 11 20 39/ 43/ 19 A Pirate's Stolen Slipper John Metcalf 134 7 21 13/ 86/ 1 kbomber Ucho 40 0 From: Koth Subject: KOTH.ORG: Status - ICWS Experimental 94 03/03/03 Date: 3 Mar 2003 08:11:43 -0500 Message-ID: <200303030506.AAA09151@gevjon.ttsg.com> Weekly Status on 03/03/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Mar 2 22:16:36 EST 2003 # %W/ %L/ %T Name Author Score Age 1 45/ 42/ 12 Fire and Ice II David Moore 149 58 2 39/ 41/ 20 Kenshin X 45 Steve Gunnell 138 1 3 36/ 37/ 27 Black Moods Ian Oversby 135 154 4 21/ 8/ 71 Denial David Moore 134 99 5 34/ 34/ 32 Controlled Aggression Ian Oversby 134 158 6 33/ 33/ 33 Trefoil F 13 Steve Gunnell 133 41 7 20/ 8/ 73 Evol Cap 4 X John Wilkinson 132 227 8 30/ 29/ 41 Damage Inflicted Robert Macrae 132 97 9 21/ 11/ 68 Kin John Metcalf 132 66 10 28/ 25/ 48 Olivia X Ben Ford 131 39 11 26/ 23/ 51 Venom v0.2b Christian Schmidt 129 180 12 23/ 17/ 60 Katafutr Michal Janeczek 129 98 13 28/ 28/ 44 KAT v5 Dave Hillis 129 90 14 24/ 19/ 57 Glenstorm John Metcalf 129 20 15 32/ 37/ 31 Ogre Christian Schmidt 126 106 16 29/ 36/ 35 Mantrap Arcade Dave Hillis 123 19 17 14/ 6/ 80 Evolve X v4.0 John Wilkinson 121 175 18 29/ 41/ 30 Exsnail Philip Thorne 118 53 19 12/ 6/ 82 Black Box v1.1 JKW 117 121 20 26/ 36/ 38 Big I.F.F.S. Dave Hillis 117 87 21 10/ 40/ 50 4949629-336-cs-sdk-eve11 bvowk 80 0 From: Koth Subject: KOTH.ORG: Status - MultiWarrior 94 03/03/03 Date: 3 Mar 2003 08:13:08 -0500 Message-ID: <200303030503.AAA09114@gevjon.ttsg.com> Weekly Status on 03/03/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sat Mar 1 15:15:06 EST 2003 # Name Author Score Age 1 trial John Metcalf 16 107 2 Djinn Test 9 Steve Gunnell 12 92 3 Her Majesty P.Kline 11 222 4 fclear Brian Haskin 10 187 5 D-clearM Ken Espiritu 10 203 6 Thunderstrike-m Lukasz Grabun 5 2 7 Acid & Oil John Metcalf 5 1 8 Probe David Bendit 4 4 9 Surviver David Bendit 2 5 10 Silk Christian Subject: KOTH.ORG: Status - Standard 03/03/03 Date: 3 Mar 2003 08:14:32 -0500 Message-ID: <200303030500.AAA09055@gevjon.ttsg.com> Weekly Status on 03/03/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Thu Feb 20 16:54:58 EST 2003 # %W/ %L/ %T Name Author Score Age 1 39/ 22/ 40 Quicksilver '88 Michal Janeczek 155 7 2 36/ 22/ 42 Freight Train David Moore 150 172 3 35/ 22/ 43 Test Alexander (Sasha) Wa 148 111 4 34/ 22/ 44 Guardian Ian Oversby 146 171 5 44/ 45/ 11 vm5 Michal Janeczek 143 6 6 37/ 32/ 31 vala John Metcalf 142 94 7 41/ 40/ 18 My 1st try Christian Schmidt 142 3 8 32/ 23/ 45 Pixie 88 Lukasz Grabun 142 1 9 41/ 43/ 16 '88 test IV John Metcalf 139 65 10 44/ 49/ 7 Scan Test C 6 Steve Gunnell 139 10 11 33/ 28/ 40 sIMPly.Red v0.95 Leonardo Humberto 138 129 12 28/ 20/ 52 Test I Ian Oversby 137 228 13 30/ 24/ 45 Shish-Ka-Bob Ben Ford 136 127 14 41/ 47/ 11 Foggy Swamp Beppe Bezzi 136 168 15 41/ 47/ 12 Blur '88 Anton Marsden 135 209 16 37/ 41/ 22 PacMan David Moore 134 201 17 35/ 37/ 28 Gymnosperm trickery Dave Hillis 133 58 18 26/ 20/ 54 EV Paper John K Wilkinson 133 185 19 38/ 44/ 17 Beholder's Eye V1.7 W. Mintardjo 132 447 20 38/ 45/ 17 Stasis David Moore 132 279 21 15/ 75/ 10 clear Lukasz Grabun 55 0 From: Paul-V Khuong Subject: Re: newbie Date: 3 Mar 2003 08:22:21 -0500 Message-ID: <20030301153557.53241.qmail@web41511.mail.yahoo.com> --- Robin Neatherway wrote: > Hi guys, > > I am something of a newbie to this game, after > having found out about it > while researching a presentation on AI. I was > wondering how much of a > community still existed, and whether you could point > me in the direction of > some approproate sites. The community is still alive, probably more now than it was a few years ago in fact. As for resources, i'd check on http://www.koth.org , and, obviously, the FAQ. Google's news archive can also be extremely interesting. Lastly, i present you the best resource: ourselves. Don't ever be afraid of posting to ask for help in understanding, improving or debugging a warrior. Paul Khuong __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - forms, calculators, tips, more http://taxes.yahoo.com/ From: Steve Gunnell Subject: Re: difference between pmarses Date: 3 Mar 2003 08:30:01 -0500 Message-ID: <200303010833.10738.steveg58@iinet.net.au> This only applies if the backslash is the last character on the line. Pad some spaces after it and it should be ok. Cheers, Steve. On Sat, 1 Mar 2003 02:34 am, Lukasz Grabun wrote: > On Fri, 28 Feb 2003 04:05:22 -0500, Csaba Biro wrote: > > I couldn't belive that it simply skipped one line! Then I quickly found > > the reason: the non-graphic pmars doesn't like Beppe's comment (;\) at > > the end of the first line. I just guess that the \ is interpreted as a > > start of an escape sequence, so the newline character is also in > > comment as well as the following line. > > I think it is caused by the fact that on standard *nix systems > character '\' means that the current line will be continued on the > next one. Which means, that the second spl was interpreted as the > comment to the very first line of the warrior. I presume that pmars > acts like standard *nix parser and interpretes the character exactly > the same way. From: "Joshua Hudson" Subject: Re: difference between pmarses Date: 3 Mar 2003 08:31:26 -0500 Message-ID: >From: Lukasz Grabun > I think it is caused by the fact that on standard *nix systems >character '\' means that the current line will be continued on the >next one. Which means, that the second spl was interpreted as the >comment to the very first line of the warrior. I presume that pmars >acts like standard *nix parser and interpretes the character exactly >the same way. If my *nix program did that with a comment line, I fix it! Its a bug. _________________________________________________________________ Help STOP SPAM with the new MSN 8 and get 2 months FREE* http://join.msn.com/?page=features/junkmail From: Christoph Birk Subject: Re: difference between pmarses Date: 3 Mar 2003 08:32:51 -0500 Message-ID: <200302281850.KAA06425@andromeda.ociw.edu> > On Fri, 28 Feb 2003 04:05:22 -0500, Csaba Biro wrote: > > > I couldn't belive that it simply skipped one line! Then I quickly found the > > reason: the non-graphic pmars doesn't like Beppe's comment (;\) at the end > > of the first line. I just guess that the \ is interpreted as a start of an > > escape sequence, so the newline character is also in comment as well as the > > following line. > > I think it is caused by the fact that on standard *nix systems > character '\' means that the current line will be continued on the > next one. Which means, that the second spl was interpreted as the > comment to the very first line of the warrior. I presume that pmars > acts like standard *nix parser and interpretes the character exactly > the same way. I could NOT reproduce that 'bug' on my Solaris/Linux system(s). Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: Richard Rognlie Subject: C++Robots Standings -- 2003/03/03 Message-ID: Date: Mon, 03 Mar 2003 08:46:16 -0500 Current standings of the C++Robors hill. Send a message to c++robots@gamerz.net with "help" (sans quotes) as the Subject, or visit http://www.gamerz.net/c++robots/ for details Program Name Score W / L / T Age Author ================ ===== =========== === ===================================== 1 radar 669 223/ 27/ 0 58 Radu.Dumitru 2 tommy 661 220/ 29/ 1 240 jacksoew 3 edgar 656 218/ 30/ 2 59 joehorn 4 fox-014 642 214/ 36/ 0 133 dohzono 5 ths7h5 624 208/ 42/ 0 356 TORSTEN.SCHOENFELDER 5 wobble 624 208/ 42/ 0 49 tim 7 al018 619 206/ 43/ 1 24 walter.cancellier 8 mi5 597 199/ 51/ 0 31 schreiner.michael 9 v3 552 184/ 66/ 0 188 zechis 10 polarbear 537 179/ 71/ 0 153 flandar 11 whiper++ 535 177/ 69/ 4 103 francis.w 12 crbot 472 157/ 92/ 1 387 Rosevear.Craig.CA 13 minim 468 156/ 94/ 0 434 steveg 14 whiper_v2 466 155/ 94/ 1 304 francis.w 15 kamikaze 462 154/ 96/ 0 318 mike 16 nimrod 438 146/104/ 0 3 dbleigh 17 simpletest 414 138/112/ 0 539 niklas.wendel 18 rosie 411 137/113/ 0 352 andyg54321 19 iv 403 132/111/ 7 150 zechis 20 dspin_v4 390 130/120/ 0 366 Scott.Thisse 21 quaver 389 129/119/ 2 412 steveg 22 followme 378 125/122/ 3 38 aidandunbar 23 spunky75 363 121/129/ 0 267 joseph.fisher 23 hb2 363 121/129/ 0 11 macro1970 25 hal9000_v2 340 112/134/ 4 473 camangi 26 jedi 339 113/137/ 0 382 camangi 27 old_wobble 318 106/144/ 0 30 tim 28 tasteofcheese 316 99/132/ 19 34 gwright 29 beta-chicken 315 105/145/ 0 35 Sverre.Normann 30 5150 308 102/146/ 2 193 tedpabon 31 alpha-chicken 299 99/149/ 2 37 Sverre.Normann 32 crunchie1_xx 292 97/152/ 1 393 Roberto.Nerici 33 blockhead 291 97/153/ 0 329 sinoradz 34 arcto9 288 96/154/ 0 91 rl40 35 dumbbot8 286 93/150/ 7 114 robots 36 raystonn 282 94/156/ 0 417 raystonn 37 flash2 279 93/157/ 0 478 camangi 38 imp 255 85/165/ 0 521 petrey 38 zigger 255 85/165/ 0 290 joseph.fisher 40 t-9000 248 81/164/ 5 323 sinoradz 41 family-guy3 238 79/170/ 1 80 wmcdavitt 42 shunt 237 79/171/ 0 426 derijck 43 frady 235 78/171/ 1 201 cph9fa 44 tedster 232 77/172/ 1 199 tedpabon 45 dspin 228 76/174/ 0 375 Scott.Thisse 46 mathilda 225 75/175/ 0 411 shredder 46 crunchie0_xx 225 75/175/ 0 402 roberton 48 pro-hunter 217 72/177/ 1 183 For_CRobots 49 x4-unit 208 69/180/ 1 22 xychix 50 valubox 189 63/187/ 0 1 untorn -- / __ | Richard Rognlie / Sr. Technical Consultant / Sendmail, Inc. / / \ | http://www.gamerz.net/rrognlie/ \__/ / | #include () ribbon campaign () / | #include /\ against HTML mail /\ Message-ID: From: anton@paradise.net.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 03 Mar 2003 10:03:00 GMT Archive-name: games/corewar-faq Last-Modified: September 4, 1999 Version: 4.2 URL: http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html Copyright: (c) 1999 Anton Marsden Maintainer: Anton Marsden Posting-Frequency: once every 2 weeks Core War Frequently Asked Questions (rec.games.corewar FAQ) These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The latest hypertext version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html and the latest plain text version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.txt. This document is currently being maintained by Anton Marsden (anton@paradise.net.nz). Last modified: Sat Sep 4 00:22:22 NZST 1999 ------------------------------------------------------------------------ To Do * Add the new No-PSpace '94 hill location * Add online location of Dewdney's articles * Make question 17 easier to understand. Add a state diagram? * Add info about infinite hills, related games (C-Robots, Tierra?, ...) * New question: How do I know if my warrior is any good? Refer to beginners' benchmarks, etc. * Add a Who's Who list? * Would very much like someone to compile a collection of the "revolutionary" warriors so that beginners can see how the game has developed over the years. Mail me if interested. ------------------------------------------------------------------------ What's New * Changed primary location of FAQ (again!) * Changed Philip Kendall's home page address. * Updated list server information * Changed primary location of FAQ * Vector-launching code was fixed thanks to Ting Hsu. * Changed the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr ------------------------------------------------------------------------ Table of Contents 1. What is Core War 2. Is it "Core War" or "Core Wars"? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. Where can I find warrior code? 11. I do not have FTP. How do I get all this great stuff? 12. I do not have access to Usenet. How do I post and receive news? 13. Are there any Core War related WWW sites? 14. What is KotH? How do I enter? 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 16. How does SLT (Skip if Less Than) work? 17. What is the difference between in-register and in-memory evaluation? 18. What is P-space? 19. What does "Missing ;assert .." in my message from KotH mean? 20. How should I format my code? 21. Are there any other Core War related resources I should know about? 22. What does (expression or term of your choice) mean? 23. Other questions? ------------------------------------------------------------------------ 1. What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardised by the ICWS, and is therefore transportable between all standard Core War systems. The system in which the programs run is quite simple. The core (the memory of the simulated computer) is a continuous array of instructions, empty except for the competing programs. The core wraps around, so that after the last instruction comes the first one again. There are no absolute addresses in Core War. That is, the address 0 doesn't mean the first instruction in the memory, but the instruction that contains the address 0. The next instruction is 1, and the previous one obviously -1. However, all numbers are treated as positive, and are in the range 0 to CORESIZE-1 where CORESIZE is the amount of memory locations in the core - this means that -1 would be treated as CORESIZE-1 in any arithmetic operations, eg. 3218 + 7856 = (3218 + 7856) mod CORESIZE. Many people get confused by this, and it is particularly important when using the SLT instruction. Note that the source code of a program can still contain negative numbers, but if you start using instructions like DIV #-2, #5 it is important to know what effect they will have when executed. The basic unit of memory in Core War is one instruction. Each Redcode instruction contains three parts: * the opcode * the source address (a.k.a. the A-field) * the destination address (a.k.a. the B-field) The execution of the programs is equally simple. The MARS executes one instruction at a time, and then proceeds to the next one in the memory, unless the instruction explicitly tells it to jump to another address. If there is more than one program running, (as is usual) the programs execute alternately, one instruction at a time. The execution of each instruction takes the same time, one cycle, whether it is MOV, DIV or even DAT (which kills the process). Each program may have several processes running. These processes are stored in a task queue. When it is the program's turn to execute an instruction it dequeues a process and executes the corresponding instruction. Processes that are not killed during the execution of the instruction are put back into the task queue. Processes created by a SPL instruction are added to the task queue after the creating process is put back into the task queue. [ToC] ------------------------------------------------------------------------ 2. Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] ------------------------------------------------------------------------ 3. Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Library of Author Title Published ISBN Congress Call Number The Armchair Dewdney, Universe: An New York: W. QA76.6 .D517 A. K. Exploration of H. Freeman �0-7167-1939-8 1988 Computer Worlds 1988 The Magic 0-7167-2125-2 Dewdney, Machine: A New York: W.(Hardcover), QA76.6 A. K. Handbook of H. Freeman �0-7167-2144-9 .D5173 1990 Computer Sorcery 1990 (Paperback) A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. For those who are interested, Dewdney has a home page at http://www.csd.uwo.ca/faculty/akd/. [ToC] ------------------------------------------------------------------------ 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as ftp://www.koth.org/corewar/documents/standards/redcode-icws-88.Z. This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorials, ftp://www.koth.org/corewar/documents/tutorial.1.Z and ftp://www.koth.org/corewar/documents/tutorial.2.Z. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This and various other tutorials can be found at http://www.koth.org/papers.html. Even though ICWS'88 is still the "official" standard, you will find that most people are playing by ICWS'94 draft rules and extensions. [ToC] ------------------------------------------------------------------------ 5. What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a new addressing modes and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft at ftp://www.koth.org/corewar/documents/icws94.0202.Z for more information. There is a HTML version of this document available at http://www.koth.org/info/icws94.html. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp://www.koth.org/corewar. Note that Redcoder only supports a subset of ICWS'94. [ToC] ------------------------------------------------------------------------ 6. What is the ICWS? About one year after Core War first appeared in Scientific American, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). The ICWS is no longer active. [ToC] ------------------------------------------------------------------------ 7. What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in October 1995, back issues of Core Warrior (and the other newsletters) are available at http://para.inria.fr/~doligez/corewar/. There is also a Core Warrior index page at http://www.kendalls.demon.co.uk/pak21/corewar/warrior.html which has a summary of the contents of each issue of Core Warrior. Many of the earlier issues contain useful information for beginners. [ToC] ------------------------------------------------------------------------ 8. Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from ftp://ftp.csua.berkeley.edu/pub/corewar. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. This site is mirrored at: * http://www.koth.org/corewar/ * ftp://www.koth.org/corewar/ * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror The plain text version of this FAQ is automatically archived by news.answers (but this version is probably out-of-date). [ToC] ------------------------------------------------------------------------ 9. Where can I find a Core War system for . . . ? Core War systems are available via anonymous FTP from www.koth.org in the corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check ftp://www.koth.org/corewar/incoming for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than www.koth.org. Generally, the older the program - the less likely it will be ICWS compatible. If you are looking for an ICWS'94 simulator, get pMARS, which is available for many platforms and can be downloaded from: * ftp://ftp.csua.berkeley.edu/pub/corewar (original site) * ftp://www.koth.org/corewar (koth.org mirror) * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror (Planar mirror) * http://www.nc5.infi.net/~wtnewton/corewar/ (Terry Newton) * ftp://members.aol.com/ofechner/corewar (Fechter) Notes: * If you have trouble running pMARS with a graphical display under Win95 then check out http://www.koth.org/pmars.html which should have a pointer to the latest compilation of pMARS for this environment. * RPMs for the Alpha, PowerPC, Sparc and i386 can be found at ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars-rpm/ Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at www.koth.org: MADgic41.lzh corewar for the Amiga, v4.1 MAD4041.lzh older version? MAD50B.lha corewar for the Amiga, beta version 5.0 Redcoder-21.hqx corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx corewar for the Mac core-wars-simulator.hqx same as core-11.hqx? corewar_unix_x11.tar.Z corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z older version kothpc.zip port of older version of KotH to the PC deluxe20c.tar.Z corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z corewar for UNIX, likely not ICWS'88 compatible icons.zip corewar icons for MS-Windows macrored.zip a redcode macro-preprocessor (PC) c88v49.zip PC corewar, textmode display mars88.zip PC corewar, graphics mode display corwp302.zip PC corewar, textmode display, slowish mercury2.zip PC corewar written in assembly, fast! mtourn11.zip tournament scheduler for mercury (req. 4DOS) pmars08s.zip portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z same as above pmars08.zip PC executables with graphics display, req 386+ macpmars02.sit.hqx pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx C source (MPW, ThinkC) for Mac frontend pvms08.zip pMARS v0.8 for VMS build files/help (req. pmars08s.zip) ApMARS03.lha pMARS executable for Amiga (port of version 0.3.1) wincor11.zip MS-Windows system, shareware ($15) [ToC] ------------------------------------------------------------------------ 10. Where can I find warrior code? To learn the game, it is a good idea to study previously posted warrior code. The FTP archives have code in the ftp://www.koth.org/corewar/redcode directory. A clearly organized on-line warrior collection is available at the Core War web sites (see below). [ToC] ------------------------------------------------------------------------ 11. I do not have FTP. How do I get all this great stuff? There is an FTP email server at bitftp@pucc.princeton.edu. This address may no longer exist. I haven't tested it yet. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. Note that many FTP email gateways are shutting down due to abuse. To get a current list of FTP email servers, look at the Accessing the Internet by E-mail FAQ posted to news.answers. If you don't have access to Usenet, you can retrieve this FAQ one of the following ways: * Send mail to mail-server@rtfm.mit.edu with the body containing "send usenet/news.answers/internet-services/access-via-email". * Send mail to mailbase@mailbase.ac.uk with the body containing "send lis-iis e-access-inet.txt". [ToC] ------------------------------------------------------------------------ 12. I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Koth.Org list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@koth.org. You can send mail to corewar-l@koth.org to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (ttsg@ttsg.com). Servers that allow you to post (but not receive) articles are available. Refer to the Accessing the Internet by E-Mail FAQ for more information. [ToC] ------------------------------------------------------------------------ 13. Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is http://www.koth.org; pizza's is http://www.ecst.csuchico.edu/~pizza/koth . Damien Doligez (a.k.a. Planar) has a web page that features convenient access to regular newsletters (Push Off, The '94 Warrior, Core Warrior) and a well organized library of warriors: http://para.inria.fr/~doligez/corewar/. Convenient for U.S. users, this site is also mirrored at koth.org. [ToC] ------------------------------------------------------------------------ 14. What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: koth@koth.org is maintained by Scott J. Ellentuch (tuc@ttsg.com) and pizza@ecst.csuchico.edu by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry Rules for King of the Hill Corewar * Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. * Put a line starting with ";redcode" (or ";redcode-94", etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. Using ";name" is mandatory on the Pizza hills. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-94, ;redcode-b, ;redcode-lp, ;redcode-x, ;redcode, ;redcode-94x or ;redcode-94m. The former four run at "pizza", the latter three at "stormking". More information on these hills is listed below. * Mail this file to koth@koth.org or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). * Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. * In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. Sample Entry ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Duration Max. Hill Name Hill Core Max. Before Entry Min. Rounds Instr. Size Size Processes Distance Fought Set Tie Length Pizza's ICWS '94 Draft Hill Extended (Accessed with 25 8000 8000 80000 100 100 200 ICWS '94 ";redcode-94") Draft Pizza's Beginner's Extended Hill (Accessed 25 8000 8000 80000 100 100 200 ICWS '94 with ";redcode-b") Draft Pizza's Experimental Extended (Small) Hill 25 800 800 8000 20 20 200 ICWS '94 (Accessed with Draft ";redcode-x") Pizza's Limited Process (LP) Hill Extended (Accessed with 25 8000 8 80000 200 200 200 ICWS '94 ";redcode-lp") Draft Stormking's ICWS '88 Standard Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '88 ";redcode") Stormking's ICWS '94 No Pspace Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '94 ";redcode-94nop") Stormking's ICWS '94 Experimental Extended (Big) Hill 20 55440 55440 500000 200 200 250 ICWS '94 (Accessed with Draft ";redcode-94x") Stormking's ICWS '94 Multi-Warrior Extended Hill (Accessed 10 8000 8000 80000 100 100 200 ICWS '94 with Draft ";redcode-94m") Note: Warriors on the beginner's hill are retired at age 100. If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At "stormking", a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. At "pizza", you can use ";redcode[-??] test" to do a test challenge of the Hill without affecting the status of the Hill. These challenges can be used to see how well your warrior does against the current Hill warriors. All hills run portable MARS (pMARS) version 0.8, a platform-independent Core War system available at www.koth.org. The '94 and '94x hills allow five experimental opcodes and three experimental addressing modes currently not covered in the ICWS'94 draft document: * LDP - Load P-Space * STP - Store P-Space * SEQ - Skip if EQual (synonym for CMP) * SNE - Skip if Not Equal * NOP - (No OPeration) * * - indirect using A-field as pointer * { - predecrement indirect using A-field * } - postincrement indirect using A-field [ToC] ------------------------------------------------------------------------ 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an illegal instruction (in source code) under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you have a DAT 0, 0 instruction in your source code - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] ------------------------------------------------------------------------ 16. How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: -1 becomes M-1 where M is the memory size (core size). Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] ------------------------------------------------------------------------ 17. What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0, impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10, scan scan jmz example, 10 c Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step, scan scan cmp 10, 30 jmp attack jmp example step dat #20, #20 Colour Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear Code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down scanners. Typically, DATs with non-zero B-fields. Decrement Resistant Property of warriors making them functional (or at least partially functional) when overrun by a DJN-stream. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example, <4000 Dwarf The prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example mov 0, 1 or example mov 0, 2 mov 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... spl 0, mov.i #0,IMPSIZE Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at www.koth.org. Paper A Paper-like program is one which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. P-Warrior A warrior which uses the results of previous round(s) in order to determine which strategy it will use. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Q^2 Scan A modern version of the Quick Scan where anything found is attacked almost immediately. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example spl 0 loop add #10, example mov example, @example jmp loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov >-1, }-1 ;copy self to new location mov bomb, >2000 ;linear bombing mov bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a SPL-JMP bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also SPL/DAT Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: sz EQU 2667 spl 1 spl 1 jmp @vt, }0 vt dat #0, imp+0*sz ; start of vector table dat #0, imp+1*sz dat #0, imp+2*sz dat #0, imp+3*sz ; end of vector table imp mov.i #0, sz [ToC] ------------------------------------------------------------------------ 23. Other questions? Just ask in the rec.games.corewar newsgroup or contact me. If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] ------------------------------------------------------------------------ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: * Mark Durham (wrote the original version of the FAQ) * Paul Kline * Randy Graham * Stefan Strack (maintained a recent version of the FAQ) ------------------------------------------------------------------------ Copyright � 1999 Anton Marsden. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. ------------------------------------------------------------------------ From: "Robin Neatherway" Subject: Re: newbie Date: Mon, 3 Mar 2003 17:29:28 -0000 Message-ID: Thankyou for your responses. So far I have only written two warriors - one which launches SPL-JMP bombs followed by a core wipe, and one which scans the core using SEQ, and SPLits onto anything it finds, hopefully using the enemy's (better) code against him. The second is unlikely to win, but is quite good defensively. "Paul-V Khuong" wrote in message news:20030301153557.53241.qmail@web41511.mail.yahoo.com... > --- Robin Neatherway wrote: > > Hi guys, > > > > I am something of a newbie to this game, after > > having found out about it > > while researching a presentation on AI. I was > > wondering how much of a > > community still existed, and whether you could point > > me in the direction of > > some approproate sites. > The community is still alive, probably more now than > it was a few years ago in fact. As for resources, i'd > check on http://www.koth.org , and, obviously, the > FAQ. Google's news archive can also be extremely > interesting. Lastly, i present you the best resource: > ourselves. Don't ever be afraid of posting to ask for > help in understanding, improving or debugging a > warrior. > > Paul Khuong > > __________________________________________________ > Do you Yahoo!? > Yahoo! Tax Center - forms, calculators, tips, more > http://taxes.yahoo.com/ From: Steve Gunnell Subject: Re: difference between pmarses Date: 4 Mar 2003 18:21:59 -0500 Message-ID: <200303040757.45941.steveg58@iinet.net.au> It is *not* a bug. Here is the code from asm.c: do { if (fgets(buf + i, MAXALLCHAR - i, infp)) { for (; buf[i]; i++) if (buf[i] == '\n' || buf[i] == '\r') break; buf[i] = 0; if (buf[i - 1] == '\\') { /* line continued */ conLine = TRUE; buf[--i] = 0; /* reset */ } else conLine = FALSE; } else if (ferror(infp)) { errprn(DSKERR, (line_st *) NULL, fName); fclose(infp); return PARSEERR; } else cont = (feof(infp) == 0); } while (conLine == TRUE); lines++; i = 0; See the line with the comment "line continued"? This is a standard behaviour for UNIX and most other OSs that have a script capability. It says if the last character on the line is a backslash then the writer is splitting one logical line over multiple physical lines. This is very important if you are entering code on a device with a limited line width or you want your code to be formatted neatly. To defeat it just place a character (even a space) after the backslash. For a trivial test on a UNIX system go to the commndline and type: cd \ then press enter - you will find that the command line parser returns a prompt for more input rather than executing the cd command. Cheers, Steve Gunnell (who has written enough code on 80 column dumb terminals to be aware of the formatting rules) On Mon, 3 Mar 2003 09:32 pm, Christoph Birk wrote: > > On Fri, 28 Feb 2003 04:05:22 -0500, Csaba Biro wrote: > > > I couldn't belive that it simply skipped one line! Then I quickly > > > found the reason: the non-graphic pmars doesn't like Beppe's comment > > > (;\) at the end of the first line. I just guess that the \ is > > > interpreted as a start of an escape sequence, so the newline > > > character is also in comment as well as the following line. > > > > I think it is caused by the fact that on standard *nix systems > > character '\' means that the current line will be continued on the > > next one. Which means, that the second spl was interpreted as the > > comment to the very first line of the warrior. I presume that pmars > > acts like standard *nix parser and interpretes the character exactly > > the same way. > > I could NOT reproduce that 'bug' on my Solaris/Linux system(s). > > Christoph > http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: Christoph Birk Subject: Re: difference between pmarses Date: 4 Mar 2003 22:04:39 -0500 Message-ID: <200303042353.PAA23586@andromeda.ociw.edu> Steve Gunnell wrote: > It is *not* a bug. Here is the code from asm.c: > ... I would like to point out that: 1) I had 'bug' in quotes implicating that I do not consider it a bug. 2) my asm.c (v7.20) does not have the 'continuation' feature. (written by A.Ma,N.Sieben,S.Strack,M.Wangsawidjaja) 3) the latest version on sourceforge.net (v1.20) has it. (written/modified by I.Karonen) 4) Although not a 'bug' this may be nevertheless an unwanted feature that causes several older (and newer) programs to compile different from than the author intended. A quick 'fgrep' on the Koenistuhl identified 10+ programs that contain '\' as a last character in a line. This has never been an issue for the Koenigstuhl as I still use pmars-v0.8.0 (before Ilmari took over :-) Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: Paul-V Khuong Subject: Re: difference between pmarses Date: 4 Mar 2003 22:28:50 -0500 Message-ID: <20030305031437.43770.qmail@web41501.mail.yahoo.com> --- Christoph Birk wrote: > Steve Gunnell wrote: > > It is *not* a bug. Here is the code from asm.c: > > ... > > I would like to point out that: [...] > 4) Although not a 'bug' this may be nevertheless an > unwanted feature > that causes several older (and newer) programs to > compile different > from than the author intended. > A quick 'fgrep' on the Koenistuhl identified 10+ > programs that > contain '\' as a last character in a line. > > This has never been an issue for the Koenigstuhl as > I still use > pmars-v0.8.0 (before Ilmari took over :-) OK, so i guess a switch to deactivate(or vice-versa) this feature would be interesting? __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - forms, calculators, tips, more http://taxes.yahoo.com/ From: Lukasz Grabun Subject: Re: difference between pmarses Date: Wed, 5 Mar 2003 06:08:16 +0000 (UTC) Message-ID: On 4 Mar 2003 18:21:59 -0500, Steve Gunnell wrote: > It is *not* a bug. Here is the code from asm.c: This is feature, consider Pihlaja's snippet from #85 (BTW: thank you John for putting all of them in one place, I won't have to run google - to rest of you, expect all CW zipped, gzipped, bzipped, whatever, on my webpage, as well as pdfs of all issues, soon) and his macro. As far as I recall he used \ as delimeter, no? -- Lukasz Grabun (reply-to field is fake, use grabek (at) acn dot waw dot pl to reply) From: waknuk@yahoo.com Subject: Re: difference between pmarses Date: 5 Mar 2003 14:19:26 GMT Message-ID: Lukasz Grabun wrote: > On 4 Mar 2003 18:21:59 -0500, Steve Gunnell wrote: >> It is *not* a bug. Here is the code from asm.c: > > This is feature, consider Pihlaja's snippet from #85 (BTW: thank you > John for putting all of them in one place, I won't have to run google > - to rest of you, expect all CW zipped, gzipped, bzipped, whatever, on > my webpage, as well as pdfs of all issues, soon) and his macro. As far > as I recall he used \ as delimeter, no? > It is common in UNIX and programming worlds [C etc.] but it is unnecessary in redcode [unusual for an instruction to need a line-break]. It's not documented and it trips people up e.g. Joonas in CW84 ; Decoder (2) decode mul.b *2, ptr ; \ decide sne tab1, @ptr ; \} Decoder. add.? tab2, ptr ; /} A-fields are pointers to ? tab3, ? ; / decoding tables. self http://groups.google.com/groups?selm=4ee41bd6.0209291114.24106347%40posting.google.com Now we know it's there we can make use of it / have fun. From: Ilmari Karonen Message-ID: <1046891409.29575@itz.pp.sci.fi> Subject: Re: difference between pmarses Date: Wed, 05 Mar 2003 19:14:23 GMT In article <200303042353.PAA23586@andromeda.ociw.edu>, Christoph Birk wrote: > >1) I had 'bug' in quotes implicating that I do not consider it a bug. >2) my asm.c (v7.20) does not have the 'continuation' feature. > (written by A.Ma,N.Sieben,S.Strack,M.Wangsawidjaja) >3) the latest version on sourceforge.net (v1.20) has it. > (written/modified by I.Karonen) >4) Although not a 'bug' this may be nevertheless an unwanted feature > that causes several older (and newer) programs to compile different > from than the author intended. > A quick 'fgrep' on the Koenistuhl identified 10+ programs that > contain '\' as a last character in a line. > >This has never been an issue for the Koenigstuhl as I still use >pmars-v0.8.0 (before Ilmari took over :-) I should like to clarify that I didn't add that feature -- in fact, I remember accidentally discovering it myself when I started writing redcode. Based on your and my observations, it appears this feature was added at some point in the 0.8 series. I'd also like to take the time to apologize for having done quite a bit less to and for the pMARS project as the above message might imply. In fact, soon after I joined the SourceForge project with the intention of re-activating pMARS development, I myself got so busy and worn out by other things that I had no time or energy to spare for Core War. If you look at the SourceForge project pages, you'll see that the last release of pMARS is from over two years (!) ago, and that there are several open patches that are nearly as old. It looks like I might finally be getting things back in order in my life, to the point where I could spare at least some effort on the pMARS project as well. Nonetheless, if someone else feels like spending some of their "copious free time" on pMARS development, I'd like to encourage them to join the official development team. (You'll have to contact Anton Marsden for that; I'm officially just a developer, not an admin, as far as SourceForge is concerned.) -- Ilmari Karonen - http://www.sci.fi/~iltzu/ "Watch it. Keep that up, and I'll make you live in a house designed by a mathematician." -- George William Herbert in rec.arts.sf.science From: howard_harry@hotmail.com (Will Varfar) Subject: Species 1.01 Date: 6 Mar 2003 09:09:22 -0800 Message-ID: <5e314d3b.0303060455.676aa6cc@posting.google.com> Hi Folks, I'll risk a repost because corewars-l@koth.org didn't seem to forward my previous advert to you all; apologies if this is a dup: the Species corewars evolver framework is now at version 1.01. You can download it from http://redcoder.sourceforge.net Features: * meta-instruction genes (of a sort). Includes a dat_padding% which can space your warriors out to make them better hidden from scanners * djn-trains are rare despite allowing the very useful djn instruction * the branch-bias parameter gives you complete control over the average length of generated 'genes' * automatic benchmarking of the top n% of your evolving species, to make it easier to track population progress * resume log, so that if you stop Species, upon restart it can continue pretty-much where it got to last time. You should never lose more than a few seconds of computing time. When it works.. * misc bug fixes over 1.0 best regards, Will From: "Csaba Biro" Subject: Re: difference between pmarses Date: Thu, 6 Mar 2003 12:39:47 -0500 Message-ID: "Steve Gunnell" wrote in message news:200303040757.45941.steveg58@iinet.net.au... > It is *not* a bug. Here is the code from asm.c: I just thought it's a bug, because the Redcode grammar available at koth.org doesn't contain this. this_string :: (^\n)* ; comment :: ";" this_string "\n" | e ; So "this_string" may contain backslash at the end. Csaba From: Planar Subject: Warrior archive Date: Thu, 06 Mar 2003 16:36:45 +0100 Message-ID: Dear Core War community, I'm sorry to report that I really don't have any time for Core War anymore. I can't even find the time to update my warrior archive. If anyone wants to take up the task, I will be happy to hand over all the files and all the scripts (mostly, old shell and awk scripts). Otherwise, I will simply leave it on my Web page, slowly rotting into obsolescence... My best wishes for the future of Core War, -- Planar From: iapdk@admin.drake.edu (Paul Kline) Subject: Re: Warrior archive Date: 7 Mar 2003 08:43:44 -0800 Message-ID: <9e6b1335.0303070521.7fa4ce59@posting.google.com> > My best wishes for the future of Core War, > > -- Planar Best wishes to you Planar! Thanks for supporting the game. "Planar's Archive" has been a staple for a long time, we'll miss you. Paul Kline From: "Robert Macrae" Subject: Re: Warrior archive Date: Fri, 7 Mar 2003 20:38:39 -0000 Message-ID: <3e69033d$0$6301$cc9e4d1f@news.dial.pipex.com> > I'm sorry to report that I really don't have any time for Core > War anymore. [Sigh] Its been an invaluable tool, thanks for all your work over the years. Robert From: "John Metcalf" Subject: Invite: Mini IRC tournament Date: Sat, 8 Mar 2003 07:10:50 -0000 Message-ID: <3e699859_2@mk-nntp-2.news.uk.tiscali.com> Sunday 09th March, 9:00pm (GMT) on irc://irc.koth.org/ in #COREWARS Last week's tournament was a great success, with 8 Redcoder's taking part, having just 15 minutes to write their warrior... Check http://myweb.tiscali.co.uk/corewar/corewar/irct01/index.htm for last week's results. This week, you will have just 30 minutes to write your warrior. The rest of the rules will be announced immediately before your time begins. ;-) Results should be announced by 10pm. Regards, John From: waknuk@yahoo.com (Philip Thorne) Subject: Re: Warrior archive Date: 10 Mar 2003 02:48:52 GMT Message-ID: Planar wrote: > Dear Core War community, > > I'm sorry to report that I really don't have any time for Core > War anymore. I can't even find the time to update my > warrior archive. If anyone wants to take up the task, I will > be happy to hand over all the files and all the scripts > (mostly, old shell and awk scripts). Otherwise, I will simply > leave it on my Web page, slowly rotting into obsolescence... > > My best wishes for the future of Core War, > > -- Planar It's not just the oldies in mourning - to this beginner you were a learned and enthusiastic, though unknowing, guide [cdb anyone ] and Olympian archiver. -- Philb From: waknuk@yahoo.com (Philip Thorne) Subject: Re: Invite: Mini IRC tournament Date: 10 Mar 2003 05:47:00 GMT Message-ID: John Metcalf wrote: > Sunday 09th March, 9:00pm (GMT) on irc://irc.koth.org/ in #COREWARS > > Last week's tournament was a great success, with 8 Redcoder's taking part, > having just 15 minutes to write their warrior... > > Check http://myweb.tiscali.co.uk/corewar/corewar/irct01/index.htm for last > week's results. > > This week, you will have just 30 minutes to write your warrior. The rest of the > rules will be announced immediately before your time begins. ;-) Results should > be announced by 10pm. > > Regards, > > John > > Today's winer was Roy. Full results/rules are at: http://myweb.tiscali.co.uk/corewar/corewar/irct02/index.htm -- Philb From: "phani" Subject: newbie question regarding 'c' - the speed Date: 10 Mar 2003 07:55:59 -0500 Message-ID: <1047299466.62e0a760phani@myrealbox.com> hello all, I am a newbie to corewars and I am right now spending more time reading others' warriors and trying to understand the strategies. I have come across this statement in one of the help documents, The code executes 2 instructions for every one location it copies. This is 0.5c, where "c" is the "speed of light" or 1 location per instruction. So from this I understand that 'c' is calculated depending on how many instructions are executed per location. Am I right about this ? Also would a smaller 'c' value mean an efficiently written warrior ? Please correct me if I am wrong. thank you gangadhar From: Koth Subject: KOTH.ORG: Status - Standard 03/10/03 Date: 10 Mar 2003 07:56:20 -0500 Message-ID: <200303100500.h2A500ZQ023704@gevjon.ttsg.com> Weekly Status on 03/10/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Sun Mar 9 02:38:22 EST 2003 # %W/ %L/ %T Name Author Score Age 1 38/ 22/ 39 Quicksilver '88 Michal Janeczek 155 7 2 36/ 23/ 41 Freight Train David Moore 148 172 3 34/ 23/ 43 Test Alexander (Sasha) Wa 146 111 4 34/ 23/ 43 Guardian Ian Oversby 144 171 5 41/ 40/ 19 My 1st try Christian Schmidt 142 3 6 43/ 46/ 11 vm5 Michal Janeczek 141 6 7 31/ 24/ 45 Pixie 88 Lukasz Grabun 139 1 8 41/ 43/ 16 '88 test IV John Metcalf 139 65 9 35/ 33/ 31 vala John Metcalf 138 94 10 30/ 25/ 45 Shish-Ka-Bob Ben Ford 135 127 11 28/ 21/ 52 Test I Ian Oversby 135 228 12 42/ 50/ 7 Scan Test C 6 Steve Gunnell 134 10 13 37/ 41/ 22 PacMan David Moore 134 201 14 41/ 48/ 11 Foggy Swamp Beppe Bezzi 134 168 15 31/ 29/ 40 sIMPly.Red v0.95 Leonardo Humberto 133 129 16 40/ 48/ 13 Blur '88 Anton Marsden 132 209 17 34/ 37/ 28 Gymnosperm trickery Dave Hillis 132 58 18 26/ 21/ 53 EV Paper John K Wilkinson 131 185 19 38/ 45/ 18 Beholder's Eye V1.7 W. Mintardjo 130 447 20 38/ 45/ 17 Stasis David Moore 130 279 21 30/ 61/ 9 r3 test David Moore 99 0 From: Koth Subject: KOTH.ORG: Status - 94 No Pspace 03/10/03 Date: 10 Mar 2003 07:56:06 -0500 Message-ID: <200303100509.h2A591OL023834@gevjon.ttsg.com> Weekly Status on 03/10/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sun Mar 9 14:35:05 EST 2003 # %W/ %L/ %T Name Author Score Age 1 36/ 26/ 38 Reepicheep Grabun/Metcalf 147 774 2 41/ 43/ 16 Hazy Test 63 Steve Gunnell 140 318 3 43/ 47/ 10 Solo Roy 140 13 4 34/ 29/ 36 Thunderstrike Lukasz Grabun 140 148 5 40/ 42/ 18 Return of Vanquisher Lukasz Grabun 138 305 6 32/ 26/ 41 Son of Vain Oversby/Pihlaja 138 1543 7 41/ 44/ 15 run to the hills Simon Wainwright 137 8 8 31/ 24/ 45 Revenge of the Papers Fizmo/Roy 137 581 9 40/ 44/ 17 Toxic Spirit Philip Thorne 136 228 10 26/ 16/ 58 PolyPap II Jakub/Roy 136 23 11 34/ 34/ 31 My First Paper Michal Janeczek 135 142 12 28/ 23/ 49 Firestorm John Metcalf 133 579 13 31/ 30/ 39 Pixie Lukasz Grabun 133 191 14 27/ 21/ 52 Dawn Roy van Rijn 133 159 15 29/ 26/ 45 Fast Action III Christian Schmidt 133 17 16 39/ 45/ 16 Harmony Snoot Lukasz Grabun 132 118 17 36/ 42/ 22 Driftwood John Metcalf 130 227 18 36/ 42/ 22 my new tiny warrior John Metcalf 129 2 19 41/ 54/ 5 Claw Fizmo 128 511 20 28/ 31/ 41 Four Winds Bar John Metcalf 125 1 21 3/ 4/ 3 my new tiny warrior John Metcalf 12 4 From: Koth Subject: KOTH.ORG: Status - MultiWarrior 94 03/10/03 Date: 10 Mar 2003 07:56:15 -0500 Message-ID: <200303100503.h2A530JY023764@gevjon.ttsg.com> Weekly Status on 03/10/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sun Mar 9 13:12:29 EST 2003 # Name Author Score Age 1 trial John Metcalf 11 114 2 Triple Glaze Philip Thorne 11 4 3 Blowtorch Test B 23 Steve Gunnell 7 2 4 fclear Brian Haskin 6 194 5 Djinn Test 9 Steve Gunnell 5 99 6 my new tiny warrior John Metcalf 5 1 7 D-clearM Ken Espiritu 3 210 8 Surviver David Bendit 3 12 9 Acid & Oil John Metcalf 3 8 10 Her Majesty P.Kline 2 229 11 Silk Christian Subject: KOTH.ORG: Status - ICWS Experimental 94 03/10/03 Date: 10 Mar 2003 07:56:10 -0500 Message-ID: <200303100506.h2A560HH023807@gevjon.ttsg.com> Weekly Status on 03/10/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Mar 9 16:10:38 EST 2003 # %W/ %L/ %T Name Author Score Age 1 44/ 43/ 13 Fire and Ice II David Moore 145 65 2 36/ 33/ 31 Controlled Aggression Ian Oversby 138 165 3 37/ 37/ 25 Black Moods Ian Oversby 138 161 4 34/ 33/ 32 Trefoil F 13 Steve Gunnell 135 48 5 21/ 8/ 70 Denial David Moore 134 106 6 30/ 29/ 40 Damage Inflicted Robert Macrae 132 104 7 27/ 23/ 49 Venom v0.2b Christian Schmidt 132 187 8 19/ 8/ 73 Evol Cap 4 X John Wilkinson 131 234 9 24/ 17/ 60 Katafutr Michal Janeczek 130 105 10 27/ 25/ 48 Olivia X Ben Ford 130 46 11 36/ 43/ 20 Kenshin X 45 Steve Gunnell 129 8 12 24/ 19/ 57 Glenstorm John Metcalf 128 27 13 32/ 37/ 31 Ogre Christian Schmidt 126 113 14 18/ 12/ 70 Kin John Metcalf 125 73 15 26/ 28/ 46 KAT v5 Dave Hillis 123 97 16 29/ 36/ 34 Mantrap Arcade Dave Hillis 122 26 17 13/ 6/ 81 Evolve X v4.0 John Wilkinson 121 182 18 30/ 40/ 29 Exsnail Philip Thorne 121 60 19 29/ 39/ 31 Blowtorch Test C 13 Steve Gunnell 119 1 20 12/ 6/ 82 Black Box v1.1 JKW 118 128 21 11/ 38/ 51 1910984-3990-cs-sdk-eve11 bvowk 85 0 From: "Barry Cook" Subject: Re: newbie question regarding 'c' - the speed Date: Mon, 10 Mar 2003 15:37:21 -0000 Message-ID: "phani" wrote in message news:1047299466.62e0a760phani@myrealbox.com... > hello all, > I am a newbie to corewars and I am right now spending more time reading others' warriors and trying to understand the strategies. > I have come across this statement in one of the help documents, > > The code executes 2 instructions for every one > location it copies. This is 0.5c, where "c" is the > "speed of light" or 1 location per instruction. > > So from this I understand that 'c' is calculated depending on how many instructions are executed per location. Am I right about this ? Also would a smaller 'c' value mean an efficiently written warrior ? Please correct me if I am wrong. > thank you > gangadhar > Its the other way round I think, 0.5c means that for every 2 instructions executed 1 other location is bombed. This means that an imp (mov.i 0, 1) moves at 1c, a stone of the form add mov jmp will bomb at 0.33c and so on. One thing I'm not sure about is if decrements/increments are counted in bombing speed. From: Sascha Zapf Subject: Re: newbie question regarding 'c' - the speed Date: Mon, 10 Mar 2003 18:33:25 +0100 Message-ID: Barry Cook wrote: > > "phani" wrote in message > news:1047299466.62e0a760phani@myrealbox.com... >> hello all, >> I am a newbie to corewars and I am right now spending more time > reading others' warriors and trying to understand the strategies. >> I have come across this statement in one of the help documents, >> >> The code executes 2 instructions for every one >> location it copies. This is 0.5c, where "c" is the >> "speed of light" or 1 location per instruction. >> >> So from this I understand that 'c' is calculated depending on how > many instructions are executed per location. Am I right about this ? > Also would a smaller 'c' value mean an efficiently written warrior ? > Please correct me if I am wrong. >> thank you >> gangadhar >> > > Its the other way round I think, 0.5c means that for every 2 > instructions executed 1 other location is bombed. This means that an > imp (mov.i 0, 1) moves at 1c, a stone of the form add mov jmp will > bomb at 0.33c and so on. One thing I'm not sure about is if > decrements/increments are counted in bombing speed. Sure, 3c decoy-maker, were 2c are from increments. Sascha -- Parlez vous Redcode? From: Paul-V Khuong Subject: Re: newbie question regarding 'c' - the speed Date: 10 Mar 2003 21:12:49 -0500 Message-ID: <20030310210915.94069.qmail@web41504.mail.yahoo.com> --- Sascha Zapf wrote: > Barry Cook wrote: > > > > > "phani" wrote in message > > news:1047299466.62e0a760phani@myrealbox.com... > >> hello all, > >> I am a newbie to corewars and I am right now > spending more time > > reading others' warriors and trying to understand > the strategies. > >> I have come across this statement in one of the > help documents, > >> > >> The code executes 2 instructions for every > one > >> location it copies. This is 0.5c, where "c" is > the > >> "speed of light" or 1 location per instruction. > >> > >> So from this I understand that 'c' is > calculated depending on how > > many instructions are executed per location. Am I > right about this ? > > Also would a smaller 'c' value mean an efficiently > written warrior ? > > Please correct me if I am wrong. > >> thank you > >> gangadhar > >> > > > > Its the other way round I think, 0.5c means that > for every 2 > > instructions executed 1 other location is bombed. > This means that an > > imp (mov.i 0, 1) moves at 1c, a stone of the form > add mov jmp will > > bomb at 0.33c and so on. One thing I'm not sure > about is if > > decrements/increments are counted in bombing > speed. > > Sure, > > 3c decoy-maker, were 2c are from increments. > > Sascha In case it wasn't clear, c refers to redcode's "speed of light", the maximal theoretical speed, 1 instruction/cycle. For example, a pure unrolled CMP scan(a qscan) scans 2 cells/cycle, -> 2c. As for counting decrements or not, it all depends on what you're trying to measure - if you want to measure the speed at which you colour(trash) the core, then you should only count the decrements; if you want to measure the speed at which you throw bombs(dat or spl are much more effective at killing a process than decrements), then you shouldn't. Another thing to consider is throw-weight(?), that is speed/length. For example, the bluefunk stone: spl #step, -step add -1, 1 mov >x, y djn.f -2, .33c, using 4 instructions -> 0.083c/instruction. Tornado, on the other hand, seems much more attractive: bombs spl #(step+1), -step ;hit spl start1 sub incr, @b1 stone mov (0*step)+jump,*(1*step)+jump b2 mov bombs, @stone b1 mov bombm, *stone jump jmz.b start1, #0 ;hit by spl incr dat >-3*step,>-3*step (the tornado engine is usually used with a clear) Here, the bomber bombs 3 cells (AND COLOURS 3 cells) per execution of its 5 lines loop; 3/5 = .6c. The warrior is 7 lines long, so it bombs the core at [.6c/7 instructions] 0,099c/instruction, better than bluefunk for killing opponents, but worse if it's used to combat scanners. OT: What is the smallest scanner you can come up with? For me it's currently: ;redcode ;name Tiny ;author Paul Khuong ;assert 1 ;strategy "HSA"-style scanner! ;strategy Thx to Metcalf for the original pseudo-HSA carpetting first equ 11 step equ 9 add.b bomb, #first start jmz.f @1, @-1 mov *-2, >-2 bomb spl -2, >step end start OF course, this excludes scanners that bomb with a single instruction, and linear/ridiculously small step scanners :) Paul __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - forms, calculators, tips, more http://taxes.yahoo.com/ From: Ilmari Karonen Message-ID: <1047331245.16770@itz.pp.sci.fi> Subject: Re: newbie question regarding 'c' - the speed Date: Mon, 10 Mar 2003 21:32:35 GMT In article , Barry Cook wrote: > >Its the other way round I think, 0.5c means that for every 2 >instructions executed 1 other location is bombed. This means that an >imp (mov.i 0, 1) moves at 1c, a stone of the form add mov jmp will >bomb at 0.33c and so on. One thing I'm not sure about is if >decrements/increments are counted in bombing speed. It depends. If you want to avoid confusion, you can explicitly say that your stone, for example, bombs at 0.4c and throws decrements at 0.8c. (Those numbers are for my old Sandstorm, which had the extra issue that half of the in/decrements usually ended up next to the bombs, reducing their effectiveness. So the effective total speed was more like 0.8c than 1.2c. Just shows how fuzzy these things get.) It's sort of like CPU clock frequencies. All else being equal, a 1GHz CPU is twice as fast as a 500MHz one. But all else is never equal. -- Ilmari Karonen - http://www.sci.fi/~iltzu/ "I did my PhD with someone who was working on fifth-force effects. Admittedly, he didn't find any (which made for a very dull thesis), but the idea always stuck." -- Simon Morden in rec.arts.sf.science From: Planar Subject: Re: Warrior archive Date: Tue, 11 Mar 2003 14:39:17 +0100 Message-ID: In article <9e6b1335.0303070521.7fa4ce59@posting.google.com>, iapdk@admin.drake.edu (Paul Kline) wrote: > Thanks for supporting the game. "Planar's Archive" has been a staple > for a long time, we'll miss you. Thanks for the kind words, Paul. To me, you've always been the god of Core War. I am happy to report that Sascha Zapf has offered to take over the warrior archive. I've made a tarball of all my corewar-related files, including all the warriors. It is available at < ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/everything.tar.bz2 >; now I hope that "Planar's archive" will live on as "Sascha's archive". If somebody wants to help Sascha, you should contact him. Please don't underestimate the amount of work involved... As for missing me, I'll still be lurking in the newsgroup... -- Planar From: Lukasz Adamowski Subject: Safety cleaning Date: 11 Mar 2003 21:46:49 -0500 Message-ID: ;redcode ;name Safe Clear ;author Lukasz Adamowski ;strategy 1c increment clear, doesn't kill itself ;assert 1 spl #0, }1 mov *2, }0 dat $0, }-1 ; No comments ; ... just because I don't have the time right now ;]]] From: "A. Pagaltzis" Subject: Re: Invite: Mini IRC tournament Date: 11 Mar 2003 21:53:00 -0500 Message-ID: <20030311030545.GA2696@klangraum> * John Metcalf [2003-03-08 14:07]: > Sunday 09th March, 9:00pm (GMT) on irc://irc.koth.org/ in #COREWARS Cool. :) I wish I could have been there. :( Was working all day.. -- Regards, Aristotle From: pagaltzis@gmx.de (Aristoteles Pagaltzis) Subject: Re: difference between pmarses Date: 12 Mar 2003 02:23:14 -0800 Message-ID: <872a85cc.0303120223.38e99d6b@posting.google.com> Paul-V Khuong wrote in message news:<20030305031437.43770.qmail@web41501.mail.yahoo.com>... > OK, so i guess a switch to deactivate(or vice-versa) > this feature would be interesting? Definitely, though in the interest of backward compatibility, it should be a pMARS directive - ;enable-conts or something. Otherwise there's no way short of manual inspection to ensure old warriors written without this in mind won't break silently. Which makes me wonder whether this feature is at all worth keeping. Enabling it will be such a hassle nearly nobody is likely to bother. Well, maybe that can be fixed. pMARS could default to using continuations but allow switching them off via commandline switch, and produce a warning when it encounters one in a warrior that has not requested them with the directive when they are enabled. That way, neither will it trip up newbies nor silently break old warriors. And now again I'm wondering if it's worth it. This proposition would probably be the best way of making that feature an official part of the syntax - but it's a lot of stuff to add. An option, a warning, a directive - okay, not quite overwhelming, but for such a simple feature it certainly involves quite a bit of bloat. Do we have any amount of code written /to rely/ on continuations? There areprobably very few warriors of that sort, if any. So seeing as there's no real need for it, and the effort it will take to adopt it, my (reluctant, as I like the feature) vote is to scrap this. -- Regards, Aristotle From: Sascha Zapf Subject: Hill's Date: Wed, 12 Mar 2003 10:37:17 +0100 Message-ID: Hi, is there another Way to get the results off all Combat's on a hill as always have an Warrior on this Hill? For a better understanding of the motions on the Hill, i would see what going on after every Combat. Sascha -- Parlez vous Redcode? From: Leonardo Humberto Liporati Subject: Re: Warrior archive Date: 12 Mar 2003 18:55:36 -0500 Message-ID: <20030308110859.22ec3f70.liporati@ig.com.br> Em Thu, 6 Mar 2003 11:32:52 -0500 (EST), Planar escreveu: [...cut...] > (mostly, old shell and awk scripts). Otherwise, I will simply > leave it on my Web page, slowly rotting into obsolescence... [...cut...] Hi Planar, even not evolving with time, your warrior archive register Corewar's history. And, in my view, history is not obsolete. Humanity learn with human's history, redcoders learn with Corewar's history. Thank for your time and work along the years. Bye, Leonardo. From: Paul-V Khuong Subject: Re: Warrior archive Date: 12 Mar 2003 19:01:50 -0500 Message-ID: <20030307225525.58025.qmail@web41506.mail.yahoo.com> --- Planar wrote: > Dear Core War community, > > I'm sorry to report that I really don't have any > time for Core > War anymore. [...] Thank you for everything you gave to our community. I'm afraid i can't be the one who will continue your archive, unfortunately. I hope you will come back one day, and in the meantime, have a great life! Paul __________________________________________________ Do you Yahoo!? Yahoo! Tax Center - forms, calculators, tips, more http://taxes.yahoo.com/ From: iapdk@admin.drake.edu (Paul Kline) Subject: Re: Hill's Date: 14 Mar 2003 07:13:10 -0800 Message-ID: <9e6b1335.0303140713.585f3770@posting.google.com> If you don't know the code for the challenging warrior it's hard to interpret the results. One thing to do is submit a dummy program with a one-line DAT statement that dies right away, that way you don't bias the results by favoring one kind of program over another. Submitting it once a day should give you a nice thermometer as to what is going on, and if you could post the daily results in a table on a web site that would be really interesting! I used this technique once a week when doing the Push-Off articles. Imagine my surprise when the dummy program every so often came back with 50 wins :-) Paul Kline From: "Csaba Biro" Subject: Re: difference between pmarses Date: Fri, 14 Mar 2003 07:27:26 -0500 Message-ID: > So seeing as there's no real need for it, and the effort it will > take to adopt it, my (reluctant, as I like the feature) vote is > to scrap this. I agree. Csaba From: Sascha Zapf Subject: Re: Hill's Date: Fri, 14 Mar 2003 20:26:23 +0100 Message-ID: Paul Kline wrote: > If you don't know the code for the challenging warrior it's hard to > interpret the results. One thing to do is submit a dummy program with > a one-line DAT statement that dies right away, that way you don't bias > the results by favoring one kind of program over another. Submitting > it once a day should give you a nice thermometer as to what is going > on, and if you could post the daily results in a table on a web site > that would be really interesting! > But if i really want to to get every combat, i must submit my Dummy's very often. And so i'm force the ages of the Warrior's on the Hill, isn't it? > I used this technique once a week when doing the Push-Off articles. > Imagine my surprise when the dummy program every so often came back > with 50 wins :-) > > Paul Kline Hmmh, that's one of the Mysterys of the Game i think. -- Parlez vous Redcode? From: "John Metcalf" Subject: IRC Tournament, 16th Mar 9pm (GMT) Date: 15 Mar 2003 17:57:22 -0500 Message-ID: <003001c2ea60$cfa43380$55bfe150@vaio> If you're in need a quick Redcoding fix, the 3rd IRC tornament will take place in #COREWARS on irc.koth.org at 9pm (GMT). This week's tournament will be arranged by Roy, the rules being announced at 9pm followed by just 30 minutes to create your entries (up to 2). I took part last week, and I found it an interesting experience. The time factor prevented my usual tweak / test / repeat method. However, tweak / test / repeat quickly become tedious, so for me the limited time format is refreshing. It seems this also places players on a more equal footing. I hope to see you there :-) From: Koth Subject: KOTH.ORG: Status - Standard 03/17/03 Date: 17 Mar 2003 13:36:33 -0500 Message-ID: <200303170500.h2H5006I028208@gevjon.ttsg.com> Weekly Status on 03/17/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Sun Mar 9 02:38:22 EST 2003 # %W/ %L/ %T Name Author Score Age 1 38/ 22/ 39 Quicksilver '88 Michal Janeczek 155 7 2 36/ 23/ 41 Freight Train David Moore 148 172 3 34/ 23/ 43 Test Alexander (Sasha) Wa 146 111 4 34/ 23/ 43 Guardian Ian Oversby 144 171 5 41/ 40/ 19 My 1st try Christian Schmidt 142 3 6 43/ 46/ 11 vm5 Michal Janeczek 141 6 7 31/ 24/ 45 Pixie 88 Lukasz Grabun 139 1 8 41/ 43/ 16 '88 test IV John Metcalf 139 65 9 35/ 33/ 31 vala John Metcalf 138 94 10 30/ 25/ 45 Shish-Ka-Bob Ben Ford 135 127 11 28/ 21/ 52 Test I Ian Oversby 135 228 12 42/ 50/ 7 Scan Test C 6 Steve Gunnell 134 10 13 37/ 41/ 22 PacMan David Moore 134 201 14 41/ 48/ 11 Foggy Swamp Beppe Bezzi 134 168 15 31/ 29/ 40 sIMPly.Red v0.95 Leonardo Humberto 133 129 16 40/ 48/ 13 Blur '88 Anton Marsden 132 209 17 34/ 37/ 28 Gymnosperm trickery Dave Hillis 132 58 18 26/ 21/ 53 EV Paper John K Wilkinson 131 185 19 38/ 45/ 18 Beholder's Eye V1.7 W. Mintardjo 130 447 20 38/ 45/ 17 Stasis David Moore 130 279 21 30/ 61/ 9 r3 test David Moore 99 0 From: Koth Subject: KOTH.ORG: Status - 94 No Pspace 03/17/03 Date: 17 Mar 2003 13:36:19 -0500 Message-ID: <200303170509.h2H590YQ028336@gevjon.ttsg.com> Weekly Status on 03/17/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sat Mar 15 21:35:23 EST 2003 # %W/ %L/ %T Name Author Score Age 1 45/ 46/ 10 Solo Roy 144 14 2 41/ 40/ 19 Toxic Spirit Philip Thorne 142 229 3 33/ 24/ 42 Reepicheep Grabun/Metcalf 142 775 4 41/ 41/ 18 run to the hills Simon Wainwright 140 9 5 41/ 43/ 17 Hazy Test 63 Steve Gunnell 138 319 6 39/ 40/ 21 Return of Vanquisher Lukasz Grabun 138 306 7 43/ 50/ 7 Claw Fizmo 137 512 8 32/ 29/ 39 Thunderstrike Lukasz Grabun 136 149 9 30/ 25/ 45 Son of Vain Oversby/Pihlaja 135 1544 10 24/ 15/ 61 PolyPap II Jakub/Roy 133 24 11 28/ 23/ 49 Revenge of the Papers Fizmo/Roy 133 582 12 32/ 32/ 36 My First Paper Michal Janeczek 133 143 13 25/ 19/ 56 Dawn Roy van Rijn 131 160 14 38/ 45/ 17 Harmony Snoot Lukasz Grabun 131 119 15 30/ 29/ 42 Pixie Lukasz Grabun 130 192 16 26/ 22/ 52 Firestorm John Metcalf 130 580 17 27/ 25/ 48 Fast Action III Christian Schmidt 130 18 18 35/ 42/ 23 Driftwood John Metcalf 129 228 19 21/ 14/ 65 Lord of the imp-rings Neogryzor 129 1 20 34/ 43/ 23 my new tiny warrior John Metcalf 124 3 21 13/ 31/ 57 Lucky Luke Csaba Biro 94 0 From: Koth Subject: KOTH.ORG: Status - MultiWarrior 94 03/17/03 Date: 17 Mar 2003 13:36:28 -0500 Message-ID: <200303170503.h2H530kF028241@gevjon.ttsg.com> Weekly Status on 03/17/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Fri Mar 14 08:41:05 EST 2003 # Name Author Score Age 1 trial John Metcalf 19 118 2 Surviver David Bendit 10 16 3 D-clearM Ken Espiritu 9 214 4 Djinn Test 9 Steve Gunnell 7 103 5 Triple Glaze Philip Thorne 6 8 6 fclear Brian Haskin 6 198 7 Atlas Lukasz Adamowski 5 1 8 my new tiny warrior John Metcalf 4 5 9 MultiSolo Roy van Rijn 4 4 10 Her Majesty P.Kline 3 233 11 Atlas Lukasz Adamowski 0 2 From: Koth Subject: KOTH.ORG: Status - ICWS Experimental 94 03/17/03 Date: 17 Mar 2003 13:36:23 -0500 Message-ID: <200303170506.h2H560TO028290@gevjon.ttsg.com> Weekly Status on 03/17/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Thu Mar 13 18:07:23 EST 2003 # %W/ %L/ %T Name Author Score Age 1 40/ 36/ 25 Black Moods Ian Oversby 144 161 2 44/ 44/ 13 Fire and Ice II David Moore 144 65 3 34/ 34/ 32 Trefoil F 13 Steve Gunnell 135 48 4 22/ 10/ 68 Denial David Moore 135 106 5 35/ 35/ 31 Controlled Aggression Ian Oversby 134 165 6 21/ 8/ 71 Evol Cap 4 X John Wilkinson 134 234 7 24/ 17/ 58 Katafutr Michal Janeczek 131 105 8 29/ 27/ 44 Olivia X Ben Ford 131 46 9 30/ 30/ 40 Damage Inflicted Robert Macrae 130 104 10 21/ 12/ 67 Kin John Metcalf 130 73 11 27/ 25/ 48 Venom v0.2b Christian Schmidt 129 187 12 24/ 20/ 55 Glenstorm John Metcalf 128 27 13 33/ 39/ 29 Ogre Christian Schmidt 127 113 14 35/ 45/ 20 Kenshin X 45 Steve Gunnell 125 8 15 27/ 29/ 43 KAT v5 Dave Hillis 125 97 16 14/ 6/ 80 Evolve X v4.0 John Wilkinson 122 182 17 31/ 41/ 28 Exsnail Philip Thorne 122 60 18 29/ 38/ 33 Mantrap Arcade Dave Hillis 121 26 19 13/ 6/ 81 Black Box v1.1 JKW 121 128 20 28/ 40/ 31 Blowtorch Test C 13 Steve Gunnell 116 1 21 29/ 51/ 19 Comb Scan Test 26 Steve Gunnell 107 0 From: M Joonas Pihlaja Subject: Re: Hill's Date: 17 Mar 2003 13:42:59 -0500 Message-ID: On Fri, 14 Mar 2003, Sascha Zapf wrote: > But if i really want to to get every combat, i must submit my > Dummy's very often. Not really as it's possible (but not easy) to figure out the scores of all on-hill warriors against a challenger from the score report that koth sends back to you, assuming you have at least one warrior on the hill. That way you don't have to send a single dummy to the hill as you can track the w/l/t results of all warriors from the score reports. If you don't have a warrior on the hill, you can get all of the score reports for -94nop from John Metcalf's home page. > And so i'm force the ages of the Warrior's on the Hill, isn't > it? Challenges that don't get onto the hill IMO shouldn't increase the age of the on-hill warriors. Joonas From: M Joonas Pihlaja Subject: Re: difference between pmarses Date: 17 Mar 2003 13:43:05 -0500 Message-ID: On Fri, 14 Mar 2003, Csaba Biro wrote: > > So seeing as there's no real need for it, and the effort it will > > take to adopt it, my (reluctant, as I like the feature) vote is > > to scrap this. > > I agree. I don't, because continuation lines are the only way to do some nasty tricks with the preprocessor that would otherwise crash pmars for using a line that's too long. For instance, the macro that computes inverses mod 8000 in a recent Core Warrior doesn't work on koth.org without continuation lines. (But then, the problem there is that pmars can't handle complicated macros very well as it uses fixed length string buffers in the code.) Joonas From: pagaltzis@gmx.de (Aristoteles Pagaltzis) Subject: Re: difference between pmarses Date: 17 Mar 2003 14:39:47 -0800 Message-ID: <872a85cc.0303171439.2a7a9a7d@posting.google.com> M Joonas Pihlaja wrote: > continuation lines are the only way to do some > nasty tricks with the preprocessor that would > otherwise crash pmars for using a line that's > too long. So why spend all the work to make a *workaround* safe for use with old warriors, when you could invest that effort into fixing those internal limits so you don't need the workaround in the first place? -- Regards, Aristotle From: "Roy van Rijn" Subject: Re: difference between pmarses Date: Mon, 17 Mar 2003 20:29:40 +0100 Message-ID: <1047929113.368923@halkan.kabelfoon.nl> > I don't, because continuation lines are the only way to do some > nasty tricks with the preprocessor that would otherwise crash > pmars for using a line that's too long. For instance, the macro > that computes inverses mod 8000 in a recent Core Warrior doesn't > work on koth.org without continuation lines. I just use this: invert equ iA+iB+iC iA equ (a=x*x%M)+(a=a*x%M)+(a=a*a%M)+(a=a*x%M)+(b=a*a%M)+(b=b*b%M) iB equ (b=b*b%M)+(c=b*b%M)+(c=c*b%M)+(d=c*c%M)+(d=d*d%M)+(d=d*d%M) iC equ (d=d*c%M)+(d=d*d%M)+(d=d*c%M)+(y=a*d%M) No need for those break lines :) (Well, not in this case anyway) ::Roy:: From: neogryzormail@mixmail.com (Neogryzor) Subject: My new corewar page Date: 18 Mar 2003 07:08:26 -0800 Message-ID: <242debe4.0303180708.2eecd766@posting.google.com> Hi, I think most of you already know me, anyway I'm Germ�n Labarga, (Neogryzor), yet another newbie. I have created a corewar page, (still incomplete, but working). I would like to create, (if I have enough free time), an on-line beginners hill; all hints and useful stuff are of course very welcome. :-) URL: www.estadium.ya.com/neogryzor/corewars.htm <-(don't forget the htm extension or access via the link in the homepage). e-mail: neogryzormail@mixmail.com Neo. Message-ID: From: anton@paradise.net.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 18 Mar 2003 10:36:55 GMT Archive-name: games/corewar-faq Last-Modified: September 4, 1999 Version: 4.2 URL: http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html Copyright: (c) 1999 Anton Marsden Maintainer: Anton Marsden Posting-Frequency: once every 2 weeks Core War Frequently Asked Questions (rec.games.corewar FAQ) These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The latest hypertext version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html and the latest plain text version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.txt. This document is currently being maintained by Anton Marsden (anton@paradise.net.nz). Last modified: Sat Sep 4 00:22:22 NZST 1999 ------------------------------------------------------------------------ To Do * Add the new No-PSpace '94 hill location * Add online location of Dewdney's articles * Make question 17 easier to understand. Add a state diagram? * Add info about infinite hills, related games (C-Robots, Tierra?, ...) * New question: How do I know if my warrior is any good? Refer to beginners' benchmarks, etc. * Add a Who's Who list? * Would very much like someone to compile a collection of the "revolutionary" warriors so that beginners can see how the game has developed over the years. Mail me if interested. ------------------------------------------------------------------------ What's New * Changed primary location of FAQ (again!) * Changed Philip Kendall's home page address. * Updated list server information * Changed primary location of FAQ * Vector-launching code was fixed thanks to Ting Hsu. * Changed the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr ------------------------------------------------------------------------ Table of Contents 1. What is Core War 2. Is it "Core War" or "Core Wars"? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. Where can I find warrior code? 11. I do not have FTP. How do I get all this great stuff? 12. I do not have access to Usenet. How do I post and receive news? 13. Are there any Core War related WWW sites? 14. What is KotH? How do I enter? 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 16. How does SLT (Skip if Less Than) work? 17. What is the difference between in-register and in-memory evaluation? 18. What is P-space? 19. What does "Missing ;assert .." in my message from KotH mean? 20. How should I format my code? 21. Are there any other Core War related resources I should know about? 22. What does (expression or term of your choice) mean? 23. Other questions? ------------------------------------------------------------------------ 1. What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardised by the ICWS, and is therefore transportable between all standard Core War systems. The system in which the programs run is quite simple. The core (the memory of the simulated computer) is a continuous array of instructions, empty except for the competing programs. The core wraps around, so that after the last instruction comes the first one again. There are no absolute addresses in Core War. That is, the address 0 doesn't mean the first instruction in the memory, but the instruction that contains the address 0. The next instruction is 1, and the previous one obviously -1. However, all numbers are treated as positive, and are in the range 0 to CORESIZE-1 where CORESIZE is the amount of memory locations in the core - this means that -1 would be treated as CORESIZE-1 in any arithmetic operations, eg. 3218 + 7856 = (3218 + 7856) mod CORESIZE. Many people get confused by this, and it is particularly important when using the SLT instruction. Note that the source code of a program can still contain negative numbers, but if you start using instructions like DIV #-2, #5 it is important to know what effect they will have when executed. The basic unit of memory in Core War is one instruction. Each Redcode instruction contains three parts: * the opcode * the source address (a.k.a. the A-field) * the destination address (a.k.a. the B-field) The execution of the programs is equally simple. The MARS executes one instruction at a time, and then proceeds to the next one in the memory, unless the instruction explicitly tells it to jump to another address. If there is more than one program running, (as is usual) the programs execute alternately, one instruction at a time. The execution of each instruction takes the same time, one cycle, whether it is MOV, DIV or even DAT (which kills the process). Each program may have several processes running. These processes are stored in a task queue. When it is the program's turn to execute an instruction it dequeues a process and executes the corresponding instruction. Processes that are not killed during the execution of the instruction are put back into the task queue. Processes created by a SPL instruction are added to the task queue after the creating process is put back into the task queue. [ToC] ------------------------------------------------------------------------ 2. Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] ------------------------------------------------------------------------ 3. Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Library of Author Title Published ISBN Congress Call Number The Armchair Dewdney, Universe: An New York: W. QA76.6 .D517 A. K. Exploration of H. Freeman �0-7167-1939-8 1988 Computer Worlds 1988 The Magic 0-7167-2125-2 Dewdney, Machine: A New York: W.(Hardcover), QA76.6 A. K. Handbook of H. Freeman �0-7167-2144-9 .D5173 1990 Computer Sorcery 1990 (Paperback) A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. For those who are interested, Dewdney has a home page at http://www.csd.uwo.ca/faculty/akd/. [ToC] ------------------------------------------------------------------------ 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as ftp://www.koth.org/corewar/documents/standards/redcode-icws-88.Z. This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorials, ftp://www.koth.org/corewar/documents/tutorial.1.Z and ftp://www.koth.org/corewar/documents/tutorial.2.Z. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This and various other tutorials can be found at http://www.koth.org/papers.html. Even though ICWS'88 is still the "official" standard, you will find that most people are playing by ICWS'94 draft rules and extensions. [ToC] ------------------------------------------------------------------------ 5. What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a new addressing modes and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft at ftp://www.koth.org/corewar/documents/icws94.0202.Z for more information. There is a HTML version of this document available at http://www.koth.org/info/icws94.html. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp://www.koth.org/corewar. Note that Redcoder only supports a subset of ICWS'94. [ToC] ------------------------------------------------------------------------ 6. What is the ICWS? About one year after Core War first appeared in Scientific American, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). The ICWS is no longer active. [ToC] ------------------------------------------------------------------------ 7. What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in October 1995, back issues of Core Warrior (and the other newsletters) are available at http://para.inria.fr/~doligez/corewar/. There is also a Core Warrior index page at http://www.kendalls.demon.co.uk/pak21/corewar/warrior.html which has a summary of the contents of each issue of Core Warrior. Many of the earlier issues contain useful information for beginners. [ToC] ------------------------------------------------------------------------ 8. Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from ftp://ftp.csua.berkeley.edu/pub/corewar. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. This site is mirrored at: * http://www.koth.org/corewar/ * ftp://www.koth.org/corewar/ * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror The plain text version of this FAQ is automatically archived by news.answers (but this version is probably out-of-date). [ToC] ------------------------------------------------------------------------ 9. Where can I find a Core War system for . . . ? Core War systems are available via anonymous FTP from www.koth.org in the corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check ftp://www.koth.org/corewar/incoming for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than www.koth.org. Generally, the older the program - the less likely it will be ICWS compatible. If you are looking for an ICWS'94 simulator, get pMARS, which is available for many platforms and can be downloaded from: * ftp://ftp.csua.berkeley.edu/pub/corewar (original site) * ftp://www.koth.org/corewar (koth.org mirror) * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror (Planar mirror) * http://www.nc5.infi.net/~wtnewton/corewar/ (Terry Newton) * ftp://members.aol.com/ofechner/corewar (Fechter) Notes: * If you have trouble running pMARS with a graphical display under Win95 then check out http://www.koth.org/pmars.html which should have a pointer to the latest compilation of pMARS for this environment. * RPMs for the Alpha, PowerPC, Sparc and i386 can be found at ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars-rpm/ Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at www.koth.org: MADgic41.lzh corewar for the Amiga, v4.1 MAD4041.lzh older version? MAD50B.lha corewar for the Amiga, beta version 5.0 Redcoder-21.hqx corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx corewar for the Mac core-wars-simulator.hqx same as core-11.hqx? corewar_unix_x11.tar.Z corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z older version kothpc.zip port of older version of KotH to the PC deluxe20c.tar.Z corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z corewar for UNIX, likely not ICWS'88 compatible icons.zip corewar icons for MS-Windows macrored.zip a redcode macro-preprocessor (PC) c88v49.zip PC corewar, textmode display mars88.zip PC corewar, graphics mode display corwp302.zip PC corewar, textmode display, slowish mercury2.zip PC corewar written in assembly, fast! mtourn11.zip tournament scheduler for mercury (req. 4DOS) pmars08s.zip portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z same as above pmars08.zip PC executables with graphics display, req 386+ macpmars02.sit.hqx pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx C source (MPW, ThinkC) for Mac frontend pvms08.zip pMARS v0.8 for VMS build files/help (req. pmars08s.zip) ApMARS03.lha pMARS executable for Amiga (port of version 0.3.1) wincor11.zip MS-Windows system, shareware ($15) [ToC] ------------------------------------------------------------------------ 10. Where can I find warrior code? To learn the game, it is a good idea to study previously posted warrior code. The FTP archives have code in the ftp://www.koth.org/corewar/redcode directory. A clearly organized on-line warrior collection is available at the Core War web sites (see below). [ToC] ------------------------------------------------------------------------ 11. I do not have FTP. How do I get all this great stuff? There is an FTP email server at bitftp@pucc.princeton.edu. This address may no longer exist. I haven't tested it yet. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. Note that many FTP email gateways are shutting down due to abuse. To get a current list of FTP email servers, look at the Accessing the Internet by E-mail FAQ posted to news.answers. If you don't have access to Usenet, you can retrieve this FAQ one of the following ways: * Send mail to mail-server@rtfm.mit.edu with the body containing "send usenet/news.answers/internet-services/access-via-email". * Send mail to mailbase@mailbase.ac.uk with the body containing "send lis-iis e-access-inet.txt". [ToC] ------------------------------------------------------------------------ 12. I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Koth.Org list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@koth.org. You can send mail to corewar-l@koth.org to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (ttsg@ttsg.com). Servers that allow you to post (but not receive) articles are available. Refer to the Accessing the Internet by E-Mail FAQ for more information. [ToC] ------------------------------------------------------------------------ 13. Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is http://www.koth.org; pizza's is http://www.ecst.csuchico.edu/~pizza/koth . Damien Doligez (a.k.a. Planar) has a web page that features convenient access to regular newsletters (Push Off, The '94 Warrior, Core Warrior) and a well organized library of warriors: http://para.inria.fr/~doligez/corewar/. Convenient for U.S. users, this site is also mirrored at koth.org. [ToC] ------------------------------------------------------------------------ 14. What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: koth@koth.org is maintained by Scott J. Ellentuch (tuc@ttsg.com) and pizza@ecst.csuchico.edu by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry Rules for King of the Hill Corewar * Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. * Put a line starting with ";redcode" (or ";redcode-94", etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. Using ";name" is mandatory on the Pizza hills. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-94, ;redcode-b, ;redcode-lp, ;redcode-x, ;redcode, ;redcode-94x or ;redcode-94m. The former four run at "pizza", the latter three at "stormking". More information on these hills is listed below. * Mail this file to koth@koth.org or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). * Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. * In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. Sample Entry ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Duration Max. Hill Name Hill Core Max. Before Entry Min. Rounds Instr. Size Size Processes Distance Fought Set Tie Length Pizza's ICWS '94 Draft Hill Extended (Accessed with 25 8000 8000 80000 100 100 200 ICWS '94 ";redcode-94") Draft Pizza's Beginner's Extended Hill (Accessed 25 8000 8000 80000 100 100 200 ICWS '94 with ";redcode-b") Draft Pizza's Experimental Extended (Small) Hill 25 800 800 8000 20 20 200 ICWS '94 (Accessed with Draft ";redcode-x") Pizza's Limited Process (LP) Hill Extended (Accessed with 25 8000 8 80000 200 200 200 ICWS '94 ";redcode-lp") Draft Stormking's ICWS '88 Standard Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '88 ";redcode") Stormking's ICWS '94 No Pspace Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '94 ";redcode-94nop") Stormking's ICWS '94 Experimental Extended (Big) Hill 20 55440 55440 500000 200 200 250 ICWS '94 (Accessed with Draft ";redcode-94x") Stormking's ICWS '94 Multi-Warrior Extended Hill (Accessed 10 8000 8000 80000 100 100 200 ICWS '94 with Draft ";redcode-94m") Note: Warriors on the beginner's hill are retired at age 100. If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At "stormking", a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. At "pizza", you can use ";redcode[-??] test" to do a test challenge of the Hill without affecting the status of the Hill. These challenges can be used to see how well your warrior does against the current Hill warriors. All hills run portable MARS (pMARS) version 0.8, a platform-independent Core War system available at www.koth.org. The '94 and '94x hills allow five experimental opcodes and three experimental addressing modes currently not covered in the ICWS'94 draft document: * LDP - Load P-Space * STP - Store P-Space * SEQ - Skip if EQual (synonym for CMP) * SNE - Skip if Not Equal * NOP - (No OPeration) * * - indirect using A-field as pointer * { - predecrement indirect using A-field * } - postincrement indirect using A-field [ToC] ------------------------------------------------------------------------ 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an illegal instruction (in source code) under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you have a DAT 0, 0 instruction in your source code - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] ------------------------------------------------------------------------ 16. How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: -1 becomes M-1 where M is the memory size (core size). Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] ------------------------------------------------------------------------ 17. What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0, impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10, scan scan jmz example, 10 c Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step, scan scan cmp 10, 30 jmp attack jmp example step dat #20, #20 Colour Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear Code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down scanners. Typically, DATs with non-zero B-fields. Decrement Resistant Property of warriors making them functional (or at least partially functional) when overrun by a DJN-stream. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example, <4000 Dwarf The prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example mov 0, 1 or example mov 0, 2 mov 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... spl 0, mov.i #0,IMPSIZE Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at www.koth.org. Paper A Paper-like program is one which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. P-Warrior A warrior which uses the results of previous round(s) in order to determine which strategy it will use. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Q^2 Scan A modern version of the Quick Scan where anything found is attacked almost immediately. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example spl 0 loop add #10, example mov example, @example jmp loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov >-1, }-1 ;copy self to new location mov bomb, >2000 ;linear bombing mov bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a SPL-JMP bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also SPL/DAT Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: sz EQU 2667 spl 1 spl 1 jmp @vt, }0 vt dat #0, imp+0*sz ; start of vector table dat #0, imp+1*sz dat #0, imp+2*sz dat #0, imp+3*sz ; end of vector table imp mov.i #0, sz [ToC] ------------------------------------------------------------------------ 23. Other questions? Just ask in the rec.games.corewar newsgroup or contact me. If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] ------------------------------------------------------------------------ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: * Mark Durham (wrote the original version of the FAQ) * Paul Kline * Randy Graham * Stefan Strack (maintained a recent version of the FAQ) ------------------------------------------------------------------------ Copyright � 1999 Anton Marsden. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. ------------------------------------------------------------------------ Message-ID: <3E77A64A.9D18DD08@someoneelse.invalid> From: HiEv Subject: Re: Worm Klez.E immunity Date: Tue, 18 Mar 2003 23:04:17 GMT ttsg wrote: [snip] > Klez.E is the most common world-wide spreading worm.It's very dangerous by corrupting your files.
> Because of its very smart stealth and anti-anti-virus technic,most common AV software can't detect or clean it.
> We developed this free immunity tool to defeat the malicious virus.
> You only need to run this tool once,and then Klez will never come into your PC.
> NOTE: Because this tool acts as a fake Klez to fool the real worm,some AV monitor maybe cry when you run it.
> If so,Ignore the warning,and select 'continue'.
> If you have any question,please mail to me.
[snip] Of course it probably goes without saying, but this is actually a virus. Don't run it. No reputable group would post such a thing to a newsgroup unsolicited, especially to an unrelated non-binaries group. HAND! -- The difference between intelligence and stupidity is that intelligence has its limits. From: fizmo_master@yahoo.com (Fizmo) Subject: Fizmo's Ultimate Corewar Page ** March 19th, 2003** Date: 19 Mar 2003 06:47:01 -0800 Message-ID: <9f53b5fb.0303190647.76d269ba@posting.google.com> ------------------------------------------------------------------- ********************************* * Fizmo's Ultimate Corewar Page * ********************************* http://de.geocities.com/fizmo_master/ Update Informations: -------------------- In the past few weeks I have added a lot of new corewar related websites. Mostly homepages from still active players containing interesting and unique informations. The IRC tournament is included with links to the tournament pages. I will also start to copy the most important files (newsletters, tournament info's, etc.) to my homepage to be shure that nothing is getting lost. I am still looking for informations about the Oversby Autumn 1998 Corewar Tournament because the tournament homepage isn't available anymore. I've started now working on the corewar encyclopedia. Corewars lives from open sources, so I decided to publish at first my rather incomplete paper article: http://de.geocities.com/fizmo_master/lexicon/lexicon.htm I hope you all will assist me with hints, comments, suggestions and (language) corrections to finish and polish this article. I am awaiting also comments from beginners if I have explained all the facts clear enough to be understandable for everyone. Well, I hope this is just the beginning ;-) Chris From: Paul-V Khuong Subject: Re: Fizmo's Ultimate Corewar Page ** March 19th, 2003** Date: 20 Mar 2003 07:52:14 -0500 Message-ID: <20030320003759.1826.qmail@web41508.mail.yahoo.com> --- Fizmo wrote: [...] > I've started now working on the corewar > encyclopedia. Corewars lives > from open sources, so I decided to publish at first > my rather incomplete > paper article: > I'm pretty sure you want a Wiki :). Geocities don't support perl+SQL, but you can still upload the pages everytime you edit them (yes, there is an option to do that). So, while people won't be able to edit, add comments, etc, there will still be links everywhere. Paul Khuong __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com From: Lukasz Adamowski Subject: Mistake in the Ranking Page Date: 20 Mar 2003 07:58:30 -0500 Message-ID: Hey, there is something wrong with the results: I see Michal Janeczek took part in whole 7 rounds, but in next to his name I see sum of only 4 rounds. I don't know if another's scores are OK, but it's not my job, I guess. The URL is: http://de.geocities.com/fizmo_master/st.htm Could you check it, Fizmo? Lukasz From: fizmo_master@yahoo.com (Fizmo) Subject: Redcoders Frenzy 3: The Random-Rage Round ***Reminder*** Date: 20 Mar 2003 13:43:10 -0800 Message-ID: <9f53b5fb.0303201343.3ec446df@posting.google.com> ------------------------------------------------------------------------ ***Don't forget the deadline for the Random-Rage Round*** ********************* * Redcoders' Frency * ********************* The ongoing corewar tournament /^^^^^^^^^^^^^^^^^^^^^^^\ | The Random-Rage Round | \_______________________/ This is the third round of the ongoing corewar tournament. Detailed information are available on Fizmo's Ultimate Corewar Page: http://de.geocities.com/fizmo_master/cwt.htm Deadline -------- Deadline is 22th March, 2003 -------------------------------------------------------------- Please notify: You have to send for this round your entries to -------------------------------------------------------------- Sascha Zapf: nc-zapfsa@netcologne.de -------------------------------------------------------------- Good luck, may be the core with you! Chris From: dhillismail@netscape.net (Dave Hillis) Subject: Re: difference between pmarses Date: 20 Mar 2003 14:12:04 -0800 Message-ID: <5d6847b2.0303201412.7cdde55a@posting.google.com> snip > How about a '\' at the end of the line is ignored if it is within a > comment? > If you want to continue the comment put a ';' on the next line :p Hmm... seems like that would cover everything. Good idea. (I once lost an unforgivable amount of time to this "feature": trying to understand why 2 of the warriors in the Wilkies benchmark worked fine under Windows but got lobotomized under UNIX.) Dave Hillis From: Sascha Zapf Subject: Re: Mistake in the Ranking Page Date: Thu, 20 Mar 2003 16:14:03 +0100 Message-ID: Lukasz Adamowski wrote: > > Hey, there is something wrong with the results: I see Michal > Janeczek took part in whole 7 rounds, but in next to his name I see sum of > only 4 rounds. I don't know if another's scores are OK, but it's not my > job, I guess. The URL is: > http://de.geocities.com/fizmo_master/st.htm > Could you check it, Fizmo? > > Lukasz For the Ranking, only the four highest Result of the last six Rounds are counted. Sascha -- Parlez vous Redcode? From: Paul-V Khuong Subject: CorewarWiki Date: 20 Mar 2003 20:37:28 -0500 Message-ID: <20030321012505.21273.qmail@web41506.mail.yahoo.com> I'm hosting a CoreWar Wiki at http://www15.brinkster.com/pkhuong/wiki/wiki.asp Please be respectful etc.... That's not really needed, since the community is very respectful and mature but Just In Case (TM). I'm also looking for a scheme to make it possible to have a few levels of admins, so if anyone has an idea to mark certain sections of entries as uneditable, please tell me. When you add an entry, please sign, and add an entry under your Wiki'ed name! PaulKhuong PS, I'll try to find some policies for everything, but it's all pretty much common sense. In the meantime, FREE FOR ALL! __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com From: sqweek Subject: Re: difference between pmarses Date: Thu, 20 Mar 2003 22:08:39 +0800 Message-ID: M Joonas Pihlaja wrote: > On Fri, 14 Mar 2003, Csaba Biro wrote: > > > > So seeing as there's no real need for it, and the effort it will > > > take to adopt it, my (reluctant, as I like the feature) vote is > > > to scrap this. > > > > I agree. > > I don't, because continuation lines are the only way to do some > nasty tricks with the preprocessor that would otherwise crash > pmars for using a line that's too long. For instance, the macro > that computes inverses mod 8000 in a recent Core Warrior doesn't > work on koth.org without continuation lines. > > (But then, the problem there is that pmars can't handle > complicated macros very well as it uses fixed length string > buffers in the code.) How about a '\' at the end of the line is ignored if it is within a comment? If you want to continue the comment put a ';' on the next line :p From: "John Metcalf" Subject: IRC tournament Date: Sun, 23 Mar 2003 17:05:13 -0000 Message-ID: <3e7de9e0_1@mk-nntp-2.news.uk.tiscali.com> Greetings... To take part in this evening's IRC tournmant, make your way to #COREWARS on irc.koth.org for 8:00pm (GMT). This evening's event is being organised by Mizcu. See you there :-) From: Koth Subject: KOTH.ORG: Status - 94 No Pspace 03/24/03 Date: 24 Mar 2003 13:44:52 -0500 Message-ID: <200303240509.h2O590Eh025972@gevjon.ttsg.com> Weekly Status on 03/24/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sat Mar 22 07:27:42 EST 2003 # %W/ %L/ %T Name Author Score Age 1 47/ 45/ 8 Recon 2 David Moore 149 1 2 35/ 26/ 38 Reepicheep Grabun/Metcalf 144 778 3 41/ 41/ 19 Toxic Spirit Philip Thorne 140 232 4 43/ 47/ 10 Solo Roy van Rijn 139 2 5 40/ 40/ 20 Return of Vanquisher Lukasz Grabun 139 309 6 41/ 43/ 16 Hazy Test 63 Steve Gunnell 139 322 7 34/ 30/ 36 Thunderstrike Lukasz Grabun 138 152 8 32/ 26/ 42 Son of Vain Oversby/Pihlaja 137 1547 9 40/ 43/ 18 run to the hills Simon Wainwright 136 12 10 42/ 51/ 7 Claw Fizmo 133 515 11 25/ 18/ 57 PolyPap II Jakub/Roy 133 27 12 31/ 30/ 39 Pixie Lukasz Grabun 133 195 13 29/ 25/ 46 Revenge of the Papers Fizmo/Roy 133 585 14 29/ 26/ 44 Fast Action III Christian Schmidt 132 21 15 27/ 21/ 52 Dawn Roy van Rijn 132 163 16 33/ 35/ 32 My First Paper Michal Janeczek 132 146 17 36/ 42/ 22 Driftwood John Metcalf 129 231 18 27/ 25/ 49 Firestorm John Metcalf 129 583 19 37/ 46/ 17 Harmony Snoot Lukasz Grabun 128 122 20 22/ 17/ 62 Lord of the imp-rings Neogryzor 127 4 21 35/ 46/ 19 Origin of Storms John Metcalf 124 0 From: Koth Subject: KOTH.ORG: Status - ICWS Experimental 94 03/24/03 Date: 24 Mar 2003 13:44:59 -0500 Message-ID: <200303240506.h2O560RF025936@gevjon.ttsg.com> Weekly Status on 03/24/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Mar 23 21:51:54 EST 2003 # %W/ %L/ %T Name Author Score Age 1 45/ 43/ 13 Fire and Ice II David Moore 147 77 2 39/ 32/ 29 The X Machine Zul Nadzri 147 2 3 37/ 38/ 24 Black Moods Ian Oversby 136 173 4 36/ 38/ 26 Giant Hazy Test 13 Steve Gunnell 133 4 5 21/ 9/ 70 Denial David Moore 133 118 6 34/ 36/ 30 Controlled Aggression Ian Oversby 131 177 7 33/ 35/ 32 Trefoil F 13 Steve Gunnell 131 60 8 24/ 17/ 59 Katafutr Michal Janeczek 130 117 9 20/ 10/ 71 Evol Cap 4 X John Wilkinson 129 246 10 28/ 27/ 45 Olivia X Ben Ford 128 58 11 27/ 27/ 46 KAT v5 Dave Hillis 128 109 12 21/ 16/ 64 Kin John Metcalf 126 85 13 35/ 46/ 19 Kenshin X 45 Steve Gunnell 125 20 14 26/ 27/ 48 Venom v0.2b Christian Schmidt 125 199 15 32/ 39/ 29 Ogre Christian Schmidt 124 125 16 27/ 30/ 42 Damage Inflicted Robert Macrae 124 116 17 23/ 23/ 53 Glenstorm John Metcalf 124 39 18 14/ 6/ 80 Evolve X v4.0 John Wilkinson 122 194 19 31/ 41/ 28 Origin of Storms John Metcalf 120 1 20 13/ 6/ 81 Black Box v1.1 JKW 120 140 21 28/ 45/ 27 test Dave Hillis 112 0 From: Koth Subject: KOTH.ORG: Status - MultiWarrior 94 03/24/03 Date: 24 Mar 2003 13:45:04 -0500 Message-ID: <200303240503.h2O530YV025887@gevjon.ttsg.com> Weekly Status on 03/24/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sat Mar 22 07:28:54 EST 2003 # Name Author Score Age 1 trial John Metcalf 15 120 2 Her Majesty P.Kline 8 235 3 D-clearM Ken Espiritu 6 216 4 fclear Brian Haskin 5 200 5 Triple Glaze Philip Thorne 5 10 6 my new tiny warrior John Metcalf 4 7 7 Djinn Test 9 Steve Gunnell 4 105 8 Surviver David Bendit 3 18 9 Origin of Storms John Metcalf 3 1 10 PolyPap III Jakub/Roy 2 2 11 Atlas Lukasz Adamowski 0 3 From: Koth Subject: KOTH.ORG: Status - Standard 03/24/03 Date: 24 Mar 2003 13:45:08 -0500 Message-ID: <200303240500.h2O500AR025832@gevjon.ttsg.com> Weekly Status on 03/24/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Sun Mar 9 02:38:22 EST 2003 # %W/ %L/ %T Name Author Score Age 1 38/ 22/ 39 Quicksilver '88 Michal Janeczek 155 7 2 36/ 23/ 41 Freight Train David Moore 148 172 3 34/ 23/ 43 Test Alexander (Sasha) Wa 146 111 4 34/ 23/ 43 Guardian Ian Oversby 144 171 5 41/ 40/ 19 My 1st try Christian Schmidt 142 3 6 43/ 46/ 11 vm5 Michal Janeczek 141 6 7 31/ 24/ 45 Pixie 88 Lukasz Grabun 139 1 8 41/ 43/ 16 '88 test IV John Metcalf 139 65 9 35/ 33/ 31 vala John Metcalf 138 94 10 30/ 25/ 45 Shish-Ka-Bob Ben Ford 135 127 11 28/ 21/ 52 Test I Ian Oversby 135 228 12 42/ 50/ 7 Scan Test C 6 Steve Gunnell 134 10 13 37/ 41/ 22 PacMan David Moore 134 201 14 41/ 48/ 11 Foggy Swamp Beppe Bezzi 134 168 15 31/ 29/ 40 sIMPly.Red v0.95 Leonardo Humberto 133 129 16 40/ 48/ 13 Blur '88 Anton Marsden 132 209 17 34/ 37/ 28 Gymnosperm trickery Dave Hillis 132 58 18 26/ 21/ 53 EV Paper John K Wilkinson 131 185 19 38/ 45/ 18 Beholder's Eye V1.7 W. Mintardjo 130 447 20 38/ 45/ 17 Stasis David Moore 130 279 21 30/ 61/ 9 r3 test David Moore 99 0 From: Lukasz Adamowski Subject: Re: Mistake in the Ranking Page Date: 24 Mar 2003 18:10:16 -0500 Message-ID: On Thu, 20 Mar 2003, Sascha Zapf wrote: > For the Ranking, only the four highest Result of the last six Rounds are > counted. Why? > Parlez vous Redcode? Nop. ;] Lukasz Adamowski From: Paul-V Khuong Subject: New Wiki - help the migration please :) Date: 25 Mar 2003 10:36:40 -0500 Message-ID: <20030325023422.48144.qmail@web41509.mail.yahoo.com> Hi fellow rgc'ers, I finally have a domain and a host, so the corewar wiki is located at http://www.pvk.ca (click on wiki - left-hand side menu). I'm trying to consider what policies i should have at the moment for the wiki, articles, etc. I'm also wondering what i should do about the wiki dump - do i leave it to be downloaded by everyone, only by members or not at all? Currently, you basically must have an account to add or edit content. Please let me think what you think would be best. Oh, please note that the domain currently also hosts my blog (to be useful once i leave home for the summer, i guess :), and will host resources for my kingdom(clan) in a game. Of course, every part is well isolated from each other, etc. Waiting for input, PaulKhuong __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com From: "John Metcalf" Subject: Re: Mistake in the Ranking Page Date: Tue, 25 Mar 2003 12:56:11 -0000 Message-ID: <3e805878_2@mk-nntp-2.news.uk.tiscali.com> Hi Lukasz, 1) If someone organises a round, they can't compete, so it seems a fair way to make sure they don't lose out on points. 2) If someone doesn't have time to compete in a round, they don't lose out. 3) If someone has a particularly bad round, it shouldn't harm a good total score they have built up. 4) As this is an ongoing tournament, a new competitor only has to take part for 4 rounds to built up a competitive score. Hope that helps, John "Lukasz Adamowski" wrote in message news:Pine.LNX.4.44.0303221713350.18583-100000@inferno.mikrus.pw.edu.pl... > On Thu, 20 Mar 2003, Sascha Zapf wrote: > > > For the Ranking, only the four highest Result of the last six Rounds are > > counted. > > Why? From: fizmo_master@yahoo.com (Fizmo) Subject: Redcoders Frenzy: The Random-Rage Round ***Results*** Date: 26 Mar 2003 00:12:08 -0800 Message-ID: <9f53b5fb.0303260012.5dc9d7a5@posting.google.com> .................................................................... ********************* * Redcoders' Frency * ********************* The ongoing corewar tournament /^^^^^^^^^^^^^^^^^^^^^^^\ | The Random-Rage Round | \_______________________/ This was the 8th round (I think I should go for this to prevent some confusions) of the ongoing corewar tournament. Detailed information are available on Fizmo's Ultimate Corewar Page: http://de.geocities.com/fizmo_master/cwt.htm *********** * Results * *********** A total of 14 authors and 22 warriors take part in the Random-Rage Round. Although each author can enter two warriors as usual. Of these, 2 were evolved and the remaining 20 hand-coded. The hand-written warriors were represented by 3 oneshots,7 pSwitcher, 3 Scanner, 3 Coreclear, 1 D-clear and 3 Imps. (_v_) _|_ | | |-----+-----| ___________ .-=========-. | {{1}} | '._==_==_=_.' \'-=======-'/ | \=/ | .-\: /-. _| .=. |_ '---------' | (|:.{3} |) | ((| {{2}} |)) \ / '-|:. |-' \| /|\ |/ '. .' \::. / \__ '`' __/ | | '::. .' _`) (`_ .' '. ) ( _/_______\_ _|___|_ _.' '._ /___________\ [_______] [_______] 2nd place Winner 3rd place ******************* ********************* **************** * Michal Janeczek * * Christian Schmidt * * Roy van Rijn * ******************* ********************* **************** And the winner with a 5pts lead to the second is Christian Schmidt with its p-warrior Randomized Rage 2. The second and third place goes to Michal Janeczek and Roy van Rijn. .___. (| N |) The special price for the best newcomer goes to Jakub Kozisek ( E ) for his 9st place. _)W(_ [_____] Warrior Author Win/ Loss/ Tie Score % =================================================================== Randomized Rage 2 Christian Schmidt 5895/ 1754/ 751 18436 100.0 Cereal Killer Michal Janeczek 5686/ 2200/ 514 17572 95.3 RandomRevenge Roy van Rijn 5111/ 2324/ 965 16298 88.4 Random Scandom Ben Ford 5112/ 2483/ 805 16141 87.6 Burning Vengeance Michal Janeczek 4898/ 3068/ 434 15128 82.1 Clockwork John Metcalf 4815/ 2927/ 658 15103 81.9 Quincy Philip Thorne 4734/ 3006/ 660 14862 80.6 So Low Roy van Rijn 4803/ 3259/ 338 14747 80.0 Sauron's Eye Jakub Kozisek 4576/ 3107/ 717 14445 78.4 Not so elusive Simon Duff 4425/ 3253/ 722 13997 75.9 D-cLeAr Christian Schmidt 4248/ 3194/ 958 13702 74.3 Mantrap Arcade Dave Hillis 3763/ 2770/ 1867 13156 71.4 Imp Construction Kit David Moore 3339/ 2205/ 2856 12873 69.8 Contorted Naph Philip Thorne 2072/ 3046/ 3282 9498 51.5 Elusive Simon Duff 2233/ 4384/ 1783 8482 46.0 The Schitzophrenic Joshua Hudson 1221/ 2637/ 4542 8205 44.5 Cabaret Barfly Dave Hillis 1344/ 4136/ 2920 6952 37.7 Safe Clear Lukasz Adamowski 1575/ 4653/ 2172 6897 37.4 Remote Machine Darek Leniowski 1089/ 3959/ 3352 6619 35.9 Full Moon Lukasz Adamowski 1556/ 5109/ 1735 6403 34.7 Twins Arivaalli 497/ 4971/ 2932 4423 24.0 Spider Darek Leniowski 179/ 4726/ 3495 4032 21.9 =================================================================== More detailed informations and all entries will be available soon on the Random-Rage webpage: http://de.geocities.com/fizmo_master/8.htm Congratulations to everyone who has taken part this round. I hope to see you next round again. *********** * Ranking * *********** Michal Janeczek is as usual still dominating the ranking followed now by Ben Ford. Roy van Rijn climbs 5 ranks to be now on third place. There are two newcomers on the 19th and 26th place and two players leaving the actual ranking. Michal Janeczek is the only player who has taken part on all eight rounds. I think that's worth a big applause. # Author Score R3 R4 R5 R6 R7 R8 ------------------------------------------------------------------- 1 (1) Michal Janeczek 393.9 100.0 98.6 100.0 72.6 70.4 95.3 2 (3) Ben Ford 339.1 75.1 100.0 76.4 x x 87.6 3 (8) Roy van Rijn 338.2 x 92.8 84.4 38.0 72.6 88.4 4 (4) Philip Thorne 334.0 72.7 89.0 91.7 40.1 x 80.6 5 (2) Steve Gunnell 322.6 82.4 96.2 95.6 48.4 x x 6 (5) Simon Wainwright 302.5 89.1 79.0 74.9 50.6 59.5 x 7 (6) Dave Hillis 298.9 87.3 87.7 50.9 52.5 x 71.4 8 (7) German Labarga 294.7 x 60.0 82.8 51.9 100.0 x 9 (10) Christian Schmidt 273.4 x 90.7 82.7 * * 100.0 10 (9) Lukasz Grabun 250.6 67.6 70.7 78.4 33.9 x x 11 (11) Simon Duff 242.0 x x x 100.0 66.1 75.9 12 (13) John Metcalf 215.7 * * * 65.4 68.4 81.9 13 (12) Sascha Zapf 149.7 x x 51.1 34.0 64.6 * 14 (14) David Moore 133.4 63.6 x x x x 69.8 15 (16) Lukasz Adamowski 123.5 x x x 43.1 43.0 37.4 16 (17) Joshua Hudson 120.6 x x x 76.1 x 44.5 17 (18) Darek Leniowski 97.0 x 35.2 x 25.9 x 35.9 18 (15) Ken Espiritu 86.3 86.3 x x x x x 19 (-) Jakub Kozisek 78.4 x x x x x 78.4 20 (20) Sheep 60.2 x 60.2 x x x x 21 (21) Ilmari Karonen 57.6 x x x 57.6 x x 22 (22) Will Varfar 54.0 x x x 54.0 x x 23 (24) B. Cook 42.7 x x x 42.7 x x 24 (25) Paul Khuong 40.8 x x x 40.8 x x 25 (26) bvowk 27.0 x 27.0 x x x x 26 (-) Arivaalli 24.0 x x x x x 24.0 27 (27) christian m. 22.6 x x x 22.6 x x 28 (28) Harbinger Of Doom 21.0 x x x 21.0 x x out(19) Robert Macrae out(23) WFB ------------------------------------------------------------------- * Organizer ................................................................... From: dhillismail@netscape.net (Dave Hillis) Subject: IRC mini tourn; evolvers? Date: 29 Mar 2003 06:50:06 -0800 Message-ID: <5d6847b2.0303290650.438a1d38@posting.google.com> I really like the idea of the weekly lightning-fast corewars tournaments on IRC. Not much chance to use a GA in a half hour window though. Or could you� Last week's rules were to submit warriors that only used values of "-1", "0", and "+1". That's certainly GA-friendly. Seized by the spirit of scientific inquiry, I did some tests and yes, when I ran my evolver program overnight, it found plenty of warriors that would have bested those actually submitted. (Naturally, I didn't use the warriors submitted to the contest to train the evolved ones.) But could it have been done in 30 minutes? After tireless investigation (before I got tired of it, I quit) I believe I have the answer. If I'd started with a clean version of the evolver program, the value restriction could have been accomplished by the addition of one line of code. Drawing on my many years of proposal writing, I'll budget one minute for software development and testing. Similarly, I'll budget zero time for delivery, leaving 29 minutes to let the GA run. ;redcode verbose ;assert 1 ;name Convolution Chromatograph ;author Dave Hillis ;strategy - Created using RedRace.c. ;strategy - An evolving population playing KOTH. ;strategy - For a contest where only "-1", "0", and "+1" are allowed mod.ba { -1, # -1 sub.i $ 1, $ 0 mod.i # 1, * 0 nop.i } 0, # 0 mod.b # -1, } -1 spl.i @ -1, # 0 slt.i @ -1, # 0 spl.i } 0, { -1 jmp.f } 0, # 0 jmp.i } 0, $ 0 sne.ab > 1, $ 1 add.ab # -1, { 1 sub.i < 0, # -1 spl.f # 1, > -1 mov.ab # -1, # -1 mov.i } -1, } 0 end 4 Sadly, five independent runs with different parameters failed to produce competitive results. I needed an order of magnitude more processing power or, better yet, a contest on a tiny, 800-line core. Much later, I had another idea: start evolving on a tiny core, then switch to a standard size right at the end. I've used this technique before. The 6th run produced the warrior above, which would have won comfortably. benchmark for rdrc: Convolution Chromatograph. 200 battles 1: ;Program "2 Craze 2" (length 83) by "Christian Schmidt" 390 210 2: ;Program "Bad Stone" (length 6) by "Paul Khuong" 491 80 3: ;Program "BinFool" (length 20) by "Philip Thorne" 436 82 4: ;Program "BinFool #3" (length 21) by "Philip Thorne" 597 3 5: ;Program "Desperate" (length 3) by "Miz" 348 126 6: ;Program "ere we go" (length 4) by "Miz" 345 219 7: ;Program "noname" (length 4) by "Lukasz Adamowski" 593 5 8: ;Program "2365*2^2936+1 is prime!" (length 7) by "John Metcalf" 193 235 9: ;Program "Repli" (length 4) by "Christian Schmidt" 506 50 10: ;Program "Safe Clear" (length 2) by "Lukasz Adamowski" 475 82 11: ;Program "Semi-Skilled Redcoder" (length 8) by "John Metcalf" 186 414 12: ;Program "tmp" (length 9) by "Joonas" 591 6 score (scaled to 100 battles) = 214.625000 Conclusion: it's just barely possible but you'd have to be lucky and think reeeeally fast. In my case, the GA wouldn't be the weakest link. Dave Hillis From: fizmo_master@yahoo.com (Fizmo) Subject: IRC Tournament Date: 29 Mar 2003 13:34:29 -0800 Message-ID: <9f53b5fb.0303291334.3246fd22@posting.google.com> Greetings... To take part in this evening's IRC tournmant, make your way to #COREWARS on irc.koth.org for 8:00pm (GM Summer Time). This evening's event is being organised by me. See you there :-) From: fizmo_master@yahoo.com (Fizmo) Subject: Redcoders Frency: The Limited-Value Round Date: 29 Mar 2003 13:42:33 -0800 Message-ID: <9f53b5fb.0303291342.3ef06226@posting.google.com> .................................................................... ********************* * Redcoders' Frency * ********************* The ongoing corewar tournament /^^^^^^^^^^^^^^^^^^^^^^^^^\ | The Limited-Value Round | \_________________________/ This is the 9th round of the ongoing corewar tournament. Detailed information are available on Fizmo's Ultimate Corewar Page: http://de.geocities.com/fizmo_master/cwt.htm Rules ----- Round Robin without Self-Fights. Rounds : 1000 Coresize: 55440 Maxcycles: 100000 Maxprocesses: 10000 Warriors length: 200 Distance : 200 Limitation: ^^^^^^^^^^^ The entries may only contain values of either -1, 0 or 1 in the compiled Redcode The scoring is 3 points for a win and 1 point for tie and no points for a loss. Standard '94 rules are used. As usual, you can enter either one or two warriors. The homepage of this round, including some more informations is: http://de.geocities.com/fizmo_master/9.htm Deadline -------- April 26th, 2003 ----------------------------------------------------------------- Please notify: You have to send for this round your entries to me ----------------------------------------------------------------- Good luck ................................................................. From: mooredav@mac.com (David Matthew Moore) Subject: Eye of the Beholder Date: 30 Mar 2003 18:26:20 -0800 Message-ID: <69eefcbb.0303301826.4b30c7e4@posting.google.com> I wonder if Mr. Mintardjo got an email this weekend... 21 36/ 46/ 18 Beholder's Eye V1.7 W. Mintardjo 127 448 Beholder's Eye was one of the oldest warriors on that hill when I started (*) over 7 years ago. (*) actually I did play sometime around '90. I had the Scientific American articles, the warriors from the first two tourneys, including MICE and Cowboy, and Redcoder (I think) for the Mac. Redcoder had a delightful interface for watching battles. Each block was easy to read. Active processes were marked with a | and they left a trail of -. Loops made a nice little cartoon: |--- -|-- --|- ---| You could zip around with the magnifying glass cursor and see what the code was at the cursor. One thing I tried was an imp consisting of 3 MOVs spread equidistantly through core. But I didn't get it to work. When I re-discovered Core War in '96, I found the hint section of the FAQ, including various imp spiral launchers. That was some great reading! David. From: Koth Subject: KOTH.ORG: Status - MultiWarrior 94 03/31/03 Date: 31 Mar 2003 09:52:23 -0500 Message-ID: <200303310503.h2V530LQ002154@gevjon.ttsg.com> Weekly Status on 03/31/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sat Mar 22 07:28:54 EST 2003 # Name Author Score Age 1 trial John Metcalf 15 120 2 Her Majesty P.Kline 8 235 3 D-clearM Ken Espiritu 6 216 4 fclear Brian Haskin 5 200 5 Triple Glaze Philip Thorne 5 10 6 my new tiny warrior John Metcalf 4 7 7 Djinn Test 9 Steve Gunnell 4 105 8 Surviver David Bendit 3 18 9 Origin of Storms John Metcalf 3 1 10 PolyPap III Jakub/Roy 2 2 11 Atlas Lukasz Adamowski 0 3 From: Koth Subject: KOTH.ORG: Status - ICWS Experimental 94 03/31/03 Date: 31 Mar 2003 09:52:18 -0500 Message-ID: <200303310506.h2V560bu002250@gevjon.ttsg.com> Weekly Status on 03/31/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sat Mar 29 17:40:45 EST 2003 # %W/ %L/ %T Name Author Score Age 1 44/ 42/ 14 Fire and Ice II David Moore 147 83 2 39/ 32/ 29 The X Machine Zul Nadzri 146 8 3 40/ 38/ 22 Eliminator X Zul Nadzri 142 1 4 37/ 38/ 25 Black Moods Ian Oversby 137 179 5 21/ 9/ 70 Denial David Moore 132 124 6 33/ 35/ 32 Trefoil F 13 Steve Gunnell 132 66 7 35/ 38/ 27 Giant Hazy Test 13 Steve Gunnell 132 10 8 20/ 9/ 71 Evol Cap 4 X John Wilkinson 132 252 9 28/ 27/ 44 Olivia X Ben Ford 129 64 10 24/ 18/ 58 Katafutr Michal Janeczek 129 123 11 33/ 36/ 31 Controlled Aggression Ian Oversby 129 183 12 27/ 28/ 45 KAT v5 Dave Hillis 126 115 13 26/ 25/ 49 Venom v0.2b Christian Schmidt 126 205 14 31/ 39/ 29 Ogre Christian Schmidt 123 131 15 15/ 7/ 79 Evolve X v4.0 John Wilkinson 123 200 16 23/ 23/ 54 Glenstorm John Metcalf 123 45 17 27/ 32/ 41 Damage Inflicted Robert Macrae 122 122 18 34/ 46/ 20 Kenshin X 45 Steve Gunnell 121 26 19 19/ 19/ 63 Kin John Metcalf 119 91 20 13/ 8/ 79 Black Box v1.1 JKW 118 146 21 25/ 41/ 34 Bugtown Rap 26 Steve Gunnell 109 2 From: Koth Subject: KOTH.ORG: Status - Standard 03/31/03 Date: 31 Mar 2003 09:52:27 -0500 Message-ID: <200303310500.h2V500id002090@gevjon.ttsg.com> Weekly Status on 03/31/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Sat Mar 29 20:34:33 EST 2003 # %W/ %L/ %T Name Author Score Age 1 37/ 23/ 40 Quicksilver '88 Michal Janeczek 151 8 2 44/ 40/ 16 Tangle Trap 3 David Moore 147 1 3 35/ 24/ 42 Freight Train David Moore 146 173 4 33/ 24/ 43 Test Alexander (Sasha) Wa 143 112 5 33/ 24/ 43 Guardian Ian Oversby 142 172 6 43/ 46/ 11 vm5 Michal Janeczek 139 7 7 40/ 42/ 19 My 1st try Christian Schmidt 137 4 8 35/ 34/ 31 vala John Metcalf 136 95 9 30/ 25/ 46 Pixie 88 Lukasz Grabun 134 2 10 42/ 51/ 8 Scan Test C 6 Steve Gunnell 133 11 11 31/ 29/ 40 sIMPly.Red v0.95 Leonardo Humberto 132 130 12 39/ 45/ 17 '88 test IV John Metcalf 132 66 13 27/ 21/ 52 Test I Ian Oversby 132 229 14 34/ 37/ 28 Gymnosperm trickery Dave Hillis 132 59 15 40/ 49/ 11 Foggy Swamp Beppe Bezzi 131 169 16 28/ 26/ 45 Shish-Ka-Bob Ben Ford 130 128 17 39/ 48/ 13 Blur '88 Anton Marsden 130 210 18 25/ 21/ 54 EV Paper John K Wilkinson 130 186 19 36/ 42/ 22 PacMan David Moore 130 202 20 37/ 46/ 17 Stasis David Moore 127 280 21 36/ 46/ 18 Beholder's Eye V1.7 W. Mintardjo 127 448 From: Koth Subject: KOTH.ORG: Status - 94 No Pspace 03/31/03 Date: 31 Mar 2003 09:52:14 -0500 Message-ID: <200303310509.h2V59011002300@gevjon.ttsg.com> Weekly Status on 03/31/03 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Fri Mar 28 07:29:54 EST 2003 # %W/ %L/ %T Name Author Score Age 1 38/ 25/ 38 Reepicheep Grabun/Metcalf 150 778 2 43/ 38/ 19 Toxic Spirit Philip Thorne 147 232 3 46/ 46/ 8 Recon 2 David Moore 147 1 4 37/ 29/ 35 Thunderstrike Lukasz Grabun 145 152 5 35/ 25/ 40 Son of Vain Oversby/Pihlaja 144 1547 6 40/ 40/ 20 Return of Vanquisher Lukasz Grabun 141 309 7 41/ 41/ 18 run to the hills Simon Wainwright 141 12 8 41/ 43/ 16 Hazy Test 63 Steve Gunnell 139 322 9 28/ 17/ 55 PolyPap II Jakub/Roy 138 27 10 32/ 25/ 43 Fast Action III Christian Schmidt 138 21 11 31/ 24/ 45 Revenge of the Papers Fizmo/Roy 138 585 12 33/ 29/ 37 Pixie Lukasz Grabun 137 195 13 29/ 20/ 51 Dawn Roy van Rijn 137 163 14 35/ 33/ 32 My First Paper Michal Janeczek 137 146 15 42/ 49/ 9 Solo Roy van Rijn 135 2 16 29/ 24/ 47 Firestorm John Metcalf 134 583 17 24/ 16/ 60 Lord of the imp-rings Neogryzor 133 4 18 37/ 43/ 20 Driftwood John Metcalf 132 231 19 42/ 52/ 7 Claw Fizmo 131 515 20 38/ 46/ 17 Harmony Snoot Lukasz Grabun 130 122 21 20/ 73/ 6 test Christian Schmidt 68 0 From: Paul-V Khuong Subject: Re: John, you were right Date: 31 Mar 2003 17:48:28 -0500 Message-ID: <20030331220627.40954.qmail@web41502.mail.yahoo.com> --- Lukasz Grabun wrote: > Noone truely leaves corewar. ...You REALLY, REALLY ought to not use spamtastic subject lines like this one! :) Welcome back, i hope whatever made you want to stop playing is fixed. As always, returns are like leaves - they come in packs :) PaulKhuong __________________________________________________ Do you Yahoo!? Yahoo! Platinum - Watch CBS' NCAA March Madness, live on your desktop! http://platinum.yahoo.com From: Lukasz Grabun Subject: John, you were right Date: Mon, 31 Mar 2003 17:55:50 +0000 (UTC) Message-ID: Noone truely leaves corewar. -- Lukasz Grabun (reply-to field is fake, use grabek (at) acn dot waw dot pl to reply) From: Lukasz Adamowski Subject: Re: John, you were right Date: 31 Mar 2003 18:12:42 -0500 Message-ID: On Mon, 31 Mar 2003, Lukasz Grabun wrote: > Noone truely leaves corewar. > -- > Lukasz Grabun Yeah, nothing CMP to playing corewar. :] Good to see you back, soldier. Lukasz Adamowski