From: Philip Kendall Subject: Re: BEGINNER Date: 1999/01/01 Message-ID: #1/1 In article <368C2D1A.C80CFF53@ns.sympatico.ca>, sylvester wrote > >Is there any good editors/compilers/runners for CoreWars for Win95 ? Editors: use your favourite text editor :-) Runners: Plenty -- but everybody(?) uses pMARS: available either from Stormking (http://www.koth.org/) or Nandor Sieben's Home Page (linked from my pages). In either case, if you want a graphical version, make sure you get the one designed for Win95 :-) HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: sylvester Subject: BEGINNER Date: 1999/01/01 Message-ID: <368C2D1A.C80CFF53@ns.sympatico.ca>#1/1 Hey Is there any good editors/compilers/runners for CoreWars for Win95 ? Chris From: sylvester Subject: beginner Date: 1999/01/01 Message-ID: <368C1984.2761DEE0@ns.sympatico.ca>#1/1 Hey Is there any good editors/compilers/runners for CoreWars for Win95 ? Chris From: Paul-V Khuong Subject: Re: beginner Date: 1999/01/02 Message-ID: <19990102202504.14597.rocketmail@send104.yahoomail.com>#1/1 Sylvester Gallai wrote: > > Is CoreWars stil used ? Used? It's a game... > I heard talk about CoreWars dying off adn being impractical (as in > the new command set)... Is any of it true ? Dying off? I suppose there's not as many people playing it as in the 80's, but it's not dying. What do you mean by "being impractical"? It's not supposed to be used for practicallity... Well, the '88 set was kinda used and noone saw other things to do, so they added new things to the instruction set. > How wide spread is CoreWars ? About as wide as all USA's universities and much more > Where should I begin posting any bots or challenge someone ? Have you read the FAQ? You can submit at hills @ koth.org and at pizza's hills. There's a beginner at pizza. Challenging someone? Could be a good idea but i've never heard of something like that. == Vive le Qu�bec libre... d� souverainistes!!! _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com From: Michael Vogel Subject: New in this group Date: 1999/01/05 Message-ID: #1/1 Hi! It's the first time, i write something in this group. Some days ago i remembered about corewars, so i downloaded pmars. It works, yes. There are sample-bots, okay, but of course i want to write my own ones. Where can i find a kind of programming manual, or something like that? Is there anything i really must know for writing my bots? What about some theory? As i know there are some different kind of bots. One the one hand the short and simple ones. Mostly they only try to hide and run away. Because they are small, they are hard to kill, but on the other hand they are not optimized to kill. One the other hand there are the complicated ones. Nearly intelligent, but easy to hurd. All i know about corewars is based on some one or two articles in a german PC magazine (c't), so my knowlegde is really low... Tschau! Michael Vogel aka Icarus, aufgenommen im Clan Silberschwinge, stammend aus Jurgas Clan From: Robert Macrae Subject: Re: Process Date: 1999/01/06 Message-ID: <3693E412.181B@dial.pipex.com>#1/1 sylvester wrote: > What happens when 2 processes of the same warrior attempt writing to the > same address ? > What happens when 2 processes of the same warrior jump to the same > address ? You should get hold of PMARS and take a look at the debugger; it will all eventually become clear -- at least I keep hoping. In essence, multiple processes are handled by timeslicing, so one process writes, then the second over-writes or one executes, then the other executes. Some redcode is re-entrant :-) > What if the processes belong to different warriors ? Can they occupy > the same space ? Wouldn't this make a piggy back warrior indestructible No different - all processes are born equal, even your enemies. I have written a warrior which pulls all the enemy processes into itself, and then suicides... it relies on having *more* process, so the last enemy process dies before my last process. This would kill hte piggy back warrior! -- Regards, Robert Macrae From: Robert Macrae Subject: Re: Hill Date: 1999/01/06 Message-ID: <3693E2D7.4998@dial.pipex.com>#1/1 sylvester wrote: > How long does it take to process the full tornament for Core Wars ? 25 x 25 x 100 = 62500 rounds (I think) would be several hours on my P90 for the standard hill. However in practice you just fight the newcomer against 25 existing warriors, which is 10 minutes or so. -- Regards, Robert Macrae From: sylvester Subject: Process Date: 1999/01/06 Message-ID: <36939F86.D17CF4E5@ns.sympatico.ca>#1/1 Hi ! What happens when 2 processes of the same warrior attempt writing to the same address ? What happens when 2 processes of the same warrior jump to the same address ? What if the processes belong to different warriors ? Can they occupy the same space ? Wouldn't this make a piggy back warrior indestructible ? Chris From: Philip Kendall Subject: Re: Hill Date: 1999/01/06 Message-ID: #1/1 sylvester writes: > How long does it take to process the full tornament for Core Wars ? 1) Depends what machine you're running on, which Hill you're talking about, etc, etc. 2) The whole thing is never run in one go: all that happens when a new warrior (tries) to enter the Hill is that if fights the 25 warriors already on the Hill; all the scores for the other fights stay the same. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: sylvester Subject: Hill Date: 1999/01/06 Message-ID: <3693452C.AAF7F270@ns.sympatico.ca>#1/1 Hi ! How long does it take to process the full tornament for Core Wars ? Chris From: M Joonas Pihlaja Subject: Re: round 5 rules Date: 1999/01/06 Message-ID: #1/1 On Wed, 23 Dec 1998, Christian Schmidt wrote (forwarding for Ian Oversby): > I can't remember exactly when the agreed deadline is supposed to be. > Would anyone like to remind me (us)? (8th, 15th, 22nd January?) > Probably the 15th Jan I would imagine. > > Ian > I just got back and since the 15th is so very near, I would much prefer the 22nd which you mentioned earlier in: Subject: Full Round 2 results [snip] : I have had a request for a break over Christmas. My proposal is : to have one more round before Christmas, deadline 18th December. : Then the next round will have rules presented on 7th January will : the deadline 22nd. The last three rounds will continue after that : as normal every two weeks. Would this be satisfactory for : everyone? [snip] Sorry I don't have a complete reference for the article above (dug it up from dejanews). So if possible, could you back it up a week? Joonas From: amarsden@mcs.vuw.ac.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1999/01/07 Message-ID: Archive-name: games/corewar-faq Last-Modified: August 5, 1998 =20 Version: 4.0 URL: http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html Copyright: (c) 1998 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. The latest hypertext version is available at http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html and the latest plain text version is available at=20 http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.txt. This document was last modified on August 5, 1998. It is currently being maintained by Anton Marsden (amarsden@mcs.vuw.ac.nz). ------------------------------------------------------------------------ To Do * Make question 17 easier to understand. Add a state diagram? * Upgrade to HTML 4.0, make FAQ easier to maintain in future (hopefully) * 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 the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr * Made some changes/additions/fixes based on a good FAQ review by Joonas Pihlaja. Not all of the suggestions have been dealt with yet, but the FAQ is now less ambiguous in some areas. Thanks Joonas! * Added stuff about pMARS under Win95 (question 9), and the location of = a HTML version of the ICWS'94 draft (question 5). * New definition: decrement resistant * Modified the answer to question 1 * Changed error in P-space question (location 0 can be written to). * Added links to genetic algorithm resources. * Added a link to Kendall's page. * Added new Q&A (code formatting). ------------------------------------------------------------------------ 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 o= f 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 virtua= l computer called MARS (for Memory Array Redcode Simulator). The object of th= e game is to cause all processes of the opposing program to terminate, leavin= g 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= =2E 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 =3D (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 i= s 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 th= e 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= =2E 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 =A90-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 =A90-7167-2144-9 .D5173 199= 0 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. 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 and ftp://www.koth.org/corewar/documents/tutorial.2. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This an= d 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'9= 4 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/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 onl= y 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 9= 4 Warrior, Core Warrior is a newsletter about strategies and current standing= s 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.geocities.com/SiliconValley/Park/5427/warrior.htm 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.answer= s (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 (Stormking 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 bod= y 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 Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@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 Stormking. [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 point= s 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 ha= s 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, KotH= s 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 overlappin= g 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 divide= d up among the sites. The way you submit warriors to both KotHs is pretty muc= h 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 tha= t 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 I= nstr. Size Size Processes Distance Fought = Set Tie Length Pizza's ICWS '94 Draft Hill Ex= tended (Accessed with 25 8000 8000 80000 100 100 200 IC= WS '94 ";redcode-94") Dr= aft Pizza's Beginner's Hill Ex= tended (Accessed with 25 8000 8000 80000 100 100 200 IC= WS '94 ";redcode-b") Dr= aft Pizza's Experimental Ex= tended (Small) Hill 25 800 800 8000 20 20 200 IC= WS '94 (Accessed with Dr= aft ";redcode-x") Pizza's Limited Process (LP) Ex= tended Hill (Accessed 25 8000 8 80000 200 200 200 IC= WS '94 with Dr= aft ";redcode-lp") Stormking's ICWS '88 Standard Hill 20 8000 8000 80000 100 100 250 IC= WS '88 (Accessed with ";redcode") Stormking's ICWS '94 Experimental Ex= tended (Big) Hill 20 55440 55440 500000 200 200 250 IC= WS '94 (Accessed with Dr= aft ";redcode-94x") Stormking's ICWS '94 Draft Multi-Warrior Ex= tended Hill (Accessed 10 8000 8000 80000 100 100 200 IC= WS '94 with Dr= aft ";redcode-94m") Notes: * 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 assemble= d 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 Cor= e 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 o= r 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, fo= r 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 tha= n 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 memor= y 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 o= f 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 p= ointer 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 nothin= g 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 locatio= ns seq start+400*s1+200, start+400*s1+300 ;check two locatio= ns 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 nothin= g 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 cop= y 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= =2E 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: IMPSIZE EQU 2667 example spl 1 ; extend by adding more spl = 1's spl 1 djn.a @imp, #0 ; jmp @ a series of pointers dat #0, imp+(3*IMPSIZE) dat #0, imp+(2*IMPSIZE) dat #0, imp+(1*IMPSIZE) dat #0, imp+(0*IMPSIZE) imp mov.i #0, IMPSIZE [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) The rec.games.corewar FAQ is Copyright =A9 1998 and maintained by Anton Marsden (amarsden@mcs.vuw.ac.nz). ------------------------------------------------------------------------ From: Philip Kendall Subject: Re: New in this group Date: 1999/01/07 Message-ID: #1/1 Michael Vogel writes: > It's the first time, i write something in this group. Some days ago i > remembered about corewars, so i downloaded pmars. It works, yes. That's always a good start :-) > There are sample-bots, okay, but of course i want to write my own ones. > Where can i find a kind of programming manual, or something like that? The best I can recommend are: 1) Ilmari Karonen's Beginner's Guide to Redcode: http://www.sci.fi/~iltzu/corewar/guide.html 2) Steve Bailey's Guide for Beginners: available from Stormking (http://www.koth.org/) or Pizza (http://www.ecst.csuchico.edu/~pizza/koth/). 3) The early issues (1-9ish) of Core Warrior: available from Planar's archive (http://para.inria.fr/~doligez/corewar/) > Is there anything i really must know for writing my bots? What about some > theory? As i know there are some different kind of bots. One the one hand > the short and simple ones. Mostly they only try to hide and run away. > Because they are small, they are hard to kill, but on the other hand they > are not optimized to kill. > > One the other hand there are the complicated ones. Nearly intelligent, but > easy to hurd. To put it very roughly, small warriors win, big warriors lose :-) HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: Philip Kendall Subject: Re: Process Date: 1999/01/07 Message-ID: #1/1 sylvester writes: > And what do those {, <, @, $, # signs do ? I'm getting confused ever more I > see them. Try Ilmari Karonen's Beginner's Guide to Redcode: http://www.sci.fi/~iltzu/corewar/guide.html HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: sylvester Subject: Re: Process Date: 1999/01/07 Message-ID: <3693FC08.AF43558A@ns.sympatico.ca>#1/1 If I was good enought to debug PMARS I would not aks this. And what do those {, <, @, $, # signs do ? I'm getting confused ever more I see them. Chris From: "Screamer" Subject: RTFM (was: Re: Process) Date: 1999/01/07 Message-ID: <000d01be3a7a$8344d520$6000a4c0@screamer>#1/1 Dont get me wrong. I do not want to sound rude here. But these questions are so absolutely basic ideas to CoreWar that you should first read some FAQs and maybe a documentation on it. Find it all at www.koth.org along with some good links. If even then there are still questions left, you�re welcome to ask - even if it�s still the basic ideas we�re talking of. As for debugging, not debugging PMARS is meant, rather using the PMARS debugger to look at what happens to core as a warrior is executed. --------------------------------- REALITY.SYS not found. Universe halted. From: Subject: Re: Process Date: 1999/01/07 Message-ID: #1/1 On Thu, 7 Jan 1999, sylvester wrote: > If I was good enought to debug PMARS I would not aks this. as for earlier questions: AFAIK, only one instruction is executing at a time. Piggyback warriors execute the code they piggyback on. AKA Imps. > And what do those {, <, @, $, # signs do ? I'm getting confused ever more I > see them. various forms of addressing. <, >, @ - B-indirect - use the value at the mem location specified by the B field of the specified mem address. @ is straight addressing, < predecrements, > postincrements. {, }, ($?) - A-indirect - see above, except mem is specified by A field of the specified address. # - immediate data. > Chris John Allensworth --- tarquin@texas.net --- ReaperMan on the QuakeServers Author of XtraWeapons (except the homing missile, eject, and throwing axe) Industrial Strength Gaming http://www.uk.digiserve.com/whiteoak/punktc/ Real Programmers think better when playing Adventure or Rogue. From: Robert Macrae Subject: :-= Date: 1999/01/07 Message-ID: <36953F34.1567@dial.pipex.com> :-= I didn't ever published the full code. The code is so specialised that I don't think it will be much use to anyone, but perhaps it will give someone ideas... I started with a Q^2 which hoped to find Failure, which is a very large, parallel-launch Silk with published code. If it finds something, it locates the first word (inline for speed) and then goes for the jugular with a fang. Several pinpoint DAT bombs kill off all the other processes so, maybe one round in twenty, I ended up with all the Failure processes helping to run my clear. In principle you could apply the same strategy with a general-purpose vamping QS -- this was my first tack -- but I suspect the hitrate would be below one in one hundred, which is too low to be practical given the many other ways to fail. This left nine Silk or Imp opponents, so the clear had to handle both. I used a simple SPL/DAT clear running at 1.5c (two warriors, remember:) which has excellent chances against both kinds of opponents; Silks are stunned very fast, and Imps are first stunned and then wiped. The clear covers the whole of core in about 5400 cycles and a stunned imp has over 7900 SPLs to execute between each run of the MOV.i #0,2667 code, so once stunned a single spiral is certain to be over-written. Against pairs or groups of imps (Impfinity style) the wipe is not guaranteed, because there may be only 3900 SPLs between each set of MOVs, but in practice it is unlikely that the SPLs are allocated 3900, 3900 each side of the two imps. A split more uneven than 5500, 2300, which will be wiped, is much more likely. This analysis applies against a *single* Silk or Imp. Against nine life is much harder, but it only took one win... The other detail I like is that, to reduce my vulnerable size, I used the same code as both pit and clear. The pit entry incorporates a single SPL #0 (I have relied on the DAT bombs to kill the rest of Failure, so I don't need a hard stun; looking at the code now I can't see why I bothered even having one SPL...) and my own code incorporated an extra SPL so that when the pit suicides, I should have more processes so that Failure dies first. Incidentally, the clear does not work well unless :-= captures an enemy warrior. If the clear runs at "only" 0.75c, it takes over 64k cycles to reach the DAT stage. This is not early enough to guarantee a clear against papers, and not nearly early enough to clean up imps. However, this warrior was never designed for Mount Olympus :-) -- ;redcode-94m test ;name :-= ;author Robert Macrae ;assert CORESIZE==8000 ;strategy Bite Failure, then bury everything else. ; Alone, I scan Failure 50% of the time, but other warriors will get in ; the way up to 90% of the time if all are 100 long. Allowing for enemies ; capturing processes from Failure, lets say we start the clear at 1.5c ; 25 times from 500 battles, so I then need a 4% survival rate for 1 win! ; Target is 16 long. Approximating bombing as strips of 4 bombs, a 4% ; survival rate corresponds to 1100 strips randomly distributed around ; core (I think) so each enemy must throw an average of 110 or fewer strips. ; I am probably at risk for 2000 cycles or so -- after this Silks should ; be largely stunned -- so the average warrior must execute only 440 ; MOVs in the first 2000 cycles. This is optimistic for pure Silks, but ; close enough for :-= to have a chance! ; mwt series: ; 1.2 is Failure-based -- weak. ; 1.3 is broader spectrum -- 15% success. ; 1.3 was stunned 12% of the time, but killed 15%. ; Sounds as if a 1.33c coreclear would be handy? ; 1.4 used Pinkcc, and scored 1x 5-way tie. ; 1.5 uses 2x0.66c SSSS clear, aiming to S-carpet imps. ; 1.6 ditto, but 0.75c for even more SPLs... [BUG -- actually 0.66!] ; Leads to a two-way between Aulder Man and Fleas 2! ; -- almost certainly this is only a suicide-failure! ; 2.3 As 1.6 but scans more locations, and keeps scanning them! ; 2.4 Precision-tuned to Failure. ; 2.5 Puts fastest scans at the end, starts carpet after Failure, ; and 0.8c scan if Q^2 misses. ; Portmanteau ; 1.0 Tweaks a couple of cycles out of locator code, makes suicide more ; certain and DAT-carpets more tightly. Corrects 0.66c Bug. ; However, the fangs can trap processes from damaged silks. Is there a ; way to avoid this? ; 2.0 Only a single bite. Maybe "The Count" would be a better name... ORG start ; ---------------------------------------------- QS EQU 100 ; Not a key parameter in MW... yet :-) QD EQU 4000 ; Ditto. QB EQU (start+14*QS) ; Ditto. CR EQU (fnd-which) datz EQU (table-3) dat 9*QS, 1*QS ; can get 28 values from this table table: dat 5*QS, 2*QS ; dat 13*QS, 17*QS ; P: add.f table,table ; point into table. Nudge with }{>< and djn.f. slow: add.ab *P,fnd ; adds an element A column (usually) fast: add.b @P,@-1 ; adds an element B column (usually) which: sne.i datz,@fnd ; which half of scan hit? add.ab #QD,fnd ; ---------------------------------------------- ; Vamp Failure ; Failure is a tough target because it executes in so many parallel ; streams, and I need them all. If I can get word 22 within 42 cycles, then ; this bomb-pattern will catch or kill every process within 100 cycles ; or so. Its best to do this quickly to prevent enemies adopting orphan ; processes and stunning my pit! bite sub.ab #37, fnd ; Inline, as only 42 cycles available. sne @fnd, datz ; 37 rather than 64 to shave later ADDs. add.ab -2, fnd sub.ab #32, fnd sne @fnd, datz add.ab -2, fnd sub.ab #16, fnd sne @fnd, datz add.ab -2, fnd sub.ab #8, fnd sne @fnd, datz add.ab -2, fnd sub.ab #4, fnd sne @fnd, datz add.ab -2, fnd sub.ab #2, fnd sne @fnd, datz add.ab -2, fnd sne fnd ; Precision Incision :-= add #8, fnd mov datz, @fnd djn.b -2, #5 ; kill 5 papers add #9, fnd mov datz, @fnd ; and 6th sub.ab #65, fnd mov datz, @fnd ; and launcher add.b fnd, gate ; start carpet *after* enemy. jmp self ; now all we need is the clear to survive! fnd: jmp pit, QB ; Fang dat #gate-10, clr-gate+7 ; just in case clr is decremented gate dat #4000, 200 wipe5 dat #7500, 2 ; SUICIDE wipe4 dat #7500, clr-gate+5 wipe3 dat #7500, clr-gate+7 ; S-carpet imps at 1.5c is deadly wipe2 spl #7990, clr-gate+7 ; as whole core is carpetted before wipe1 spl #7900, clr-gate+7 ; the imp rebuilds itself. for 3 ; from 6 -- smaller target. dat 0, 0 rof self spl #-500, -500 ; may as well point away? pit clr spl #-500, >-20 ; I should end up with more mov @3, >gate ; processes than Failure... mov @2, >gate ; so he suicides first. mov @1, >gate djn.b -3, {wipe1 for 2 dat 0, 0 rof ; ---------------------------------------------- ; Q^2 from Obvious ; ---------------------------------------------- ; Q^2 with fastest scans last to sneak within the 42-cycle limit start: seq.i QB+QS*14,QB+QS*14+QD jmp P, 0 ; BBEE seq.i QB+QS*4,QB+QS*4+QD jmp }slow, 0 ; EE seq.i QB+QS*3,QB+QS*3+QD jmp }slow, {P ; DE seq.i QB+QS*7,QB+QS*7+QD jmp slow, 0 ; BE seq.i QB+QS*6,QB+QS*6+QD jmp slow,

P ; BF seq.i QB+QS*11,QB+QS*11+QD jmp slow, {P ; AE seq.i QB+QS*15,QB+QS*15+QD jmp slow, }P ; CE seq.i QB+QS*10,QB+QS*10+QD djn.f slow, P ; AD seq.i QB+QS*5,QB+QS*5+QD jmp >fast, 0 ; B seq.i QB+QS*9,QB+QS*9+QD jmp >fast, {P ; A seq.i QB+QS*13,QB+QS*13+QD jmp >fast, }P ; C ; seq.i QB+QS*8,QB+QS*8+QD ; jmp P,

P ; BEF ; KO to avoid self scan! seq.i QB+QS*12,QB+QS*12+QD jmp P, {P ; ADE seq.i QB+QS*32,QB+QS*32+QD jmp P, }P ; CEF seq.i QB+QS*20,QB+QS*20+QD djn.f P, P ; AADD seq.i QB+QS*2,QB+QS*2+QD jmp fast, 0 ; E seq.i QB+QS*1,QB+QS*1+QD jmp fast,

P ; F seq.i QB+QS*0,QB+QS*0+QD jmp which, 0 ; 0 ; seq.i QB+QS*19,QB+QS*19+QD ; jmp }slow, }P ; FE ; seq.i QB+QS*2,QB+QS*2+QD ; Duplicates a faster scan ; djn.f }slow, P ; DD ; Duplicates a faster scan ; seq.i QB+QS*10,QB+QS*10+QD ; Duplicates a faster scan ; jmp P ; BBG ; seq.i QB+QS*34+CR,QB+QS*34+QD+CR ; jmp }fast, {P ; AAG ; seq.i QB+QS*42+CR,QB+QS*42+QD+CR ; jmp }fast, }P ; CCG ; seq.i QB+QS*52+CR,QB+QS*52+QD+CR ; djn.f }fast, P ; AAAAG ; seq.i QB+QS*16+CR,QB+QS*16+QD+CR ; djn.f }fast, }slow ; G jmp setup, pit ; may as well bite something? end -- Regards, Robert Macrae From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Spiral-Clears Date: 1999/01/10 Message-ID: #1/1 Greetings... What is considered to be the best spiral-clear? Anything I come up with seems to be ineffective :-( How about using the Tornado engine to perform a fast spiral clear? Has anyone had any success trying a oneshot with a spiral clear? Regard, John From: David Matthew Moore Subject: Re: Spiral-Clears Date: 1999/01/11 Message-ID: <77dtnv$sns$2@msunews.cl.msu.edu>#1/1 John Metcalf wrote: : : What is considered to be the best spiral-clear? Check out Harmony, Chameleon, and Memories. Also look down below for my own spiral swiper. : How about using the Tornado engine to perform a fast spiral clear? : Has anyone had any success trying a oneshot with a spiral clear? No, I'm not aware of any such trials. Build one and then show us all how it is done :-) David. ;redcode-94 ;name Win! ;author David Moore ;strategy short-interval SNE scanner like Rave/Agony, with spl carpet bombs. ;strategy converts to spl clear, then a 21-point anti-spiral swipe, ;strategy then a continuous dat wipe. added decoy for fun. ;assert CORESIZE==8000 ;kill silly scan v0.3 step equ 848 ; scan pattern (848 = 16 * 53) apart equ 8 ; difference between the two scan pointers time equ 482 ; number of scanned pairs length equ 13 ; spl carpet length temp equ 17 ; best offset for minimum gap length in spiral clear add.f kill, scan scan sne (2+apart)+((time+temp)*step), 2+((time+temp)*step) count djn -2, #time ; scan until time runs out mov.b scan, dest mute sub.b stun, @2 mov *-1, Subject: Re: FS:Hot PC games(Fallout 2, Half-life, Thief, Grim Fandango, Railroad Tycoon 2 from $15 each) Date: 1999/01/11 Message-ID: <77dskk$sns$1@msunews.cl.msu.edu>#1/1 In rec.games.corewar Adrian wrote: : : Fallout 2 - $ 20 : Half-life - $ 20 : Need for speed 3 - $ 19 PMARS - $ 0 From: toysupra@bellsouth.net (Adrian) Subject: FS:Hot PC games(Fallout 2, Half-life, Thief, Grim Fandango, Railroad Tycoon 2 from $15 each) Date: 1999/01/11 Message-ID: <36c40036.3786850@news.rdu.bellsouth.net>#1/1 I have the following games for sale, all are in perfect condition. The prices range from $18 - $22 per title depending on which title and how many you buy. Fallout 2 - $ 20 Half-life - $ 20 Need for speed 3 - $ 19 NBA LIVE 99 - $ 18 Tombraider III - $ 19 THIEF: the dark project $ 20 Railroad Tycoon II - $ 19 Gangsters - $ 19 Populous 3 - $ 18 Caesar 3 - $ 18 Rainbow Six - $ 18 GRIM FANDANGO - $ 19 Urban Assault - $ 16 Uprising - $ 12 KKND extreme - $ 13 Tripleplay 99 - $ 14 Seven Kingdoms - $ 14 Airwarrior 2 - $ 10 Deadlock 2 - $ 10 The games below are all $16 each: Mortal Kombat 4 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/11/99 Date: 1999/01/11 Message-ID: <199901110500.AAA04729@midgaard.ttsg.com>#1/1 Weekly Status on 01/11/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 : Wed Dec 23 11:27:59 EST 1998 # %W/ %L/ %T Name Author Score Age 1 55/ 32/ 14 Black Moods Ian Oversby 178 3 2 53/ 29/ 17 Controlled Aggression Ian Oversby 177 7 3 39/ 16/ 45 Venom v0.2b Christian Schmidt 161 29 4 31/ 6/ 64 Evol Cap 4 X John Wilkinson 156 76 5 28/ 2/ 69 Evolve X v4.0 John Wilkinson 154 24 6 31/ 19/ 50 Rosebud Beppe 142 55 7 38/ 38/ 24 Dr. Gate X Franz 139 47 8 38/ 44/ 18 Tsunami v0.3 X Ian Oversby 132 1 9 34/ 38/ 28 BigBoy Robert Macrae 130 101 10 39/ 49/ 13 S.E.T.I. 4-X JKW 129 77 11 35/ 42/ 23 Stepping Stone 94x Kurt Franke 127 62 12 38/ 49/ 14 BiShot Christian Schmidt 127 15 13 33/ 41/ 26 Dr. Recover Franz 126 46 14 22/ 20/ 58 Sphere v0.2 Christian Schmidt 125 18 15 35/ 46/ 20 Pagan John K W 124 61 16 35/ 46/ 19 Memories Beppe Bezzi 124 83 17 31/ 38/ 31 Lithium X 8 John K Wilkinson 123 67 18 23/ 24/ 53 Purple v0.1 Christian Schmidt 123 28 19 37/ 55/ 8 HSA Copy 55440 Robert Macrae 120 44 20 33/ 45/ 22 13 Christian Schmidt 120 14 21 31/ 49/ 19 Clipped Star John Metcalf 114 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/11/99 Date: 1999/01/11 Message-ID: <199901110500.AAA04722@midgaard.ttsg.com>#1/1 Weekly Status on 01/11/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 9 20:20:36 EST 1999 # Name Author Score Age 1 Clearer v0.2 Ian Oversby 34 129 2 Blur Copy Robert Macrae 31 108 3 otest2 mjp 26 122 4 scan test-dm -=|:-) 26 2 5 cstest M4 Christian Schmidt 20 80 6 QueensGuard_I P.Kline 14 9 7 QueensGuard_III P.Kline 14 7 8 Aulder Man Ian Oversby 12 186 9 QueensGuard_IIII P.Kline 11 6 10 Tim Tack P.Kline 7 1 11 Glok v1.1 Ben Ford 2 0 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/11/99 Date: 1999/01/11 Message-ID: <199901110500.AAA04737@midgaard.ttsg.com>#1/1 Weekly Status on 01/11/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 10 17:52:19 EST 1999 # %W/ %L/ %T Name Author Score Age 1 44/ 39/ 17 Zooom... John Metcalf 150 13 2 41/ 40/ 19 The Machine Anton Marsden 142 102 3 35/ 31/ 34 The Stormbringer Christian Schmidt 139 47 4 39/ 39/ 22 Floody River P.Kline 139 62 5 40/ 42/ 18 Boys are Back in Town 1.1 Philip Kendall 138 38 6 26/ 13/ 61 _romanian_killah_ Costin Bontas rulez 138 5 7 25/ 13/ 62 The Fugitive David Moore 137 115 8 44/ 50/ 6 HeScans P.Kline 137 3 9 34/ 31/ 35 Baseline Plus Ken Espiritu 136 94 10 41/ 47/ 12 Win! David Moore 135 11 11 34/ 33/ 34 Fixed Ken Espiritu 135 96 12 30/ 26/ 44 Brigadeer M Joonas Pihlaja 133 32 13 30/ 27/ 42 Gemini Dream John K Wilkinson 133 119 14 33/ 33/ 33 Recovery Ian Oversby 133 36 15 33/ 32/ 35 Blacken Ian Oversby 133 23 16 31/ 30/ 38 Vain Ian Oversby 133 113 17 35/ 38/ 27 Liquid Fire Christian Schmidt 132 9 18 38/ 49/ 12 Red Carpet David Moore 128 54 19 34/ 41/ 25 Z-Shot John Metcalf 127 1 20 30/ 35/ 34 Head or Tail Christian Schmidt 125 84 21 2/ 3/ 0 Z-Shot John Metcalf 7 2 From: KOTH Subject: KOTH.ORG: Status - Standard 01/11/99 Date: 1999/01/11 Message-ID: <199901110500.AAA04718@midgaard.ttsg.com>#1/1 Weekly Status on 01/11/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 10 10:40:21 EST 1999 # %W/ %L/ %T Name Author Score Age 1 37/ 20/ 43 Freight Train David Moore 155 35 2 33/ 21/ 46 Guardian Ian Oversby 145 34 3 41/ 38/ 21 Stasis David Moore 143 142 4 39/ 36/ 26 PacMan David Moore 141 64 5 42/ 44/ 15 Iron Gate Wayne Sheppard 139 360 6 41/ 44/ 14 Blurstone '88 M. J. Pihlaja 138 29 7 37/ 37/ 26 Tangle Trap David Moore 138 108 8 39/ 40/ 21 Beholder's Eye V1.7 W. Mintardjo 137 310 9 40/ 43/ 16 Foggy Swamp Beppe Bezzi 137 31 10 40/ 43/ 17 Blur '88 Anton Marsden 137 72 11 28/ 21/ 51 The Marlboro Man 1.13 M Joonas Pihlaja 136 10 12 35/ 35/ 30 Leapfrog David Moore 135 63 13 26/ 16/ 58 EV Paper John K Wilkinson 135 48 14 28/ 23/ 49 sIMPly.Red v0.85 Leonardo Humberto 134 14 15 35/ 37/ 28 Kitchen Sink Robert Macrae 133 33 16 26/ 19/ 55 Test I Ian Oversby 133 91 17 25/ 21/ 54 Evoltmp 88 John K W 129 85 18 19/ 10/ 71 Trident^2 '88 John K W 128 58 19 23/ 24/ 54 Rocking-Chair v0.55 Leonardo Humberto 121 6 20 24/ 60/ 16 Glass Slipper John Metcalf 88 1 21 9/ 35/ 56 Unnatural Fire John Metcalf 82 0 From: Anton Marsden Subject: Re: Spiral-Clears Date: 1999/01/12 Message-ID: #1/1 On Mon, 11 Jan 1999, David Matthew Moore wrote: > : What is considered to be the best spiral-clear? > Check out Harmony, Chameleon, and Memories. Also look down below > for my own spiral swiper. Eggbeater also uses a spiral clear, although its effectiveness is questionable. Anton. From: Beppe Bezzi Subject: Re: Spiral-Clears Date: 1999/01/12 Message-ID: <010b00858120c19MAIL@galactica.it>#1/1 At 21.30 11/01/99 -0500, you wrote: >Greetings... > >What is considered to be the best spiral-clear? Anything I come up >with seems to be ineffective :-( Look at Harmony and Memories for two different ways to do that. Anyway spiral clears are now obsolete, He Scans Alone is a better way to kill imps. > >How about using the Tornado engine to perform a fast spiral clear? > Not that i know of, try and tell us. >Has anyone had any success trying a oneshot with a spiral clear? > I tried when spiral clears were new, but i got best results using them after a fast seq sne scanner. The hill has changed a lot in the meantime so maybe now things are different. >Regard, > >John > > -Beppe From: M Joonas Pihlaja Subject: Re: round 5 rules Date: 1999/01/12 Message-ID: #1/1 I am forwarding the following information from Ian Oversby: --------- The deadline for round 5 will be 23:59:59 Thursday 21st January as I will need to pick up the submissions on the Friday. PINs are allowed. Ian From: Robert Macrae Subject: Re: Spiral-Clears Date: 1999/01/13 Message-ID: <369D04DB.45E0@dial.pipex.com>#1/1 John Metcalf wrote: > > Greetings... > > What is considered to be the best spiral-clear? Anything I come up > with seems to be ineffective :-( > > How about using the Tornado engine to perform a fast spiral clear? I had a go in a warrior which never made it past testing... as I remember it did not do well enough against Silks, but that could be changed. There are various payoffs to consider such as whether to specialise against 3-pt imps (2667 step) or whether to go for others as well with a step like 381 if I remember. Yhe steps which hit lots of imps tend to leave lots of gaps around core in the "shadow" of the clear code; only 2 shadows for 2667, but 20 for a spiral which catches 3 and 7. Against Silks you really need a linear clear as well -- perhaps you could mutate into one? A spiral clear sounds like a reasonable idea, perhaps as part of a oneshot so that you pick up Silks rather faster? -- Regards, Robert Macrae From: RAndritzke@t-online.de (Mein Name) Subject: Baldur`s Gate Date: 1999/01/14 Message-ID: <77ljg6$qbp$1@news07.btx.dtag.de>#1/1 Wer hat schon Erfahrung damit? Wenn ja, wo sind die R�uber in Kapitel 3 ??? From: ctleung@cityu.edu.hk Subject: Re: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1999/01/14 Message-ID: <369D9827.6E97@cityu.edu.hk> Anton Marsden wrote: > > Archive-name: games/corewar-faq > Last-Modified: August 5, 1998 =20 > Version: 4.0 > URL: http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html > Copyright: (c) 1998 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. The latest hypertext version is available at > http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html and the > latest plain text version is available at=20 > http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.txt. > > This document was last modified on August 5, 1998. It is currently being > maintained by Anton Marsden (amarsden@mcs.vuw.ac.nz). > > ------------------------------------------------------------------------ > > To Do > > * Make question 17 easier to understand. Add a state diagram? > * Upgrade to HTML 4.0, make FAQ easier to maintain in future (hopefully) > * 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 the location of Ryan Coleman's paper (LaunchPad -> Launchpad) > * Changed pauillac.inria.fr to para.inria.fr > * Made some changes/additions/fixes based on a good FAQ review by Joonas > Pihlaja. Not all of the suggestions have been dealt with yet, but the > FAQ is now less ambiguous in some areas. Thanks Joonas! > * Added stuff about pMARS under Win95 (question 9), and the location of = > a > HTML version of the ICWS'94 draft (question 5). > * New definition: decrement resistant > * Modified the answer to question 1 > * Changed error in P-space question (location 0 can be written to). > * Added links to genetic algorithm resources. > * Added a link to Kendall's page. > * Added new Q&A (code formatting). > > ------------------------------------------------------------------------ > > 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 o= > f > 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 virtua= > l > computer called MARS (for Memory Array Redcode Simulator). The object of th= > e > game is to cause all processes of the opposing program to terminate, leavin= > g > 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= > =2E > 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 =3D (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 i= > s > 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 th= > e > 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= > =2E > 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 =A90-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 =A90-7167-2144-9 .D5173 199= > 0 > 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. 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 and > ftp://www.koth.org/corewar/documents/tutorial.2. > > Steven Morrell has prepared a more practically oriented Redcode tutorial > that discusses different warrior classes with lots of example code. This an= > d > 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'9= > 4 > 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/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 onl= > y > 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 9= > 4 > Warrior, Core Warrior is a newsletter about strategies and current standing= > s > 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.geocities.com/SiliconValley/Park/5427/warrior.htm 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.answer= > s > (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 (Stormking 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 bod= > y > 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 Stormking.Com list processor. To join, send the message > > SUB COREWAR-L FirstName LastName > > to listproc@stormking.com. You can send mail to corewar-l@stormking.com to > post even if you are not a member of the list. Responsible for the > listserver is Scott J. Ellentuch (tuc@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 Stormking. > > [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 point= > s > 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 ha= > s > 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, KotH= > s > 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 overlappin= > g > 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 divide= > d > up among the sites. The way you submit warriors to both KotHs is pretty muc= > h > 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 tha= > t > 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 I= > nstr. > Size Size Processes Distance Fought = > Set > Tie Length > Pizza's ICWS > '94 Draft Hill Ex= > tended > (Accessed with 25 8000 8000 80000 100 100 200 IC= > WS '94 > ";redcode-94") Dr= > aft > Pizza's > Beginner's Hill Ex= > tended > (Accessed with 25 8000 8000 80000 100 100 200 IC= > WS '94 > ";redcode-b") Dr= > aft > Pizza's > Experimental Ex= > tended > (Small) Hill 25 800 800 8000 20 20 200 IC= > WS '94 > (Accessed with Dr= > aft > ";redcode-x") > Pizza's Limited > Process (LP) Ex= > tended > Hill (Accessed 25 8000 8 80000 200 200 200 IC= > WS '94 > with Dr= > aft > ";redcode-lp") > Stormking's > ICWS '88 > Standard Hill 20 8000 8000 80000 100 100 250 IC= > WS '88 > (Accessed with > ";redcode") > Stormking's > ICWS '94 > Experimental Ex= > tended > (Big) Hill 20 55440 55440 500000 200 200 250 IC= > WS '94 > (Accessed with Dr= > aft > ";redcode-94x") > Stormking's > ICWS '94 Draft > Multi-Warrior Ex= > tended > Hill (Accessed 10 8000 8000 80000 100 100 200 IC= > WS '94 > with Dr= > aft > ";redcode-94m") > > Notes: > > * 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 assemble= > d > 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 Cor= > e > 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 asse From: jwilkinson@mail.utexas.edu Subject: Re: Baldur`s Gate Date: 1999/01/15 Message-ID: <006d35147150f19FE3@mail3.austin.rr.com>#1/1 >Wer hat schon Erfahrung damit? Who has experience with it[Baldur's Gate?]? >Wenn ja, wo sind die R�uber in Kapitel 3 ??? If so, where is the robber in level 3? --- I translate it, and I'm still confused as hell. Hehe. -jkw From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Stone/Imps Date: 1999/01/15 Message-ID: #1/1 Greetings... (again) Do all the stone/imps currently on the hill have a core-clear? Are continuously launching imps more popular than those with a fixed number of processes? Cheers, John From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Tuesday Afternoon Date: 1999/01/15 Message-ID: #1/1 Greetings... Anyone have a theory on what Tuesday Afternoon might be? It's scores against other warriors seem to be a perculiar mix. John From: jwilkinson@mail.utexas.edu Subject: Re: Tuesday Afternoon Date: 1999/01/17 Message-ID: <018f82549201119FE5@mail5.austin.rr.com>#1/1 >Greetings... > >Anyone have a theory on what Tuesday Afternoon might be? It's >scores against other warriors seem to be a perculiar mix. > >John I wrote it and I don't even know what it is. Hehehe. :) I remember it's a pspacer but that's it. Oh ya now I remember... whoa weird. I think this is the code that's on Pizza, but... It's got a completely unused copy of Harq's HSA in it. :) Dunno... I've got some logs on my HD of trials with the HSA removed, and it scored worse. Heh. Guess that's why I left the dead code in. :) ;redcode-94 ;name Tuesday Afternoon ;kill Tuesday Afternoon ;author John K W ;strategy pspace: pclear, paper, scanner ;assert 1 org start w0 equ alien w1 equ scan w2 equ pclear; DEAD equ start + 100 PSTATE EQU 145 ; pspace location containing current state STATES EQU (lastp+1-state) ; maximum number of states (for brainwash protection) start think ldp.a #0,in ; get input value load ldp.a #PSTATE,state ; load old state add.ba *in,state ; select correct state table mod.a #STATES,state ; brainwash protection store stp.a *state,load ; store new state state jmp @0, w0 spl #-state, w0 spl #-state, w0 spl #-state, w0 spl #-state, w0 w00 spl #-state, w0 spl #-state+w11, w1 spl #-state+1, w1 spl #-state, w1 spl #-state, w1 spl #-state, w1 spl #-state, w1 w11 spl #-state, w1 spl #-state+w22, w2 spl #-state+1, w2 spl #-state, w2 spl #-state, w2 w22 spl #-state, w2 lastp spl #-state+w00, w0 dat 0, w00-state ;should point to an about-to-switch thingy ;********************** PAPER in dat 0, 1 ;loss iStart spl 1, -1 ;win spl 1, 0 ;tie spl 1, 0 spl 1, 0 spl 1, 0 spl 2, 0 djn.f imp, <-250 add bst, -1 djn.f cSp+cBptr, <-100 bst dat iStep, -100 cBptr equ 3000 iStep equ 2667 alien cBoot spl iStart mov cBomb, cSp+cBptr+198 mov cSp, cSp+cBptr mov cSp+1, cSp+cBptr+1 mov cSp+2, cSp+cBptr+2 mov cSp+3, cSp+cBptr+3 jmp cSp+cBptr, {0 cSp spl #0, <-1151+3 mov 197, cAd-(197*3500) cAd add.ab {0, }0 djn.f -2, <-1151 cBomb dat >-1, >1 imp mov.i #iStep, *0 ;************ BLUR dist equ 2942 ;boot distance step equ 2891 ;scan pattern; -723 might be better time equ 2210 ;number of SPLs copied scan mov btop add #step, #-step*time bstart jmz.f -2, @-1 jmn btop, *btop sp spl 0, 0 mov 2, >btop-4 djn.f -1, >btop-4 dat <1, 6-btop ;************ harq's HSA sFIRST equ (swipe-sptr-SDIST+100) sSTEP equ (8) sptr equ (swipe-5) swdat dat 0 , {0 swspl spl #1 , }1 swipe mov swspl , sptr , >sptr jmn.f swipe , >sptr sscan add #sSTEP , @spptr jmz.f sscan , paGate mov paBomb ,>paGate djn.f -1 ,>paGate dat 0,0 paBomb dat >1,15 From: Paul-V Khuong Subject: Re: Baldur's Gate Date: 1999/01/17 Message-ID: <19990117140952.3419.rocketmail@send106.yahoomail.com>#1/1 jwilkinson@mail.utexas.edu wrote: > > >Wer hat schon Erfahrung damit? > > Who has experience with it[Baldur's Gate?]? > > >Wenn ja, wo sind die R�uber in Kapitel 3 ??? > > If so, where is the robber in level 3? > It's probably an RPG where,in the 3rd level, you need to talk to a robber to get something. > --- > > I translate it, and I'm still confused as hell. Hehe. In what language was that? German(it's gotta be a germanic language)? == Vive le Qu�bec libre... d� souverainistes!!! _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Rosebud type stones Date: 1999/01/18 Message-ID: #1/1 Greetings... Am I right in thinking a Rosebud style stone doesn't perform a coreclear? Both Vain and Brigadeer claim to contain a Rosebud stone, and both do score very well. Cheers, John From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/18/99 Date: 1999/01/18 Message-ID: <199901180500.AAA13349@midgaard.ttsg.com>#1/1 Weekly Status on 01/18/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 : Wed Dec 23 11:27:59 EST 1998 # %W/ %L/ %T Name Author Score Age 1 55/ 32/ 14 Black Moods Ian Oversby 178 3 2 53/ 29/ 17 Controlled Aggression Ian Oversby 177 7 3 39/ 16/ 45 Venom v0.2b Christian Schmidt 161 29 4 31/ 6/ 64 Evol Cap 4 X John Wilkinson 156 76 5 28/ 2/ 69 Evolve X v4.0 John Wilkinson 154 24 6 31/ 19/ 50 Rosebud Beppe 142 55 7 38/ 38/ 24 Dr. Gate X Franz 139 47 8 38/ 44/ 18 Tsunami v0.3 X Ian Oversby 132 1 9 34/ 38/ 28 BigBoy Robert Macrae 130 101 10 39/ 49/ 13 S.E.T.I. 4-X JKW 129 77 11 35/ 42/ 23 Stepping Stone 94x Kurt Franke 127 62 12 38/ 49/ 14 BiShot Christian Schmidt 127 15 13 33/ 41/ 26 Dr. Recover Franz 126 46 14 22/ 20/ 58 Sphere v0.2 Christian Schmidt 125 18 15 35/ 46/ 20 Pagan John K W 124 61 16 35/ 46/ 19 Memories Beppe Bezzi 124 83 17 31/ 38/ 31 Lithium X 8 John K Wilkinson 123 67 18 23/ 24/ 53 Purple v0.1 Christian Schmidt 123 28 19 37/ 55/ 8 HSA Copy 55440 Robert Macrae 120 44 20 33/ 45/ 22 13 Christian Schmidt 120 14 21 31/ 49/ 19 Clipped Star John Metcalf 114 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/18/99 Date: 1999/01/18 Message-ID: <199901180500.AAA13343@midgaard.ttsg.com>#1/1 Weekly Status on 01/18/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 17 21:57:58 EST 1999 # Name Author Score Age 1 otest2 mjp 32 122 2 Clearer v0.2 Ian Oversby 31 129 3 Blur Copy Robert Macrae 29 108 4 scan test-dm -=|:-) 28 2 5 cstest M4 Christian Schmidt 22 80 6 QueensGuard_III P.Kline 17 7 7 Aulder Man Ian Oversby 13 186 8 QueensGuard_IIII P.Kline 12 6 9 Tim Tack P.Kline 9 1 10 QueensGuard_I P.Kline 7 9 11 v15variation Steve Gunnell 0 0 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/18/99 Date: 1999/01/18 Message-ID: <199901180500.AAA13358@midgaard.ttsg.com>#1/1 Weekly Status on 01/18/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 17 21:55:13 EST 1999 # %W/ %L/ %T Name Author Score Age 1 43/ 38/ 19 Boys are Back in Town 1.1 Philip Kendall 147 66 2 43/ 40/ 18 Zooom... John Metcalf 145 41 3 35/ 29/ 36 Recovery Ian Oversby 142 64 4 34/ 29/ 37 The Stormbringer Christian Schmidt 140 75 5 34/ 29/ 37 Blacken Ian Oversby 139 51 6 33/ 28/ 39 Vain Ian Oversby 138 141 7 42/ 47/ 11 Win! David Moore 136 39 8 33/ 31/ 36 Fixed Ken Espiritu 136 124 9 38/ 40/ 23 Floody River P.Kline 136 90 10 24/ 13/ 63 The Fugitive David Moore 135 143 11 30/ 25/ 44 Brigadeer M Joonas Pihlaja 135 60 12 24/ 14/ 62 _romanian_killah_ Costin Bontas rulez 135 33 13 33/ 31/ 36 Baseline Plus Ken Espiritu 134 122 14 30/ 27/ 43 Gemini Dream John K Wilkinson 133 147 15 37/ 42/ 20 The Machine Anton Marsden 132 130 16 34/ 37/ 29 Liquid Fire Christian Schmidt 131 37 17 39/ 48/ 13 Red Carpet David Moore 130 82 18 25/ 20/ 55 test2 John Metcalf 130 1 19 40/ 53/ 7 HeScans P.Kline 127 3 20 30/ 34/ 36 Head or Tail Christian Schmidt 126 112 21 29/ 56/ 16 v15variation Steve Gunnell 102 0 From: KOTH Subject: KOTH.ORG: Status - Standard 01/18/99 Date: 1999/01/18 Message-ID: <199901180500.AAA13339@midgaard.ttsg.com>#1/1 Weekly Status on 01/18/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 10 10:40:21 EST 1999 # %W/ %L/ %T Name Author Score Age 1 37/ 20/ 43 Freight Train David Moore 155 35 2 33/ 21/ 46 Guardian Ian Oversby 145 34 3 41/ 38/ 21 Stasis David Moore 143 142 4 39/ 36/ 26 PacMan David Moore 141 64 5 42/ 44/ 15 Iron Gate Wayne Sheppard 139 360 6 41/ 44/ 14 Blurstone '88 M. J. Pihlaja 138 29 7 37/ 37/ 26 Tangle Trap David Moore 138 108 8 39/ 40/ 21 Beholder's Eye V1.7 W. Mintardjo 137 310 9 40/ 43/ 16 Foggy Swamp Beppe Bezzi 137 31 10 40/ 43/ 17 Blur '88 Anton Marsden 137 72 11 28/ 21/ 51 The Marlboro Man 1.13 M Joonas Pihlaja 136 10 12 35/ 35/ 30 Leapfrog David Moore 135 63 13 26/ 16/ 58 EV Paper John K Wilkinson 135 48 14 28/ 23/ 49 sIMPly.Red v0.85 Leonardo Humberto 134 14 15 35/ 37/ 28 Kitchen Sink Robert Macrae 133 33 16 26/ 19/ 55 Test I Ian Oversby 133 91 17 25/ 21/ 54 Evoltmp 88 John K W 129 85 18 19/ 10/ 71 Trident^2 '88 John K W 128 58 19 23/ 24/ 54 Rocking-Chair v0.55 Leonardo Humberto 121 6 20 24/ 60/ 16 Glass Slipper John Metcalf 88 1 21 9/ 35/ 56 Unnatural Fire John Metcalf 82 0 From: M Joonas Pihlaja Subject: Re: Stone/Imps Date: 1999/01/18 Message-ID: #1/1 On Fri, 15 Jan 1999, John Metcalf wrote: > Greetings... (again) > > Do all the stone/imps currently on the hill have a core-clear? No. Brigadeer doesn't have a clear. > Are continuously launching imps more popular than those with a fixed > number of processes? I suppose on the hill they are. The Stormbringer was once advertised as being Alien with continuous launching imps. Brigadeer too has continuous launching imps, and of course so does Newt. > Cheers, > > John > From: qute@fido.dk (Anders Rosendal) Subject: Comeback Date: 1999/01/19 Message-ID: #1/1 Err All? Can I borrow a min. or two? Well, trying the old deathkiss. Did I get on the hill? From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Congratulations Date: 1999/01/20 Message-ID: #1/1 Pizza wrote: # %W / %L / %T Name Author Score Age 8 28.8/ 23.6/ 47.6 Newt Ian Oversby 134.0 200 Still performing well aged 200 :-) -- John From: M Joonas Pihlaja Subject: Pizza's pen clogged Date: 1999/01/20 Message-ID: #1/1 I mailed Thos about it (just in case someone hasn't done so already). Hopefully they will be up soon. Joonas From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Comeback Date: 1999/01/21 Message-ID: #1/1 Greetings... AR> Well, trying the old deathkiss. AR> Did I get on the hill? The current Beginner hill: # %W / %L / %T Name Author Score Age 1 51.1/31.2/17.7 Spat the dummy. Steve Gunnell 170.9 41 2 45.5/36.5/17.9 Reconnaissance v0.1 Ben Ford 154.6 6 3 43.8/34.4/21.7 No Time To Think A. S. Mehlos 153.3 42 4 35.1/17.3/47.6 Glok Ben Ford 152.9 25 5 45.0/37.8/17.1 Death kiss with a dash of Anders Rosendal 152.2 1 Yes. Oneshots are doing well on the beginners' hill, holding 2nd and now 5th place. -- John From: Anton Marsden Subject: Re: Imp bombs Date: 1999/01/21 Message-ID: #1/1 On Thu, 21 Jan 1999, Benjamin C Ford wrote: > I was wondering if anyone has used imps as bombs. Does > throwing around mov 0,1 work at all or are spl and dat > bombs just better? If the bomb hits, it should start > overwriting the rest of the enemy too. I tried it once, but it didn't seem to work too well. It is an interesting idea though. Anton. From: TTSG Subject: KOTH.ORG and KOTH ICWS outage Date: 1999/01/21 Message-ID: <199901212028.PAA02745@heimdall.ttsg.com>#1/1 Hello, On or about Jan 31, both KOTH.ORG and the KOTH ICWS hills will be down for 2 days of maintenance. We also plan to stop the COREWAR-L list on STORMKING and move it to KOTH.ORG . It is advisable to switch now. We also plan to stop forwarding any warriors sent to STORMKING to KOTH at that point. If there are any questions, please feel free to contact me. Tuc/TTSG From: Benjamin C Ford Subject: Imp bombs Date: 1999/01/21 Message-ID: <199901202241.RAA29589@moe.rose-hulman.edu>#1/1 Hello, I was wondering if anyone has used imps as bombs. Does throwing around mov 0,1 work at all or are spl and dat bombs just better? If the bomb hits, it should start overwriting the rest of the enemy too. -Ben From: fam.blank@t-online.de (J�rg Blank) Subject: the program Date: 1999/01/22 Message-ID: <36A8B40B.6F2A8F8C@t-online.de>#1/1 hi I read in a book about core war. I find it very interesting. But where can I get a good program? Please send answers to my e-mail. Joerg From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Imps as bombs Date: 1999/01/22 Message-ID: #1/1 Greetings... Perhaps instead of using a normal imp as a bomb, how about a mov 0,2. This would then work its way through the enemy code, copying itself over every second instruction, until either a jmp or dat is reached. The enemy will then either be left in a useless loop or die on the dat. Maybe a mov.i #small_number,{0 would be effective, perhaps with a number between 3 and 5. I'm sure this would be more likely to kill the enemy than the previous suggestion. Disclaimer: this is utterly untested - abuse at your own risk. The author is irresponsible in everything he says. (Or something like that!) -- John From: amarsden@mcs.vuw.ac.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1999/01/22 Message-ID: Archive-name: games/corewar-faq Last-Modified: August 5, 1998 =20 Version: 4.0 URL: http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html Copyright: (c) 1998 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. The latest hypertext version is available at http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.html and the latest plain text version is available at=20 http://www.mcs.vuw.ac.nz/~amarsden/corewars/corewar-faq.txt. This document was last modified on August 5, 1998. It is currently being maintained by Anton Marsden (amarsden@mcs.vuw.ac.nz). ------------------------------------------------------------------------ To Do * Make question 17 easier to understand. Add a state diagram? * Upgrade to HTML 4.0, make FAQ easier to maintain in future (hopefully) * 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 the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr * Made some changes/additions/fixes based on a good FAQ review by Joonas Pihlaja. Not all of the suggestions have been dealt with yet, but the FAQ is now less ambiguous in some areas. Thanks Joonas! * Added stuff about pMARS under Win95 (question 9), and the location of = a HTML version of the ICWS'94 draft (question 5). * New definition: decrement resistant * Modified the answer to question 1 * Changed error in P-space question (location 0 can be written to). * Added links to genetic algorithm resources. * Added a link to Kendall's page. * Added new Q&A (code formatting). ------------------------------------------------------------------------ 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 o= f 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 virtua= l computer called MARS (for Memory Array Redcode Simulator). The object of th= e game is to cause all processes of the opposing program to terminate, leavin= g 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= =2E 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 =3D (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 i= s 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 th= e 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= =2E 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 =A90-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 =A90-7167-2144-9 .D5173 199= 0 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. 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 and ftp://www.koth.org/corewar/documents/tutorial.2. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This an= d 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'9= 4 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/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 onl= y 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 9= 4 Warrior, Core Warrior is a newsletter about strategies and current standing= s 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.geocities.com/SiliconValley/Park/5427/warrior.htm 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.answer= s (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 (Stormking 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 bod= y 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 Stormking.Com list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@stormking.com. You can send mail to corewar-l@stormking.com to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (tuc@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 Stormking. [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 point= s 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 ha= s 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, KotH= s 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 overlappin= g 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 divide= d up among the sites. The way you submit warriors to both KotHs is pretty muc= h 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 tha= t 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 I= nstr. Size Size Processes Distance Fought = Set Tie Length Pizza's ICWS '94 Draft Hill Ex= tended (Accessed with 25 8000 8000 80000 100 100 200 IC= WS '94 ";redcode-94") Dr= aft Pizza's Beginner's Hill Ex= tended (Accessed with 25 8000 8000 80000 100 100 200 IC= WS '94 ";redcode-b") Dr= aft Pizza's Experimental Ex= tended (Small) Hill 25 800 800 8000 20 20 200 IC= WS '94 (Accessed with Dr= aft ";redcode-x") Pizza's Limited Process (LP) Ex= tended Hill (Accessed 25 8000 8 80000 200 200 200 IC= WS '94 with Dr= aft ";redcode-lp") Stormking's ICWS '88 Standard Hill 20 8000 8000 80000 100 100 250 IC= WS '88 (Accessed with ";redcode") Stormking's ICWS '94 Experimental Ex= tended (Big) Hill 20 55440 55440 500000 200 200 250 IC= WS '94 (Accessed with Dr= aft ";redcode-94x") Stormking's ICWS '94 Draft Multi-Warrior Ex= tended Hill (Accessed 10 8000 8000 80000 100 100 200 IC= WS '94 with Dr= aft ";redcode-94m") Notes: * 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 assemble= d 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 Cor= e 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 o= r 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, fo= r 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 tha= n 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 memor= y 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 o= f 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 p= ointer 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 nothin= g 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 locatio= ns seq start+400*s1+200, start+400*s1+300 ;check two locatio= ns 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 nothin= g 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 cop= y 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= =2E 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: IMPSIZE EQU 2667 example spl 1 ; extend by adding more spl = 1's spl 1 djn.a @imp, #0 ; jmp @ a series of pointers dat #0, imp+(3*IMPSIZE) dat #0, imp+(2*IMPSIZE) dat #0, imp+(1*IMPSIZE) dat #0, imp+(0*IMPSIZE) imp mov.i #0, IMPSIZE [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) The rec.games.corewar FAQ is Copyright =A9 1998 and maintained by Anton Marsden (amarsden@mcs.vuw.ac.nz). ------------------------------------------------------------------------ From: wgarner@my-dejanews.com Subject: Re: Imp bombs Date: 1999/01/22 Message-ID: <78aajp$3oo$1@nnrp1.dejanews.com>#1/1 In article <199901202241.RAA29589@moe.rose-hulman.edu>, fordbc@pandora.nextwork.rose-hulman.edu wrote: > Hello, > > I was wondering if anyone has used imps as bombs. Does > throwing around mov 0,1 work at all or are spl and dat > bombs just better? If the bomb hits, it should start > overwriting the rest of the enemy too. > > -Ben > I'm not sure, as I'm a beginner at this, but it seems to me that that it could work. You'd have to be sure you hade a good imp-gate set up so you could actually kill the enemy's processes before they get to you. So you'll have to be clever to keep up the bombing and the gate at the same time, but I think it can be done. I think the best thing about it is that it dodges the enemy's imp-gates, since your imps get dropped in behind the gate (if they hit, anyway) -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own From: wgarner@my-dejanews.com Subject: genetic algs. Date: 1999/01/23 Message-ID: <78d1sv$9et$1@nnrp1.dejanews.com>#1/1 I understand that there are some people using corewar as a vehicle for genetic algorithms study. What algorithms do people use out there? I'm quite interested in genetic algs in general and in this application of them in specific. I would appreciate a pointer to people who do this stuff. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own From: qute@trustme.dk (Anders Rosendal) Subject: Re: Comeback Date: 1999/01/24 Message-ID: #1/1 Err John? Can I borrow a min. or two? Torsdag 21. Januar 1999 09:12, John Metcalf havde et problem og skrev til All: AR>> Well, trying the old deathkiss. AR>> Did I get on the hill? > The current Beginner hill: > # %W / %L / %T Name Author Score Age > 1 51.1/31.2/17.7 Spat the dummy. Steve Gunnell 170.9 41 > 2 45.5/36.5/17.9 Reconnaissance v0.1 Ben Ford 154.6 6 > 3 43.8/34.4/21.7 No Time To Think A. S. Mehlos 153.3 42 > 4 35.1/17.3/47.6 Glok Ben Ford 152.9 25 > 5 45.0/37.8/17.1 Death kiss with a dash of Anders Rosendal 152.2 1 > Yes. Oneshots are doing well on the beginners' hill, holding 2nd and > now 5th place. And the crowd goes wild ;-) From: "Screamer" Subject: Core War "slang" Date: 1999/01/24 Message-ID: <009101be47c7$fd29ed80$6000a8c0@screamer>#1/1 Just a quick question: is there a complete and up to date FAQ or something that lists all those Core War termini like "oneshot", "spiral clears" and all that stuff and also explains them in detail. I have not been able to find a nearly complete text on them... Regards --------------------------------- REALITY.SYS not found. Universe halted. From: M Joonas Pihlaja Subject: Re: Rosebud type stones Date: 1999/01/24 Message-ID: #1/1 On Wed, 20 Jan 1999, John Metcalf wrote: > Greetings... > > Am I right in thinking a Rosebud style stone doesn't perform > a coreclear? Both Vain and Brigadeer claim to contain a Rosebud > stone, and both do score very well. Rosebud/Blue Funk sustains a long mod 5 bombing run by shifting the pattern each pass. When all things work right, it completely covers core and then some (1.5 times). I'll have to check, but I think it's possible to convert the stone into a partial clear/add clear after the bombing phase. Anyway, there's some good explanation in CW 6 and Steven Morrell's post (from Planar's site) of Blue Funk. > Cheers, > > John > Joonas +cw From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Rosebud type stones Date: 1999/01/25 Message-ID: #1/1 Greetings... On Sun, 24 Jan 1999, Joonas wrote: MJP> Rosebud/Blue Funk sustains a long mod 5 bombing run by shifting MJP> the pattern each pass. When all things work right, it completely MJP> covers core and then some (1.5 times). I'll have to check, MJP> but I think it's possible to convert the stone into a partial MJP> clear/add clear after the bombing phase. Anyway, there's MJP> some good explanation in CW 6 and Steven Morrell's post MJP> (from Planar's site) of Blue Funk. I know how the older Emerald type stones worked, but I wasn't sure if Rosebud has any improvements. It is possible to mutate into an add clear - though to get it to work I had to remove the djn stream to make sure the timing was just right. I wrote an Emerald type stone which is mod-2 a while back. Sadly, it doesn't go too well with a continuous imp-launcher. In fact, I couldn't get anything less than mod-4 to co-exist nicely with an imp-launcher. :-( John +cw From: wtnewton@filter.nc5.infi.net (Terry) Subject: Re: genetic algs. Date: 1999/01/25 Message-ID: <36ac286c.98640505@news.nc5.infi.net>#1/1 wgarner@my-dejanews.com wrote: >I understand that there are some people using corewar as a vehicle for >genetic algorithms study. What algorithms do people use out there? I'm quite >interested in genetic algs in general and in this application of them in >specific. I would appreciate a pointer to people who do this stuff. I have a webpage about evolving corewarriors, it's at: http://nc5.infi.net/~wtnewton/corewar/evol/ Includes links to other sites and papers and my experiences with a couple of evolvers and one I made myself. The methods I've used aren't exactly genetic algorithms, they make random modifications to copies of the code and battle the results against each other, keeping the winner. Over time the code gets stronger, up to a point. It is a demonstration of the principles of mutation and survival of the fittest. Terry Newton Remove "filter." to email. From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/25/99 Date: 1999/01/25 Message-ID: <199901250500.AAA25441@midgaard.ttsg.com>#1/1 Weekly Status on 01/25/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 24 12:02:15 EST 1999 # %W/ %L/ %T Name Author Score Age 1 43/ 38/ 18 Boys are Back in Town 1.1 Philip Kendall 148 78 2 43/ 39/ 17 Zooom... John Metcalf 148 53 3 37/ 28/ 34 Recovery Ian Oversby 147 76 4 28/ 13/ 59 _romanian_killah_ Costin Bontas rulez 143 45 5 27/ 12/ 60 The Fugitive David Moore 142 155 6 36/ 30/ 33 Fixed Ken Espiritu 142 136 7 44/ 47/ 9 He Scans Anew P.Kline 142 4 8 35/ 28/ 37 Vain Ian Oversby 142 153 9 36/ 30/ 34 Blacken Ian Oversby 141 63 10 43/ 46/ 11 Win! David Moore 140 51 11 35/ 31/ 34 The Stormbringer Christian Schmidt 140 87 12 39/ 39/ 22 Floody River P.Kline 140 102 13 35/ 31/ 34 Baseline Plus Ken Espiritu 139 134 14 32/ 25/ 43 Brigadeer M Joonas Pihlaja 138 72 15 32/ 27/ 41 Gemini Dream John K Wilkinson 137 159 16 41/ 46/ 13 Red Carpet David Moore 136 94 17 33/ 33/ 34 Head or Tail Christian Schmidt 134 124 18 36/ 37/ 27 Liquid Fire Christian Schmidt 134 49 19 38/ 42/ 20 The Machine Anton Marsden 133 142 20 34/ 42/ 24 Sharkrage Christian Schmidt 127 1 21 11/ 74/ 15 sunlight2 Bill T 47 0 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/25/99 Date: 1999/01/25 Message-ID: <199901250500.AAA25434@midgaard.ttsg.com>#1/1 Weekly Status on 01/25/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 : Wed Dec 23 11:27:59 EST 1998 # %W/ %L/ %T Name Author Score Age 1 55/ 32/ 14 Black Moods Ian Oversby 178 3 2 53/ 29/ 17 Controlled Aggression Ian Oversby 177 7 3 39/ 16/ 45 Venom v0.2b Christian Schmidt 161 29 4 31/ 6/ 64 Evol Cap 4 X John Wilkinson 156 76 5 28/ 2/ 69 Evolve X v4.0 John Wilkinson 154 24 6 31/ 19/ 50 Rosebud Beppe 142 55 7 38/ 38/ 24 Dr. Gate X Franz 139 47 8 38/ 44/ 18 Tsunami v0.3 X Ian Oversby 132 1 9 34/ 38/ 28 BigBoy Robert Macrae 130 101 10 39/ 49/ 13 S.E.T.I. 4-X JKW 129 77 11 35/ 42/ 23 Stepping Stone 94x Kurt Franke 127 62 12 38/ 49/ 14 BiShot Christian Schmidt 127 15 13 33/ 41/ 26 Dr. Recover Franz 126 46 14 22/ 20/ 58 Sphere v0.2 Christian Schmidt 125 18 15 35/ 46/ 20 Pagan John K W 124 61 16 35/ 46/ 19 Memories Beppe Bezzi 124 83 17 31/ 38/ 31 Lithium X 8 John K Wilkinson 123 67 18 23/ 24/ 53 Purple v0.1 Christian Schmidt 123 28 19 37/ 55/ 8 HSA Copy 55440 Robert Macrae 120 44 20 33/ 45/ 22 13 Christian Schmidt 120 14 21 31/ 49/ 19 Clipped Star John Metcalf 114 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/25/99 Date: 1999/01/25 Message-ID: <199901250500.AAA25430@midgaard.ttsg.com>#1/1 Weekly Status on 01/25/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *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 Jan 22 16:14:32 EST 1999 # Name Author Score Age 1 Memories Beppe Bezzi 37 1 2 scan test-dm -=|:-) 34 10 3 Blur Copy Robert Macrae 29 116 4 Clearer v0.2 Ian Oversby 26 137 5 cstest M4 Christian Schmidt 23 88 6 test2(r5) 1 M Joonas Pihlaja 21 4 7 otest2 mjp 20 130 8 test2(r5) 3 M Joonas Pihlaja 17 2 9 test2(r5) 2 M Joonas Pihlaja 12 3 10 QueensGuard_III P.Kline 9 15 11 Aulder Man Ian Oversby 3 194 From: KOTH Subject: KOTH.ORG: Status - Standard 01/25/99 Date: 1999/01/25 Message-ID: <199901250500.AAA25426@midgaard.ttsg.com>#1/1 Weekly Status on 01/25/99 -=- www.KOTH.org is now hosting a '94 No Pspace Hill. -=- View the stats of all the Hills at: www.KOTH.org/standings.html -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Wed Jan 20 08:10:59 EST 1999 # %W/ %L/ %T Name Author Score Age 1 39/ 20/ 41 Freight Train David Moore 159 35 2 35/ 21/ 44 Guardian Ian Oversby 149 34 3 40/ 35/ 26 PacMan David Moore 144 64 4 31/ 21/ 48 The Marlboro Man 1.13 M Joonas Pihlaja 142 10 5 32/ 22/ 45 sIMPly.Red v0.85 Leonardo Humberto 142 14 6 29/ 16/ 55 EV Paper John K Wilkinson 141 48 7 37/ 36/ 27 Leapfrog David Moore 139 63 8 38/ 37/ 26 Tangle Trap David Moore 139 108 9 39/ 40/ 20 Stasis David Moore 139 142 10 28/ 19/ 53 Test I Ian Oversby 138 91 11 37/ 38/ 25 Kitchen Sink Robert Macrae 137 33 12 40/ 44/ 16 Foggy Swamp Beppe Bezzi 136 31 13 41/ 46/ 14 Blurstone '88 M. J. Pihlaja 136 29 14 40/ 44/ 16 Blur '88 Anton Marsden 135 72 15 28/ 21/ 51 Evoltmp 88 John K W 134 85 16 38/ 41/ 21 Beholder's Eye V1.7 W. Mintardjo 134 310 17 22/ 10/ 68 Trident^2 '88 John K W 133 58 18 40/ 46/ 14 Iron Gate Wayne Sheppard 133 360 19 26/ 24/ 50 Rocking-Chair v0.55 Leonardo Humberto 129 6 20 26/ 62/ 12 Glass Slipper John Metcalf 89 1 21 18/ 63/ 18 The Bug Lukasz Adamowski 74 0 From: "Ian Oversby" Subject: Round 5 results available Date: 1999/01/26 Message-ID: #1/1 Hi folks, Round 5 results and round 6 rules are available are available on the website. Note that the rules are in a link off the front page, not the front page as usual. If anyone wants results mailed to them, can they tell me please. My net access is somewhat sporadic at the moment. Ian ______________________________________________________ Get Your Private, Free Email at http://www.hotmail.com From: John.Metcalf@p18.f94.chaos.camelot.co.uk (John Metcalf) Subject: Death-Kiss Date: 1999/01/26 Message-ID: #1/1 Greetings... [Death Kiss Challenge Results] AR> AR> And the crowd goes wild ;-) What are you planning to write next :-) I remember the original version of Death Kiss and it's mysterious strategy line: ;strategy special -- John From: Anton Marsden Subject: Re: Core War "slang" Date: 1999/01/26 Message-ID: #1/1 On Sun, 24 Jan 1999, Screamer wrote: > Just a quick question: is there a complete > and up to date FAQ or something that lists > all those Core War termini like "oneshot", > "spiral clears" and all that stuff and also > explains them in detail. I have not been > able to find a nearly complete text on > them... Well, neither of these terms are in the current FAQ. I guess I better update it. Anton. From: Beppe Bezzi Subject: Re: Rosebud type stones Date: 1999/01/26 Message-ID: <0458f5146061a19MAIL@galactica.it>#1/1 At 21.36 25/01/99 -0500, you wrote: >Greetings... > >On Sun, 24 Jan 1999, Joonas wrote: > >MJP> Rosebud/Blue Funk sustains a long mod 5 bombing run by shifting >MJP> the pattern each pass. When all things work right, it completely >MJP> covers core and then some (1.5 times). I'll have to check, >MJP> but I think it's possible to convert the stone into a partial >MJP> clear/add clear after the bombing phase. Anyway, there's >MJP> some good explanation in CW 6 and Steven Morrell's post >MJP> (from Planar's site) of Blue Funk. > >I know how the older Emerald type stones worked, but I wasn't sure if >Rosebud has any improvements. It is possible to mutate into an add >clear - though to get it to work I had to remove the djn stream to >make sure the timing was just right. > >I wrote an Emerald type stone which is mod-2 a while back. Sadly, it >doesn't go too well with a continuous imp-launcher. In fact, I >couldn't get anything less than mod-4 to co-exist nicely with an >imp-launcher. :-( The main difference beetween Emerald an Blue Funk (Rosy is Blue Funk with som improvements but works exactly the same way) is that Emerald doesnt shift pattern while Blue Funk does start clr spl #0, 0 split spl #-step, -step, step+1 add split, stone cnt djn.f stone, >John > >+cw > > -Beppe From: Paul-V Khuong Subject: Re: Core War "slang" Date: 1999/01/26 Message-ID: <19990124234604.6849.rocketmail@send1e.yahoomail.com>#1/1 Screamer wrote: > > Just a quick question: is there a complete > and up to date FAQ or something that lists > all those Core War termini like "oneshot", > "spiral clears" and all that stuff and also > explains them in detail. I have not been > able to find a nearly complete text on > them... Nope. Here's some(never thought of 'em as slangs): One-shot: a scanner that does one scan and stops doing it if it found something. It then usually go to a multi-pass clear. Spiral clear: a clear that's using a step so that it can halt an imp-spiral by hitting the instruction that's going to be executed with a spl. clear: a bomber that bombs linearly multi pass clear: a clear that's got >1 different instructions used as bombs dclear: a clear that's goin' 100%c in a single way(forward). It does this by using this kinda code: spl #0, 4 ;optional mov.i db, >-1 ; this is normal djn.f -1, >-2 ; this is what makes it go @ 1c db dat.f >5335, 5 ; the >5335 has been found to be the ;best by Paul Kline. == Vive le Qu�bec libre... d� souverainistes!!! _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com From: Christopher Geffrey Dorrington Subject: jMARS is coming Date: 1999/01/26 Message-ID: <36AD9B84.86BB7E50@cogs.susx.ac.uk>#1/1 Hey hey! I am currently in the process of creating a Java MARS - Completely platform independent, and mouse/GUI driven. I have no idea whether anyone has done this before, but if they have maybe they would like to share any problems they encountered before I devote more of my time to it! If not, then watch this space... jMARS '99..... Chris. From: "Robert Macrae" Subject: Re: Imp bombs Date: 1999/01/26 Message-ID: <01be4931$efd03f20$64010101@MARK>#1/1 > I was wondering if anyone has used imps as bombs. Does > throwing around mov 0,1 work at all or are spl and dat > bombs just better? If the bomb hits, it should start > overwriting the rest of the enemy too. I think it could be useful in some special circumstances, and I have tried it (unsuccessfully) as a method of "cleaning up" after a QS attack. Usually, however, you are better going for a kill or a stun because the imp bomb will be useless against Silks -- or indeed any warrior with widely-spaced multiple components. From: Philip Kendall Subject: Re: Core War "slang" Date: 1999/01/26 Message-ID: #1/1 "Screamer" writes: > Just a quick question: is there a complete > and up to date FAQ Yes. It's posted here fortnightly(?) -- see DejaNews. > or something that lists > all those Core War termini like "oneshot", > "spiral clears" and all that stuff and also > explains them in detail. Read lots of Core Warriors :-) (An index is linked from the FAQ). HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: genetic algs Date: 1999/01/27 Message-ID: <78nsrd$o2a$1@tron.sci.fi>#1/1 On 27 Jan 1999 03:52:27 -0500, Paul-V Khuong (paul_virak_khuong@yahoo.com) wrote: : Terry wrote: : > with a couple of evolvers and one I made myself. The methods : > I've used aren't exactly genetic algorithms, they make random : > modifications to copies of the code and battle the results against [snip] : mutation)? Do you think that it should be like random swapping? Anyone : wanna try to use a chromosome system or something like that, where the : genetic code is then exprimed in redcode? I've occasionally thought about ways to improve the limited success of previous CW evolution experiments. A few points I've considered are: * So far the most successful attempts have only evolved a specific feature of an otherwise constant warrior, such as p-switching rules. (I haven't heard of any highly successful step size combinations obtained by evolutionary algorithms, but good results have been achieved by a simple brute-force search. This may be because the search space isn't smooth enough.) * Compared to DNA, (human-written) redcode has very little redundance. Many published evolved varriors, on the other hand, contain at least 50% redundant instructions, and evolution seems to reach a plateau when further improvements would make the code too vulnerable to mutations. * Increasing code size offers no obvious help to the redundance problem, as there is a significant selection pressure against large warriors. This also doesn't help with the fact that many important components such as bootstrap and scan routines are very fragile. * Introducing external aspects (hidden code, component coding) to the evolutionary process seems a bad idea if the purpose is to evolve a successful redcode warrior, as all they do is add an artificial bias to the fitness function. Especially bad are cases like hidden code, which can mutate without directly affecting the fitness of the warrior. (Introns in DNA do affect fitness, if only by existing.) Still, this may be a necessary evil. These considerations suggest that while redcode can evolve, it can't very well evolve to evolve - that is, it can't effectively form structures that are simultaneously capable of scoring well, surviving occasional harmful mutations, and evolving further. My idea, which I so far haven't had time to try, would be to include meta-information about a specific mutation rate for each instruction (perhaps affecting nearby instructions as well) and/or part of instruction. These mutation rates might be multiplied by ad hoc values for each type of instruction, so that a DAT would mutate more often than a JMP. Of course, the mutation rates themselves could mutate as well. (As for how the mutation rate of a mutation rate is determined, that probably again calls for an ad hoc formula. In DNA such mechanism have of course themselves evolved from random origins.) This isn't really the worst kind of external feature, since while the mutation rates won't directly affect the fitness of a warrior, they most certainly affect the fitness of its descendants. It is hoped that this way the critical parts of the code can evolve low mutation rates while those useful for adaptation can mutate more often. Anyway, that's just my e0.02 worth.. -- Ilmari Karonen (iltzu@sci.fi) | Was at a bookstore today, [snip] and noticed http://www.sci.fi/~iltzu/ | "Microsoft Internet Explorer 4 for Dummies" Will fix broken HTML for food | . . . and thought "Yes". -- Jeff Vinocur From: wtnewton@filter.nc5.infi.net (Terry) Subject: Re: genetic algs Date: 1999/01/27 Message-ID: <36af3f9b.111256122@news.nc5.infi.net>#1/1 Paul-V Khuong wrote: >Where's the aproximate max. in most evolvers?? "max" I ever got was around 80 wilkies... if that's what you mean. >Anyone has tried to make one with "true" evolution("mating" & >mutation)? Do you think that it should be like random swapping? Anyone >wanna try to use a chromosome system or something like that, where the >genetic code is then exprimed in redcode? I think the original Evolver programs used mating, possibly others. From the code I've seen the results weren't any "stronger" than straight mutation, strength measured by battling against human-made warriors. The problem with crossing is transplanting a block of code from one warrior to another almost never works unless the two parents are similar and the transplanted code is placed in about the same relative position. A more practical approach is to let the warriors evolve using copy and random mutation and if during the copy process another of the same species exists next to it, randomly select lines from both warriors when making a copy. That way mixed code stays in about the same position, much more likely to work. A chromosome system where each gene represents a block of code and its constants would be another approach... but combining blocks of code into something that actually works sounds like a very hard thing to program! Perhaps the genes could be options for a redcode generator program? Then there wouldn't be any code-level mixing at all, just combinations of generator options. The disadvantage of this approach, besides the obvious of providing an automated way to cheat, is evolved warriors in my opinion are much more interesting when they arise from nothing. Terry Newton Remove "filter." to email. From: Philip Kendall Subject: Re: Imp bombs Date: 1999/01/27 Message-ID: #1/1 sylvester writes: >


How does one attack widely spaced wariior like spirals ? 1) By posting in text, not html :-) 2) Basically, you stun as much as you can with split bombs (or close variants), then kill them all with some dats a bit later. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ \ http://www.geocities.com/SiliconValley/Park/5427/corewar.htm / From: Paul-V Khuong Subject: Re: genetic algs Date: 1999/01/27 Message-ID: <19990127030304.22365.rocketmail@send101.yahoomail.com>#1/1 Terry wrote: > > wgarner@my-dejanews.com wrote: > > >I understand that there are some people using corewar as a vehicle for > >genetic algorithms study. What algorithms do people use out there? I'm quite > >interested in genetic algs in general and in this application of them in > >specific. I would appreciate a pointer to people who do this stuff. > > I have a webpage about evolving corewarriors, it's at: > http://nc5.infi.net/~wtnewton/corewar/evol/ > Includes links to other sites and papers and my experiences > with a couple of evolvers and one I made myself. The methods > I've used aren't exactly genetic algorithms, they make random > modifications to copies of the code and battle the results against > each other, keeping the winner. Over time the code gets stronger, > up to a point. It is a demonstration of the principles of mutation > and survival of the fittest. Where's the aproximate max. in most evolvers?? Anyone has tried to make one with "true" evolution("mating" & mutation)? Do you think that it should be like random swapping? Anyone wanna try to use a chromosome system or something like that, where the genetic code is then exprimed in redcode? Just some thoughts... == Vive le Qu�bec libre... d� souverainistes!!! _________________________________________________________ DO YOU YAHOO!? Get your free @yahoo.com address at http://mail.yahoo.com From: ttsg@ttsg.com Subject: Re: KOTH.ORG and KOTH ICWS outage Date: 1999/01/29 Message-ID: <78t0nf$nn$1@nnrp1.dejanews.com>#1/1 In article <199901212028.PAA02745@heimdall.ttsg.com>, ttsg@ttsg.com wrote: > Hello, > > On or about Jan 31, both KOTH.ORG and the KOTH ICWS hills will be > down for 2 days of maintenance. > > We also plan to stop the COREWAR-L list on STORMKING and move it > to KOTH.ORG . It is advisable to switch now. > > We also plan to stop forwarding any warriors sent to STORMKING to > KOTH at that point. > > If there are any questions, please feel free to contact me. > > Tuc/TTSG > > This has been called off due to some problems. Please stayed tuned. Tuc/TTSG -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own From: Robert Macrae Subject: Re: Imp bombs Date: 1999/01/29 Message-ID: <36B1EF00.4C84@dial.pipex.com>#1/1 Philip Kendall wrote: > >


How does one attack widely spaced wariior like spirals ? > > 2) Basically, you stun as much as you can with split bombs (or close > variants), then kill them all with some dats a bit later. There are other ways to get spirals, for example to overwrite one strand of a 3-point with something like DAT <2667,<2*2667 which will disrupt all 3 strands of a 3-point. Or you could bomb in a spiral pattern, to pick off each strand one after another. Or gate. Or throw carpet bombs like MOV.i #0, {1 which, if executed by the tail-end process of a spiral, will copy itself over the rest of a MOV.i #NNNN, *0 spiral. The problem with all these methods is they are weak against everything but spirals... so stun and wipe is often the best general method. Look at "He Scans Alone" for a very powerfull implementation. -- Regards, Robert Macrae From: M Joonas Pihlaja Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/30 Message-ID: #1/1 On Sat, 30 Jan 1999, line noise wrote: This isn't probably what you're looking for, but here goes. > IF there are aney pages on using RedCode as a languege to > write non-violent programs i would gladly recieve pointers > to them. I'm not aware of any pages devoted to exactly that, but there /are/ nonviolent programs out there. Most programs are written for tournaments that have a no-fight round in them, and the rest are recreational programs that spuriously float to r.g.c. ( While looking up on some of the info here I was really impressed by how much work Planar has put into his Core War page. Everybody, send your Kudos to this man. Planar, Thanks for a great resource! http://para.inria.fr/~doligez/corewar/ ) Tournaments in chronological order: 1. Michael[ Constant]'s New Core War Tournament had a factoring round. No web page for the tournament itself, but Planar has a page on it in his warrior archive under "Listing by types of components". (Re: Core War Slang - there are pretty nice descriptions of the various types there too). The url to the listing by types is: http://para.inria.fr/~doligez/corewar/by-types/idx.htm and click on "factor". 2. Nandor[ Sieben]'s and Stefan[ Strack]'s Fall Core War Tournament had a sorting round. The sorting round was round 4. http://para.inria.fr/~doligez/corewar/nsfcwt/nsfcwt.htm 3. Anton[ Marsden]'s Core War Tournament had a sorting round, and a "Create the best visual effect using the graphical core display" round. I don't remember if this one has a designated web page, but at least the entries are archived: The sorting warriors are at: "http://para.inria.fr/~doligez/corewar/Anton'sTournamentRnd1.txt" ...and the pretty picture warriors at: "http://para.inria.fr/~doligez/corewar/Anton'sTournamentRnd3.txt" 4. Ilmari[ Karonen]'s Mini-Tournament featured a variant of the Iterated Prisoners Dilemma. This one turned out mostly nonviolent. http://www.sci.fi/~iltzu/corewar/imt1/ There are also some nonviolent programs posted to r.g.c. once in a (long) while. The authors that come to mind are Steven Morrell, Planar, Nandor Sieben, and Stefan Strack. There are probably heaps of benign redcode programs out there, but as there's no hill to compete on, they don't get published. Go see: http://para.inria.fr/~doligez/corewar/by-author/idx.htm I hope that helps some, Joonas From: mikeash@csd.uwm.edu (Mike Ash) Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/30 Message-ID: #1/1 In article , ln@mdi.ca (line noise) wrote: >IF there are aney pages on using RedCode as a languege to >write non-violent programs i would gladly recieve pointers >to them. Ohhh no, let's not get that "violence in software" debate started again. :) -- HeghmoH the CodeWarrior Mike Ash - http://www.uwm.edu/~mikeash/ Use the Dvorak keyboard layout: easier, faster and less painful http://www.dvorakint.org From: ln@mdi.ca (line noise) Subject: pointers please to non-violent programs in RedCode Date: 1999/01/30 Message-ID: #1/1 IF there are aney pages on using RedCode as a languege to write non-violent programs i would gladly recieve pointers to them. Thanks. -- ----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.6.2 mQCPAjBLsOcAAAED/ArhyRBT+BCUswtoZjflht+IJR1OOv5FiaTJ3lRvXPDfBCAt a32Z7T+p7PJkEEWz5rnWaUMgNS8bVM0exU9hAjT7frkZogOjZ7z0OyLQRqwuDFAx RilC0PNvi/8KsDxVU9/pjnQxwEiEWpw1jF0L31YmXSiXKQCvUiUD/HERsCpdABEB AAG0IUxpbmUgTm9pc2U8T3V0IE9mIFBhcGVyIEAgaWQuY29tPokAlQIFEDBtpuMl A/xxEbAqXQEBqSgD/Ao9nLK1XflDLrWX/UazWAe2Z3WsiJBJjukSeTgTH8GPNjbq HCaTOEpX736OmAhGEBntcqYWPe+opbj9IPfLabka+UAYin6xNuhU3vNzx10Bnv59 HnL8L3p2owc2+FY/4tlKkeLvqOo7e9SiAF9ULnlQ4KzPhypIoMqdIDWt8+Sf =BadZ -----END PGP PUBLIC KEY BLOCK----- From: M Joonas Pihlaja Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/31 Message-ID: #1/1 On 31 Jan 1999, Philip Kendall wrote: > M Joonas Pihlaja writes: > > > This [IMT#1] one turned out mostly nonviolent. > > I wouldn't say that: the warriors were just pswitchers between > Carbonite and Timescape. My entries were generally violent, unless > fighting themselves, when they went into a suicide loop. Heh.. I guess I misread the top warriors trying to cooperate and split wins as friendly behaviour. Hey, they just wanted to be friends. :-) Even your Type Three Quantum Singularity scores near 50/50 with Robert Macrae's Altruist 2/3 and my Variations 1. > > Phil > Joonas From: Robert Macrae Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/31 Message-ID: <36B48319.4282@dial.pipex.com>#1/1 line noise wrote: > > >IF there are aney pages on using RedCode as a languege to > >write non-violent programs i would gladly recieve pointers > >to them. > > I wish to thank all of you for your input. > I shall be digesting for some time. I don't have much to add to the existing pointers, but perhaps you could tell us why you are interested? -- Regards, Robert Macrae From: ln@mdi.ca (line noise) Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/31 Message-ID: #1/1 In article , ln@mdi.ca (line noise) wrote: >IF there are aney pages on using RedCode as a languege to >write non-violent programs i would gladly recieve pointers >to them. > >Thanks. > I wish to thank all of you for your input. I shall be digesting for some time. >-- >----BEGIN PGP PUBLIC KEY BLOCK----- >Version: 2.6.2 > >mQCPAjBLsOcAAAED/ArhyRBT+BCUswtoZjflht+IJR1OOv5FiaTJ3lRvXPDfBCAt >a32Z7T+p7PJkEEWz5rnWaUMgNS8bVM0exU9hAjT7frkZogOjZ7z0OyLQRqwuDFAx >RilC0PNvi/8KsDxVU9/pjnQxwEiEWpw1jF0L31YmXSiXKQCvUiUD/HERsCpdABEB >AAG0IUxpbmUgTm9pc2U8T3V0IE9mIFBhcGVyIEAgaWQuY29tPokAlQIFEDBtpuMl >A/xxEbAqXQEBqSgD/Ao9nLK1XflDLrWX/UazWAe2Z3WsiJBJjukSeTgTH8GPNjbq >HCaTOEpX736OmAhGEBntcqYWPe+opbj9IPfLabka+UAYin6xNuhU3vNzx10Bnv59 >HnL8L3p2owc2+FY/4tlKkeLvqOo7e9SiAF9ULnlQ4KzPhypIoMqdIDWt8+Sf >=BadZ >-----END PGP PUBLIC KEY BLOCK----- -- ----BEGIN PGP PUBLIC KEY BLOCK----- Version: 2.6.2 mQCPAjBLsOcAAAED/ArhyRBT+BCUswtoZjflht+IJR1OOv5FiaTJ3lRvXPDfBCAt a32Z7T+p7PJkEEWz5rnWaUMgNS8bVM0exU9hAjT7frkZogOjZ7z0OyLQRqwuDFAx RilC0PNvi/8KsDxVU9/pjnQxwEiEWpw1jF0L31YmXSiXKQCvUiUD/HERsCpdABEB AAG0IUxpbmUgTm9pc2U8T3V0IE9mIFBhcGVyIEAgaWQuY29tPokAlQIFEDBtpuMl A/xxEbAqXQEBqSgD/Ao9nLK1XflDLrWX/UazWAe2Z3WsiJBJjukSeTgTH8GPNjbq HCaTOEpX736OmAhGEBntcqYWPe+opbj9IPfLabka+UAYin6xNuhU3vNzx10Bnv59 HnL8L3p2owc2+FY/4tlKkeLvqOo7e9SiAF9ULnlQ4KzPhypIoMqdIDWt8+Sf =BadZ -----END PGP PUBLIC KEY BLOCK----- From: Philip Kendall Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/31 Message-ID: #1/1 M Joonas Pihlaja writes: > On Sat, 30 Jan 1999, line noise wrote: > > > IF there are aney pages on using RedCode as a languege to > > write non-violent programs i would gladly recieve pointers > > to them. > > 4. Ilmari[ Karonen]'s Mini-Tournament featured a variant of the Iterated > Prisoners Dilemma. > > This one turned out mostly nonviolent. I wouldn't say that: the warriors were just pswitchers between Carbonite and Timescape. My entries were generally violent, unless fighting themselves, when they went into a suicide loop. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | New? Read the FAQ: http://www.kendalls.demon.co.uk/cssfaq/ | | The Threat to Spectrum Emulation: | \ http://www.geocities.com/SiliconValley/Park/5427/threat.html / From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: pointers please to non-violent programs in RedCode Date: 1999/01/31 Message-ID: <791aru$2hr$1@tron.sci.fi>#1/1 On Sat, 30 Jan 1999 23:35:12 +0200, M Joonas Pihlaja (jpihlaja@cc.helsinki.fi) wrote: : 4. Ilmari[ Karonen]'s Mini-Tournament featured a variant of the Iterated : Prisoners Dilemma. : This one turned out mostly nonviolent. : http://www.sci.fi/~iltzu/corewar/imt1/ I suppose it depends on your definition of nonviolent - the winning programs seemed to me quite eager to harm _themselves_.. ;-) -- <-- Ilmari Karonen --><-- http://www.sci.fi/~iltzu/ --><-- iltzu@sci.fi --> "I am a student at UC Berkeley, and I am taking this class where we have to go to a news group and ask an "intelligent question"." -- a luser in a.a-a