From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) Subject: Pizza... Date: 1998/02/01 Message-ID: #1/1 Anyone know when Pizza is likely to be fixed, I've submitted about 6 or 7 warriors and had no results :-( Are there any other tournaments on the way, I am too late to enter R.M. Cheers John From: Ryan Coleman Subject: Re: Pizza... Date: 1998/02/02 Message-ID: <34D5A996.290A@erinet.com>#1/1 JOHN METCALF wrote: > > Anyone know when Pizza is likely to be fixed, I've submitted > about 6 or 7 warriors and had no results :-( > > Are there any other tournaments on the way, I am too late to > enter R.M. > > Cheers > > JohnNO you're not too late. I do believe the rules say entry in a previous round is not a requirement to enter the next round. Enter the next round, send in a scanner. Ryan Coleman From: Philip Kendall Subject: Re: Core warrior Date: 1998/02/02 Message-ID: #1/1 JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) writes: > Did I see a reference to something called 'Core Warrior' here a couple > of time? Is this some kind of journal or something? Core Warrior is a newsletter, published fairly often (hopefully at least monthly) by a few people on this newsgroup. The next one (#65) will appear sometime soon (namely, when I get my act together :-) ), whilst all the previous issues are archived at Planar's site (http://pauillac.inria.fr/~doligez/corewar/). HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: KOTH Subject: SKI-ICWS: Status - ICWS Experimental 94 02/02/98 Date: 1998/02/02 Message-ID: <199802020500.AAA21552@midgaard.ttsg.com>#1/1 Weekly Status on 02/02/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Tue Jan 6 20:36:54 EST 1998 # %W/ %L/ %T Name Author Score Age 1 35/ 5/ 59 Evol Cap 4 X John Wilkinson 166 35 2 47/ 34/ 19 Dr. Gate X Franz 161 6 3 37/ 15/ 48 Rosebud Beppe 158 14 4 47/ 40/ 13 Memories Beppe Bezzi 154 42 5 42/ 34/ 25 Dr. Recover Franz 149 5 6 40/ 35/ 24 BigBoy Robert Macrae 146 60 7 43/ 43/ 14 Stepping Stone 94x Kurt Franke 143 21 8 41/ 41/ 17 Trouble Zul Nadzri 141 1 9 38/ 35/ 27 Lithium X 8 John K Wilkinson 140 26 10 44/ 49/ 8 S.E.T.I. 4-X JKW 139 36 11 42/ 45/ 13 Pagan John K W 138 20 12 34/ 30/ 36 Falcon v0.3 X Ian Oversby 138 8 13 37/ 37/ 26 Tornado 2.0 x Beppe Bezzi 136 59 14 40/ 44/ 16 xpander Zul Nadzri 135 2 15 38/ 43/ 19 Fire Master Xv1 JS Pulido 133 57 16 42/ 51/ 7 HSA Copy 55440 Robert Macrae 133 3 17 29/ 32/ 39 Variation M-1 Jay Han 126 15 18 36/ 47/ 17 Illusion-94/55 Randy Graham 125 17 19 38/ 51/ 11 Tsunami v0.1 Ian Oversby 124 13 20 36/ 50/ 14 Frontwards v2 Steven Morrell 123 65 21 32/ 45/ 22 Derision M R Bremer 120 52 From: KOTH Subject: SKI-ICWS: Status - Standard 02/02/98 Date: 1998/02/02 Message-ID: <199802020500.AAA21544@midgaard.ttsg.com>#1/1 Weekly Status on 02/02/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Tue Jan 27 12:35:21 EST 1998 # %W/ %L/ %T Name Author Score Age 1 41/ 31/ 28 Leapfrog David Moore 152 7 2 35/ 24/ 41 Test Wayne Sheppard 146 199 3 30/ 16/ 53 Test I Ian Oversby 144 35 4 31/ 20/ 49 Evoltmp 88 John K W 143 29 5 39/ 36/ 25 Tangle Trap David Moore 142 52 6 40/ 43/ 17 Blur '88 Anton Marsden 137 16 7 22/ 8/ 70 Trident^2 '88 John K W 137 2 8 37/ 38/ 25 PacMan David Moore 136 8 9 40/ 43/ 17 Iron Gate Wayne Sheppard 136 304 10 38/ 40/ 22 Stasis David Moore 136 86 11 29/ 22/ 49 Simple '88 Ian Oversby 135 65 12 28/ 23/ 49 CAPS KEY IS STUCK AGAIN Steven Morrell 134 176 13 27/ 20/ 52 ttti nandor sieben 134 160 14 37/ 40/ 23 Gisela 3G6 Andrzej Maciejczak 134 73 15 26/ 19/ 55 Rosebud 88 Beppe 133 41 16 26/ 20/ 54 Cannonade P.Kline 133 210 17 37/ 41/ 22 Beholder's Eye V1.7 W. Mintardjo 132 254 18 39/ 46/ 15 Test Anton Marsden 131 6 19 38/ 47/ 16 Test Anton Marsden 129 1 20 34/ 46/ 20 Gisela 609 Andrzej Maciejczak 122 48 21 5/ 59/ 36 my_first_try_c Andreas Schamanek 52 0 From: KOTH Subject: SKI-ICWS: Status - MultiWarrior 94 02/02/98 Date: 1998/02/02 Message-ID: <199802020500.AAA21548@midgaard.ttsg.com>#1/1 Weekly Status on 02/02/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Mon Jan 19 10:47:04 EST 1998 # Name Author Score Age 1 Aulder Man Ian Oversby 5006 35 2 Time to send in the imps Robert Hale 5006 6 3 Die Hard P.Kline 5006 81 4 Sad 4.9 Robert Macrae 5006 1 5 Multi Kulti Christian Schmidt 5006 7 6 IMPossible! Maurizio Vittuari 5006 48 7 Ultra Ken Espiritu 5006 2 8 MulDemon J.A.Denny 5006 18 9 Ultra Ken Espiritu 5006 3 10 U-lat v3.8 Zul Nadzri 4994 13 11 Die Hard Copy Robert Macrae after 4982 0 From: sd@ecst.csuchico.edu (Thomas H. Davies) Subject: Re: What's up with pizza? Date: 1998/02/02 Message-ID: <6b3lq4$q0b$1@hubble.csuchico.edu>#1/1 In article <6b3ehq$5d8@srvr1.engin.umich.edu>, andrew fabbro wrote: >The pizza hill is apparently nonfunctional-- submissions are acknowledged >but disappear. > >I've e-mailed the operators with no response. Anyone know what's >going on? The hill has been frozen since 1/26. > >starting to shake and twitch for his fix, > >-- > Andrew Fabbro [afabbro@umich.edu] www-personal.umich.edu/~afabbro > "Solutions are not answers to problems." -- Richard Nixon Sorry guys, my access is sporadic at best these days. I'll try to implement a fix right now, and if that doesn't work I'll try to get back to it later this week if possible. Hang in there, I'll fix it as quick as I can. -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~\/~~\ /~~~\/\ / \ \ / /~\ /~~~~~YY~~~\\ /~~ Thomas "Thos" Davies V \/\ /\ V / V |\/\/| V\ / sd@ecst.csuchico.edu V \ / | / | V Internet Pizza Server \/ | /\ | Member C.W.M. Corewar King of the Hill information |/oo\| CAVE ON Since 1987 http://www.ecst.csuchico.edu/~pizza/koth/ |/\| From: Brett Greenfield Subject: Re: Beginner question from a beginner Date: 1998/02/03 Message-ID: <6bb27q$93p@bgtnsc03.worldnet.att.net>#1/1 HowAHolt wrote: > > Hello, everyone... > > One true beginner here, having some typical problems geting the hang of the > instruction modifiers and modes... hope I can get some advice. > > I'm trying to optimize my first attempt at a replicator, and I'm trying to use > > Move MOV.I {Step, JMN.A Move, Step > ... > Step DAT.F #Offset, #Step first problem is you got them reversed second you seem to be testing the wrong value for the wrong thing it wont stop copying till it over-writes the DAT try this for foward copy Move MOV.I }Step,>Step JMN.A Move,Step MOV.I Back,@Step ... Back DAT #Move-Step,#Offset Step DAT #Move,#Offset or an adaptation of one of my early programs for backward min EQU (CORESIZE/800) fst EQU (min*389) step EQU (min*73) ORG start tmp DAT sce+1,sce+1+fst top MOV.A #sce+2,tmp ADD #step+(sce-tmp),tmp start MOV {tmp,tmp JMP >tmp for 5 DAT 1,1 rof sce DAT 1,1 END From: "Gene R Gomez" Subject: Re: Pizza... Date: 1998/02/03 Message-ID: <199802030424.XAA04613@fcp.essex.navy.mil>#1/1 > JohnNO you're not too late. I do believe the rules say entry in a previous > round is not a requirement to enter the next round. Enter the next > round, send in a scanner. Geez...all this talk about scanners. What's up with this? I haven't entered (barely enough time to read e-mail), but I'd be interested in finding out what this pre-occupation with scanners is... LLL, Gene Gomez From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1998/02/03 Message-ID: Archive-name: games/corewar-faq Last-Modified: 95/10/12 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is TCWN? 8. How do I join? 9. What is the EBS? 10. Where are the Core War archives? 11. Where can I find a Core War system for ...? 12. I do not have FTP. How do I get all this great stuff? 13. I do not have access to Usenet. How do I post and receive news? 14. Are there any Core War related WWW sites? 15. When is the next tournament? 16. What is KotH? How do I enter? 17. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 18. How does SLT (Skip if Less Than) work? 19. What is the difference between in-register and in-memory evaluation? 20. What does (expression or term of your choice) mean? 21. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ 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] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 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. [ToC] _________________________________________________________________ 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 . This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorial, and . Steven Morrell (morrell@math.utah.edu) is preparing a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. Mail him for a preliminary version. Michael Constant (mconst@csua.berkeley.edu) is reportedly working on a beginner's introduction. [ToC] _________________________________________________________________ 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 post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. 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.csua.berkeley.edu. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, 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). [ToC] _________________________________________________________________ What is TCWN? Since March of 1987, "The Core War Newsletter" (TCWN) has been the official newsletter of the ICWS. It is published quarterly and recent issues are also available as Encapsulated PostScript files. [ToC] _________________________________________________________________ How do I join? For more information about joining the ICWS (which includes a subscription to TCWN), or to contribute an article, review, cartoon, letter, joke, rumor, etc. to TCWN, please contact: Jon Newman 13824 NE 87th Street Redmond, WA 98052-1959 email: jonn@microsoft.com (Note: Microsoft has NO affiliation with Core War. Jon Newman just happens to work there, and we want to keep it that way!) Current annual dues are $15.00 in US currency. [ToC] _________________________________________________________________ What is the EBS? The Electronic Branch Section (EBS) of the ICWS is a group of Core War enthusiasts with access to electronic mail. There are no fees associated with being a member of the EBS, and members do reap some of the benefits of full ICWS membership without the expense. For instance, the ten best warriors submitted to the EBS tournament are entered into the annual ICWS tournament. All EBS business is conducted in the rec.games.corewar newsgroup. The current goal of the EBS is to be at the forefront of Core War by writing and implementing new standards and test suites. [ToC] _________________________________________________________________ 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 (128.32.149.19) in the /pub/corewar directories. 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. Much of what is available on soda is also available on the German archive at iraun1.ira.uka.de (129.13.10.90) in the /pub/x11/corewars directory. The plain text version of this FAQ is automatically archived by news.answers. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/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 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 ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. 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 ftp.csua.berkeley.edu: 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 ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ 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@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ 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 ; pizza's is . A third WWW site is in Koeln, Germany: . Last but not least, Stephen Beitzel's "Unofficial Core War Page" is . All site are in varying stages of construction, so it would be futile to list here what they have to offer. [ToC] _________________________________________________________________ When is the next tournament? The ICWS holds an annual tournament. Traditionally, the deadline for entering is the 15th of December. The EBS usually holds a preliminary tournament around the 15th of November and sends the top finishers on to the ICWS tournament. Informal double-elimination and other types of tournaments are held frequently among readers of the newsgroup; watch there for announcements or contact me. [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com) and "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) 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. (Also, see 5 below). 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. 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-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m or ;redcode-94xm. The former three run at "pizza", the latter four at "stormking". More information on these hills is listed below. 3) Mail this file to koth@stormking.com or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) 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. 5) 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 20 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 20 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. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow three experimental opcodes and addressing modes currently not covered in the ICWS'94 draft document: 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] _________________________________________________________________ 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 under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ 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. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ 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 Color 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. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. 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. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: 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] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). 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: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: Christian Schmidt Subject: Re: Pizza... Date: 1998/02/03 Message-ID: #1/1 On Sun, 1 Feb 1998, JOHN METCALF wrote: > Anyone know when Pizza is likely to be fixed, I've submitted > about 6 or 7 warriors and had no results :-( > > Are there any other tournaments on the way, I am too late to > enter R.M. It's never to late. You only missed the points for the first round. I'm loking for your second round entry. > Cheers > > John > > Christian Schmidt From: Brett Greenfield Subject: yes i made it Date: 1998/02/04 Message-ID: <6bj3bu$4pt@bgtnsc03.worldnet.att.net>#1/1 This is a multi-part message in MIME format. --------------53662E9D638E Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit I finally made it on an expert hill it is one of my first silk pappers I would however like input on how to improve it as for beginners you can look at it now that i am on an expert hill i am officially sheding my begginer status !!! and yes these are the constants used. make an anti CyberBunny if you want it is fine with me for you to try, but you won't do much better then an average scanner --------------53662E9D638E Content-Type: text/plain; charset=us-ascii; name="BRETT025.RED" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="BRETT025.RED" ;Copyright (c) 1998 by Brett Greenfield ;redcode-94m ;name CyberBunny ;author Compudemon ;assert 1 mst EQU (647) tp SPL 1 MOV -1,0 SPL 60 SPL 50 SPL 40 SPL 30 SPL 20 SPL 10 cld ldf for 7 SPL @0,mst+(61*(ldf)) MOV }-1,>-1 JMP -2,{-2 for 6 DAT <-1,}10 rof rof --------------53662E9D638E-- From: Brett Greenfield Subject: what's a Q^2 scanner Date: 1998/02/04 Message-ID: <6bdh4e$dff@bgtnsc02.worldnet.att.net>#1/1 is there any faqs or stuff that explain what a Q^2 scanner is or an imp ring or silk paper carpet bombers core clear one shots ect ... are i need ideas and knoledge so that i can counter these strategies From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: Beginner question from a beginner Date: 1998/02/04 Message-ID: <34d875d4.4580165@news.lrz-muenchen.de>#1/1 On 4 Feb 1998 06:02:46 GMT, howaholt@aol.com (HowAHolt) wrote: >Hello, everyone... > >One true beginner here, having some typical problems geting the hang of the >instruction modifiers and modes... hope I can get some advice. > >I'm trying to optimize my first attempt at a replicator, and I'm trying to use > >Move MOV.I {Step, JMN.A Move, Step > ... >Step DAT.F #Offset, #Step > >to set up a decrementing copy loop. Seems I can't get the MOV.I to do the >proper move, even with some longer expressions to compensate for the relative >positions. Can MOV.I use the A-value of the intermediate A-instruction with >that Predecrement A Indirect mode? mov.i copies the whole thing, so there shouldn't be a problem... >Or should I split the DAT pointers to >separate locations, both in B-fields? Any advice would be most appreciated... > >Howard Alan Holt (howaholt@aol.com) Hm, I can only guess what is not working. with { and <, at the moment you copy the DAT at Step, it get's decremented BEFORE it gets copied, so in the next incarnation of the replicator the values won't be correct anymore. I think with this style of replicator, you have no choice but updating the pointer every time, like pointer dat 0,0 data dat #offset, #step start mov.i data, pointer Move mov.i {pointer,>pointer; jmn.a Move,pointer ... (Although I remember someone posting a lp-hill replicator which was one instruction shorter, maybe he managed to get round it, but I don't remember). Are you playing on the '88 hill? On the '94 beginner and pro hill, you won't stand much chance with that kind of replicator - you should look into silks( taking advantage of } and >). I am not a specialist on them, maybe somebody else will point you to a good example. Also I am sure there was a hint about it in one of the earlier Corewarriors (e.g. you could find it in the compiled hints'). For lp and 88 style, I think using djn would be more efficient, as at present pointer gets copied twice. So perhaps Move mov.i *pointer, Subject: Re: Beginner question from a beginner Date: 1998/02/04 Message-ID: <6badhl$410@news-rocq.inria.fr>#1/1 >From: howaholt@aol.com (HowAHolt) > >Move MOV.I {Step, JMN.A Move, Step > ... >Step DAT.F #Offset, #Step [...] >Can MOV.I use the A-value of the intermediate A-instruction with >that Predecrement A Indirect mode? Yes, this is exactly what it is supposed to do. Don't you have the source and destination reversed ? MOV a, b moves FROM a TO b. >Any advice would be most appreciated... My advice would be to learn to use the pMars debugger, it can be immensely useful. Just don't look at the more advanced features at first. -- Planar From: Paul Kline Subject: Re: Pizza... Date: 1998/02/04 Message-ID: <34D83DDC.E5145744@drake.edu>#1/1 It's a psyc. I'm encouraging you to submit a scanner because I'm going to submit a tiny stone that will kill your program about 90% of the time. Or am I really going to submit a paper that kills stones and I don't want you to submit a scanner? :-) Paul Kline paul.kline@drake.edu Gene R Gomez wrote: > > > JohnNO you're not too late. I do believe the rules say entry in a previous > > round is not a requirement to enter the next round. Enter the next > > round, send in a scanner. > > Geez...all this talk about scanners. What's up with this? I haven't entered > (barely enough time to read e-mail), but I'd be interested in finding out what > this pre-occupation with scanners is... > > LLL, > Gene Gomez From: howaholt@aol.com (HowAHolt) Subject: Beginner question from a beginner Date: 1998/02/04 Message-ID: <19980204060201.BAA26707@ladder02.news.aol.com>#1/1 Hello, everyone... One true beginner here, having some typical problems geting the hang of the instruction modifiers and modes... hope I can get some advice. I'm trying to optimize my first attempt at a replicator, and I'm trying to use Move MOV.I {Step, Subject: Re: Pizza... Date: 1998/02/04 Message-ID: #1/1 Gene R Gomez wrote: : Geez...all this talk about scanners. What's up with this? I haven't entered : (barely enough time to read e-mail), but I'd be interested in finding out what : this pre-occupation with scanners is... The interest is by those wishing to enter bombers. ;-) John K. Lewis ^^^^^ From: Philip Kendall Subject: Re: Beginner question from a beginner Date: 1998/02/05 Message-ID: #1/1 bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) writes: > Hm, I can only guess what is not working. with { and <, at the moment > you copy the DAT at Step, it get's decremented BEFORE it gets copied, > so in the next incarnation of the replicator the values won't be > correct anymore. I think with this style of replicator, you have no > choice but updating the pointer every time, like > > pointer dat 0,0 > data dat #offset, #step > start mov.i data, pointer > Move mov.i {pointer,>pointer; > jmn.a Move,pointer > ... > (Although I remember someone posting a lp-hill replicator which was > one instruction shorter, maybe he managed to get round it, but I don't > remember). That would be my 'Tribbles' then (available from Planar's archive). Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: what's a Q^2 scanner Date: 1998/02/06 Message-ID: #1/1 Brett Greenfield writes: > is there any faqs or stuff that explain > what a Q^2 scanner is Core Warriors 37 and 40. > or an imp ring either the FAQ or Steven Morrell's Book, Chapter 1 (available on Pizza or Stormking) > or silk paper Core Warriors 1 and 3. > carpet bombers A good introduction to scanners is in Core Warriors 2 and 4. > core clear FAQ, or see Core Warrior 44 for more details. > one shots A scanner which scans until it finds one thing, then switches to a core clear. All these Core Warrior numbers gleaned from the (plug, plug) Core Warrior Index: http://www.geocities.com/SiliconValley/Park/5427/warrior.htm HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Core Warrior 65 Date: 1998/02/06 Message-ID: .xX$$x. .x$$$$$$$x. d$$$$$$$$$$$ ,$$$$$$$P' `P' , . $$$$$$P' ' .d b $$$$$P b ,$$x ,$$x ,$$x ,$$b $$. Y$$$$' `$. $$$$$$. $$$$$$ $$P~d$. d$$$b d d$$$ `$$$$ ,$$ $$$$$$$b $$$P `$ $$$b.$$b `Y$$$d$d$$$' . . a . a a .aa . a `$$$ ,$$$,$$' `$$$ $$$' ' $$P$XX$' `$$$$$$$$$ .dP' `$'$ `$'$ , $''$ `$'$ `Y$b ,d$$$P `$b,d$P' `$$. `$$. , `$$P $$$' Y $. $ $ $ Y..P $ `$$$$$$$' $$$P' `$$b `$$$P `P `$' `Y'k. $. $. $. $$' $. Issue 65 6 February, 1998 ______________________________________________________________________________ Core Warrior is a newsletter promoting the game of corewar. Emphasis is placed on the most active hills--currently the '94 draft hill and the beginner hill. Coverage will follow where ever the action is. If you have no clue what I'm talking about then check out these five-star internet locals for more information: FAQs are available from: ftp://rtfm.mit.edu/pub/usenet/news.answers/games/corewar-faq.Z http://www.koth.org/corewar-faq.html FTP site is: ftp://ftp.csua.berkeley.edu/pub/corewar Mirrored at: ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror and: ftp://www.koth.org/corewar pMARS itself is also available from: Stormking web pages--http://www.koth.org/pmars.html Terry's web page--http://www.ncs.infi.net/~wtnewton/corewar/ Fechter ftp site--ftp://members.aol.com/ofechner/corewar Web pages are at: http://www.koth.org/ ;Stormking http://www.ecst.csuchico.edu/~pizza/koth ;Pizza http://pauillac.inria.fr/~doligez/corewar/ ;Planar Newbies should check the stormking page for the FAQ, language specification, guides, and tutorials. Post questions to rec.games.corewar. All new players are infinitely welcome! A collection of Bezzi's hints in the first issues is available at: ftp://ftp.volftp.vol.it/pub/pc/msdos/games/solutions/bbhints.zip ______________________________________________________________________________ Hello again. All change on the '94 Hill this week -- see below for details. Also, don't forget the Redcode Maniacs Tournament, being run by Christian Schmidt and myself; visit http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm for info. Sorry this issue is a little short, but with Pizza being down my testing has been somewhat curtailed :-( Thanks to Paul Kline for revealing one of the secrets behind Alladin's Cave -- see the hint section. -- Philip Kendall _____________________________________________________________________________ Current Status of the Internet Pizza Server ICWS '94 Draft Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 rounds fought: 200 instruction set: ICWS '94 Draft # %W / %L / %T Name Author Score Age 1 42.1/ 38.0/ 20.0 The Next Baron Christian Schmidt 146.2 2 2 37.2/ 33.7/ 29.2 Fire and Ice David Moore 140.6 1 3 41.2/ 43.0/ 15.9 Alladins Cave P.Kline 139.4 12 4 34.0/ 29.1/ 36.9 Fixed Ken Espiritu 138.9 11 5 31.5/ 24.3/ 44.2 Newt Ian Oversby 138.7 105 6 32.7/ 28.0/ 39.2 Vain Ian Oversby 137.4 27 7 39.5/ 42.9/ 17.6 Silver Talon 1.2 Edgar 136.1 13 8 39.8/ 43.6/ 16.5 The Boys are Back in Town Philip Kendall 136.1 9 9 34.3/ 32.5/ 33.2 Nomolos Ian Oversby 136.0 16 10 31.7/ 27.9/ 40.5 Vigor Ken Espiritu 135.5 15 11 28.8/ 22.9/ 48.3 Benchmark [94] Zul Nadzri 134.7 27 12 37.2/ 40.9/ 21.9 Electric Head Anton Marsden 133.5 114 13 35.3/ 37.6/ 27.1 Tornado 4 Beppe Bezzi 132.9 29 14 29.0/ 25.7/ 45.4 Ultraviolet-B Ken Espiritu 132.3 37 15 30.5/ 28.8/ 40.7 Vengeance Robert Hale 132.2 62 16 31.6/ 31.2/ 37.1 obvious to those who know Robert Macrae 132.0 63 17 29.6/ 28.0/ 42.3 Pulp v0.5 Ian Oversby 131.2 62 18 39.7/ 49.1/ 11.2 He Scans Alone P.Kline 130.3 4 19 30.5/ 31.2/ 38.3 test JKW 129.9 1 20 31.2/ 32.7/ 36.1 traumatic smurf bjoern guenzel 129.7 3 21 31.2/ 32.8/ 36.0 Nine Seven Six M R Bremer 129.6 223 22 33.6/ 37.9/ 28.6 Digitalis 3 Christian Schmidt 129.2 5 23 33.3/ 37.7/ 29.0 PAN-TAU-RA Christian Schmidt 128.8 12 24 23.3/ 18.0/ 58.7 Metal IIa Ivan Krajnovic 128.6 6 25 30.2/ 33.8/ 35.9 The Return of the PaperBo Robert Hale 126.7 4 Age since last issue: 6 ( 26 last issue, 31 the issue before ) New warriors: 7 Turnover/age rate 117% Average age: 34 ( 53 last issue, 63 the issue before ) Average score: 134 ( 142 last issue, 136 the issue before ) The top 25 warriors are represented by 15 independent authors: Oversby with 4, Schmidt and Espiritu with 3, Kline and Hale with 2, and everyone else with just the one. Paul Kline's Alladin's Cave dominated the Hill at the start with a good lead, before Schmidt came back with The New Baron to take the lead, with David Moore's Fire and Ice close behind. Also, this week saw the loss of by far the oldest warrior on the hill, John K Wilkinson's Return of the Jedimp, leaving the hill with its youngest age since its formation. ______________________________________________________________________________ 94 - What's New # %W / %L / %T Name Author Score Age ?? ??.?/ ??.?/ ??.? Metal IIa Ivan Krajnovic ???.? ? 16 36.0/ 38.6/ 25.5 Digitalis 3 Christian Schmidt 133.4 1 16 41.6/ 50.0/ 8.4 He Scans Alone P.Kline 133.2 0 20 31.9/ 32.8/ 35.4 The Return of the PaperBo Robert Hale 131.0 1 ?? ??.?/ ??.?/ ??.? traumatic smurf bjoern guenzel ???.? ? 1 43.9/ 37.1/ 19.1 The Next Baron Christian Schmidt 150.7 0 2 37.0/ 33.9/ 29.1 Fire and Ice David Moore 140.1 0 19 30.5/ 31.2/ 38.3 test JKW 129.9 1 ______________________________________________________________________________ 94 - What's No More # %W / %L / %T Name Author Score Age 26 1.9/ 2.0/ 0.0 He Scans Again P.Kline 5.9 3 26 (killed) Red Baron Christian Schmidt 26 34.0/ 41.7/24.4 Stasis David Moore 126.3 8 26 ??.?/ ??.?/??.? Return Of The Jedimp John K W ???.? 357? 26 38.2/ 52.0/ 9.8 Memories Beppe Bezzi 124.5 32 26 34.8/ 43.3/21.8 HnK II Ivan Krajnovic 126.3 8 26 ??.?/ ??.?/??.? Head or Tail Christian Schmidt ???.? ??? 26 35.5/ 44.8/19.7 It's not a trick Christian Schmidt 126.2 14 If someone could confirm the ages of Jedimp and Head or Tail when they were pushed off, that would be appreciated. ______________________________________________________________________________ 94 - What's Old # %W / %L / %T Name Author Score Age 21 31.2/ 32.8/ 36.0 Nine Seven Six M R Bremer 129.6 223 14 35.6/ 40.3/ 24.1 Electric Head Anton Marsden 131.0 108 5 31.5/ 24.3/ 44.2 Newt Ian Oversby 138.7 105 Two of the old guard (Return of the Jedimp and Head or Tail) are pushed off, whilst Newt joins the 100+ club. ______________________________________________________________________________ OLD HALL OF FAME * means the warrior is still active. Pos Name Author Age Strategy 1 Thermite II Robert Macrae 2262 Qscan -> bomber 2 Impfinity v4g1 Planar 1993 Stone/ imp 3 Jack in the box Beppe Bezzi 1620 P-warrior 4 Tornado 3.0 Beppe Bezzi 1567 Bomber 5 Torch t18 P.Kline 1539 Bomber 6 Chameleon Myer R Bremer 1437 P-warrior 7 Frontwards v2 Steven Morrell 1420 One shot scanner 8 Evol Cap 6.6 John Wilkinson 1299 Imp / stone 9 quiz Schitzo 1262 Scanner/ bomber 10 T.N.T. Maurizio Vittuari 1204 Bomber 11 Grilled Octopus v0.5 David Boeren 1154 P-warrior 12 Hazy Shade II John Wilkinson 1102 P-warrior 13 Stepping Stone Kurt Franke 1049 Qscan -> Vampire 14 Rosebud Beppe Bezzi 993 Stone/ imp 15 Iron Gate 1.5 Wayne Sheppard 926 CMP scanner 16 T.N.T. pro Maurizio Vittuari 925 Bomber 17 Agony II Stefan Strack 912 CMP scanner 18 Barrage Anton Marsden 876 Qscan -> replicator 19 Blue Funk Steven Morrell 869 Stone/ imp 20 Flurry Anton Marsden 835 Qscan -> pwarrior 21 Thermite 1.0 Robert Macrae 802 Qscan -> bomber 22 Blue Funk 3 Steven Morrell 766 Stone/ imp 23 Night Train Karl Lewin 755 Replicator 24 Mirage 1.5 Anton Marsden 736 Scanner/ bomber 25 Blizzard Anton Marsden 713 Qscan -> replicator ______________________________________________________________________________ NEW HALL OF FAME * means the warrior is still active. Pos Name Author Age Strategy 1 Probe Anton Marsden 403 Q^2 -> Bomber 2 Blur 2 Anton Marsden 396 Scanner 3 Damage Incorporated Anton Marsden 373 Q^2 -> Bomber 4 Return Of The Jedimp John K W 357(?) Q^2 -> Stone/imp 5 unrequited love kafka 346 Q^2 -> Paper 6 Impish v0.2 Ian Oversby 345 Stone/imp 7 Gigolo Core Warrior staff 332 Q^2 -> Stone/imp 8 Falcon v0.3 Ian Oversby 275 P-warrior 9 Nine Seven Six M R Bremer 223 * Q^2 -> Stone/imp 10 Rosebud Beppe 218 Stone/imp 11 Q^2 Miro Anders Ivner 214 Q^2 -> Scanner/bomber 12 Instant Wolf 3.4 Edgar 205 P-warrior 13 Goldfinch P.Kline 201 P-warrior 14 Simple v0.4b Ian Oversby 197 QScan -> Stone/imp 15 Trident^2 John K W 195 Q^2 -> Stone/imp 16 ompega Steven Morrell 189 Stone/imp 17 Frogz Franz 172 Q^2 -> Paper 18 The Machine Anton Marsden 164 Scanner 19 Memories Beppe 152 Scanner 20 Head or Tail Christian Schmidt 141(?) Q^2 -> Paper 21 Tiberius 3.1 Franz 130 Q^2 -> Paper 22 Solomon v0.8 Ian Oversby 116 Stone and scanner 23 Electric Head Anton Marsden 108 * P-warrior 24 CC Paper 3.3 Franz 107 Q^2 -> Paper 25 mrb-test m r bremer 106 ? (Ages with ? need confirming) Nine Seven Six creeps up a place, whilst Electric Head enters and kicks T.N.T. pro off; Newt is just outside the top 25. ______________________________________________________________________________ Current Status of the Internet Pizza Server Beginner's Hill: Hill Specs: coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 maximum age: At age 100, warriors are retired. rounds fought: 200 instruction set: ICWS '94 Draft # %W / %L / %T Name Author Score Age 1 52.3/ 9.8/ 37.9 Metal IIa Ivan Krajnovic 194.8 22 2 52.2/ 11.7/ 36.1 Metal II Ivan Krajnovic 192.6 60 3 50.2/ 8.0/ 41.9 Vain Ian Oversby 192.4 100 4 45.3/ 23.3/ 31.4 HnK II Ivan Krajnovic 167.3 94 5 31.8/ 14.0/ 54.1 p-U v.2 Ryan Coleman 149.6 24 6 29.7/ 11.7/ 58.6 Moderation II Andy Nevermind 147.7 98 7 33.4/ 26.4/ 40.1 I.R. Baboon v1 Gene Gomez 140.4 31 8 36.5/ 36.5/ 27.0 Voodoo Glow Skull v2.1 Gene Gomez 136.4 33 9 33.9/ 35.8/ 30.3 QScissor Ryan Coleman 132.1 32 10 23.8/ 21.8/ 54.5 cascade 12,41 Steve Gunnell 125.8 1 11 20.7/ 18.1/ 61.1 Paper Test v3 Gene Gomez 123.3 52 12 36.4/ 51.1/ 12.6 Iced Creamer Compudemon 121.7 9 13 26.0/ 31.4/ 42.7 archangel John K. Lewis 120.5 15 14 29.9/ 42.2/ 27.9 Tornado -1.0 George Eadon 117.5 2 15 32.6/ 49.4/ 18.0 I am EMCFDT Compudemon 115.9 13 16 15.8/ 16.4/ 67.8 saturn 3 Steve Gunnell 115.2 36 17 21.6/ 28.0/ 50.4 Werewolf 1.25 Compudemon 115.1 10 18 27.2/ 39.8/ 32.9 KPO 2.02 Csaba Biro 114.6 16 19 16.7/ 28.8/ 54.5 Q-paper v1 Gene Gomez 104.6 21 20 21.5/ 43.1/ 35.3 RTFM John K. Lewis 99.9 17 21 15.7/ 34.2/ 50.2 qDeath v .269 Ryan Coleman 97.2 26 22 16.2/ 39.8/ 44.0 Pure Genius 1.21 Compudemon 92.5 11 23 3.9/ 1.8/ 2.3 Tornado 3.0 Beppe 13.9 6 24 0.2/ 92.9/ 6.9 NO v .069 Ryan Coleman 7.4 4 25 0.3/ 0.3/ 3.4 cascade 27,20 Steve Gunnell 4.3 14 26.9/ 28.7/ 36.9 Top 25 Averages 117.7 29 The very low proportion of wins on the hill (26.9%) suggests to me that a scanner would be a good idea here. Also, I would tend to say that you learn more about Core War by trying to write one component very well, rather than a p-spacer; would anyone object if the b-hill were made no pspace? ______________________________________________________________________________ The Hint (by Paul Kline) A while back I posted a 3-line bomber which performed somewhat better than the usual mod-4/5 version by modifying its step one or more times during the battle. Since that time I have uncovered a number of these that actually dat-bomb nearly ninety percent of core without self-destructing and use an efficient starting step. These are remarkably effective against cmp-scanners and also against larger self-splitting bombers because they have an improved ability to destroy spl-zero instructions. The trick in designing these is to find an ascending or descending sequence of steps that never leads to a self-bomb. The initial step is somewhat flexible since you can choose the starting bomb location and the number of bombs dropped, after that each step will drop 4000 bombs in 12000 cycles. Six full steps occupy 72000 cycles, leaving one or two partial runs. So we need a series of seven or eight sequential steps, some of which are mod-4/5/8 or greater, and some of which are imp numbers. The imp numbers have to be chosen such that they can bomb 4000 locations while leaving at least one gap of three locations for the bomber to hide in. In spite of these requirements the NUM8000.DAT file reveals quite a few candidate series. Tesing a series amounts to choosing a starting position for the first bomb, and the number of bombs that the first step is allowed. Watch it run and see how long before a self-bomb. Adjust the starting position or number and try again. There must be many, many of these that I did not identify, but here are some of them, one of which is used by Alladin's Cave. sStep equ 5266 Stone mov }1629 ,1-sStep sub.x #sStep ,-1 jmp -2 ,}-2 sStep equ 4954 Stone mov {1601 ,1-sStep sub.x #sStep ,-1 jmp -2 ,}-2 sStep equ 4154 Stone mov {1685 ,1-sStep sub.x #sStep ,-1 jmp -2 ,}-2 sStep equ 3174 Stone mov {1545 ,1-sStep sub.x #sStep ,-1 jmp -2 ,}-2 sStep equ 3054 Stone mov {1481 ,1-sStep sub.x #sStep ,-1 jmp -2 ,}-2 I have found these bombers to be as close to a silver bullet against cmp-scanners as can be hoped, and since several of those scanners have come back to the 94 Hill, this accounts for much of the success of Alladin's Cave. That plus the one-shot scanner killer "CLP". AC loses terribly to qscanning replicators and fast bombers, but also wins 70-90% against some good opponents. It does not contain a HSA-type scanner which I miss, but does include a mini one-shot that gets some wins against replicators. Now that Christian has replaced Red Baron with The Next Baron AC looks a little less magical. Red Baron gave up 90% losses to AC, while The Next Baron only gives up 44%. Paul Kline ______________________________________________________________________________ Questions? Concerns? Comments? Complaints? Mail them to people who care. Authors: Beppe Bezzi , Anton Marsden , Christian Schmidt and Philip Kendall From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: what's a Q^2 scanner Date: 1998/02/06 Message-ID: <34dafcf4.3633174@news.lrz-muenchen.de>#1/1 On 6 Feb 1998 00:23:21 GMT, mooredav@cps.msu.edu (David Matthew Moore) wrote: [...] > >One of the best ways to learn modern strategy is to read back issues of >Core Warrior. You can get these from Planar's archive: > > http://pauillac.inria.fr/~doligez/corewar/ > >...and yes, there is a FAQ (although it could use a big update): > > http://www.koth.org/corewar-faq.html > >Happy coding! > >- David Perhaps it would be good to compile the hints into one (or several) files again, like it happened with the earlier ones. I can imagine that downloading and browsing 64 Core Warriors separately can be a bit unconvenient. For learning about imp rings, I also recommend 'the first corewar book' which can be found at pizza. Bjoern P.S.: Now that I brought it up, I should probably do the compilation myself. I wouldn't mind, only not right now... But maybe later (well, in a month or so), if nobody else does it. From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: what's a Q^2 scanner Date: 1998/02/06 Message-ID: <6bdl5p$j7v$1@msunews.cl.msu.edu>#1/1 Brett Greenfield (compudemon2@yahoo.com) wrote: : is there any faqs or stuff that explain : what a Q^2 scanner is : or an imp ring : or silk paper : carpet bombers : core clear : one shots : ect ... : are i need ideas and knoledge so : that i can counter these strategies One of the best ways to learn modern strategy is to read back issues of Core Warrior. You can get these from Planar's archive: http://pauillac.inria.fr/~doligez/corewar/ ...and yes, there is a FAQ (although it could use a big update): http://www.koth.org/corewar-faq.html Happy coding! - David From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) Subject: Corewarrior Date: 1998/02/08 Message-ID: #1/1 Greetings... Line 20 from the new hall of fame is missing, where message is split into two. Would someone be kind enough to post the line for me. Many thanks, John From: Ryan Coleman Subject: Re: yes i made it Date: 1998/02/08 Message-ID: <34DE205A.58D4@erinet.com>#1/1 Brett Greenfield wrote: > > I finally made it on an expert hill > it is one of my first silk pappers > I would however like input on how to improve > it as for beginners you can look at it > now that i am on an expert hill i am officially sheding my > begginer status !!! > > Is pizza running properly again. I tried a test when I first saw your message and didn't get anything, and didn't get anything today. Is it back up or did you get this on there before it stopped working? Ryan Coleman From: lar1 Subject: Evolution Of Warriors Date: 1998/02/08 Message-ID: <34DDECF5.C4256800@bigfoot.com>#1/1 Hello, I remember a discussion in this group a while back, about mutateing Warriors. To make them evolve, and change stragity. At the time of this disscussion, I didn't know enough red-code (Bearly know it now...). I am wondering where some resources on this topic would be found, as I belive it would be a VERY effective stragity, and want to imlement it. -Lar1 "If the universe is curved, nothing can be truly stright...": From: "John K. Lewis" Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: #1/1 Philip Kendall wrote: : The problem with any GAs involving Redcode is that the instruction set : is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 : modes*8000 locations)^100=something very large, and the chances of : producing an effective warrior are pretty small. I don't think that : anyone has ever produced a really effective warrior using GAs (I think : there's one on the Tiny Hill, which has a much smaller instruction : space). : Phil You are right, there are too many instructions, and if you just added together randomly you will obviously be searching forever. But if you limit the search to more statistically close areas to actual winning warriors, then you may find something. To this end, if you weight the instructions to actual "archtype" instructions, you increase you chances. This is the thrust of my current searching algorythm. John K. Lewis ^^^^^ From: Erwin Achermann Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: <34DF291F.48059D4E@inf.ethz.ch>#1/1 Philip Kendall wrote: > > lar1 writes: > > > I remember a discussion in this group a while back, about mutateing > > Warriors. To make them evolve, and change stragity. At the time of > > this disscussion, I didn't know enough red-code (Bearly know it > > now...). I am wondering where some resources on this topic would be > > found, as I belive it would be a VERY effective stragity, and want to > > imlement it. > > The problem with any GAs involving Redcode is that the instruction set > is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 > modes*8000 locations)^100=something very large, and the chances of > producing an effective warrior are pretty small. I don't think that > anyone has ever produced a really effective warrior using GAs (I think > there's one on the Tiny Hill, which has a much smaller instruction > space). > > Phil Just for fun--to show to power of ga or evolution, however you call it--the search space of human DNA is approximately 4^(10^9) which is roughly 6934879365*10^602058821 times bigger than this corewar search space. (Remeber physicist estimate the total number of atoms in the universe about 10^80 to 10^90.) Some words about time: People debate about the age of earth 4.6-4.7*10^9 years. (let's say 5 Billions years) It took 1 billion years for the first self replicating "organism" to appear (probably alike todays RNA). It took 1 billion year again for single cellular organisms based on todays DNA. It took another 2 billion years for mulitceluraity to appear, and finally it took another billion year for the first artificial evolution to be run in a computer memory. Now, I leave it to the reader as an exercise, to find the number of generations and population size nature applied, and this can shed some light on the needed resources for a corewar GA... Asside: It seems as if it was as difficult to find the DNA, as it was to have single cells to communicate. For Corewar: it is one thing to find a description for simple imp-, scanner-, stone- etc engines, and it is another thing to find means to plug them randomly together... nowadays people do it by intuition and experience. There seems to be no easy way to do it automatically. Have fun Erwin > > -- > / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ > | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | > | Join the Redcode Maniacs Tournament: | > \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / -- Erwin Achermann Tel: ++41 1 632 74 40 Institut fuer Wissenschaftliches Rechnen Fax: ++41 1 632 11 72 ETH Zentrum, IFW C29.2 mailto:achermann@inf.ethz.ch ICQ:4625051 CH-8092 Zuerich http://www.inf.ethz.ch/personal/acherman/ > Perfection is reached, not when there is no longer anything to add, < > but when there is no longer anything to take away. < > -- Antoine de Saint-Exupery < From: Martin Moller Pedersen Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: <199802090857.JAA21338@radium.daimi.aau.dk>#1/1 -> Hello, -> -> I remember a discussion in this group a while back, about mutateing -> Warriors. To make them evolve, and change stragity. At the time of -> this disscussion, I didn't know enough red-code (Bearly know it -> now...). I am wondering where some resources on this topic would be -> found, as I belive it would be a VERY effective stragity, and want to -> imlement it. -> -> -Lar1 -> "If the universe is curved, nothing can be truly stright...": -> Check ftp://sunsite.auc.dk/pub/local/corewar-ga/ /Martin M. Pedersen -- .. ( '`< )( _ ( ----' '. ,_-._,('< ( (__, ; \_<=>/ (_______,' ^~^~^~^~^~^~^~^~^~^~^~^~^~^~^~ From: "John K. Lewis" Subject: Re: yes i made it Date: 1998/02/09 Message-ID: <8nMD.396$N4.3023400@news.itd.umich.edu>#1/1 Philip Kendall wrote: : I've never been that interested in the Multiwarrior hills (a quick : look at the point spread on the Hill will reveal why...), but if you : want a silk to be succesful on a non-multi warrior Hill, you will have : to add some bombing (to get the wins) and probably some more copying loops. : Phil I think if someone wrote a really good vamp program, it could clean house. It wouldn't even have to SCAN, as just about everywhere would be a paper. The vamp would send processes to a spl/spl/spl/spl/dat/dat/dat pit. then die. Just a thought. John K. Lewis ^^^^^ From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Completely new to CoreWars, need HELP!! Date: 1998/02/09 Message-ID: <6bna9b$116e$1@newssvr04-int.news.prodigy.com>#1/1 I am completely new to corewars and I don't know much about it. I can't find a working RedCode assembler or any RedCode programming info. If anyone can send me any web addresses for RedCode programming or any tutorials and a RedCode assembler I would appreciate it. Josh P.S. Does anyone know how to test a warrior on my computer? I have a 486 w/ 24 MB RAM and 340 MB free on my HDD. I also have an 8086 with 640K RAM and about 10MB free on its HDD. From: Philip Kendall Subject: Re: yes i made it Date: 1998/02/09 Message-ID: #1/1 Brett Greenfield writes: > I finally made it on an expert hill > it is one of my first silk pappers > I would however like input on how to improve > it as for beginners you can look at it > now that i am on an expert hill i am officially sheding my > begginer status !!! I've never been that interested in the Multiwarrior hills (a quick look at the point spread on the Hill will reveal why...), but if you want a silk to be succesful on a non-multi warrior Hill, you will have to add some bombing (to get the wins) and probably some more copying loops. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Christian Schmidt Subject: Re: SKI-ICWS: Status - MultiWarrior 94 02/09/98 Date: 1998/02/09 Message-ID: #1/1 > Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: > > Last battle concluded at : Sun Feb 8 16:38:34 EST 1998 > > # Name Author Score Age > 1 Die Hard P.Kline 5500 82 What's this? First rank with 12 points less than the rest. Hey, how have you done this, Paul ;-) > 2 Multi Kulti Christian Schmidt 5512 8 > 3 Ultra Ken Espiritu 5512 3 > 4 Aulder Man Ian Oversby 5512 36 > 5 U-lat v3.8 Zul Nadzri 5512 14 > 6 Time to send in the imps Robert Hale 5512 7 > 7 Ultra Ken Espiritu 5512 4 > 8 IMPossible! Maurizio Vittuari 5512 49 > 9 CyberBunny Compudemon 5512 1 > 10 Sad 4.9 Robert Macrae 5512 2 > > 11 Burn-ice Compudemon 2452 0 > Christian From: Philip Kendall Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: #1/1 lar1 writes: > I remember a discussion in this group a while back, about mutateing > Warriors. To make them evolve, and change stragity. At the time of > this disscussion, I didn't know enough red-code (Bearly know it > now...). I am wondering where some resources on this topic would be > found, as I belive it would be a VERY effective stragity, and want to > imlement it. The problem with any GAs involving Redcode is that the instruction set is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 modes*8000 locations)^100=something very large, and the chances of producing an effective warrior are pretty small. I don't think that anyone has ever produced a really effective warrior using GAs (I think there's one on the Tiny Hill, which has a much smaller instruction space). Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: KOTH Subject: SKI-ICWS: Status - MultiWarrior 94 02/09/98 Date: 1998/02/09 Message-ID: <199802090500.AAA24223@midgaard.ttsg.com>#1/1 Weekly Status on 02/09/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sun Feb 8 16:38:34 EST 1998 # Name Author Score Age 1 Die Hard P.Kline 5500 82 2 Multi Kulti Christian Schmidt 5512 8 3 Ultra Ken Espiritu 5512 3 4 Aulder Man Ian Oversby 5512 36 5 U-lat v3.8 Zul Nadzri 5512 14 6 Time to send in the imps Robert Hale 5512 7 7 Ultra Ken Espiritu 5512 4 8 IMPossible! Maurizio Vittuari 5512 49 9 CyberBunny Compudemon 5512 1 10 Sad 4.9 Robert Macrae 5512 2 11 Burn-ice Compudemon 2452 0 From: KOTH Subject: SKI-ICWS: Status - ICWS Experimental 94 02/09/98 Date: 1998/02/09 Message-ID: <199802090500.AAA24227@midgaard.ttsg.com>#1/1 Weekly Status on 02/09/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Feb 8 17:11:42 EST 1998 # %W/ %L/ %T Name Author Score Age 1 37/ 5/ 58 Evol Cap 4 X John Wilkinson 170 35 2 49/ 33/ 18 Dr. Gate X Franz 166 6 3 49/ 38/ 12 Memories Beppe Bezzi 160 42 4 36/ 15/ 49 Rosebud Beppe 157 14 5 45/ 33/ 22 Dr. Recover Franz 156 5 6 43/ 34/ 23 BigBoy Robert Macrae 153 60 7 45/ 40/ 14 Stepping Stone 94x Kurt Franke 151 21 8 46/ 46/ 7 S.E.T.I. 4-X JKW 147 36 9 40/ 34/ 26 Lithium X 8 John K Wilkinson 147 26 10 44/ 44/ 13 Pagan John K W 144 20 11 37/ 30/ 33 Falcon v0.3 X Ian Oversby 144 8 12 42/ 41/ 18 Fire Master Xv1 JS Pulido 143 57 13 39/ 36/ 25 Tornado 2.0 x Beppe Bezzi 142 59 14 41/ 43/ 16 xpander Zul Nadzri 139 2 15 44/ 50/ 7 HSA Copy 55440 Robert Macrae 137 3 16 38/ 41/ 22 Trouble Zul Nadzri 134 1 17 41/ 48/ 11 Tsunami v0.1 Ian Oversby 134 13 18 39/ 44/ 17 Illusion-94/55 Randy Graham 133 17 19 31/ 32/ 37 Variation M-1 Jay Han 131 15 20 38/ 48/ 14 Frontwards v2 Steven Morrell 129 65 21 0/ 82/ 18 Army of Darkness w50a Compudemon 19 0 From: KOTH Subject: SKI-ICWS: Status - Standard 02/09/98 Date: 1998/02/09 Message-ID: <199802090500.AAA24219@midgaard.ttsg.com>#1/1 Weekly Status on 02/09/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Sun Feb 8 05:10:26 EST 1998 # %W/ %L/ %T Name Author Score Age 1 44/ 29/ 27 Leapfrog David Moore 159 7 2 36/ 24/ 40 Test Wayne Sheppard 148 199 3 31/ 16/ 52 Test I Ian Oversby 146 35 4 40/ 36/ 24 Tangle Trap David Moore 144 52 5 32/ 20/ 49 Evoltmp 88 John K W 143 29 6 25/ 8/ 67 Trident^2 '88 John K W 143 2 7 40/ 39/ 21 Stasis David Moore 140 86 8 39/ 38/ 23 PacMan David Moore 140 8 9 41/ 43/ 16 Blur '88 Anton Marsden 140 16 10 30/ 20/ 51 Cannonade P.Kline 139 210 11 39/ 39/ 22 Gisela 3G6 Andrzej Maciejczak 139 73 12 40/ 40/ 20 Beholder's Eye V1.7 W. Mintardjo 139 254 13 29/ 19/ 52 Rosebud 88 Beppe 139 41 14 41/ 43/ 16 Iron Gate Wayne Sheppard 138 304 15 29/ 20/ 50 ttti nandor sieben 138 160 16 30/ 22/ 47 Simple '88 Ian Oversby 138 65 17 30/ 23/ 47 CAPS KEY IS STUCK AGAIN Steven Morrell 137 176 18 39/ 46/ 14 Test Anton Marsden 132 6 19 38/ 47/ 15 Test Anton Marsden 130 1 20 35/ 46/ 20 Gisela 609 Andrzej Maciejczak 123 48 21 0/ 92/ 7 Help Steve Gunnell 8 0 From: "John K. Lewis" Subject: Re: yes i made it Date: 1998/02/09 Message-ID: #1/1 I think he was posting to the multi-warrior hill. Ryan Coleman wrote: : Brett Greenfield wrote: :> :> I finally made it on an expert hill :> it is one of my first silk pappers :> I would however like input on how to improve :> it as for beginners you can look at it :> now that i am on an expert hill i am officially sheding my :> begginer status !!! :> :> : Is pizza running properly again. I tried a test when I first saw your : message and didn't get anything, and didn't get anything today. Is it : back up or did you get this on there before it stopped working? : Ryan Coleman < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 2.0 > From: "John K. Lewis" Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: #1/1 well, there were several of us on a mailing list. I don't remember where things left off, but the address was: corewar-ga@sunsite.auc.dk I have the start of a perl implimentation for a GA, but it's in need of tuning in two regards, first, it's accessing the disk WAY too often. Second, the way it test for fitness is slow. If you want the code I can send it to you. John K. Lewis ^^^^^ lar1 wrote: : Hello, : I remember a discussion in this group a while back, about mutateing : Warriors. To make them evolve, and change stragity. At the time of : this disscussion, I didn't know enough red-code (Bearly know it : now...). I am wondering where some resources on this topic would be : found, as I belive it would be a VERY effective stragity, and want to : imlement it. : -Lar1 : "If the universe is curved, nothing can be truly stright...": < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 2.0 > From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) Subject: Some more questions :-) Date: 1998/02/09 Message-ID: #1/1 Greetings all, Sorry all I seem to do is ask questions, but I am very curious and constantly seeking new knowledge. Does anyone have a copy of the warrior called Midget which came third at the 1st Core War Contest? Can anyone tell me if the info in the FAQ about the Stormking / Pizza hills is up to date, and if not, the differences? Does anyone know anything about XTANK which is apparently a programming game of some kind? In The Armchair Universe, a game called DARWIN is mentioned, which is a programming game from the early 70's. Does anyone have any details? Finally :-), has anyone heard of Hofstadner DNA (HDNA) or ever managed to write a self-replicating organism in it? Cheers John... From: "William Anthony Stubbs" Subject: Re: Evolution Of Warriors Date: 1998/02/09 Message-ID: <01bd35ac$dbaf0790$6fdd06d0@vectra1.INTERNET_DEV>#1/1 -----Original Message----- From: Erwin Achermann To: Multiple recipients of list Date: Monday, February 09, 1998 1:56 PM Subject: Re: Evolution Of Warriors >Philip Kendall wrote: >> >> lar1 writes: >> >> > I remember a discussion in this group a while back, about mutateing >> > Warriors. To make them evolve, and change stragity. At the time of >> > this disscussion, I didn't know enough red-code (Bearly know it >> > now...). I am wondering where some resources on this topic would be >> > found, as I belive it would be a VERY effective stragity, and want to >> > imlement it. >> >> The problem with any GAs involving Redcode is that the instruction set >> is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 >> modes*8000 locations)^100=something very large, and the chances of >> producing an effective warrior are pretty small. I don't think that >> anyone has ever produced a really effective warrior using GAs (I think >> there's one on the Tiny Hill, which has a much smaller instruction >> space). >> >> Phil > >Just for fun--to show to power of ga or evolution, however you call >it--the search space of human DNA is approximately 4^(10^9) >which is roughly 6934879365*10^602058821 times bigger than this corewar >search space. (Remeber physicist estimate the total number of atoms in >the universe about 10^80 to 10^90.) > Though i have no claims at having written anything overly worthwhile either in the fields of redcode or GA, I'll throw my 2c in now. =) I ran a small mutation engine for a couple of weekends in the hopes of breeding a warrior capable of making an appearance on the tiny hill. The results certainly surprised me, although for reasons listed below he never made said hill. When you dont have so many memory locations and a shorter length warrior, it is quite feasable to produce a warrior capable of surviving and indeed killing certain opponents in a surprisingly short amount of time. For my program I generated 100 warriors of totally random instructions opcodes etc each 20 long. Then i fought all 100 against a 'victim' warrior. Taking the best 1/4 and re inserting them into the next generation along with the other 3/4 being random 'mutations' of that 1/4. (i.e. pick a random opcode/address mode/etc and change it randomly). Yes this does lead to 100 warriors which are almost identical fightin every round.. Thats why its mutation and not breeding. Within 50 generations i had a warrior that could beat the sample warrior (one of the warriors with show source on the hill). But of course it had become a specialised killer and fared poorly against other warrior types. BTW, each generation was a 200 round fight using tiny hill conditions against the victim for each warrior.. (100 warriors) This didnt take too long on the P233. Trying for a more 'world aware warrior' I re did the fitness curve starting from scratch again with 3 warriors (which were or had been on the tiny hill and i had source too). This time the fitness curve took a lot longer to peak out. By about 300 generations this warrior was consistently beating all 3 victims. If you were to fitness test such a method with the whole hill who knows what would happen (show source anyone? ;) ). I realise 2 sims hardly proves a theory or even identifies a trend, but the results looked promising. If you are prepared to spend longer fitness testing each generation against more victims then after a larger amount of generations you'll kill them all. At the time of writing this, i had planned to run a further sim against 10 or so 'victims' but real life got in the way of the project (lost access to the LAN where i was going to run tests). The next step was to network the actual fitness testing out to several machines to get the generation fully tested in parallel. Then for no extra investment in real world time you can fitness test against how ever many pc's you have handy. Food for thought. William Stubbs From: Philip Kendall Subject: Re: Redcode Maniacs Round 3 Rules Date: 1998/02/10 Message-ID: #1/1 On Tue, 10 Feb 1998, Beppe Bezzi wrote: > >Round three will be slightly different: instead of a hill fight, each > >warrior submitted will fight ten paper warriors under standard '94 > >rules. (Coresize 8000, Max processes 8000, Duration 80000, Max entry > >length 100, Min distance 100, Rounds fought 200, Redcode '94 Draft > >Instruction Set, Win/Tie/Loss: 3/1/0 -- the pMARS command line is > > > >pmars -b -r 200 yourwarrior.red paperwarrior.red). > > Not many doubts, but confirm we have to fight the papers one at a time, i.e. > my war will challenge a ten paper hill, and not all together in multiwarrior. Exactly right. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Beppe Bezzi Subject: Re: Redcode Maniacs Round 3 Rules Date: 1998/02/10 Message-ID: #1/1 At 11.55 10/02/98 +0000, you wrote: >Maniacs, > >Round three will be slightly different: instead of a hill fight, each >warrior submitted will fight ten paper warriors under standard '94 >rules. (Coresize 8000, Max processes 8000, Duration 80000, Max entry >length 100, Min distance 100, Rounds fought 200, Redcode '94 Draft >Instruction Set, Win/Tie/Loss: 3/1/0 -- the pMARS command line is > >pmars -b -r 200 yourwarrior.red paperwarrior.red). > Not many doubts, but confirm we have to fight the papers one at a time, i.e. my war will challenge a ten paper hill, and not all together in multiwarrior. > >Phil > >-- > / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ > | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | > | Join the Redcode Maniacs Tournament: | > \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / > > From: Philip Kendall Subject: Redcode Maniacs Round 3 Rules Date: 1998/02/10 Message-ID: #1/1 Maniacs, Round three will be slightly different: instead of a hill fight, each warrior submitted will fight ten paper warriors under standard '94 rules. (Coresize 8000, Max processes 8000, Duration 80000, Max entry length 100, Min distance 100, Rounds fought 200, Redcode '94 Draft Instruction Set, Win/Tie/Loss: 3/1/0 -- the pMARS command line is pmars -b -r 200 yourwarrior.red paperwarrior.red). The paper warriors to be fought, along with their name in Planar's archive (add this name to http://pauillac.inria.fr/~doligez/corewar/rc/ to retrieve the warrior): Benj's Revenge 1.0 (Benj'sRevenge1.0.txt) by Robert Macrae CC Paper 2 (CCPaper2.txt) by Franz Die Hard (DieHard[2].txt) by Paul Kline Head or Tail (HeadorTail.txt) by Christian Schmidt Marcia Trionfale 1.3 (MarciaTrionfale1.3.txt) by Beppe Bezzi Night Train (NightTrain.txt) by Karl Lewin Pulp (Pulp.txt) by Ian Oversby RetroQ (RetroQ.txt) by Paul Kline TimeScape (1.0) (Timescape(1.0).txt) by Juha Pohjalainen unrequited love (unrequitedlove.txt) by kafka Round 2 results and standings, and also these rules and a zip file containing all ten warriors will appear on the tournament Web pages (http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm) as soon as I get round to uploading them. Please note that anyone is welcome to enter the tournament, even if you haven't competed in the first two rounds Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Christian Schmidt Subject: second round results of the redcode maniacs tournament Date: 1998/02/10 Message-ID: #1/1 Hi everybody, here are the entries for the second round of the redcode maniacs tournament. ;name Recycled paper ;author Beppe Bezzi ;strategy 2 processes replicator ;strategy for round 2 of Corewar Maniacs Tournament ;name Qwill v3 ;author Ryan Coleman ;strategy q scan --> mutating bomber ;strategy v2 booted bomber ;strategy v3 changed to duo bombers ;strategy my entry into the lp round of Redcode Maniacs '98 ;name life is short ;author Planar ;strategy imp,stone,pspace,paper ;name LP-Paper 4 ;author George Eadon ;strategy Limited Process Paper ;name Silver Talon 1.3 ;author Edgar ;strategy spl carpeting scanner with d-clear. ;strategy Depressingly ineffective. ;name 5p beta 2.3 lp ;author bjoern guenzel ;strategy Incendary Bomber with economy airbag ;strategy running with five processes ;strategy changed d-clear for maniacs tournament ;strategy can't really test the code, so no further ;strategy adaptions to lp-conditions :-( ;name Multitude ;author Robert Hale ;strategy Multiple coreclears with a qscan ;name LP and Feelin' Fine. ;author John K Wilkinson ;name No Time ;author Ilmari Karonen ;strategy Enough ideas this time, but barely an hour left. ;strategy Pleeeease don't put deadlines on Fridays.. ;strategy especially not when it's my exam week. :-( ;name Beanbag ;author P.Kline ;strategy p-warrior for 8-process limit competition ;name skinner ;author John K. Lewis ;strategy Tribble/Kline Stone. ;name Incisive ;author Robert Macrae ;strategy Blatant rip-off of Limb-Rending Incisors. ;strategy Vamp enemy into the pit, dual clears ;name Snake Pit ;author David Moore ;strategy My warrior for the 2nd round is a vampire/stone combination. ;strategy I think it can be improved but the major features so far: ;strategy ;strategy * A 50%c vampire loop similar to Limb Rending Incisors ;strategy ;strategy * Trap is continuously rebuilt for complete protection ;strategy from a-field indirect bombing (a.k.a "antivamp") ;strategy ;strategy * A computer-generated stone which can maintain a decent bombing ;strategy pattern for over 80000 cycles by undergoing 7 mutations. ;strategy It makes an effective backup core-clear since it can hit over ;strategy 95% of the locations. And here are the results of the second round: Rank Name Author %W %L %T Score ___________________________________________________________________________ 1 LP and Feelin' Fine. John K Wilkinson 63 13 25 5104 2 Snake Pit David Moore 58 21 21 4714 3 Incisive Robert Macrae 58 28 14 4527 4 Beanbag P.Kline 56 26 18 4467 5 Recycled paper Beppe Bezzi 50 33 17 3995 6 life is short Planar 41 31 29 3614 7 Qwill v3 Ryan Coleman 43 47 9 3344 8 skinner John K. Lewis 41 43 16 3326 9 5p beta 2.3 lp bjoern guenzel 38 48 14 3050 10 Silver Talon 1.3 Edgar 35 54 11 2760 11 Multitude Robert Hale 28 67 5 2130 12 LP-Paper 4 George Eadon 19 56 25 1973 13 No Time Ilmari Karonen 18 80 2 1320 And the Scoreboard after two events: Rank Author Round 1 Round 2 Score ___________________________________________________________________________ 1. John K Wilkinson 88.7 100.0 188.7 2. David Moore 88.6 92.4 181.0 3. Beppe Bezzi 100.0 78.3 178.3 Robert Macrae 89.6 88.7 178.3 5. P.Kline 83.5 87.5 171.0 6. bjoern guenzel 92.1 59.8 151.9 7. Edgar 95.2 54.1 149.3 8. Ryan Coleman 80.8 65.5 146.3 9. Planar 72.8 70.8 143.6 10. John K. Lewis 66.0 65.2 131.2 11. Ilmari Karonen 92.8 25.9 118.7 12. Robert Hale 72.0 41.7 113.7 13. George Eadon 62.7 38.7 101.4 With the big lead of Wilkinsons 'LP and Feelin' Fine.' he holds now the top position after two events. Followed by David Moore on the second place and Beppe Bezzi and Robert Macrae together on the third place. From: John Regehr Subject: Re: Evolution Of Warriors Date: 1998/02/10 Message-ID: <887092610.1289093134@dejanews.com>#1/1 > The problem with any GAs involving Redcode is that the instruction set > is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 > modes*8000 locations)^100=something very large, and the chances of > producing an effective warrior are pretty small. I don't think that > anyone has ever produced a really effective warrior using GAs (I think > there's one on the Tiny Hill, which has a much smaller instruction > space). I'm no GA expert, but I'm not sure that a simple search space argument is valid here. I think the warrior you're refering to is Ugly, which evolved in a GA I wrote a little over a year ago. It evolved from scratch in a few days of pentium-pro time, and seems competitive although the GA didn't come near my original goal of evolving something that could beat all handwritten warriors. The last time I touched the code for the GA, I had almost finished a distributed memory version that would allow pools of evolving warriors around the net to share good warriors. This was inspired by a paper I read which claims that a collection of interacting populations can outperform a single-population GA because a single genotype is less likely to dominate the population. That is, diversity is encouraged. My hypothesis is that with a bunch of workstations (maybe a few hundred) a pretty mean warrior would evolve, even for a large warrior size and cycle limit. Sometime when my copious free time permits, I will finish this code, solicit help from people with idle cycles, and try to prove you wrong. If it works, you can take consolation in the fact that I'm a pretty poor redcode hacker :). John -- John Regehr | regehr@virginia.edu | http://www.cs.virginia.edu/~jdr8d grad student | Department of Computer Science | University of Virginia -------------------==== Posted via Deja News ====----------------------- http://www.dejanews.com/ Search, Read, Post to Usenet From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: Corewarrior Date: 1998/02/10 Message-ID: <34dfae1a.413324@news.lrz-muenchen.de>#1/1 On Sun, 08 Feb 98 09:42:36 GMT, JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) wrote: >Greetings... > >Line 20 from the new hall of fame is missing, where message is split >into two. Would someone be kind enough to post the line for me. > >Many thanks, > >John 20 Head or Tail Christian Schmidt 141(?) Q^2 -> Paper Bjoern From: Eike Kock Subject: New game: MemWars Date: 1998/02/10 Message-ID: <34DF9518.4706259D@abo.rhein-zeitung.de>#1/1 Hi! I've just finished a game called MemWars which is very similar to CoreWars and is for Windows95/NT. If you are interested please visit http://homes.rhein-zeitung.de/~ekock/mw.htm cu there, Eike From: "Brian Haskin" Subject: Re: Corewarrior Date: 1998/02/10 Message-ID: <002201bd35da$d1e91ce0$0b00000a@brianjr.haskin.org>#1/1 Here you go: 20 Head or Tail Christian Schmidt 141(?) Q^2 -> Paper Brian Haskin -----Original Message----- From: JOHN METCALF To: Multiple recipients of list Date: Monday, February 09, 1998 7:47 PM Subject: Corewarrior >Greetings... > >Line 20 from the new hall of fame is missing, where message is split >into two. Would someone be kind enough to post the line for me. > >Many thanks, > >John > From: Brett Greenfield Subject: multi warrior hill Date: 1998/02/11 Message-ID: <6btlvr$bs6@bgtnsc03.worldnet.att.net>#1/1 yes my program has not yet attemted the pizza hills and as soon as they get back online i will send a more aggressive version . until then (maybe there should be more then two servers) i have been pummeling the muliwarior hill with scanners and one vamp with little success ... maybe i need more work on scanners defence. as for the experimental hill what is the size of the experimental hill as it is the only 94 standard single warrior hill operating i have been trying my warriors on it but it is the wrong size (not 8000) From: Philip Kendall Subject: Re: Redcode Maniacs Round 3 Rules Date: 1998/02/11 Message-ID: #1/1 On Tue, 10 Feb 1998, Ryan Coleman wrote: > > Round three will be slightly different: instead of a hill fight, each > > warrior submitted will fight ten paper warriors under standard '94 > > rules. (Coresize 8000, Max processes 8000, Duration 80000, Max entry > > length 100, Min distance 100, Rounds fought 200, Redcode '94 Draft > > Instruction Set, Win/Tie/Loss: 3/1/0 -- the pMARS command line is > > > Not to push the issue, but when's the deadline?? Oops... that's what you get for trying to get everything out before a lecture :-( Deadline is Wed 18 Feb 1998, 23:59:59 MET (GMT+1). Entries should be sent to Christian , but if you send them to me, it shouldn't matter too much. Sorry for the confusion. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: "John K. Lewis" Subject: Re: yes i made it Date: 1998/02/11 Message-ID: #1/1 Christian Schmidt wrote: : I think the last vamp on the hill was Paulssons myVamp 5.4 few month ago. : Christian aren't there vamps on the LP hill? John K. Lewis From: Philip Kendall Subject: Re: Completely new to CoreWars, need HELP!! Date: 1998/02/11 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > I am completely new to corewars and I don't know much about it. I can't > find a working RedCode assembler or any RedCode programming info. If > anyone can send me any web addresses for RedCode programming or any > tutorials and a RedCode assembler I would appreciate it. Your first points of call should be: http://www.ecst.csuchico.edu/~pizza/koth/ (Pizza) http://www.koth.org/ (Stormking) http://pauillac.inria.fr/~doligez/corewar/ (Planar) and, of course, http://www.geocities.com/SiliconValley/Park/5427/corewar.htm (Mine!) > P.S. Does anyone know how to test a warrior on my computer? I have a 486 > w/ 24 MB RAM and 340 MB free on my HDD. I also have an 8086 with 640K RAM > and about 10MB free on its HDD. pMARS (available from Stormking and Planar's site) will allow you to do this on the 486 (and take up a grand total of << 1Mb) HTH Phil (who may have put the wrong sig on a different message...) -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Some more questions :-) Date: 1998/02/11 Message-ID: #1/1 JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) writes: > Sorry all I seem to do is ask questions, but I am very curious and > constantly seeking new knowledge. As it says in Core Warrior, "new players infinitely welcome" :-) > Does anyone have a copy of the warrior called Midget which came > third at the 1st Core War Contest? Hmm... it's not in Planar's archive... anyone? > Can anyone tell me if the info in the FAQ about the Stormking / > Pizza hills is up to date, and if not, the differences? Nope. The most important difference is that Stormking has moved to http://www.koth.org/, and the e-mail address is now koth@koth.org. The hills have also changed somewhat: the experimental Hill at Pizza is now a 'Tiny' hill (coresize/max processes 800, max entry length 20), whilst the 'Large' Hill has moved to Stormking. The ICWS hill and the Large Multiwarrior Hill are dead, whilst a Low Process Hill (max processes 8/max entry length 200) has started at Pizza. > Does anyone know anything about XTANK which is apparently a > programming game of some kind? See rec.games.xtank.play and rec.games.xtank.programmer. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/spectrum.htm | | New? Read the FAQ: http://www.kendalls.demon.co.uk/cssfaq/ | \ Looking for something?: http://drson.vse.cz/snapsearch/ / From: Planar Subject: Re: Some more questions :-) Date: 1998/02/11 Message-ID: <6bsr0m$foh@news-rocq.inria.fr>#1/1 >From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) >Does anyone have a copy of the warrior called Midget which came >third at the 1st Core War Contest? If you manage to find it, please send me a copy, it is not in my collection. -- Planar From: Planar Subject: Re: Redcode Maniacs Round 3 Rules Date: 1998/02/11 Message-ID: <6bsatg$b5h@news-rocq.inria.fr>#1/1 >From: Philip Kendall >The paper warriors to be fought, along with their name in Planar's >archive (add this name to http://pauillac.inria.fr/~doligez/corewar/rc/ >to retrieve the warrior): It's a good thing that I rewrote my scripts for Mt Olympus (for a hundred-fold speed improvement :-). Everybody can see that, for example, Mirage 1.5 gets extremely good scores against most of the challenge warriors of round 3... -- Planar From: Christian Schmidt Subject: Re: yes i made it Date: 1998/02/11 Message-ID: #1/1 I think the last vamp on the hill was Paulssons myVamp 5.4 few month ago. Christian From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: yes i made it Date: 1998/02/11 Message-ID: <34e0aab9.2023790@news.lrz-muenchen.de>#1/1 On Mon, 09 Feb 1998 23:33:24 GMT, "John K. Lewis" wrote: >I think if someone wrote a really good vamp program, it could clean house. >It wouldn't even have to SCAN, as just about everywhere would be a paper. > >The vamp would send processes to a spl/spl/spl/spl/dat/dat/dat pit. > >then die. > >Just a thought. > >John K. Lewis > ^^^^^ You mean on the multi-warrior hill? It would be interesting to try to 'make a difference' :-) Perhaps a vamp would be good, but I think any warrior would need at least several backup copies running in parallel. There might be paper everywhere, but you can't stun them all at the same time... The good thing about paper might be that it doesn't usually stun (or did I miss some developments), so one could be more daring with space. All this seems to be relevant for the next round of the maniacs touernament - Think about submitting a scanner (this time for real...:-). Although I propbably won't (I don't want anybody who submits a scanner and loses to blame me... Coreclears might also be feasible? Damn, the next round is just not fair towards us bomber types, I never learned to properly kill paper. The best I ever manage is survive it...) About vamps, be warned that so far there never was a vamp that was really good against paper (AFAIK <- I learned one of those fancy abbreviations! err, I hope it is 'As Far As I Know'??). I could imagine that one reason is that a jmp only stuns the copy of the paper that you originally hit, whereas spl-bombs have effects on the subsequent copies, too. eg spl @0,>xxx mov.i }-1,>-1 ... jmp <-- hit here paper ... This paper would still be able to copy itself, and then it would jump to the pit - however, it's 'children' would have the jump sitting in their code but it wouldn't point to the pit anymore :-( With spl @0,>xxx mov.i }-1,>-1 paper spl #0 spl #0 jmp -2 or whatever paper each child carries it's own pit, multiplying the effect of each stun bomb. (It just occurs to me that this might be a problem that incendary-bombers have to face, too - perhaps there is a way to increase the likelihood of the jmp or the mov pointing to some sensible instructions?) Nevertheless I am a vamp fan :-) But somehow they always get so complicated to write, getting all the pointers right is tough work... Btw. when was the last vamp spotted on the hill? - I almost forgot that they exist! Bjoern From: jwilkinson@mail.utexas.edu Subject: Re: Evolution Of Warriors Date: 1998/02/12 Message-ID: <199802112120.QAA99185@valhalla.stormking.com>#1/1 >I'm no GA expert, but I'm not sure that a simple search space >argument is valid here. I think the warrior you're refering to >is Ugly, which evolved in a GA I wrote a little over a year ago. >It evolved from scratch in a few days of pentium-pro time, and >seems competitive although the GA didn't come near my original >goal of evolving something that could beat all handwritten >warriors. Given that you don't want to spend 10,000 years of CPU letting these things evolve, consider starting off with a warrior that already works, and setting up your GA to make only small to moderate changes... From: jwilkinson@mail.utexas.edu Subject: Re: second round results of the redcode maniacs tournament Date: 1998/02/12 Message-ID: <199802112110.QAA85964@valhalla.stormking.com>#1/1 >;name LP and Feelin' Fine. >;author John K Wilkinson > >;name No Time >;author Ilmari Karonen >;strategy Enough ideas this time, but barely an hour left. >;strategy Pleeeease don't put deadlines on Fridays.. >;strategy especially not when it's my exam week. :-( Well since I got first place I kinda feel obliged to tell everyone what my warrior was. Heh. I agree with Ilmari though... that Friday deadline didn't give me enough time to write ;strategy lines. But I pspaced the top two warriors off the LP Hill together with the one program I was able to write that neither could beat: a simple 8 proc imp spiral... From: Alan McCutcheon Subject: Re: Some more questions :-) Date: 1998/02/12 Message-ID: <1.5.4.32.19980212102150.006efe28@mail.iinet.net.au>#1/1 wrote: >[...] Was Midget published in one of the Corewar articles by Dewdney? I >just copied the third of his articles, and I think it mentions the name >but not the Code. [...] No it wasn't. Mice and Changi were dissected and compared, but Midget only got a brief mention... Best wishes micral From: Ian Oversby Subject: Re: yes i made it Date: 1998/02/12 Message-ID: <34E317FF.792F@goofy.zdv.uni-mainz.de>#1/1 Anyway, regarding Vampires, there was a more recent one than MyVamp5.4. That was Khayman which was pushed of while I had no net access, I am not sure when. I have a new version that I want to put on when the hill is fixed. The new features are: Improved against HSA (30/120 -> 120/70!) Improved against Blur-type things (30/150 -> 60/90) Improved brainwash Better anti-paper strategy Resistance to Core-clears and One-shots Anyway, we will see. Regards, Ian From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Help!!! Date: 1998/02/12 Message-ID: <6butek$29hi$1@newssvr04-int.news.prodigy.com>#1/1 I'm trying to make a benchmarking program for warriors. I have tried to use the MTS tounament scheduler but I can't get it to accept command line options (ie mts -r -s rave.red dwarf.red cool.red attak.red) does anyone know how to do that with MTS or can someone tell me where to get a tournament scheduler that can? (It has to be able to save the results in a txt file.) Thanx, Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: Completely new to CoreWars, need HELP!! Date: 1998/02/12 Message-ID: <6busve$2ui4$1@newssvr04-int.news.prodigy.com>#1/1 I got all the info I needed. Thanx to all the guys who e-mailed me with help. Josh From: "John K. Lewis" Subject: Re: Some more questions :-) Date: 1998/02/12 Message-ID: <8JsE.751$N4.5094049@news.itd.umich.edu>#1/1 Bjoern Guenzel wrote: : 'Battle Programs of the future will perhaps be longer than today's : winners (Chang1 and Mice - bjoern) but orders of magnitude more : robust. They will gather intelligence, lay false trails and strike at : their opponents suddenly and with determination' : -How much of it has become true? : Bjoern Let me address these one at a time: gather intelligence: Scanners could be said to do this, but it's probably not in the way Dewdney envisioned. But yes. lay false trails: Several programs drop decoy code out in the core so to confuse scanners. Yes. strike...with determination: No program can really do this because of the number of other processes that could be out there. So no. The dream of longer code, with more intelligent agents has two major obsticals. Firstly, the core is small enough and max length is long enough that quick scan strategies work well. That means you can't really make long 200 line code to scan and analysis of enemy programs. Unless you consider these quick scan programs to be "intelligent". I don't. Secondly, with max processes at 8000, there is always the strategy of paper to outnumber a "intelligent" program. It's been a longstanding goal of mine to make an intelligent warrior, but it's always very hard to pioneer anything in corewars, and I'm afraid that other strategies are so well developed that making a new strategy is incredibly hard. John K. Lewis From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: Some more questions :-) Date: 1998/02/12 Message-ID: <34e21d7c.1692243@news.lrz-muenchen.de>#1/1 On Mon, 09 Feb 98 18:11:05 GMT, JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) wrote: >Greetings all, > >Sorry all I seem to do is ask questions, but I am very curious and >constantly seeking new knowledge. > >Does anyone have a copy of the warrior called Midget which came >third at the 1st Core War Contest? > >Can anyone tell me if the info in the FAQ about the Stormking / >Pizza hills is up to date, and if not, the differences? > >Does anyone know anything about XTANK which is apparently a >programming game of some kind? > >In The Armchair Universe, a game called DARWIN is mentioned, which >is a programming game from the early 70's. Does anyone have any >details? > >Finally :-), has anyone heard of Hofstadner DNA (HDNA) or ever >managed to write a self-replicating organism in it? > >Cheers > >John... Don'T know exactly about your questions, but maybe you and some other people might be pleased to hear that somebody put Omega, Origin's tank programmng game on his web page: http://www.feverish.demon.co.uk/Omega.zip And another person is providing the manual for it: http://anthonyb.dyn.ml.org Haven't had time to look at it yet, but I know the game is 'frequently sought after'. Was Midget published in one of the Corewar articles by Dewdney? I just copied the third of his articles, and I think it mentions the name but not the Code. Btw. here is what Dewdney wrote in 1987: 'Battle Programs of the future will perhaps be longer than today's winners (Chang1 and Mice - bjoern) but orders of magnitude more robust. They will gather intelligence, lay false trails and strike at their opponents suddenly and with determination' -How much of it has become true? Bjoern From: Brett Greenfield Subject: Pizza Date: 1998/02/13 Message-ID: <6c7ab9$13n@bgtnsc02.worldnet.att.net>#1/1 Wasn't the pizza server suposed to be fixed by now I have made my own hill but it is not the same would some one tell me how the hills work so that I cant get it online I want my very own Koth From: jwilkinson@mail.utexas.edu Subject: Re: Some more questions :-) Date: 1998/02/13 Message-ID: <199802122303.SAA89538@valhalla.stormking.com>#1/1 >gather intelligence: Scanners could be said to do this, but it's >probably not in the way Dewdney envisioned. But yes. I'd say pspace do this but definately not in Dewdney's shadow... >strike...with determination: No program can really do this because >of the number of other processes that could be out there. So no. I've written one warrior that struck with determination. Unfortunately it took around 130,000 to 200,000 cycles to prevent it's scan to it couldn't finish off an opponenet within the time limits of the -94 hill... >It's been a longstanding goal of mine to make an intelligent warrior, >but it's always very hard to pioneer anything in corewars, and I'm >afraid that other strategies are so well developed that making a >new strategy is incredibly hard. I'd say "Imp Ring" is pretty intelligent myself. From: M Joonas Pihlaja Subject: The Math of Corewar Stepsizes Date: 1998/02/13 Message-ID: #1/1 G'day! I was wondering if Steven Morell's "The Math of ..." has been revised or updated. I found it really interesting, and was a bit disappointed to find that it was rather incomplete. If someone has a full version (xxxTeX:d maybe, possibly, hopefully?) then could (s)he please send me a copy? If not, then I would appreciate any pointers to descriptions of different fitness criteria for step sizes. Martti Pihlaja From: bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) Subject: Re: Some more questions :-) Date: 1998/02/13 Message-ID: <34e439a7.2535405@news.lrz-muenchen.de>#1/1 On 12 Feb 1998 18:10:17 -0500, Alan McCutcheon wrote: > wrote: > >>[...] Was Midget published in one of the Corewar articles by Dewdney? I >>just copied the third of his articles, and I think it mentions the name >>but not the Code. [...] > >No it wasn't. Mice and Changi were dissected and compared, but Midget only >got a brief mention... > >Best wishes > >micral > What about the Boston Computer Museum, which seems to be the place where the ancient tournaments were held? Maybe they still have some of the code lying around? Bjoern From: Philip Kendall Subject: Re: multi warrior hill Date: 1998/02/13 Message-ID: #1/1 Brett Greenfield writes: > yes my program has not yet attemted the pizza hills > and as soon as they get back online i will send a more aggressive > version . until then (maybe there should be more then two servers) I don't see how that would help -- the 'top' Hill will be on one server only, and if that is down we will still have problems. > as for the experimental hill what is the size of the experimental hill > as it is the only 94 standard single warrior hill operating i have been > trying my warriors on it but it is the wrong size (not 8000) Size is 55440; I can't remember the other parameters off the top of my head, but they are in the FAQ (the large Hill moved from Pizza to Stormking when the Experimental Hill at Pizza became the Tiny Hill). -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Help!!! Date: 1998/02/13 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > I'm trying to make a benchmarking program for warriors. I have tried to > use the MTS tounament scheduler but I can't get it to accept command line > options (ie mts -r -s rave.red dwarf.red cool.red attak.red) does anyone > know how to do that with MTS or can someone tell me where to get a > tournament scheduler that can? (It has to be able to save the results in > a txt file.) Set up a text file containing the input to mts, and then simply do mts < textfile Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: qute@daimi.aau.dk (Anders Rosendal) Subject: pMars graphics doesn't work Date: 1998/02/14 Message-ID: <34e62833.1241682@news.image.dk>#1/1 It's seem's that my Matrox millenium isn't a SVGA, VGA, EGA or CGA card. The only mode pMars knows is mode 3(textmode). Can anyone help? ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: qute@daimi.aau.dk (Anders Rosendal) Subject: newbie Date: 1998/02/14 Message-ID: <34e5d0ec.91402@news.image.dk>#1/1 Hi people I'm trying to learn the asm, but there are 4+ different kinds. Which one should I learn? Which software do YOU recommend?? Right now I going with pMars08 and redcode94. I'm still having problems with understanding the programs I see :-( Is the game dead today or are there many still playing Corewar? Can(and will) anybody explain what this does?? I cannot see why it works -------Import of Xtc.war---------- loop add #412 ptr ptr jmz loop trap mov ptr dest cnt mov #23 cnt kill mov @trap Subject: Accelerate your IDE drives NOW! Date: 1998/02/14 Message-ID: <887495919@hoppy>#1/1 {\rtf1\ansi\deff0\deftab720{\fonttbl{\f0\fnil MS Sans Serif;}{\f1\fnil\fcharset2 Symbol;}{\f2\fswiss\fprq2 System;}{\f3\fnil Jester;}{\f4\fnil Intrepid;}{\f5\fnil LongIsland;}} {\colortbl\red0\green0\blue0;} \deflang1033\pard\plain\f3\fs24 What is the slowest part of your PC? \par Your IDE hard disks and CDROM run at millisecond instead of nanosecond \par speeds. \par No matter how fast your motherboard and processor are, you'll \par get the real speed out of your machine when you speed up your IDE \par drives. \par Interested in (at least) doubling the speed of your PC in a few minutes? \par Want blazing CDROM performance for your apps and games? \par \par Get tomorrow's IDE technology today with the XIDE2000(Extended IDE)! \par \par Come see what we're all screaming about. \par Try it out for 30 days risk free! \par http://www.vanken.com \par \par You'll be glad you did. \par \par \par \par \plain\f0\fs16 \par \par \par \par \par } ---------------------------------------------------------- | o | Free bulk email software!! | o | Message composed with MassMailX | o | Get your own copy at | o | http://users.multipro.com/rif2676/ ---------------------------------------------------------- From: Alan McCutcheon Subject: Re: Some more questions :-) Date: 1998/02/14 Message-ID: <1.5.4.32.19980214130532.006699f4@mail.iinet.net.au>#1/1 At 05:22 AM 2/14/98 -0500, you wrote: >[...] Does anyone have the date/source/text(?) of the mention of >Midget? I still haven't caught up with the back issues of Sci. Am. :) I don't know the precise month of the 1987 issue of Scientific American (because the mag didn't print the issue details on the pages at that stage - they did by 1989) but it was in the Computer Recreations section with sub-heading "A program called MICE nibbles its way to victory at the first Core War tournament" on pages 8-11. Clues to the month were mention of the first tournament as "late last year", and that "readers have ample opportunity" for Redcoding before the 2nd international Core War tournament "to be held at the Computer Museum this fall". Maybe May or June. MIDGET was mainly mentioned on p 10: "Three programs emerged victorious from the fray, CHANG1 by Morrison J Chang of Floral Park, NY, and two entries by Chip Wendell, MIDGET and MICE. [...] MIDGET and MICE both fought CHANG1 to a draw, but MICE captured the deciding point by beating MIDGET." Perhaps someone knows Chip Wendell and could ask the original source directly for a copy of the code... Best wishes micral From: howaholt@aol.com (HowAHolt) Subject: Re: Some more questions :-) Date: 1998/02/14 Message-ID: <19980214062101.BAA25982@ladder03.news.aol.com>#1/1 In article <34e439a7.2535405@news.lrz-muenchen.de>, bjoern.guenzel@stud.uni-muenchen.de (Bjoern Guenzel) writes: >>>[...] Was Midget published in one of the Corewar articles by Dewdney? I >>>just copied the third of his articles, and I think it mentions the name >>>but not the Code. [...] >> >>No it wasn't. Mice and Changi were dissected >>and compared, but Midget only >>got a brief mention... >> >What about the Boston Computer Museum, which seems to be the place >where the ancient tournaments were held? Maybe they still have some of >the code lying around? > >Bjoern Well, I'm a few miles outside Boston right now... don't have a contact there, but between the Web, phone, and commuting into the city, I'm sure I can find something out. Does anyone have the date/source/text(?) of the mention of Midget? I still haven't caught up with the back issues of Sci. Am. :) Howard Alan Holt (howaholt@aol.com) From: jwilkinson@mail.utexas.edu Subject: Re: Help!!! Date: 1998/02/14 Message-ID: <199802140245.VAA103116@valhalla.stormking.com>#1/1 >I'm trying to make a benchmarking program for warriors. I have tried to >use the MTS tounament scheduler but I can't get it to accept command line >options (ie mts -r -s rave.red dwarf.red cool.red attak.red) does anyone >know how to do that with MTS or can someone tell me where to get a >tournament scheduler that can? (It has to be able to save the results in >a txt file.) Well you can do just about whatever you want with batch files in DOS... Check out http://www.koth.org/wilkies/bench.zip for a good example. From: jason@cyrix1.localdomain (jason) Subject: Re: Evolution Of Warriors Date: 1998/02/15 Message-ID: #1/1 On Tue, 10 Feb 1998 00:41:07 -0600, John Regehr wrote: > >> The problem with any GAs involving Redcode is that the instruction set >> is too big (14 instructions*7 modifiers*8 modes*8000 locations*8 >> modes*8000 locations)^100=something very large, and the chances of >> producing an effective warrior are pretty small. I don't think that >> anyone has ever produced a really effective warrior using GAs (I think >> there's one on the Tiny Hill, which has a much smaller instruction >> space). > >I'm no GA expert, but I'm not sure that a simple search space >argument is valid here. I think the warrior you're refering to >is Ugly, which evolved in a GA I wrote a little over a year ago. >It evolved from scratch in a few days of pentium-pro time, and >seems competitive although the GA didn't come near my original >goal of evolving something that could beat all handwritten >warriors. > I had some luck evolving from nothing to some OK red code. Not great but the they beat most of the ones I wrote myself at that time. I have move this stuff to: http://www.avalon.net/~jboer/projects/corewar/corewar.html >My hypothesis is that with a bunch of workstations (maybe a few >hundred) a pretty mean warrior would evolve, even for a large >warrior size and cycle limit. Sometime when my copious free >time permits, I will finish this code, solicit help from people >with idle cycles, and try to prove you wrong. If it works, you >can take consolation in the fact that I'm a pretty poor redcode >hacker :). I agree and have worked on something like this. A system that has a eval function (pmars) and a sucessor function that you make and the runs the programs through this over and over. It has a server that allows anon conections to send warriors. I envision a kind of super soup building its own routes to active nodes and evolving warriors. This code is on hold due to class scheduals and job hunting but if I get it cleaned up I'll give it away to any who wants it. It's a generic and UNIX oriented version of my old ga_war.c program with a major upgrade in coding standards. Jason Boer From: "Carter Cheng" Subject: Newbie MARS implementation question. Date: 1998/02/15 Message-ID: <6c8uak$mbi@suriname.earthlink.net>#1/1 Hi I'm trying to write my own MARS implementation based on the '94(revision 3.2) spec and I've run into some difficulties. I was wondering if anyone would be nice enough to answer a few of my questions. 1) Is there a standard way in which random initial separation is suppose to be implemented? If so, does anyone have the standard algorithm for how it's done? If not, can some one suggest a place where I could find an algorithm to do this effectively? 2) Is there test code out there with which I can validate my simulator or do I have to write it myself? Thanks in advance, Carter cwcheng@earthlink.net From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: newbie Date: 1998/02/15 Message-ID: <6c7jum$kfm$1@tron.sci.fi>#1/1 Anders Rosendal (qute@daimi.aau.dk) wrote: : Hi people : I'm trying to learn the asm, but there are 4+ different kinds. Which : one should I learn? : Right now I going with pMars08 and redcode94. Good choice. The instruction set most commonly used these days is '94 with pmars extensions. The older '88 standard is also still in (rather limited) use. Pmars 0.8 can handle both ('94 is a superset of '88). For learning the basics of '94 redcode, I'd like to advertise my "Beginner's guide to Redcode", http://www.sci.fi/~iltzu/corewar/guide.html Whether it's better to learn '94 or '88 first is a matter of opinion. I pretty much learned both simultaneously, trying to scrape together bits of information I found on the WWW. If you're mostly interested in '94, this is where I'd suggest starting, though obviously my opinion is a bit biased. :) : I'm still having problems with understanding the programs I see :-( Well, you have a long road ahead of you. After reading the guide, you should be able to understand what each instruction does, and how they work together. Reading old CoreWarrior issues and various tutorials should let you recognise common components. For the details, just trace the execution - in pmars or in your head. As for how each "magic number", particular ordering of instructions or such affect the success of a warrior, often even the author doesn't understand it all. I just works. -- __,,,------._ ,-/| `-. Ilmari Karonen (iltzu@sci.fi) ^ All opinions expressed /, '\, `. ,|"-;;.__ http://www.sci.fi/~iltzu/ | in this message are my / ' 4(_,-_,-"_,/.' `'--' ,------------------------' own. If you want me to "`-(_,-"" `-' (,' itz | make some for you too, you should pay for them! From: Paul Kline Subject: Re: Some more questions :-) Date: 1998/02/15 Message-ID: <34E6D854.7BBD8029@drake.edu>#1/1 JOHN METCALF wrote: > > In The Armchair Universe, a game called DARWIN is mentioned, which > is a programming game from the early 70's. Does anyone have any > details? I might be old enough to have played DARWIN :-) As an exercise in artificial intelligence one of my professors wrote a DARWIN simulator (wrote it directly on a keypunch!) The class then submitted punchcard programs for competition. After one semester very simple programs were doing the best. As I remember a small replicator was the overall winner. DARWIN had some of the same instructions, but also some more powereful ones. A single instruction replicated and started a program at a given location, there was no other way to replicate you copied the whole program. Another instruction gave you the distance to the next live program in core. Another gave you the Identity Number of a program running in core. Program boundaries were well-defined. No two programs occupied the same space. The first few instructions of your program were reserved for core information, like your Identity Number (so you could tell your descendants from your opponents), Core Size, length of your program, and your starting position. There was a Kill instruction that you used to kill an opponent, if given the proper address it would kill that copy of that program. But programs were allowed to designate a small number of 'protected' locations. If you tried to Kill one of those there was no effect. And if you tried to replicate yourself into occupied space you died. After being killed, your instruction space was wiped clean. One devious strategy, called Polio, was to change the opponent's Core Size register to about 10 (instead of 10000). That usually left him searching for unoccupied space in 10 bytes instead of the whole core. I believe the class always ran DARWIN in multi-warrior mode, though you could sumit tests against single opponents. There was an automatic adjustment to core size depending on the number of opponents submitted. I seem to remember that DARWIN was not multi-threaded like CoreWars. A program copy ran until it died, replicated, or scanned a protected location. If you looked at or attempted to kill a protected location, control transferred to that program. If you died control passed to the next program in queue (not yours). Surprisingly there seemed to be no clear advantage to going first, you had to scan core to find free space for copying, you only got to copy once per turn, and scanning a protected location caused you to lose your turn. State-based intelligence was attempted by some, keeping track of what had been attempted in case you lost your turn, but in a multiwarrior environment there could be major changes in the field before you got another chance. Imps would be impossible, given the copying scheme and the rule prohibiting executing an instruction outside the body of your program. Dumb bombers gave up control too often, replication was _important_ in a multi-warrior game. Comparing the two games, the fixed data locations were more extra baggage than help - they were too vulnerable to attack. Multi-threading is better. Respecting program boundaries seems like an interesting idea. In general I like CoreWars primitive instruction set, you can do anything with it you can dream up. I have no idea where to get a copy of DARWIN's specs. Paul Kline pk6811s@acad.drake.edu From: guenzel.p1@usa.net (Bjoern Guenzel) Subject: Re: Tiny Core :-) Date: 1998/02/15 Message-ID: <34e6d45c.5601975@news.lrz-muenchen.de>#1/1 On Wed, 21 Jan 1998 19:08:26 -0800, Robert Macrae wrote: >Just in case anyone fancies writing a warrior in a _32_ word core... >Take a look at this link and marvel. > >8-) > > >"A worldwide competition is being held to write a software program for >the world's first stored-program digital computer. The Baby, or Small >Scale Experimental Machine, is being rebuilt to celebrate the 50th >anniversary of its birth on June 21, 1948 at the University of >Manchester, in a project being undertaken by the British Computer >Conservation Society and ICL. > >Closing date March 31, details on www.cs.man.ac.uk/prog98/" > >FT 14/1/98. > >-- > >Regards, > >Robert Macrae > Has anybody got ideas for 'useful' computations? Just another calculation of pi would be a bit boring IMO (although challenging, too, I suppose)... Bjoern -- My e-mail address will be altered when it gets flooded by advertising. To send me mail after June '98 in reply to this post, please use the word 'usenet' in the subject line to make sure I receive it. From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) Subject: No questions this time ! Date: 1998/02/15 Message-ID: #1/1 Midget... I have two references to this warrior, 1) The Armchair Universe, by A K Dewdney 'Three programs emerged victorious from the fray, CHANG1 by Morrison J. Chang or Floral Park, N.Y., and two entries by Chip Wendell, MIDGET and MICE.' 'The final win by mice came oddly; MIDGET and MICE both fought CHANG1 to a draw, but MICE captured the deciding point by beating MIDGET.' 2) The Core War Newsletter, Winter 1991 ICWS Grand Final of 1990 (The top three warriors from previous tournaments battle each other and Imp) 1 XTC 5 SUD 9 MULEDNA 13 IMP 2 PAPER 6 MICE 10 PIPER 14 HYPRAY 3 DBLSTRM2 7 COWBOY 11 WANG1 15 MIDGET 4 PLAGUE 8 FERRET 12 CHANG1 16 PWRBOMB Hope thats of interest to someone :-) Cheers - John From: Richard Rognlie Subject: Richard's C++Robots KotH Standings Date: 1998/02/16 Message-ID: <34E9013A.260BABDE@gamerz.net>#1/1 Program Name Score W / L / T Age Author ================ ===== =========== === ===================================== 1 tommy 225 75/ 15/ 0 7 zcewj@cnfd.pgh.wec.com (Elliot W. Jac 2 ttr3 210 70/ 20/ 0 140 traber@cosinet.de (Thomas Traber) 3 shogun 188 62/ 26/ 2 1 merskin@nswc.navy.mil (Michael J. Ers 4 kiilbot1 174 58/ 32/ 0 125 bob2@goplay.com (bob2) 5 ssm4 168 56/ 34/ 0 154 enpch@bath.ac.uk (C Harrison) 5 chaos 168 56/ 34/ 0 122 agondare@hotmail.com (alex gondarenko 7 mariner 150 50/ 40/ 0 217 zcpjm@cnfd.pgh.wec.com (Paul J. Melko 8 shooter 147 49/ 41/ 0 186 itdcjr@mail1.hants.gov.uk (Justin Row 8 krom 147 49/ 41/ 0 94 tdavis@gate.net (Thomas E. Davis) 8 knownaim00 147 49/ 41/ 0 39 c.d.wright@solipsys.compulink.co.uk ( 11 doubleshooter 125 39/ 43/ 8 106 mario.deweerd@ibm.net (Mario De Weerd 12 fodder0 117 39/ 51/ 0 16 christopher.meehan@reuters.com (C_MEE 13 troll 114 38/ 52/ 0 5 nxcholer@bechtel.com (Cholerton, Nik) 14 prio.2 105 35/ 55/ 0 82 oliver@jowett.manawatu.planet.co.nz ( 15 fodder 99 33/ 57/ 0 17 christopher.meehan@reuters.com (C_MEE 16 fodder7 90 30/ 60/ 0 24 christopher.meehan@reuters.com (C_MEE 17 raystonn 89 28/ 57/ 5 61 svincent@a.crl.com (Samuel Vincent) 18 no10 87 29/ 61/ 0 3 feibisch@lennier.gtc.ibu.de (Frank Ei Visit http://www.gamerz.net/~c++robots/ for details. -- / \__ | Richard Rognlie / Sr. Internet Developer / Erol's Internet \__/ \ | E-Mail: rrognlie@gamerz.net / \__/ | Phone: (Office) 703.321.8000x2222 \__/ | Join the fight against SPAM! http://www.cauce.org From: KOTH Subject: SKI-ICWS: Status - ICWS Experimental 94 02/16/98 Date: 1998/02/16 Message-ID: <199802160500.AAA00647@midgaard.ttsg.com>#1/1 Weekly Status on 02/16/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Feb 8 17:11:42 EST 1998 # %W/ %L/ %T Name Author Score Age 1 37/ 5/ 58 Evol Cap 4 X John Wilkinson 170 35 2 49/ 33/ 18 Dr. Gate X Franz 166 6 3 49/ 38/ 12 Memories Beppe Bezzi 160 42 4 36/ 15/ 49 Rosebud Beppe 157 14 5 45/ 33/ 22 Dr. Recover Franz 156 5 6 43/ 34/ 23 BigBoy Robert Macrae 153 60 7 45/ 40/ 14 Stepping Stone 94x Kurt Franke 151 21 8 46/ 46/ 7 S.E.T.I. 4-X JKW 147 36 9 40/ 34/ 26 Lithium X 8 John K Wilkinson 147 26 10 44/ 44/ 13 Pagan John K W 144 20 11 37/ 30/ 33 Falcon v0.3 X Ian Oversby 144 8 12 42/ 41/ 18 Fire Master Xv1 JS Pulido 143 57 13 39/ 36/ 25 Tornado 2.0 x Beppe Bezzi 142 59 14 41/ 43/ 16 xpander Zul Nadzri 139 2 15 44/ 50/ 7 HSA Copy 55440 Robert Macrae 137 3 16 38/ 41/ 22 Trouble Zul Nadzri 134 1 17 41/ 48/ 11 Tsunami v0.1 Ian Oversby 134 13 18 39/ 44/ 17 Illusion-94/55 Randy Graham 133 17 19 31/ 32/ 37 Variation M-1 Jay Han 131 15 20 38/ 48/ 14 Frontwards v2 Steven Morrell 129 65 21 0/ 82/ 18 Army of Darkness w50a Compudemon 19 0 From: KOTH Subject: SKI-ICWS: Status - Standard 02/16/98 Date: 1998/02/16 Message-ID: <199802160500.AAA00630@midgaard.ttsg.com>#1/1 Weekly Status on 02/16/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Fri Feb 13 05:17:49 EST 1998 # %W/ %L/ %T Name Author Score Age 1 44/ 29/ 27 Leapfrog David Moore 159 7 2 36/ 24/ 40 Test Wayne Sheppard 149 199 3 31/ 16/ 52 Test I Ian Oversby 146 35 4 40/ 36/ 24 Tangle Trap David Moore 144 52 5 32/ 20/ 49 Evoltmp 88 John K W 143 29 6 25/ 8/ 67 Trident^2 '88 John K W 143 2 7 40/ 39/ 21 Stasis David Moore 140 86 8 39/ 38/ 23 PacMan David Moore 140 8 9 41/ 43/ 16 Blur '88 Anton Marsden 140 16 10 30/ 20/ 51 Cannonade P.Kline 139 210 11 39/ 39/ 22 Gisela 3G6 Andrzej Maciejczak 139 73 12 29/ 19/ 52 Rosebud 88 Beppe 139 41 13 40/ 40/ 20 Beholder's Eye V1.7 W. Mintardjo 139 254 14 29/ 20/ 50 ttti nandor sieben 138 160 15 41/ 43/ 16 Iron Gate Wayne Sheppard 138 304 16 30/ 22/ 47 Simple '88 Ian Oversby 138 65 17 30/ 23/ 47 CAPS KEY IS STUCK AGAIN Steven Morrell 138 176 18 39/ 46/ 14 Test Anton Marsden 132 6 19 38/ 47/ 15 Test Anton Marsden 130 1 20 37/ 46/ 17 Gisela 609 Andrzej Maciejczak 128 48 21 2/ 98/ 0 0 0 7 0 From: KOTH Subject: SKI-ICWS: Status - MultiWarrior 94 02/16/98 Date: 1998/02/16 Message-ID: <199802160500.AAA00643@midgaard.ttsg.com>#1/1 Weekly Status on 02/16/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sat Feb 14 06:50:30 EST 1998 # Name Author Score Age 1 Die Hard P.Kline 5206 82 2 Multi Kulti Christian Schmidt 5206 8 3 Ultra Ken Espiritu 5206 3 4 Aulder Man Ian Oversby 5206 36 5 U-lat v3.8 Zul Nadzri 5206 14 6 Time to send in the imps Robert Hale 5206 7 7 IMPossible! Maurizio Vittuari 5206 49 8 CyberBunny Compudemon 5206 1 9 Ultra Ken Espiritu 5206 4 10 Sad 4.9 Robert Macrae 5206 2 11 Slimer WolfWings 3970 0 From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: pMars graphics doesn't work Date: 1998/02/16 Message-ID: <34e8b4d0.13013407@news.image.dk>#1/1 On 16 Feb 1998 13:25:43 +0000, Philip Kendall wrote: >> It's seem's that my Matrox millenium isn't a SVGA, VGA, EGA or CGA >> card. The only mode pMars knows is mode 3(textmode). >> Can anyone help? >My guess (from what you're posting with) is that you're running under >Win95, That's correct. (Hmmm, it's not for nothing you're at Cambridge ;-) > under which the standard pMARS won't run in graphics >mode. Well I discovered that I hadn't compiled it for graphics, but that was also impossible(for me anyways). >However, Nandor Sieben has a version available from his home >page: >http://math.la.asu.edu/~sieben/ >which will. Yes. Now it ALL works. Thanks a bunch! (Now to figue out how the debugging works...) ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: "John K. Lewis" Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/16 Message-ID: #1/1 Margaret Yeager wrote: : boot : count for MAXLENGTH mov count+6,count+3000 : rof it looks like you are making 100 "mov count+6,count+3000" : decoy : for 100 : DAT 1,1 : rof then it looks like you are adding 100 lines of DAT 1,1 : ;coreclear : dat 0,(t=7840) : stun : mov 1,t+80 : JMP 0,0 : djn stun,t : dat 0,(t=7840) : kill mov 1,t+80 : DAT 0,0 : djn kill,t : end : Can you figure out why pMARS says that it is more than 100 commands : longer than it's supposed to? I made sure that 100 was maximum commands. : Please don't use my code. So you need to remove the "MAXLENGTH portion and put in something like 8. You might do better with a smaller boot. Maybe something with a DJN to boot away. Second thing you might want to do is reduce the number in your decoy to say... 60. But there are ways to automate the size so that you can get it exactly to 100. When you use for n ;code rof you need to remember that you are making more lines of code. In this case you are making "MAXLENGTH" lines of code at the start and then adding more on the back end. (The 100 line limit is in redcode, not pmars code.) Hope this helps. John K. Lewis : Josh < john k. lewis > < jklewis@umich.edu > < 77325 > < sig.virus 2.0 > From: Philip Kendall Subject: Re: Help!!! Date: 1998/02/16 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > I downloaded the wilikies program but it didn't work. Do I have to unzip > it to a special directory or something? Could you tell me how to use it? It has to be in the same directory as both pmars.exe and the warrior files; other than that, no. (It might be more helpful if you hold us what you were getting in the way of error messages :-) ) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: GNRB30E@prodigy.com (Margaret Yeager) Subject: ARRGHH!! My warrior won't work! Date: 1998/02/16 Message-ID: <6c9q4h$33hu$1@newssvr04-int.news.prodigy.com>#1/1 Help! I wrote a warrior that I think might work well but it is supposedly to big by about 100 commands. Here is the code: ;redcode-94 ;name DAT Murderer ;author Josh Yeager ;assert 1 ;strategy It initializes and then sweeps about 98% of the core with JMP 0, 0 ;strategy bombs then it splits into 5 bombers and an imp-gate. The bombers ;strategy immediately start DAT 0,0 bombing. ;version numbers: ;1.0 the original program ;1.1 fixed small bugs ;1.2 added a decoy and move routine to counteract scanners ;2.0 not here yet; want to add a pspace routine boot count for MAXLENGTH mov count+6,count+3000 rof decoy for 100 DAT 1,1 rof ;coreclear dat 0,(t=7840) stun mov 1,t+80 JMP 0,0 djn stun,t dat 0,(t=7840) kill mov 1,t+80 DAT 0,0 djn kill,t end Can you figure out why pMARS says that it is more than 100 commands longer than it's supposed to? I made sure that 100 was maximum commands. Please don't use my code. Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: pMars graphics doesn't work Date: 1998/02/16 Message-ID: <6c9pap$4e5q$1@newssvr04-int.news.prodigy.com>#1/1 Hi, I had the same problem. If you want to use pMARS and not another program download the 286 version of it. It is not slower that I can tell and it can use SVGA,VGA,EGA,and CGA (who would have CGA). Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: Help!!! Date: 1998/02/16 Message-ID: <6c9p03$353s$1@newssvr04-int.news.prodigy.com>#1/1 I did that but it gave me a weird error. The error was: Capture file 26314.tmp does not contain result number triplet or quadruplet. Help! Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: Help!!! Date: 1998/02/16 Message-ID: <6c9oq4$2ngi$1@newssvr04-int.news.prodigy.com>#1/1 I downloaded the wilikies program but it didn't work. Do I have to unzip it to a special directory or something? Could you tell me how to use it? Josh From: Philip Kendall Subject: Re: Newbie MARS implementation question. Date: 1998/02/16 Message-ID: #1/1 "Carter Cheng" writes: > 1) Is there a standard way in which random initial separation is suppose to > be implemented? If so, does anyone have the standard algorithm for how it's > done? If not, can some one suggest a place where I could find an algorithm > to do this effectively? The only semi-official standard is pMARS, which includes its own pRNG. Source code is available from Stormking, Planar and/or the original FTP site. > 2) Is there test code out there with which I can validate my simulator or do > I have to write it myself? pMARS comes with 'validate.red' which will test for Redcode '94 compliance. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: newbie Date: 1998/02/16 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > I'm trying to learn the asm, but there are 4+ different kinds. Which > one should I learn? > > Which software do YOU recommend?? > > Right now I going with pMars08 and redcode94. pMARS v0.8 is definitely the best choice, and Redcode '94 is definitely the variant under which most people are playing. > I'm still having problems with understanding the programs I see :-( The best place to start is Steve Bailey's Guide for Beginner's (available at Pizza or Stormking). See my Web pages for more links (URL in sig) > Is the game dead today or are there many still playing Corewar? Loads of us... except that Pizza (our favourite server) is down at the moment... > Can(and will) anybody explain what this does?? I cannot see why it > works [snip XTC] It's a fairly simple JMZ scanner -- see the early editions of Core Warrior for an introduction to scanners. HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Pizza Date: 1998/02/16 Message-ID: #1/1 Brett Greenfield writes: > Wasn't the pizza server suposed to be fixed by now Not as far as I know. > I have made my own hill but it is not the same > would some one tell me how the hills work > so that I cant get it online Perl scripts -- talk to either Tuc (Stormking Admin) or Thos (Pizza admin) if you want any more details. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: pMars graphics doesn't work Date: 1998/02/16 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > It's seem's that my Matrox millenium isn't a SVGA, VGA, EGA or CGA > card. The only mode pMars knows is mode 3(textmode). > > Can anyone help? My guess (from what you're posting with) is that you're running under Win95, under which the standard pMARS won't run in graphics mode. However, Nandor Sieben has a version available from his home page: http://math.la.asu.edu/~sieben/ which will. HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Brett Greenfield Subject: Possible cheat? Date: 1998/02/17 Message-ID: <6cfhnr$27i@bgtnsc03.worldnet.att.net>#1/1 I just had the most horrible thought if some one could get the formula for the random number generater. one could write a program that simulates excatly where the other warrior will be. based on previous fights if you dont believe it is possible give me the random number generator's formula and i will build the ultimate one shot. note however there are ways to make the generator almost completely random (ie doesn't nessarily use the last random number to generate the next one) however i dont believe that this was used because it is an obscure loophole. From: Brett Greenfield Subject: Re: One more :) Date: 1998/02/17 Message-ID: <6cd6sk$egs@bgtnsc02.worldnet.att.net>#1/1 Carter Cheng wrote: > > I noticed from the 3.2 spec that technically negative numbers for relative > addressing is not supported- So does the compiler frontend interpret these > results for the simulator backend or is the backend suppose to understand > negative addressing? the front end converts negatives into positves by adding corsize to the number till it becomes positive (actually it uses modulus to do it) so -1 becomes 7999 (with coresize=8000) eg 0000 nop 0,0 0001 jmp 7999 ;(-1) (0001 + 7999) % 8000 = 0000 absolute address in fact if you know the corsize will be 8000 you can use 7999 instead of -1 and it will work From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: newbie Date: 1998/02/17 Message-ID: <34e9de57.1885862@news.image.dk>#1/1 On 15 Feb 1998 20:41:58 GMT, iltzu@sci.fi (Ilmari Karonen) wrote: >Anders Rosendal (qute@daimi.aau.dk) wrote: >: I'm trying to learn the asm, but there are 4+ different kinds. Which >: one should I learn? >: Right now I going with pMars08 and redcode94. >Good choice. Alright! :-) >For learning the basics of '94 redcode, I'd like to advertise my >"Beginner's guide to Redcode", http://www.sci.fi/~iltzu/corewar/guide.html Got it allready. And I think it's one of the better one's. >Whether it's better to learn '94 or '88 first is a matter of opinion. I >pretty much learned both simultaneously, trying to scrape together bits >of information I found on the WWW. Me too :-) It's going a little better now. I think my brain just needed time to suck it in. >If you're mostly interested in '94, this is where I'd suggest starting, though obviously my opinion is a bit >biased. :) I am - since I think the game gets more interesting, when the code it more complex. If the code isn't complex, how can one be better than another?? >: I'm still having problems with understanding the programs I see :-( >Well, you have a long road ahead of you. After reading the guide, you >should be able to understand what each instruction does, and how they >work together. Yeah, some of the modyfiers combined with some of the instruktions doesn't make sense, so I still need to find out(and remember) what they do. >Reading old CoreWarrior issues and various tutorials Ahhh, that's what I forgot. Damn! Well, I'll remember it tomorrow... >As for how each "magic number", particular ordering of instructions or such affect the success of a >warrior, often even the author doesn't understand it all. I just works. Okay :-) Thanks. ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: qute@daimi.aau.dk (Anders Rosendal) Subject: KOTH Date: 1998/02/17 Message-ID: <34e9dbec.1266295@news.image.dk>#1/1 Hi all I've been wondering: Does there exist a KOTH program with source? (I'm going to hold my own little KOTH with some friends I got to play Core War :-)) ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/17 Message-ID: <6ccg9c$32c$1@msunews.cl.msu.edu>#1/1 Margaret Yeager (GNRB30E@prodigy.com) wrote: >Help! I wrote a warrior that I think might work well but it is supposedly >to big by about 100 commands. Here is the code: >;redcode-94 >;name DAT Murderer >;author Josh Yeager >;assert 1 >;strategy It initializes and then sweeps about 98% of the core with JMP 0, >0 >;strategy bombs then it splits into 5 bombers and an imp-gate. The >bombers >;strategy immediately start DAT 0,0 bombing. [code deleted] >Can you figure out why pMARS says that it is more than 100 commands >longer than it's supposed to? I made sure that 100 was maximum commands. >Please don't use my code. Here is the main culprit: count for MAXLENGTH mov count+6,count+3000 rof The preprocessor will expand this into 100 instructions (or whatever else MAXLENGTH is set to!) Frankly, your code is nowhere near working. I've included a version below which implements the strategy that you've outlined. It's not designed to be a competitive warrior but at least it compiles and runs. I would recommend that you check out some of the tutorials that are out there, in addition to the FAQ. BTW, I wouldn't worry too much about others using your code, even after you do get something working. I can only vaguely remember one accusation of code-stealing which happened over 5 years ago. I think most of the people in rec.games.corewar really want to write their own original code; cheating is just not in the good nature of this group. ;redcode-94 ;name The DAT Murderer's Trial ;author Anonymous ;assert 1 ;strategy It initializes and then sweeps about 98% of the core with JMP 0, 0 ;strategy bombs then it splits into 5 bombers and an imp-gate. The bombers ;strategy immediately start DAT 0,0 bombing. org start ; specify execution start step equ 98 ; for the preprocessor only jptr dat 0, 0 jbomb jmp 0, 0 start mov jbomb, < jptr djn -1, # (CORESIZE*98)/100 ; calculated by the preprocessor i for 5 spl bomber&i, 0 rof jmp impgate, 0 gate dat 0,0 ; this will be changed every cycle after bombers are killed for 4 dat 0,0 rof impgate jmp 0, > gate ; this will be the only survivor of bombing dat 0,0 datbomb dat 0,0 i for 5 bomber&i mov datbomb, step+1 add #step, -1 jmp -2, 0 rof end From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: Pizza Date: 1998/02/17 Message-ID: <6ccbup$man$1@msunews.cl.msu.edu>#1/1 Brett Greenfield (nospam@nospam.nospam) wrote: : Wasn't the pizza server suposed to be fixed by now : I have made my own hill but it is not the same : would some one tell me how the hills work : so that I cant get it online : I want my very own Koth It might be a good idea to have a 2nd beginner hill; for example, one with pspace and one without. As for pro hills -- obviously, there can be only one. But since the beginner hill seems to be more popular these days, why not have two? - David From: Philip Kendall Subject: Re: Implementation question : Scoring Date: 1998/02/17 Message-ID: #1/1 "Carter Cheng" writes: > Are there a number of various standard methods in scoring and is there a > place where I can get information on them rather than going through the > pMars source? The method used by pMARS (as mentioned in pmars.doc) is ((W*W)-1)/S, where W is the number of warriors in the fight, S is the number of survivors and / represents integer division. (A loss is always 0 points). For one-on-one fights, this comes down to 3 points for a win, 1 for a tie and 0 for a loss. The Pizza hills then scale the total score by dividing through by the (number of warriors fought*rounds fought/100) so a warrior which gets all ties ends up as having 100 points. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: "Carter Cheng" Subject: Implementation question : Scoring Date: 1998/02/17 Message-ID: <6cbl7l$sum@suriname.earthlink.net>#1/1 Are there a number of various standard methods in scoring and is there a place where I can get information on them rather than going through the pMars source? Thanks, Carter cwcheng@earthlink.net From: "Carter Cheng" Subject: One more :) Date: 1998/02/17 Message-ID: <6cbl2t$ss9@suriname.earthlink.net>#1/1 I noticed from the 3.2 spec that technically negative numbers for relative addressing is not supported- So does the compiler frontend interpret these results for the simulator backend or is the backend suppose to understand negative addressing? Thanks in advance. Carter cwcheng@earthlink.net From: "Brian Haskin" Subject: Re: Newbie MARS implementation question. Date: 1998/02/17 Message-ID: <007001bd3b61$d0a85080$0b00000a@brianjr.haskin.org>#1/1 -----Original Message----- From: Carter Cheng To: Multiple recipients of list Date: Monday, February 16, 1998 10:49 PM Subject: Newbie MARS implementation question. >Hi I'm trying to write my own MARS implementation based on the '94(revision >3.2) spec and I've run into some difficulties. I was wondering if anyone >would be nice enough to answer a few of my questions. > >1) Is there a standard way in which random initial separation is suppose to >be implemented? If so, does anyone have the standard algorithm for how it's >done? If not, can some one suggest a place where I could find an algorithm >to do this effectively? > There is no real standard but the defacto standard for anything concerning a MARS right now is pMARS so you might want to take the algorithm used in pMARS for the random number generator. >2) Is there test code out there with which I can validate my simulator or do >I have to write it myself? > If I remember right there is a short program packaged with pMARS which tests for a couple of things (mainly in register or in memory evaluation) but really doesn't test a whole lot. I am currently writing a MARS in java (jMARS) so I may very soon write a test suite, if I ever actually write one I'll post it to the list. The other alternative is just to run warriors through it and see if they run right. ;) For everyone's information I currently have the MARS portion of jMARS finished and at least partially debugged I'm working on writing the warrior parser and then I have to do some sort of front end. The speed under JDK1.1.5's appletviewer is about the same speed as pmars -v714 i.e. it's slowest command line setting (under IE 4.0 it's about 20% faster). I plan on making this run as an application or applet, and will be releasing this under a BSD style license (for those not familiar with the BSD license, it's like GPL but with less restrictions). Brian Haskin haskin@ptway.com From: Brett Greenfield Subject: tournament question Date: 1998/02/18 Message-ID: <6cie3q$4ii@bgtnsc01.worldnet.att.net>#1/1 please confirm that your want a three way pswitcher between the said programs and that the Plogic must be capable of selecting all three and that we will be fighting other pswitchers and not the three programs i noticed a scanner is one of the programs is a scanner can we alter it to not scan the pcode and other two programs are non boot decoys allowed or custum boots where does each program start (I figured out the paper it starts at the top but the others i am not sure about) also can we launch muliple copys of any or all the programs or add our own components I aready have a working RPS (rock paper scisors) pcode which works like this win no next=curr loss add next=(curr+2)%3 tie add next=curr+1)%3 st 0 = r st 1 = p st 2 = s note however that this is for use against a non pspace and i wont use it if i go pu against other pspacers are we allowed to use a Prandom number generator like (next=curr*prime followed by slct=next%3) thus the fights will be rand vs rand =tie? rand vs norm =win?/tie? rand vs anti-rand =loss? rand vs rps =win? rand vs anti-pspace=win?/tie? rand vs anti-anti-pspace=tie? rand vs anti-rand/rand=loss?/tie? double rand vs anti-rand=tie? From: Brett Greenfield Subject: self altering rocks Date: 1998/02/18 Message-ID: <6ci9v8$6bp@bgtnsc01.worldnet.att.net>#1/1 I read some where the some rock chang there step size many times in order to hit every location in the core except on top of said rock how does one do this quickly and efficiantly? also helpful would be an explanation of Q^2 scanners, i read the corewarrior but it wasn't much help From: Brett Greenfield Subject: Re: Scientific American Article? Date: 1998/02/18 Message-ID: <6ci9ee$6bp@bgtnsc01.worldnet.att.net>#1/1 he wrote a series of articles around 1977 From: "Carter Cheng" Subject: Newbie MARS implementation question revisited Date: 1998/02/18 Message-ID: <6cgidj$a7l@suriname.earthlink.net>#1/1 I'm on the verge of finishing the backend of MARS simulator based on the '94 draft but I've noticed that pMARS supports some new opcodes not included in the draft(most notably the two pspace instructions). Are these instructions used much and should I implement them? I'm writing this backend hopefully so I can hook it up with a GA unit to evolve some warriors and see how well they stack up against warriors written by humans. Also what are the more popular scoring methods? Do they fit into specific categories so that they are easy enough to implement so that they dont require some expression parsing? Thanks everyone for all the help and thanks again, Carter cwcheng@earthlink.net From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Possible cheat? Date: 1998/02/18 Message-ID: <6cfkid$5ir$1@tron.sci.fi>#1/1 Brett Greenfield (nospam@nospam.com) wrote: : I just had the most horrible thought : if some one could get the formula for the random number : generater. one could write a program that simulates excatly : where the other warrior will be. based on previous fights IIRC this has been done. Look for it in dejanews, or find a warrior called Cheater (?) in Planar's archive. It wasn't exactly what you suggest, though. Yes, the generator is available in the pmars source. (unless is uses the standard rand(), I haven't checked) And yes, you can write a random number generator in redcode. (I'm still waiting for Anton to post Fern and the other tournament entries) The problem is that the core size imposes a rather low maxint for redcode. You'd have trouble simulating the pmars RNG, which probably uses 32-bit integers. Cheater used a system where a test warrior detected the first round separation on the hill, (It's fixed, by pmars -F ????, where ???? is changed monthly, I think) and displayed it in the score using pspace. (Back then there were self fights - now you'd have to get two warriors on the hill to do the handshake) The actually warrior then contained a table listing the first 150 or so separations, calculated by running pmars with the same -F value. -- ii 3D .sigXIlmari KaronenAscii 3D .sigIlmari Karonen_Ascii 3D .sigIlmari Kar fi.stereo@graphic.iltzu@sci.fi.stereo@graphiciltzu@sci.fin.stereo@graphicilt ltzu/ba/http://www.sci.fi/~iltzu/bahttp://www.sci.fi/~iltzu/1bahttp://www.sc is a stereogram!>#1/1 On 18 Feb 1998 04:58:26 -0500, Dearboy wrote: [...] >identification of who's instructions are whose, etc. I don't know assembly >(well, I /can/ cookbook a bit, but that's a bad/sick idea) but I've dabbled >enough to realize that a bunch of things work backwards (i.e. 'mov 1, 0' in >redcode would look like 'mov 0, 1' in asm) which had me confused for a bit... This was the reason that I never learned machinecode on the Amiga very well (many years ago). I wasn't able to figure out the mistake - I was so much used to redcoding, that I didn't get it that on the Amiga the instruction was MOVE not MOV - I just cursed the assembler.... Well, silly me... :-) [...] Anyway, about how constructions are executed: Each program has a 'process qeue', basically just a list of numbers that point to locations (== corresponding instructions) in the core. Each turn, for each program the address being pointed to by the first element of the qeue of that programs process qeue is being executed. If everything goes fine, the resulting new address is then qeued again in that programs process qeue (the next address ot another one if it was a jmp or something like that - for a spl 2 new processes are qeued). However, if it was a dat, nothing will be added to the process qeue. If a programs process qeue is empty, it is dead. Bjoern -- My e-mail address will be altered when it gets flooded by advertising. To send me mail after June '98 in reply to this post, please use the word 'usenet' in the subject line to make sure I receive it. From: Philip Kendall Subject: Re: Help!!! Date: 1998/02/18 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > I did that but it gave me a weird error. The error was: Capture file > 26314.tmp does not contain result number triplet or quadruplet. I think that's an error from mts, rather than from the Wilkies batch file -- what it means is that the attempt to run pMARS produced an error (either pMARS couldn't be found, one of the warrior files couldn't be found, one of the warrior files wouldn't compile, or bad arguments were given to pMARS). Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: program flow Date: 1998/02/18 Message-ID: #1/1 Dearboy writes: > This idea, however, doesn't allow obvious identification of who's > instructions are whose, etc. There is no such identification -- instructions are just instructions, without any 'ownership'. Any program will just execute whatever happens to be in the next core location its instruction pointer is at, regardless of what put it there. > I don't know assembly (well, I /can/ cookbook a bit, but that's a > bad/sick idea) but I've dabbled enough to realize that a bunch of > things work backwards (i.e. 'mov 1, 0' in redcode would look like > 'mov 0, 1' in asm) which had me confused for a bit... Depends quite a lot on which machine you are writing assembler for. > I'm moreso looking for resources that specifically address this than > for someone to explain it, simply because I don't want to be redundant. It > might be in something I've read and just not caught on to. So, point me to > where it's been addressed first, and if I don't understand still, I'll > coming crawling back. Any help is appreciated. I found Steve Bailey's Guide for Beginners (available on Stormking or Planar's site) to be the best introduction to concepts like this. HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: guenzel.p1@usa.net (Bjoern Guenzel) Subject: Re: newbie Date: 1998/02/18 Message-ID: <34eab8f8.747404@news.lrz-muenchen.de>#1/1 On Tue, 17 Feb 1998 20:16:30 GMT, qute@daimi.aau.dk (Anders Rosendal) wrote: [...] >Me too :-) It's going a little better now. I think my brain just >needed time to suck it in. I remember the feeling...:-) [...] >Yeah, some of the modyfiers combined with some of the instruktions >doesn't make sense, so I still need to find out(and remember) what >they do. Some combinations indeed don't have any effect, or sometimes .i just works like .f and so on. I think you can see that in the specific descriptions of the commands, but I am not sure. > >>Reading old CoreWarrior issues and various tutorials > >Ahhh, that's what I forgot. Damn! Well, I'll remember it tomorrow... You'll find it very much worthwile. Bjoern -- My e-mail address will be altered when it gets flooded by advertising. To send me mail after June '98 in reply to this post, please use the word 'usenet' in the subject line to make sure I receive it. From: Dearboy Subject: program flow Date: 1998/02/18 Message-ID: <1.5.4.16.19980210032840.46bf23e2@mailer.isn.net>#1/1 Well... I read most of the documentation/faqs/guides/propaganda/etc. The one thing preventing me from coding is this: program flow. I have no conception of how it works precisely, and how it is bounded. I can sort of see how they're loaded into the core, but I don't understand exactly how one program is seperated from another and how two will function when overlapping and all that. My orginal concept was that the instructions in the core were all executed sequentially, as a running program, jmp's and what not could play havoc with the IP (instruction pointer incase I'm talking over anyone's head) and this was fine, and fun. This idea, however, doesn't allow obvious identification of who's instructions are whose, etc. I don't know assembly (well, I /can/ cookbook a bit, but that's a bad/sick idea) but I've dabbled enough to realize that a bunch of things work backwards (i.e. 'mov 1, 0' in redcode would look like 'mov 0, 1' in asm) which had me confused for a bit... I'm moreso looking for resources that specifically address this than for someone to explain it, simply because I don't want to be redundant. It might be in something I've read and just not caught on to. So, point me to where it's been addressed first, and if I don't understand still, I'll coming crawling back. Any help is appreciated. -*- []-[]-[] -*- Nature, to be commanded, must be obeyed. -Me From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: Possible cheat? Date: 1998/02/18 Message-ID: <6cfj3d$aj4$1@msunews.cl.msu.edu>#1/1 Brett Greenfield (nospam@nospam.com) wrote: : I just had the most horrible thought : if some one could get the formula for the random number : generater. one could write a program that simulates excatly : where the other warrior will be. based on previous fights : ... Check out Core Warrior 30 and a program called "Cheater 2.0" by Nathan Green. From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: program flow Date: 1998/02/18 Message-ID: <6cfi4i$4pf$1@tron.sci.fi>#1/1 Dearboy (mosher@isn.net) wrote: : see how they're loaded into the core, but I don't understand exactly how one : program is seperated from another and how two will function when overlapping : and all that. My orginal concept was that the instructions in the core were : all executed sequentially, as a running program, jmp's and what not could : play havoc with the IP (instruction pointer incase I'm talking over anyone's : head) and this was fine, and fun. This idea, however, doesn't allow obvious : identification of who's instructions are whose, etc. I don't know assembly Your original concept of it was right. The instructions don't really belong to any program, they're in the core for everyone to read, write and execute. What identifies a program is the instruction pointer, or process. Each program has its own. When the process is killed by a DAT, the program dies. Of course, in Core War each program can have several processes, not just one. But that doesn't really matter. Each program has a process queue, a list of "instruction pointers" which are executed one after another. Each such pointer, or process, belongs to a specific program. When the last process of a program dies, the whole program is dead. What the processes are executing doesn't really matter here, as long as they stay alive. I tend to think of the processes and the instructions as "the soul and the body" of a program. Neither can work without the other. With no processes, the instructions just lie there, like a dead body. But the processes only do what the instructions tell them to do, nothing else. A program dies when the processes die, but the only way an opponent can affect the processes is by changing the instructions. Incidentally, the processes - specifically their order in the queue - can play a greater part in a program than you'd think. Anyone who's ever created an imp launcher or tuned a self-splitting bomber probably agrees. So you will have to learn to trace in your mind the movement of processes to understand such programs well. I might some day clean up and post my self-splitting scanner/imp. It's big, slow and ineffective, and those flaws are probably inherent in the design, but the way it plays with the process queue is close to amazing even if I say so myself. -- . _, .. j u s t. h o w l.i n g i n .t h e n.i g h t .. ._, . , )'' . /\_ . ' ,/\ . , ``( , _\__/ |__.'\._______,--;_'_`-.___,.______,/_,_`.__,-.__'__,/`-._,_| \____ ,_f_)\. Ilmari Karonen iltzu@sci.fi http://www.sci.fi/~iltzu/ /(_|_,. From: Beppe Bezzi Subject: Re: Redcode Maniacs Round 4 Rules Date: 1998/02/19 Message-ID: #1/1 At 11.39 19/02/98 +0000, you wrote: >Maniacs, > >Round 4 will involve designing a p-switcher, to switch between three >specified component (see below). We aren't going to make any hard and >fast rules about what is and what isn't a p-switcher, as we don't want >to constrain innovation, but anything which Christian and I feel is >violating the spirit of the rules is liable to be penalised or >disqualified. (Rulings on specific warriors will be available on >request). > >The components available for use are: > >[Carbonite] > > >[Mini He Scans Alone] > > >[Timescape (1.0)] > > We cannot change anything from them, not even step size? > >The boot routines for the first two components are available from their >original sources in `Oblivion' by Ian Sutton and `Electric Head' by >Anton Marsden respectively in Planar's archive. Are we free to use our favourite boot routines ? > >These three components must appear in your warrior's code, and the rest >of the code can be taken up with the pswitcher, boot routines for the >above components and decoy. (Note this rules out qscanners). And any other thing that's not boot code pswitch and decoy, like a fast bomber spraying core for a while before starting pswitch or a fourth component. > >The deadline for entries, which should be sent to Philip Kendall > -- note this is different from previous rounds -- is >Fri 27 Feb 1998 23:59:59 GMT. Last question: pmars parameters are default? (8000 size and processes, 100 length and distance) > >Phil > > -Beppe From: jwilkinson@mail.utexas.edu Subject: Re: Help!!! Date: 1998/02/19 Message-ID: <199802190713.CAA12174@valhalla.stormking.com>#1/1 >I think that's an error from mts, rather than from the Wilkies batch >file -- what it means is that the attempt to run pMARS produced an >error (either pMARS couldn't be found, one of the warrior files >couldn't be found, one of the warrior files wouldn't compile, or bad >arguments were given to pMARS). Actually the wilkies batch file doesn't use any of the "hill" processing stuff. It just runs the battles one by one. Incidentally does anyone know if Qbasic still exists? It doesn't seem to be available anymore... and it's used in the batch file... maybe I should put it on koth.org since I've got an old copy. From: jwilkinson@mail.utexas.edu Subject: Re: Possible cheat? Date: 1998/02/19 Message-ID: <199802190728.CAA109929@valhalla.stormking.com>#1/1 >I just had the most horrible thought >if some one could get the formula for the random number >generater. one could write a program that simulates excatly >where the other warrior will be. based on previous fights Well the koth.org hills have their random number changed often... I guess pizza does too, if its hills ever get resurrected. It's more of an annoyance than a potential exploit... It's annoying because you change your boot distance by 5 and your warrior shoots up 10 points and you think you've made this terrific change. Then next month your warrior gets pushed off by DWARF with a great boot distance. And it's not really exploitable because even if you -did- know the starting location of your opponent, there's no guarantee the warrior is going to start execution at the top of it's 100 location memory space. So you've got to bomb the whole thing to have a chance. I notice cheater was written when it was feasable to "cram" the locations into the warrior itself. With 200 fights, you'd have to calculate in order to get more than 75 points or so. Given the time it would take to calculate the random location, you're not going to really be any better off than using a q^2... and the q^2 will still work next month. Then again... maybe I'm wrong. If you could calculate the location in under 10 instructions, it might be ok. Any more than 20, though, and your opponent is almost guaranteed already boot and gone. From: howaholt@aol.com (HowAHolt) Subject: Wish Pizza was up, but... Date: 1998/02/19 Message-ID: <19980219233601.SAA23429@ladder03.news.aol.com>#1/1 Well, after a gratifying response to some rather garbled mail, I have tweaked and added a couple of concepts. While I wait my chance to fail miserably on the -b hill, I'll just throw my idea up for public comment. I don't expect this to be a competitive program, at all... I'm in the "got RedCode down, now to pick up the techniques that have evolved" phase... with no further ado: ;redcode -b test ;name PaperTest v0.4 ;author Howard Holt ;strategy v0.1 - first try at coherent code ;strategy v0.2 - ok, now make it a replicator ;strategy v0.3 - add a clear, for offensive potential ;strategy v0.4 - lots of minor tweaks, and down to a one-pass clear codesize EQU 10 step EQU [still thinking... value not critical, anyway] ORG Hold CopyPtr DAT.F #0, #step Hold JMZ.A Hold, Clr+step CopyLoop MOV.I }CopyPtr, >CopyPtr SEQ.A #codesize, CpyPtr JMP.A CopyPtr [, #1/1 On 18 Feb 1998 21:41:33 GMT, iltzu@sci.fi (Ilmari Karonen) wrote: >IIRC this has been done. Look for it in dejanews, or find a warrior called >Cheater (?) in Planar's archive. It wasn't exactly what you suggest, though. Where can I find that? ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: Vampires,Decoys,Bombers,etc. Date: 1998/02/19 Message-ID: <6ci4p5$8qn$1@msunews.cl.msu.edu>#1/1 Margaret Yeager (GNRB30E@prodigy.com) wrote: : I've got Core Warrior 8 (I'm downloading them and reading them slowly) : and I read it but it wasn't much help. I couldn't figure it out. : Josh That's because the vampires in CW 8 use self-splitting loops. "Self-splitting" is a concept that is notably absent in all tutorials except Steven Morell's chapter on stones. From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/19 Message-ID: <6ci4g9$4aem$1@newssvr04-int.news.prodigy.com>#1/1 What I mean is that I would like to know how the code works (copying away, planting a decoy,etc.) Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: Vampires,Decoys,Bombers,etc. Date: 1998/02/19 Message-ID: <6ci3qi$2dh0$1@newssvr04-int.news.prodigy.com>#1/1 I've got Core Warrior 8 (I'm downloading them and reading them slowly) and I read it but it wasn't much help. I couldn't figure it out. Josh From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 1998/02/19 Message-ID: Archive-name: games/corewar-faq Last-Modified: 95/10/12 Version: 3.6 These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The hypertext version is available as _________________________________________________________________ Table of Contents 1. What is Core War 2. Is it Core War or Core Wars? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is TCWN? 8. How do I join? 9. What is the EBS? 10. Where are the Core War archives? 11. Where can I find a Core War system for ...? 12. I do not have FTP. How do I get all this great stuff? 13. I do not have access to Usenet. How do I post and receive news? 14. Are there any Core War related WWW sites? 15. When is the next tournament? 16. What is KotH? How do I enter? 17. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 18. How does SLT (Skip if Less Than) work? 19. What is the difference between in-register and in-memory evaluation? 20. What does (expression or term of your choice) mean? 21. Other questions? _________________________________________________________________ What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardized by the ICWS, and is therefore transportable between all standard Core War systems. [ToC] _________________________________________________________________ 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] _________________________________________________________________ Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Author: Dewdney, A. K. Title: The Armchair Universe: An Exploration of Computer Worlds Published: New York: W. H. Freeman (c) 1988 ISBN: 0-7167-1939-8 Library of Congress Call Number: QA76.6 .D517 1988 Author: Dewdney, A. K. Title: The Magic Machine: A Handbook of Computer Sorcery Published: New York: W. H. Freeman (c) 1990 ISBN: 0-7167-2125-2 (Hardcover), 0-7167-2144-9 (Paperback) Library of Congress Call Number: QA76.6 .D5173 1990 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. [ToC] _________________________________________________________________ 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 . This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorial, and . Steven Morrell (morrell@math.utah.edu) is preparing a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. Mail him for a preliminary version. Michael Constant (mconst@csua.berkeley.edu) is reportedly working on a beginner's introduction. [ToC] _________________________________________________________________ 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 post-increment indirect addressing mode and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft for more information. 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.csua.berkeley.edu. [ToC] _________________________________________________________________ What is the ICWS? About one year after Core War first appeared in Sci-Am, 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). [ToC] _________________________________________________________________ What is TCWN? Since March of 1987, "The Core War Newsletter" (TCWN) has been the official newsletter of the ICWS. It is published quarterly and recent issues are also available as Encapsulated PostScript files. [ToC] _________________________________________________________________ How do I join? For more information about joining the ICWS (which includes a subscription to TCWN), or to contribute an article, review, cartoon, letter, joke, rumor, etc. to TCWN, please contact: Jon Newman 13824 NE 87th Street Redmond, WA 98052-1959 email: jonn@microsoft.com (Note: Microsoft has NO affiliation with Core War. Jon Newman just happens to work there, and we want to keep it that way!) Current annual dues are $15.00 in US currency. [ToC] _________________________________________________________________ What is the EBS? The Electronic Branch Section (EBS) of the ICWS is a group of Core War enthusiasts with access to electronic mail. There are no fees associated with being a member of the EBS, and members do reap some of the benefits of full ICWS membership without the expense. For instance, the ten best warriors submitted to the EBS tournament are entered into the annual ICWS tournament. All EBS business is conducted in the rec.games.corewar newsgroup. The current goal of the EBS is to be at the forefront of Core War by writing and implementing new standards and test suites. [ToC] _________________________________________________________________ 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 (128.32.149.19) in the /pub/corewar directories. 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. Much of what is available on soda is also available on the German archive at iraun1.ira.uka.de (129.13.10.90) in the /pub/x11/corewars directory. The plain text version of this FAQ is automatically archived by news.answers. [ToC] _________________________________________________________________ Where can I find a Core War system for . . . ? Core War systems are available via anonymous ftp from ftp.csua.berkeley.edu in the /pub/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 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 ftp.csua.berkeley.edu. Generally, the older the program - the less likely it will be ICWS compatible. 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 ftp.csua.berkeley.edu: 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 ApMARS03.lha - pMARS executable for Amiga (port of version 0.3.1) wincor11.zip - MS-Windows system, shareware ($15) [ToC] _________________________________________________________________ I do not have FTP. How do I get all this great stuff? There is an ftp email server at ftpmail@decwrl.dec.com. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. If you don't have access to the net at all, send me a 3.5 '' diskette in a self-addressed disk mailer with postage and I will mail it back with an image of the Core War archives in PC format. My address is at the end of this post. [ToC] _________________________________________________________________ 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@stormking.com). Another server that allows you to post (but not receive) articles is available. Email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. [ToC] _________________________________________________________________ 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 ; pizza's is . A third WWW site is in Koeln, Germany: . Last but not least, Stephen Beitzel's "Unofficial Core War Page" is . All site are in varying stages of construction, so it would be futile to list here what they have to offer. [ToC] _________________________________________________________________ When is the next tournament? The ICWS holds an annual tournament. Traditionally, the deadline for entering is the 15th of December. The EBS usually holds a preliminary tournament around the 15th of November and sends the top finishers on to the ICWS tournament. Informal double-elimination and other types of tournaments are held frequently among readers of the newsgroup; watch there for announcements or contact me. [ToC] _________________________________________________________________ What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: "koth@stormking.com" is maintained by Scott J. Ellentuch (tuc@stormking.com) and "pizza@ecst.csuchico.edu" by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry rules for King of the Hill Corewar: 1) Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. 2) 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. (Also, see 5 below). 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. 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-b, ;redcode-94, ;redcode-94x, ;redcode, ;redcode-icws, ;redcode-94m or ;redcode-94xm. The former three run at "pizza", the latter four at "stormking". More information on these hills is listed below. 3) Mail this file to koth@stormking.com or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). 4) 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. 5) 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 20 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 20 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. Here are the Specs for the various hills: ICWS'88 Standard Hill Specs: (Accessed with ";redcode", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: ICWS '88 ICWS Annual Tournament Hill Specs: (Accessed with ";redcode-icws", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 8192 instructions max. processes: 8000 per program duration: After 100,000 cycles, a tie is declared. max. entry length: 300 minimum distance: 300 instruction set: ICWS '88 ICWS'94 Draft Hill Specs: (Accessed with ";redcode-94", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Beginner's Hill Specs: (Accessed with ";redcode-b", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft max. age: after 100 successful challenges, warriors are retired. ICWS'94 Experimental (Big) Hill Specs: (Accessed with ";redcode-94x", available at "pizza") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft ICWS'94 Draft Multi-Warrior Hill Specs: (Accessed with ";redcode-94m", available at "stormking") hillsize: 10 warriors rounds: 200 coresize: 8000 max. processes: 8000 duration: after 80,000 cycles, a tie is declared. max. entry length: 100 minimum distance: 100 instruction set: extended ICWS '94 Draft ICWS'94 Experimental (Big) Multi-Warrior Hill Specs: (Accessed with ";redcode-94xm", available at "stormking") hillsize: 20 warriors rounds: 100 coresize: 55440 max. processes: 10000 duration: after 500,000 cycles, a tie is declared. max. entry length: 200 minimum distance: 200 instruction set: extended ICWS '94 Draft If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At stormking, a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. All hills run portable MARS (pMARS) version 0.8, a platform-independent corewar system available at ftp.csua.berkeley.edu. The '94 and '94x hills allow three experimental opcodes and addressing modes currently not covered in the ICWS'94 draft document: 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] _________________________________________________________________ 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 under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you write a DAT 0, 0 instruction - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] _________________________________________________________________ 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. Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] _________________________________________________________________ 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 Color 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. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example,<4000 Dwarf the prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example MOV 0, 1 or example MOV 0, 2 MOV 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... SPL 0, mov.i #0,impsize Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at ftp.csua.berkeley.edu. Paper A Paper-like program. One which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. 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. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example SPL 0 loop ADD #10, example MOV example, @example JMP loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov.i -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov.i >-1, }-1 ;copy self to new location mov.i bomb, >2000 ;linear bombing mov.i bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat.f >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a spl-jmp bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also spl/dat Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: 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] _________________________________________________________________ Other questions? Just ask in the rec.games.corewar newsgroup or contact me (address below). 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: Paul Kline, Randy Graham. Mark Durham wrote the first version of the FAQ. The rec.games.corewar FAQ is Copyright 1995 and maintained by: Stefan Strack, PhD stst@vuse.vanderbilt.edu Dept. Molecular Physiol. and Biophysics stst@idnsun.gpct.vanderbilt.edu Rm. 762, MRB-1 stracks@vuctrvax.bitnet Vanderbilt Univ. Medical Center Voice: +615-322-4389 Nashville, TN 37232-6600, USA FAX: +615-322-7236 _________________________________________________________________ $Id: corewar-faq.html,v 3.6 1995/10/12 22:44:37 stst Exp stst $ From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Redcode Maniacs Round 4 Rules Date: 1998/02/19 Message-ID: <6chv53$jg4$1@tron.sci.fi>#1/1 Philip Kendall (pak21@hermes.cam.ac.uk) wrote: : On Thu, 19 Feb 1998, Robert Macrae wrote: : > 2) This P-Engine may not access any cells outside its own length -- it : > may not scan or bomb, or modify the given components. : True (although decoy instructions in the warrior which are not part of : the components may be modified). : > 4) No modifications may be made to the source code of the components. : Definitely true. Provided that the _booted_ copy is identical to the one specified in the rules, can a component be stored in the source in modified form? As an example, one of my pspacers had a component backwards in the source to save some space by reusing instructions. The boot code reassembled it by: for length mov.i >from, #1/1 Does anyone know what issue of Scientific American the legendary article about CoreWar by A. K. Dewdney was in? I kind of like to read the orignal article, and see what Dewdney had to say about the whole thing. Thanks in advance. Aaron St.John - AaronStJ@aol.com, Newby Atari 2600 collector extraordinare "I am a newby, I don't collect 'em!" -Me P.S. If you e-mail me, tell me were your from, I like to know! I'm in Seattle, Washington. From: Philip Kendall Subject: Re: Vampires,Decoys,Bombers,etc. Date: 1998/02/19 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > Can someone tell me how vampires work in corewars? How about decoys? Vampires: Core Warrior 8 Decoys: Answered elsewhere... > Finally, how do incendiary bombers and core clears work? Incendiary bombers: Core Warrior 7 Core clear: The FAQ gives a definition; other than that, Core Warriors 10, 13, 17, 44 give more info on various clears. Once again, the Core Warrior Index (http://www.geocities.com/SiliconValley/Park/5427/warrior.htm) was very useful in writing this reply. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Redcode Maniacs Round 4 Rules Date: 1998/02/19 Message-ID: #1/1 On Thu, 19 Feb 1998, Robert Macrae wrote: [Round 4 Rules] > To avoid confusion, might I suggest some specific rules? My > understanding is that you want to avoid QS and restrict the components > to the ones you provide, so I would suggest: > > 1) Players will write a P-Engine to control the selection of the components, > but which will not contain any extra components itself. Certainly true. > 2) This P-Engine may not access any cells outside its own length -- it > may not scan or bomb, or modify the given components. True (although decoy instructions in the warrior which are not part of the components may be modified). > 3) Boot code may be used but it must not attack locations other than > those used to store the warrior. Generally true, but code looking something like: for LENGTHOFWARRIOR mov.i {ptr,bomb_somewhere_random will be accepted. However, 'boot' code which does nothing except attack locations is not allowed. > 4) No modifications may be made to the source code of the components. Definitely true. > Finally, I assume 100 rounds and no self fights? 200 rounds, no self fights (this is on the Web page, but I forgot it on the mail again... I'll get it right one day ;-( ) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/19 Message-ID: #1/1 GNRB30E@prodigy.com (Margaret Yeager) writes: > I'm new to this and I can't figure out how decoys work for anything. Scanners simply waste their time attacking the decoy, allowing your warrior to kill the nasty scanner. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Robert Macrae Subject: Re: Redcode Maniacs Round 4 Rules Date: 1998/02/19 Message-ID: <34ECA8E9.2216@dial.pipex.com>#1/1 Philip Kendall wrote: > Round 4 will involve designing a p-switcher, to switch between three > specified component (see below). We aren't going to make any hard and > fast rules about what is and what isn't a p-switcher, as we don't want > to constrain innovation, but anything which Christian and I feel is > violating the spirit of the rules is liable to be penalised or > disqualified. (Rulings on specific warriors will be available on > request). To avoid confusion, might I suggest some specific rules? My understanding is that you want to avoid QS and restrict the components to the ones you provide, so I would suggest: 1) Players will write a P-Engine to control the selection of the components, but which will not contain any extra components itself. 2) This P-Engine may not access any cells outside its own length -- it may not scan or bomb, or modify the given components. 3) Boot code may be used but it must not attack locations other than those used to store the warrior. 4) No modifications may be made to the source code of the components. Even if these rules are not the ones you had in mind, you *have* to be more specific about modifications to components. Is it fair to use a different step size on MHSA? Can I modify one of them to brainwash? Finally, I assume 100 rounds and no self fights? -- Regards, Robert Macrae -- Regards, Robert Macrae From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Vampires,Decoys,Bombers,etc. Date: 1998/02/19 Message-ID: <6chcjb$119q$1@newssvr04-int.news.prodigy.com>#1/1 Can someone tell me how vampires work in corewars? How about decoys? Finally, how do incendiary bombers and core clears work? Every time I try to make anything like that it either says it is an illegal instruction or it gets pounded into the turf. Josh From: GNRB30E@prodigy.com (Margaret Yeager) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/19 Message-ID: <6chbrh$416k$1@newssvr04-int.news.prodigy.com>#1/1 Thanks for the help, I did the suggestions (they worked, unlike my code (- : ). I'm new to this and I can't figure out how decoys work for anything. Could someone explain it to me? Josh From: Philip Kendall Subject: Redcode Maniacs Round 4 Rules Date: 1998/02/19 Message-ID: #1/1 Maniacs, Round 4 will involve designing a p-switcher, to switch between three specified component (see below). We aren't going to make any hard and fast rules about what is and what isn't a p-switcher, as we don't want to constrain innovation, but anything which Christian and I feel is violating the spirit of the rules is liable to be penalised or disqualified. (Rulings on specific warriors will be available on request). The components available for use are: [Carbonite] dbomb dat >-1, >1 spl #0, <-100 mov dbomb, tar-197*3500 tar add #197, -1 ; gets bombed to start coreclear djn.f -2, <-1151 [Mini He Scans Alone] step EQU 9 ptr EQU (bomb-5) bomb: spl #1,{1 kill: mov bomb,ptr,>ptr jmn.f kill,>ptr a: add #step+1,@mptr scan: jmz.f a,tim1 cel1 spl @cel1, }CSTEP mov.i }cel1, >cel1 mov.i {-FSTEP, NSTEP The boot routines for the first two components are available from their original sources in `Oblivion' by Ian Sutton and `Electric Head' by Anton Marsden respectively in Planar's archive. These three components must appear in your warrior's code, and the rest of the code can be taken up with the pswitcher, boot routines for the above components and decoy. (Note this rules out qscanners). The deadline for entries, which should be sent to Philip Kendall -- note this is different from previous rounds -- is Fri 27 Feb 1998 23:59:59 GMT. Once again, entries are welcome even if you haven't competed in earlier rounds, and if you don't know what I'm talking about, visit the Tournament Web Page (URL in sig). Round 3 results will be available soon. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Newbie MARS implementation question revisited Date: 1998/02/19 Message-ID: #1/1 "Carter Cheng" writes: > I'm on the verge of finishing the backend of MARS simulator based on the '94 > draft but I've noticed that pMARS supports some new opcodes not included in > the draft(most notably the two pspace instructions). Are these instructions > used much and should I implement them? Yes, and yes :-) > Also what are the more popular scoring methods? Do they fit into > specific categories so that they are easy enough to implement so > that they dont require some expression parsing? pMARS and all the hills use ((W*W)-1)/S) as (I think) I posted a couple of days ago -- just using that would keep 99.9% of people happy. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/spectrum.htm | | New? Read the FAQ: http://www.kendalls.demon.co.uk/cssfaq/ | \ Looking for something?: http://drson.vse.cz/snapsearch/ / From: "John K. Lewis" Subject: Re: program flow Date: 1998/02/19 Message-ID: #1/1 Programs (warriors) are on seperate PR's. mov a, b moves what is at location "a" to location "b". http://www.us.itd.umich.edu/~jklewis/corewars/dummie.html for brief introduction. From: jwilkinson@mail.utexas.edu Subject: Re: tournament question Date: 1998/02/20 Message-ID: <199802200707.CAA110038@valhalla.stormking.com>#1/1 >thus the fights will be > rand vs rand =tie? > rand vs norm =win?/tie? > rand vs anti-rand =loss? > rand vs rps =win? > rand vs anti-pspace=win?/tie? > rand vs anti-anti-pspace=tie? > rand vs anti-rand/rand=loss?/tie? > double rand vs anti-rand=tie? Anti-random? What the hell would that be? From: "Adam Sisemore" Subject: Re: Hi! :) Date: 1998/02/20 Message-ID: <6cl3cu$gos$3@prefetch.san.rr.com> Bye! :) Micetrap =) wrote in message <6cku4l$3m@thorium.islandia.is>... >Want to make money?!!!! YOU CAN MAKE THOUSANDS OF DOLLARS WITH AN INITIAL >INVESTMENT OF $5.00. > >Here's what you do, send $1.00 to each to each of the 5 names and >addresses stated in the article. Then place your name and address at the >bottom of the list at #5 and post the article to at least 200 >newsgroups (There's about 20,000). No catch, that was it. > >Let's me explain how, and most importantly why this works. This process is >very simple and only consists of 3 steps (Print the article now, so you can >get the information off of it when you need it. If you don't have a >printer, copy it to your hard drive.) : > >STEP 1: >Get 5 separate pieces of paper and write the following on each piece of >paper " PLEASE ADD ME TO YOUR MAILING LIST. $1 US DOLLAR PROCESSING FEE IS >ENCLOSED." (This makes it legal since you are paying for a service). Now >get 5 $1.00 bills and place ONE inside EACH of the 5 pieces of paper that >you wrote the phrase on, so the bill will not be seen through the envelope >to prevent theft/robbery. Then, place one paper in each of the 5 envelopes >and seal them. You should now have 5 sealed envelopes, each with a piece of >paper stating the above phrase and a $1.00 bill. DO THIS STEP FIRST, AS >THESE MESSAGES ARE BEING MONITORED. > >Mail the 5 envelopes by standard mail to the following addresses: > >1. E. DiTrotta > 106 Cromwell Ave., Ap. 32 > Oshawa, Ontario > Canada, L1J4T6 > >2. J.M. Mcketiak > Box 601 > Carman, MB, Canada > R0G 0J0 > >3. R. Riveraalmena > 31-160 Myrtle st. > Stop 4727 > Elmendorf AFB, AK 99506 > >4. Sigthor Ingi Sigthorsson > Prestbakka 13 > 109 Reykjavik > Iceland > >5. Robert Thorhallsson > Blondubakka 9 > 109 Reykjavik > Iceland > >STEP 2: >Now take the 1st name off the above list, and move the other names up (so #5 >becomes #4, #4 becomes #3, and so on..) and add YOUR name and address as #5 >on the list. (If you want to remain anonymous, put a nickname, but the >address MUST be correct. It, of course MUST contain your country, >state/district/area, zip code, etc., because there are some people who don't >put their COUNTRY!!! You wouldn't want your money to fly away, wouldn't >you?). > >STEP 3: >Now post your amended article to AT LEAST 200 NEWSGROUPS. Remember, 200 >POSTINGS IS A MINIMUM. THE MORE YOU POST, THE MONEY MONEY YOU MAKE!!! SO >TRY TO POST TO AS MANY GROUPS AS POSSIBLE. Try to post to groups that get a >lot of traffic as more people will view your message. I'll explain how to >post later. > >One person said "I decided to give it a shot. I figured what have I got >to lose, but 5 stamps and $5.00, right? So, I invested the measly $5.00... >and GUESS WHAT!!!... within 7 days, I started getting money in the mail! I >was shocked! I figured it would end soon, and didn't give it another >thought. But the money just continued coming in. In my first week, I made >about $20.00 to $30.00. By the end of the second week I had made a total of >$1,000.00!!! In the third week I had over $10,000.00 and it was still >growing. This is now my fourth week and I have made a total of just over >$42,000.00 and it's still coming in." She exclaimed "It's certainly worth >$5.00 and 5 stamps, I spent more than that on the lottery!! > >Now, Why does this work? >Let's say, out of 200 postings, I receive only 5 replies (a very low >example). So then I make $5.00, with my name at #5 on the list. Now, each >of the 5 persons who just sent me $1.00, makes the MINIMUM 200 postings, >each with my name at #4 and only 5 persons respond to each of the original >5. So, that's another $25.00 for me. Now, each one of those 25 makes the >MINIMUM 200 postings with my name at #3, and each one gets only 5 replies. >Now I make an additional $125.00! Now these 125 persons turn around and >post the MINIMUM 200 postings, each with my name at #2 and only receives 5 >replies each. Now I have an additional $625.00! Here's the fun part, each >of these 625 persons will post 200 postings with my name at #1 and they >receive only 5 replies each. So, that just made me an additional >$3,125.00!!! With an initial investment of only $5.00! And as I said 5 >responses is actually VERY LOW! The average is probably 20 to 30! So let's >put those figures at just 15 responses per person, here's what you'll make: > > at #5 $5.00 > at #4 $225.00 (15 times $5.00) > at #3 $3,375.00 (15 times $225.00) > at #2 $50,625.00 (15 times $3,375.00) > at # 1 $759,375.00 (15 times $50,625.00) + >________________________________________ > $813, 605.00 > >If there is a question about if this is legal, Bob Novak (the man who >started this new version) commented: > "People have asked me if this is really legal. Well, it is! You are >using the Internet to advertise your business. What is that business? You >are assembling a mailing list of people who are interested in home based >computer and online business and methods of generating income at home. >Remember, people send you a small fee to be added to your mailing list. It >is legal. What will you do with your list of thousands of names? That's up >to you." >So, build up your mailing list, keep good accounts, declare the income and >pay your taxes. By this you prove your business intentions. Keep your eye >on the newsgroups and when the cash has stopped coming (that means you are >no longer on the list), you just take the latest posting at the newsgroups, >send another $5.00 to the names stated on the list, make your corrections >(put your name at #5) and start posting again. > >What happens if the scheme is played out? Big deal, so you lose $5.00, BUT >...do you know the chances of that happening? Since this is a brand new >program as of February 1st, 1998, you are on the ground floor! There are >millions of Internet users, and millions of new net surfers each month! The >Internet is growing in a tremendous rate - it DOUBLES in size every 4 >months!!! Think about it. All that growth means profits for everyone who >participates. There are no losers! Let's review why you should do this. >The only cost is $5.00, 5 stamps, and 5 envelopes. Anyone can afford this >with such SPECTACULAR returns. There really is no risk. The biggest risk >is not to try. > >Remember, play fair and honestly and this will work. And, if you >haven't yet, print this article. Keep an eye on the newsgroups to make sure >that everyone is playing fairly. You know where your name should be. >Remember, honesty is the best policy. You don't need to cheat the basic >idea to make money. One man didn't send the $5.00 to the stated names and >he only made about $150.00, and that's after 7-8 weeks! Then he sent the 5 >$1.00 bills, people added him to their mailing lists, and he had the >expected amount of money. This is the fairest and the most honest way I've >ever seen to share the wealth of the world with costing nothing but our >time!!! This is the easiest way you can make money, and I mean good money! >Think how excited you will be to open your mailbox every day! So, GOOD LUCK >to all and start making your plans, because it can (and it will!) happen to >you! > >Some notes: >1. In some countries the export of the country's exchange is illegal. But >you can get the license to do that from the post office, explaining the >above statements (that you have an online business, etc....). You may have >to pay an extra tax, but that's OK, the amount of the incoming money is >HUGE! And as I said, a few countries have this restriction. >2. You may want to buy mailing and e-mail lists for future dollars. (Or >Spreadsheet or Database software) >3. If you're really not sure or still think this can't be for real, please >print a copy of this article and pass it along to someone who really needs >the money, and see what happens. >4. You will start getting responses within 1-2 weeks, it depends. >HOW TO POST TO NEWSGROUPS FAST WITH YOUR WEB BROWSER: >1. After you've written your article, click on newsgroup box. Then click on >the box that says show only subscribed newsgroups, and it will list all of >them. Highlight the first newsgroup you want to send it to and click on add >and say OK. >2. Now change the subject box to something flashy, something to catch the >eye, as "$$$ NEED CASH $$$?!! READ HERE!$!$!$" or "$$$!!!MAKE FAST CASH, YOU >CAN'T LOSE!!!$$$". Or you can use my subject title. >3. Click on Post/Send. > >Note: You can copy my posted message by highlighting my message and hitting >Ctrl and C, to copy, and paste it onto a text editor, like Wordpad, by >hitting Ctrl and V. Then make changes, or add your part, and then copy >(Ctrl-C) and paste (Ctrl -V) to the message composition window. Then you >can post. Good luck to all who participate and remember CHEATERS never win, >WINNERS >never cheat. There is too much money to be made by all who participate, so >PLAY BY THE RULES!!! > > > > From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: Vampires,Decoys,Bombers,etc. Date: 1998/02/20 Message-ID: <34edd4bd.13286149@news.image.dk>#1/1 On 19 Feb 1998 13:37:47 GMT, GNRB30E@prodigy.com (Margaret Yeager) wrote: >Finally, how do incendiary bombers and core clears work? Every time I try >to make anything like that it either says it is an illegal instruction or >it gets pounded into the turf. Ha ha, Same here. I'm trying to find some other warrior to benchmark with :-) But I'm getting better every day :-) (Hope that for you too) ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/20 Message-ID: #1/1 iltzu@sci.fi (Ilmari Karonen) writes: > Some more hair splitting, and a few serious questions too: > > : > Are we free to use our favourite boot routines? > : Yes. > : > Also, can be boot less than the full component? > : No. > : > And, can we change the starting point if we feel it would help? > : Yes. > : > 3) Would > : > SPL 1,<200 > : > SPL 1,<300, > : > MOV -1,0 > : > JMP paper > : > be permissible rather than booting the whole paper including SPLs? > : No. > > The above answers give a rather confusing picture. Some of the problems: > > * Are we allowed to change the number of processes executing the > component? No. > * I might well use several parallel processes to boot some components. If > I do this with the silk, do I really still need to boot the extra > SPLs? Yes. (I admit this is a bit silly, but I think it's for the best :-) ) > * The last answer could be interpreted to mean that we couldn't start the > components without booting. I hope this isn't intended? It isn't intended -- you are certainly allowed to have non-booted components. Phil PS: > -- The sig separator is conventionally "-- " and not "--" -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/spectrum.htm | | New? Read the FAQ: http://www.kendalls.demon.co.uk/cssfaq/ | \ Looking for something?: http://drson.vse.cz/snapsearch/ / From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/20 Message-ID: #1/1 On Fri, 20 Feb 1998, Robert Macrae wrote: > You should also rule that the executed copy of the Paper must be followed > by at least two DAT 0,0 as these cells get copied by the second and > third replicators and I would naturally like to use them for extra > bombing :-] Consider the ruling made. > As I see the rule, nothing in our p-engine or decoys may interact with or > modify the warriors in their normal operation; they have to fight as-is. That's the general idea. Phil [Brett -- sorry I missed you from some of these mails; mail me back if your news feed is days behind and you have no idea what is going on] -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/20 Message-ID: <6ckb33$sim$1@tron.sci.fi>#1/1 Philip Kendall (pak21@hermes.cam.ac.uk) wrote: : Answers to some more questions people have asked: Some more hair splitting, and a few serious questions too: : > Are we free to use our favourite boot routines? : Yes. : > Also, can be boot less than the full component? : No. : > And, can we change the starting point if we feel it would help? : Yes. : > 3) Would : > SPL 1,<200 : > SPL 1,<300, : > MOV -1,0 : > JMP paper : > be permissible rather than booting the whole paper including SPLs? : No. The above answers give a rather confusing picture. Some of the problems: * Are we allowed to change the number of processes executing the component? * I might well use several parallel processes to boot some components. If I do this with the silk, do I really still need to boot the extra SPLs? * The last answer could be interpreted to mean that we couldn't start the components without booting. I hope this isn't intended? IMHO it would be clearest if we were allowed to omit parts of the components as long as nothing is added. After all, it would really be rather useless with the first two components, and the only sensible way of booting a silk I've seen is: SPL 1 SPL 1 MOV -1, 0 ; assuming a 7-line silk MOV }silk, >1 JMP away, away or equivalent. I don't see why that shouldn't be allowed. (Of course, it's your tournament and your rules..) -- ii 3D .sigXIlmari KaronenAscii 3D .sigIlmari Karonen_Ascii 3D .sigIlmari Kar fi.stereo@graphic.iltzu@sci.fi.stereo@graphiciltzu@sci.fin.stereo@graphicilt ltzu/ba/http://www.sci.fi/~iltzu/bahttp://www.sci.fi/~iltzu/1bahttp://www.sc is a stereogram!> Subject: More Maniacs Round 4 Rules Date: 1998/02/20 Message-ID: #1/1 Answers to some more questions people have asked: [Ilmari Karonen] > Provided that the _booted_ copy is identical to the one specified in > the rules, can a component be stored in the source in modified form? Yes. > Also, are we allowed to boot several copies of the components? No. [Beppe Bezzi] > Are we free to use our favourite boot routines? Yes. > Last question: pmars parameters are default? (8000 size and processes, > 100 length and distance) Yes, but 200 rounds. [Brett Greenfield] > please confirm that your want a three way pswitcher between the said > programs and that the Plogic must be capable of selecting all three > and that we will be fighting other pswitchers and not the three > programs No -- the pswitcher doesn't have to be capable of switching between all three components; you could submit something which selects only one of the components, but it would probably get quite badly hammered, due to all the pswitchers about :-) > i noticed a scanner is one of the programs is a scanner can we alter > it to not scan the pcode and other two programs are non boot decoys > allowed or custum boots [Not sure I quite understand this question] So long as the scanner is booted such that it is identical to that given in the rules, it's fine -- I'm not sure how you could alter it not to scan the rest of your code/decoy. Decoy makers are not allowed, but custom boot routines are. > where does each program start Carbonite starts at spl #0, <-100 and Mini HSA at kill: mov bomb, also can we launch multiple copys of any or all the programs or add > our own components No and no again. > are we allowed to use a Prandom number generator Yes. [John K Lewis] > Will mixing of components be allowed? > I have a pspace technology that allows for mixing sections of code > together in order to "test" them. Will this be allowed? No -- one component and one component only may be used in each round. > Also, can be boot less than the full component? No. [Ryan Coleman] > What are the original starting points for each warrior? (i.e. where > should execution begin?) See up a bit. > And, can we change the starting point if we feel it would help? Yes. [Robert Macrae] > 1) Is it allowed to launch multiple copies of a warrior, or to execute > more than one of them? No. > 2) How about positioning the stone so that it "Just happens" to be > followed by a JMP instruction, or positioning MHSA so that the pointer > is not DAT 0,0? Not allowed. > 3) Would > SPL 1,<200 > SPL 1,<300, > MOV -1,0 > JMP paper > be permissible rather than booting the whole paper including SPLs? No. Hope that (big) lot keeps you lot happy :-) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: Possible cheat? Date: 1998/02/20 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > >IIRC this has been done. Look for it in dejanews, or find a warrior called > >Cheater (?) in Planar's archive. It wasn't exactly what you suggest, though. > > Where can I find that? http://pauillac.inria.fr/~doligez/corewar/ (This is in the FAQ, for once!) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Christian Schmidt Subject: Third round results of the Redcode Maniacs Tournament Date: 1998/02/20 Message-ID: Hello Maniacs, here are the entries for the third round including the tables of the all single tournaments. ;name CyberBunny ;author Compudemon ;name Rusty ;author John Lewis ;strategy Quickly scan and find nothing ;strategy then jump to a new location and ;strategy try to catch the other program ;strategy un-awares. When this doesn't ;strategy work, twiddle your thumbs until ;strategy your opponets finds and kills you. ;name Paper Killer 2.1 ;author JKW ;strategy Am I falling into predictable patterns here? pspacing ;strategy oneshot/hsa/blur. Once again using what I believe ;strategy to be the best possible pspace routine there will ever be... ;strategy I can't remember where I got this oneshot. I think it's ;strategy out of some other pspacer. :/ ;name Seven-Eleven ;author Robert Macrae ;assert CORESIZE == 8000 ;strategy Familiar-looking 80% f-scanner switches with ;strategy tweaked bombs and step sizes. ;name Fever 0 ;author Planar ;strategy I cannot write a decent scanner. ;strategy But I love this tournament. ;strategy one-shot scanner, dirty clear ;name Sorry Paul for stealing your code :-) ;author Beppe Bezzi ;strategy redcode maniacs tournament round 3 ;strategy 80% f-scanner switches from SPL to DAT carpet ;strategy I feel ashamed to write my name on author ;strategy considering I changed very little from Paul's HSA ;strategy but little time to search something new and also to fine tune. ;name HSA (no decoy) ;author David Moore ;name Sneaky 2d ;author Ilmari Karonen ;strategy Use known copy distances to tune a scanner ;strategy with a P-switcher. ;strategy Oh well, the idea was good but I didn't have ;strategy time to optimize all those constants. Nor the ;strategy switching table. At least it's better than ;strategy just a d-clear. =) ;name HeScans T ;author P.Kline ;name How-Far-Off-GMT-Am I? ;author Ryan Coleman ;strategy 80% f-scanner switches from SPL to DAT carpet ;strategy blatant ripoff of HSA ;strategy submitted in the wee hours of the morn in america.. ;strategy questioning time zones ;name Mini HSA ;author Robert Hale ;assert CORESIZE == 8000 ;strategy I was on vacation so this is all I could do ;strategy it is mini HSA from electric head ;strategy sorry :( last round entries: ;name Silver Talon 1.3 ;author Edgar ;strategy spl carpeting scanner with d-clear. ;strategy Depressingly ineffective. ;name 5p beta 2.3 lp ;author bjoern guenzel ;strategy Incendary Bomber with economy airbag ;strategy running with five processes ;strategy changed d-clear for maniacs tournament ;strategy can't really test the code, so no further ;strategy adaptions to lp-conditions :-( ;name LP-Paper 4 ;author George Eadon ;strategy Limited Process Paper Rank Name Author %W %L %T Score ___________________________________________________________________________ 1 CyberBunny Compudemon 0 0 100 2000 2 Benj's Revenge 1.0 Robert Macrae 0 0 100 200 CC Paper 2 Franz 0 0 100 200 Die Hard P.Kline 0 0 100 200 Head or Tail Christian Schmidt 0 0 100 200 Marcia Trionfale 1.3 Beppe Bezzi 0 0 100 200 Night Train Karl Lewin 0 0 100 200 Pulp Ian Oversby 0 0 100 200 RetroQ P.Kline 0 0 100 200 TimeScape (1.0) J. Pohjalainen 0 0 100 200 unrequited love kafka 0 0 100 200 ___________________________________________________________________________ 1 Rusty John Lewis 36 24 40 2958 2 Die Hard P.Kline 34 0 66 336 3 CC Paper 2 Franz 37 33 31 280 4 Benj's Revenge 1.0 Robert Macrae 30 24 47 273 5 Night Train Karl Lewin 15 3 83 253 6 RetroQ P.Kline 22 26 52 235 7 Head or Tail Christian Schmidt 27 38 36 233 8 unrequited love kafka 17 39 45 191 9 Marcia Trionfale 1.3 Beppe Bezzi 22 57 22 175 10 TimeScape (1.0) J. Pohjalainen 23 67 11 159 11 Pulp Ian Oversby 16 76 8 112 ___________________________________________________________________________ 1 Paper Killer 2.1 JKW 52 28 20 3518 2 Benj's Revenge 1.0 Robert Macrae 33 39 29 253 3 Head or Tail Christian Schmidt 34 47 20 243 4 CC Paper 2 Franz 34 51 15 234 5 RetroQ P.Kline 31 46 23 232 6 Die Hard P.Kline 26 51 23 204 7 TimeScape (1.0) J. Pohjalainen 28 55 18 203 8 unrequited love kafka 27 53 20 202 9 Marcia Trionfale 1.3 Beppe Bezzi 28 61 12 191 10 Pulp Ian Oversby 23 58 20 174 11 Night Train Karl Lewin 20 62 19 154 ___________________________________________________________________________ 1 Seven-Eleven Robert Macrae 64 26 10 4033 2 Head or Tail Christian Schmidt 37 57 7 232 3 CC Paper 2 Franz 34 60 7 217 4 Benj's Revenge 1.0 Robert Macrae 29 58 13 202 5 Die Hard P.Kline 28 62 10 188 6 unrequited love kafka 25 64 11 172 7 TimeScape (1.0) J. Pohjalainen 24 64 13 169 8 RetroQ P.Kline 22 60 18 168 9 Night Train Karl Lewin 23 66 11 160 10 Pulp Ian Oversby 23 69 9 152 11 Marcia Trionfale 1.3 Beppe Bezzi 17 80 3 108 ___________________________________________________________________________ 1 Fever 0 Planar 31 32 36 2607 2 Pulp Ian Oversby 47 37 17 313 3 Die Hard P.Kline 26 0 74 306 4 Benj's Revenge 1.0 Robert Macrae 41 35 25 293 5 CC Paper 2 Franz 43 43 15 284 6 unrequited love kafka 34 29 38 279 7 Head or Tail Christian Schmidt 35 31 35 276 8 Night Train Karl Lewin 23 11 67 269 9 RetroQ P.Kline 32 37 32 252 10 Marcia Trionfale 1.3 Beppe Bezzi 25 49 27 201 11 TimeScape (1.0) J. Pohjalainen 22 45 34 197 ___________________________________________________________________________ 1 Sorry Paul for stealing Beppe Bezzi 58 31 12 3681 2 TimeScape (1.0) J. Pohjalainen 42 46 13 275 3 RetroQ P.Kline 41 45 15 272 4 Night Train Karl Lewin 35 45 21 249 5 CC Paper 2 Franz 37 54 9 240 6 Head or Tail Christian Schmidt 32 55 14 217 7 Benj's Revenge 1.0 Robert Macrae 32 57 12 212 8 unrequited love kafka 28 64 9 182 9 Pulp Ian Oversby 26 68 7 167 10 Die Hard P.Kline 24 67 10 160 11 Marcia Trionfale 1.3 Beppe Bezzi 17 76 8 114 ___________________________________________________________________________ 1 HSA (no decoy) David Moore 57 31 11 3672 2 Head or Tail Christian Schmidt 39 46 16 265 3 Night Train Karl Lewin 34 44 22 248 4 Benj's Revenge 1.0 Robert Macrae 37 54 10 239 5 TimeScape (1.0) J. Pohjalainen 36 54 11 235 6 RetroQ P.Kline 32 50 19 229 7 CC Paper 2 Franz 34 58 8 219 8 Die Hard P.Kline 27 61 12 186 9 Pulp Ian Oversby 26 69 6 167 10 unrequited love kafka 25 70 6 161 11 Marcia Trionfale 1.3 Beppe Bezzi 23 71 7 151 ___________________________________________________________________________ 1 Sneaky 2d Ilmari Karonen 36 36 27 2728 2 CC Paper 2 Franz 50 29 21 341 3 RetroQ P.Kline 44 26 30 321 4 Head or Tail Christian Schmidt 44 34 22 308 5 Benj's Revenge 1.0 Robert Macrae 40 39 22 283 6 unrequited love kafka 41 43 17 279 7 Night Train Karl Lewin 22 10 68 268 8 TimeScape (1.0) J. Pohjalainen 36 50 15 245 9 Pulp Ian Oversby 34 45 22 244 10 Die Hard P.Kline 29 37 35 241 11 Marcia Trionfale 1.3 Beppe Bezzi 25 52 24 195 ___________________________________________________________________________ 1 HeScans T P.Kline 62 27 11 3918 2 TimeScape (1.0) J. Pohjalainen 32 51 17 226 3 Head or Tail Christian Schmidt 33 56 12 221 4 RetroQ P.Kline 27 47 26 215 5 CC Paper 2 Franz 34 61 6 213 6 unrequited love kafka 29 60 11 198 7 Benj's Revenge 1.0 Robert Macrae 27 66 8 177 8 Die Hard P.Kline 26 66 8 172 9 Night Train Karl Lewin 24 66 10 164 10 Marcia Trionfale 1.3 Beppe Bezzi 20 70 11 138 11 Pulp Ian Oversby 20 74 7 130 ___________________________________________________________________________ 1 How-Far-Off-GMT-Am I? Ryan Coleman 56 33 11 3575 2 RetroQ P.Kline 40 38 23 282 3 Benj's Revenge 1.0 Robert Macrae 40 50 11 261 4 Head or Tail Christian Schmidt 38 49 14 255 5 Night Train Karl Lewin 36 46 18 252 6 CC Paper 2 Franz 38 58 5 237 7 TimeScape (1.0) J. Pohjalainen 37 55 9 237 8 Die Hard P.Kline 32 61 8 205 9 unrequited love kafka 29 65 6 188 10 Pulp Ian Oversby 26 68 7 167 11 Marcia Trionfale 1.3 Beppe Bezzi 19 74 8 129 ___________________________________________________________________________ 1 Mini HSA Robert Hale 54 32 14 3533 2 Benj's Revenge 1.0 Robert Macrae 49 26 26 343 3 RetroQ P.Kline 37 38 26 271 4 TimeScape (1.0) J. Pohjalainen 35 56 10 226 5 Head or Tail Christian Schmidt 32 57 12 212 6 Die Hard P.Kline 31 57 13 209 7 CC Paper 2 Franz 31 61 9 203 8 unrequited love kafka 30 60 11 201 9 Marcia Trionfale 1.3 Beppe Bezzi 28 63 10 185 10 Pulp Ian Oversby 26 66 9 173 11 Night Train Karl Lewin 25 63 13 172 ___________________________________________________________________________ 1 Silver Talon 1.3 Edgar 30 30 40 2590 2 unrequited love kafka 39 26 36 305 3 Head or Tail Christian Schmidt 40 28 33 302 4 Night Train Karl Lewin 24 13 64 271 5 RetroQ P.Kline 30 25 46 271 6 Die Hard P.Kline 20 8 73 265 7 TimeScape (1.0) J. Pohjalainen 30 30 40 260 8 Benj's Revenge 1.0 Robert Macrae 32 36 33 257 9 Pulp Ian Oversby 33 45 23 241 10 CC Paper 2 Franz 29 42 29 230 11 Marcia Trionfale 1.3 Beppe Bezzi 26 49 25 209 ___________________________________________________________________________ 1 5p beta 2.3 lp bjoern guenzel 5 55 40 1117 2 Marcia Trionfale 1.3 Beppe Bezzi 72 5 24 479 3 unrequited love kafka 63 3 34 446 4 Pulp Ian Oversby 66 10 25 442 5 CC Paper 2 Franz 61 8 32 429 6 Benj's Revenge 1.0 Robert Macrae 58 7 36 419 7 TimeScape (1.0) J. Pohjalainen 55 5 41 411 8 Head or Tail Christian Schmidt 53 11 36 390 9 Night Train Karl Lewin 45 1 55 376 10 Die Hard P.Kline 38 1 62 349 11 RetroQ P.Kline 40 6 55 349 ___________________________________________________________________________ 1 LP-Paper 4 George Eadon 3 29 69 1530 2 Head or Tail Christian Schmidt 49 4 48 389 3 CC Paper 2 Franz 50 10 41 379 4 Pulp Ian Oversby 40 1 60 357 5 unrequited love kafka 36 1 64 343 6 Benj's Revenge 1.0 Robert Macrae 38 11 51 330 7 TimeScape (1.0) J. Pohjalainen 29 0 71 318 8 Marcia Trionfale 1.3 Beppe Bezzi 29 0 72 314 9 Night Train Karl Lewin 11 1 89 241 10 Die Hard P.Kline 7 0 93 228 11 RetroQ P.Kline 1 1 99 200 Here are the results in a more compact form: Seven-Eleven Robert Macrae 64 26 10 4033 HeScans T P.Kline 62 27 11 3918 Sorry Paul for stealing Beppe Bezzi 58 31 12 3681 HSA (no decoy) David Moore 57 31 11 3672 How-Far-Off-GMT-Am I? Ryan Coleman 56 33 11 3575 Mini HSA Robert Hale 54 32 14 3533 Paper Killer 2.1 JKW 52 28 20 3518 Rusty John Lewis 36 24 40 2958 Sneaky 2d Ilmari Karonen 36 36 27 2728 Fever 0 Planar 31 32 36 2607 Silver Talon 1.3 Edgar 30 30 40 2590 CyberBunny Compudemon 0 0 100 2000 LP-Paper 4 George Eadon 3 29 69 1530 5p beta 2.3 lp bjoern guenzel 5 55 40 1117 And here is the scoreboard after 3 events: Rank Author Round 1 Round 2 Round 3 Complete _______________________________________________________________________________ 1. Robert Macrae 89.6 88.7 100.0 278.3 2. John K Wilkinson 88.7 100.0 87.2 275.9 3. David Moore 88.6 92.4 91.1 272.1 4. Beppe Bezzi 100.0 78.3 91.3 269.6 5. P.Kline 83.5 87.5 97.2 268.2 6. Ryan Coleman 80.8 65.5 88.6 234.9 7. Edgar 95.2 54.1 64.2 213.5 8. Planar 72.8 70.8 64.6 208.2 9. John K. Lewis 66.0 65.2 73.4 204.6 10. Robert Hale 72.0 41.7 87.6 201.3 11. Ilmari Karonen 92.8 25.9 67.6 186.3 12. bjoern guenzel 92.1 59.8 27.7 179.6 13. George Eadon 62.7 38.7 37.9 139.3 14. Compudemon - - 49.6 49.6 Robert Macrae holds now the first place after winning this event close followed by John K Wikinson and David Moore. Most of the entries was copies of He Scans Alone with more or less small variations. And surprisingly only one One Shot (by Planar) was found as a single strategy. From: jwilkinson@mail.utexas.edu Subject: Re: Newbie MARS implementation question revisited Date: 1998/02/20 Message-ID: <199802192338.SAA90986@valhalla.stormking.com>#1/1 >"Carter Cheng" writes: > >> I'm on the verge of finishing the backend of MARS simulator based on the '94 >> draft but I've noticed that pMARS supports some new opcodes not included in >> the draft(most notably the two pspace instructions). Are these instructions >> used much and should I implement them? > >Yes, and yes :-) Wait a sec... uhm... you want to try to -evolve- a pspace warrior? I'd like to see that happen. :) From: Kit Westneat Subject: Re: Help!!! Date: 1998/02/20 Message-ID: #1/1 It's on the Win95 CD under \other\oldmsdos, if that helps. Kit Westneat On Thu, 19 Feb 1998 jwilkinson@mail.utexas.edu wrote: > >I think that's an error from mts, rather than from the Wilkies batch > >file -- what it means is that the attempt to run pMARS produced an > >error (either pMARS couldn't be found, one of the warrior files > >couldn't be found, one of the warrior files wouldn't compile, or bad > >arguments were given to pMARS). > > Actually the wilkies batch file doesn't use any of the "hill" processing > stuff. It just runs the battles one by one. Incidentally does anyone > know if Qbasic still exists? It doesn't seem to be available anymore... > and it's used in the batch file... maybe I should put it on koth.org since > I've got an old copy. > > From: GNRB30E@prodigy.com (Mrs. Margaret E. Yeager) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/21 Message-ID: <6cngrq$ma4$1@newssvr04-int.news.prodigy.com>#1/1 You wrote: >> I'm new to this and I can't figure out how decoys work for >>anything. > > Scanners simply waste their time attacking the decoy, allowing your > warrior to kill the nasty scanner. I would like to know how to write them, how the code executes, etc. Thank you. Josh From: "Eric Wagoner" Subject: Poster caught Re: Hi! :) Date: 1998/02/21 Message-ID: <6cna0v$31l$1@usenet88.supernews.com>#1/1 The poster of the following has been brought to the attention of his ISP in Iceland. The posting there is as illegal as it is here... Begin Spam---> Want to make money?!!!! YOU CAN MAKE THOUSANDS OF DOLLARS WITH AN INITIAL INVESTMENT OF $5.00. Here's what you do, send $1.00 to each to each of the 5 names and... From: JOHN.METCALF@nospam.chaos.camelot.co.uk (JOHN METCALF) Subject: P-Space switching... Date: 1998/02/22 Message-ID: #1/1 Greetings all... Anti-P-Space, Anti-Anti-P-Space, P-Random and Anti-P-Random... Are these well know ideas then, because I've written a warrior based on these ideas and I'm waiting to try it out when Pizza is fixed. Cheers John From: Robert Macrae Subject: Re: Third round results of the Redcode Maniacs Tournament Date: 1998/02/22 Message-ID: <34F11D9F.5418@dial.pipex.com>#1/1 Philip Kendall wrote: > Cheers :-) (It certainly involved making less rulings than the current > one...) Next time, supply the boot code as well as the warriors. -- Regards, Robert Macrae From: Robert Macrae Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: <34F1171B.4557@dial.pipex.com>#1/1 Philip Kendall wrote: > On 22 Feb 1998, Ilmari Karonen wrote: > > > > What about setting the boot distance so that one of the first-level > > silk bodies "just happens" to land conveniently on the decoy? > > Not allowed. > > > If not, would this mean we have to tweak our boot distances to make > > sure this does *not* happen? That seems even worse. > > There has already been a ruling that you can't have Carbonite booting > out such that it 'just happens' to be followed by a jump and something > similar for mini-HSA, so I don't think this is very different from that. I think some judgement will be required. By design replicators eventually get everywhere and, given half a chance, interact with everything, but after the second or third generation the impact of individual replicators is minor. -- Regards, Robert Macrae From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: <6cq9pc$p0g$1@tron.sci.fi>#1/1 Philip Kendall (pak21@hermes.cam.ac.uk) wrote: : On 22 Feb 1998, Ilmari Karonen wrote: : > If not, would this mean we have to tweak our boot distances to make : > sure this does *not* happen? That seems even worse. : There has already been a ruling that you can't have Carbonite booting : out such that it 'just happens' to be followed by a jump and something : similar for mini-HSA, so I don't think this is very different from that. Well, there is a difference, but I just looked at TimeScape more closely and it seems it only spawns around 50 copies where this could be a problem. With some papers it could be much harder. -- Ilmari Karonen (iltzu@sci.fi) http://www.sci.fi/~iltzu/ From: Philip Kendall Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/22 Message-ID: #1/1 GNRB30E@prodigy.com (Mrs. Margaret E. Yeager) writes: > Thanks, that answered most of my questions. Could you tell me what you > mean when you say "boot"? Also, could you tell me how to get my > executing code away from the decoy? These two are one and the same thing. Imagine a bit of code something like: dat.f 1,1 [repeat the above] dwarf mov.i bomb,3 add.ab #step,bomb jmp.a dwarf bomb dat.f 2,2 dat.f 1,1 [repeat again] boot mov.i (dwarf+3),target mov.i (dwarf+2), Subject: Re: Third round results of the Redcode Maniacs Tournament Date: 1998/02/22 Message-ID: #1/1 Paul Kline writes: > > And surprisingly only one One Shot (by Planar) was found as a > > single strategy. > > Given their record of success on the 94 Hill this is a surprising result. > I tried a few variations on a one-shot, but it just was not strong enough. > Fast silk replicators have to be spl-carpeted at multiple locations very > early in the battle or forget it. One effective strategy I've developed is a one *pass* scanner, which makes one pass through core at a small step size (around 30), carpeting everthing it sees with spl, before switching to a clear (This was based on the Hint Test from CW 2). There's a pretty rubbish version of it in Planar's archive as Syzygy 1.0 -- I have a better version on my HD, which I'll publish if anyone really wants me to. > Good round! Cheers :-) (It certainly involved making less rulings than the current one...) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: #1/1 On 22 Feb 1998, Ilmari Karonen wrote: > Philip Kendall (pak21@hermes.cam.ac.uk) wrote: > : On Fri, 20 Feb 1998, Robert Macrae wrote: > : > You should also rule that the executed copy of the Paper must be followed > : > by at least two DAT 0,0 as these cells get copied by the second and > : > third replicators and I would naturally like to use them for extra > : > bombing :-] > : Consider the ruling made. > > What about setting the boot distance so that one of the first-level > silk bodies "just happens" to land conveniently on the decoy? Not allowed. > If not, would this mean we have to tweak our boot distances to make > sure this does *not* happen? That seems even worse. There has already been a ruling that you can't have Carbonite booting out such that it 'just happens' to be followed by a jump and something similar for mini-HSA, so I don't think this is very different from that. > What about boot distances in general? Can we boot near out decoy, > provided that the program doesn't interact with it? Certainly. -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: #1/1 On 22 Feb 1998, Ilmari Karonen wrote: > Philip Kendall (pak21@hermes.cam.ac.uk) wrote: > : Yep -- any programs which are obviously against the rules will gain > : their authors precisely 0 points (this will also apply to anybody who > : doesn't submit a warrior for this round). > > Didn't Hale submit mini-HSA for the last round? Wouldn't that be allowed, > or was it a modified version? His warrior almost certainly (I haven't actually seen the code as Round 3 entries went to Christian) doesn't include the code for Carbonite and Timescape, so it is in violation of the rules, and is therefore liable to disqualification :-) Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: GNRB30E@prodigy.com (Mrs. Margaret E. Yeager) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/22 Message-ID: <6cq2t4$20es$1@newssvr04-int.news.prodigy.com>#1/1 Thanks, that answered most of my questions. Could you tell me what you mean when you say "boot"? Also, could you tell me how to get my executing code away from the decoy? Thanks, Josh From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: <6cpqkf$8rb$2@tron.sci.fi>#1/1 Philip Kendall (pak21@hermes.cam.ac.uk) wrote: : On Fri, 20 Feb 1998, Robert Macrae wrote: : > You should also rule that the executed copy of the Paper must be followed : > by at least two DAT 0,0 as these cells get copied by the second and : > third replicators and I would naturally like to use them for extra : > bombing :-] : Consider the ruling made. What about setting the boot distance so that one of the first-level silk bodies "just happens" to land conveniently on the decoy? If not, would this mean we have to tweak our boot distances to make sure this does *not* happen? That seems even worse. What about boot distances in general? Can we boot near out decoy, provided that the program doesn't interact with it? Yes, I know I'm digging for loopholes, but those holes are going to make a potentially big difference in the results. -- . _, .. j u s t. h o w l.i n g i n .t h e n.i g h t .. ._, . , )'' . /\_ . ' ,/\ . , ``( , _\__/ |__.'\._______,--;_'_`-.___,.______,/_,_`.__,-.__'__,/`-._,_| \____ ,_f_)\. Ilmari Karonen iltzu@sci.fi http://www.sci.fi/~iltzu/ /(_|_,. From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: <6cppmi$8rb$1@tron.sci.fi>#1/1 Philip Kendall (pak21@hermes.cam.ac.uk) wrote: : Yep -- any programs which are obviously against the rules will gain : their authors precisely 0 points (this will also apply to anybody who : doesn't submit a warrior for this round). Didn't Hale submit mini-HSA for the last round? Wouldn't that be allowed, or was it a modified version? -- Ilmari Karonen (iltzu@sci.fi) http://www.sci.fi/~iltzu/ From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: #1/1 On Sun, 22 Feb 1998, Robert Macrae wrote: > Horrible thought. > > I take it if a blatantly illegal program was entered, it would be > disallowed? If, for example, someone did not submit an entry we would not > have to face their scanner from round 3? Yep -- any programs which are obviously against the rules will gain their authors precisely 0 points (this will also apply to anybody who doesn't submit a warrior for this round). Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Paul Kline Subject: Re: Third round results of the Redcode Maniacs Tournament Date: 1998/02/22 Message-ID: <34F009AD.E1E88552@drake.edu>#1/1 Robert: Congrats. Maybe your smallstep/bigstep pswitched HSA would do well on the 94 Hill? Beppe: No problem, Memories gave the best results of the other non-HSA based scanners I tested, still pretty crappy so I understand :-) David: Losing the decoy was a good choice, though I found decoy combinations that worked against specific opponents (the q-scanning ones). Just put a decoy at -N to your code where N is the q-scan distance. But all the q-scans seemed to be using different constants these days. JKW: So... killing paper??? Compudemon: Here is a replicator that kills three of this round's opponents as well as all those scanners, and loses hardly a battle. pStart spl 1 spl 1 mov -1,0 mov <1,{1 spl 6009,8 p1s mov p1b ,>7 ; 1st paper p1c mov -1356+1000 mov p1b ,1000 jmp @0 ,>p1s p1b dat <2667,<5334 end pStart > Rank Author Round 1 Round 2 Round 3 Complete > _______________________________________________________________________________ > 1. Robert Macrae 89.6 88.7 100.0 278.3 > 2. John K Wilkinson 88.7 100.0 87.2 275.9 > 3. David Moore 88.6 92.4 91.1 272.1 > 4. Beppe Bezzi 100.0 78.3 91.3 269.6 > 5. P.Kline 83.5 87.5 97.2 268.2 As usual in these tournaments I find myself playing catch-up... I'm used to a more iterative environment ;-) > And surprisingly only one One Shot (by Planar) was found as a > single strategy. Given their record of success on the 94 Hill this is a surprising result. I tried a few variations on a one-shot, but it just was not strong enough. Fast silk replicators have to be spl-carpeted at multiple locations very early in the battle or forget it. Good round! Paul Kline pk6811s@acad.drake.edu From: iltzu@sci.fi (Ilmari Karonen) Subject: Re: Newbie Redcode Question Date: 1998/02/22 Message-ID: <6cpm2v$7qe$1@tron.sci.fi>#1/1 williamj@lore.cs.purdue.edu wrote: : knowing how to multiply the a-field in the DAT statement by the b-field : and then to store it in the a-field. There may be better ways to do MUL.BA var, var This, and much more, can be found in the Beginner's guide to Redcode: http://www.sci.fi/~iltzu/corewar/guide.html : var DAT #1, #1 : start MUL.A ???, var : MOV >var, *var : JMP start : END start : Yes, this is a dumb program. I'm new and I'm only trying to figure out : what I can and cannot do. The only thing I'm interrested in above is Hmm.. now *that's* an interesting bombing pattern.. I've been working on a stone which uses MUL instead of ADD, effectively a simple pseudorandom number generator. Something like: loop MUL.AB #const, ptr MOV.I bomb, >ptr JMP loop Now just find the right constants on the first line, and you get a rather nice pattern with good coverage. -- ii 3D .sigXIlmari KaronenAscii 3D .sigIlmari Karonen_Ascii 3D .sigIlmari Kar fi.stereo@graphic.iltzu@sci.fi.stereo@graphiciltzu@sci.fin.stereo@graphicilt ltzu/ba/http://www.sci.fi/~iltzu/bahttp://www.sci.fi/~iltzu/1bahttp://www.sc is a stereogram!> Subject: Re: tournament question Date: 1998/02/22 Message-ID: <34F0ACB8.58F5@dial.pipex.com>#1/1 Brett Greenfield wrote: > thus the fights will be > rand vs rand =tie?... Random will win some, draw some, lose some against *any* strategy because it cannot be predicted -- nothing can force a long series of losses on a truly random p-switcher. On the other hand it would not performa as well as a switch-on-loss algorithm against a fixed warrior because the S-O-L would spend more time in the right component... -- Regards, Robert Macrae From: Robert Macrae Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/22 Message-ID: <34F0AACC.7C42@dial.pipex.com>#1/1 Horrible thought. I take it if a blatantly illegal program was entered, it would be disallowed? If, for example, someone did not submit an entry we would not have to face their scanner from round 3? -- Regards, Robert Macrae From: Philip Kendall Subject: Re: Vampires,Decoys,Bombers,etc. Date: 1998/02/22 Message-ID: #1/1 mooredav@cps.msu.edu (David Matthew Moore) writes: > Margaret Yeager (GNRB30E@prodigy.com) wrote: [Vampires] > : I've got Core Warrior 8 (I'm downloading them and reading them slowly) > : and I read it but it wasn't much help. I couldn't figure it out. > > That's because the vampires in CW 8 use self-splitting > loops. "Self-splitting" is a concept that is notably absent in all > tutorials except Steven Morell's chapter on stones. That's not completely true -- myVamp v3.7 (right down the bottom of CW 8) uses only one process in its main loop. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Philip Kendall Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/22 Message-ID: #1/1 GNRB30E@prodigy.com (Mrs. Margaret E. Yeager) writes: > You wrote: (The 'You' in that sentence being 'me' :-) ) > >> I'm new to this and I can't figure out how decoys work for > >>anything. > > > > Scanners simply waste their time attacking the decoy, allowing your > > warrior to kill the nasty scanner. > I would like to know how to write them, how the code executes, etc. The second part is easier to write: the code doesn't execute :-) Decoy code itself is just a sequence of instructions which don't do anything (generally) apart from distract other warriors. The simplest example of this would be something like: dat.f 1,1 (*) dat.f 2,2 dat.f 3,3 dat.f 4,4 (*) dat.f 5,5 (etc) [boot routine for your warrior] [maybe some more decoy] [warrior code] [maybe more decoy] Then, if a scanner came along and did a cmp.i scan on the lines marked (*) it would conclude that they are different, and then attack those lines (say by covering all the lines above with a spl.a #0,0 carpet). This would probably take it a certain amount of time, which gives your warrior a better chance of killing the scanner. More subtle decoys: 1) If you are fighting a paper, these do not always run completely 'to plan', and so end up executing random instructions in core. Therefore, if your decoy consists of spl instructions (especially spl #x,y or spl 0,y) instead of dats, then the paper may end up stunning itself on your decoy. 2) Many warriors use a djn stream (as in djn.f loop, Subject: Re: KOTH Date: 1998/02/22 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > I've been wondering: Does there exist a KOTH program with source? Ask one of the hill maintainers (either Tuc at Stormking, or Thos at Pizza), and they may be nice enough to let you use the scripts used at those sites. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: williamj@lore.cs.purdue.edu ( ) Subject: Newbie Redcode Question Date: 1998/02/22 Message-ID: #1/1 Ok, I have a question about how to reference a b-field in a MUL statement. Here is the gist of what I'm trying to do: var DAT #1, #1 start MUL.A ???, var MOV >var, *var JMP start END start Yes, this is a dumb program. I'm new and I'm only trying to figure out what I can and cannot do. The only thing I'm interrested in above is knowing how to multiply the a-field in the DAT statement by the b-field and then to store it in the a-field. There may be better ways to do this (please share) but I would like to know how to reference the b-field like this from the MUL statement. Thanks for any info. -- Josh Williams -- Computer Science & Mathematics -- Purdue University williamj@cs.purdue.edu http://www.cs.purdue.edu/homes/williamj From: Ryan Coleman Subject: Re: P-Space switching... Date: 1998/02/23 Message-ID: <34F1AEF7.37A5@erinet.com>#1/1 JOHN METCALF wrote: > > Greetings all... > > Anti-P-Space, Anti-Anti-P-Space, P-Random and Anti-P-Random... Are > these well know ideas then, because I've written a warrior based on > these ideas and I'm waiting to try it out when Pizza is fixed. > > Cheers > > JohnWell, you can try it out in the next round of Redcode Maniacs Open '98: http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm Of course, in this round, you must use prespecified components, but so must others, so it is a true test of pspace, not of component strength. Check it out. So far, I feel the tournament has been well run and am looking forward to future rounds. Ryan Coleman From: jwilkinson@mail.utexas.edu Subject: pizza... Date: 1998/02/23 Message-ID: <199802230656.BAA83893@valhalla.stormking.com>#1/1 Pizza's been down for like a month now... I've lost track of time. Tuc said he'd put up a -94 Hill on koth.org if their was interest. If anyone wants him to, just reply to me and I'll relay it to him... From: guenzel.p1@usa.net (Bjoern Guenzel) Subject: Re: Scientific American Article? Date: 1998/02/23 Message-ID: <34f1b25d.4728679@news.lrz-muenchen.de>#1/1 On Wed, 18 Feb 1998 08:15:11 -0800, Brett Greenfield wrote: >he wrote a series of articles around 1977 I think it was 1987 (first half of it) - I just got it from the library, where all scientific americans of 1987 came in one book.=> amazing rediscovery of all those Computer recreations :-) Does anybody remember the analogue rope-computer allegedly discovered in some jungle?-) I think the article in 1987 was the last of Dewdneys Corewar articles, from a series of 3(?). So maybe the others have been in 1986 Bjoern -- My e-mail address will be altered when it gets flooded by advertising. To send me mail after June '98 in reply to this post, please use the word 'usenet' in the subject line to make sure I receive it. From: Philip Kendall Subject: Re: Round 4 Rules Date: 1998/02/23 Message-ID: #1/1 On Mon, 23 Feb 1998, David Matthew Moore wrote: > Am I required to boot the components? No. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Planar Subject: Re: Third round results of the Redcode Maniacs Tournament Date: 1998/02/23 Message-ID: <6crumg$hhe@news-rocq.inria.fr>#1/1 >From: Philip Kendall >clear (This was based on the Hint Test from CW 2). There's a pretty >rubbish version of it in Planar's archive as Syzygy 1.0 -- I have a >better version on my HD, which I'll publish if anyone really wants me to. I do. -- Planar From: Philip Kendall Subject: Re: More Maniacs Round 4 Rules Date: 1998/02/23 Message-ID: #1/1 On Mon, 23 Feb 1998 jwilkinson@mail.utexas.edu wrote: > Did you say we -can- make decoys? Decoys are allowed if they are in the original 100 instructions, but decoy makers are not. Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: KOTH Subject: SKI-ICWS: Status - ICWS Experimental 94 02/23/98 Date: 1998/02/23 Message-ID: <199802230500.AAA06224@midgaard.ttsg.com>#1/1 Weekly Status on 02/23/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Feb 8 17:11:42 EST 1998 # %W/ %L/ %T Name Author Score Age 1 37/ 5/ 58 Evol Cap 4 X John Wilkinson 170 35 2 49/ 33/ 18 Dr. Gate X Franz 166 6 3 49/ 38/ 12 Memories Beppe Bezzi 160 42 4 36/ 15/ 49 Rosebud Beppe 157 14 5 45/ 33/ 22 Dr. Recover Franz 156 5 6 43/ 34/ 23 BigBoy Robert Macrae 153 60 7 45/ 40/ 14 Stepping Stone 94x Kurt Franke 151 21 8 46/ 46/ 7 S.E.T.I. 4-X JKW 147 36 9 40/ 34/ 26 Lithium X 8 John K Wilkinson 147 26 10 44/ 44/ 13 Pagan John K W 144 20 11 37/ 30/ 33 Falcon v0.3 X Ian Oversby 144 8 12 42/ 41/ 18 Fire Master Xv1 JS Pulido 143 57 13 39/ 36/ 25 Tornado 2.0 x Beppe Bezzi 142 59 14 41/ 43/ 16 xpander Zul Nadzri 139 2 15 44/ 50/ 7 HSA Copy 55440 Robert Macrae 137 3 16 38/ 41/ 22 Trouble Zul Nadzri 134 1 17 41/ 48/ 11 Tsunami v0.1 Ian Oversby 134 13 18 39/ 44/ 17 Illusion-94/55 Randy Graham 133 17 19 31/ 32/ 37 Variation M-1 Jay Han 131 15 20 38/ 48/ 14 Frontwards v2 Steven Morrell 129 65 21 0/ 82/ 18 Army of Darkness w50a Compudemon 19 0 From: KOTH Subject: SKI-ICWS: Status - MultiWarrior 94 02/23/98 Date: 1998/02/23 Message-ID: <199802230500.AAA06220@midgaard.ttsg.com>#1/1 Weekly Status on 02/23/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Multiwarrior 94 CoreWar Hill: Last battle concluded at : Thu Feb 19 14:08:32 EST 1998 # Name Author Score Age 1 Multi Kulti Christian Schmidt 5722 8 2 Ultra Ken Espiritu 5722 3 3 Aulder Man Ian Oversby 5722 36 4 U-lat v3.8 Zul Nadzri 5722 14 5 Time to send in the imps Robert Hale 5722 7 6 CyberBunny Compudemon 5722 1 7 Ultra Ken Espiritu 5722 4 8 IMPossible! Maurizio Vittuari 5722 49 9 Die Hard P.Kline 5722 82 10 Sad 4.9 Robert Macrae 5722 2 11 picoc M. J. Pihlaja 1390 0 From: KOTH Subject: SKI-ICWS: Status - Standard 02/23/98 Date: 1998/02/23 Message-ID: <199802230500.AAA06216@midgaard.ttsg.com>#1/1 Weekly Status on 02/23/98 ****** NOTICE ****** Check out the new look at WWW.KOTH.ORG ****** NOTICE ****** See up to the second scores and the latest Core War information at : http://www.koth.org/ *FAQ* http://www.koth.org/corewar-faq.html Current Status of the StormKing Industries Standard KotH CoreWar Hill : Last battle concluded at : Thu Feb 19 10:21:34 EST 1998 # %W/ %L/ %T Name Author Score Age 1 43/ 30/ 27 Leapfrog David Moore 157 7 2 35/ 24/ 40 Test Wayne Sheppard 146 199 3 31/ 16/ 52 Test I Ian Oversby 146 35 4 31/ 20/ 49 Evoltmp 88 John K W 143 29 5 25/ 8/ 67 Trident^2 '88 John K W 142 2 6 38/ 37/ 24 Tangle Trap David Moore 140 52 7 29/ 20/ 51 Cannonade P.Kline 139 210 8 29/ 19/ 53 Rosebud 88 Beppe 139 41 9 30/ 22/ 48 Simple '88 Ian Oversby 138 65 10 29/ 21/ 50 ttti nandor sieben 137 160 11 30/ 23/ 47 CAPS KEY IS STUCK AGAIN Steven Morrell 137 176 12 38/ 41/ 21 Stasis David Moore 136 86 13 38/ 39/ 23 PacMan David Moore 136 8 14 39/ 44/ 16 Blur '88 Anton Marsden 134 16 15 36/ 42/ 22 Gisela 3G6 Andrzej Maciejczak 131 73 16 37/ 43/ 20 Beholder's Eye V1.7 W. Mintardjo 131 254 17 38/ 45/ 17 Iron Gate Wayne Sheppard 130 304 18 37/ 48/ 15 Test Anton Marsden 125 1 19 36/ 49/ 15 Test Anton Marsden 123 6 20 34/ 49/ 17 Gisela 609 Andrzej Maciejczak 119 48 21 24/ 72/ 5 88stone M. J. Pihlaja 75 0 From: Anton Marsden Subject: Anton's CW Tournament Round 3 Warriors Date: 1998/02/23 Message-ID: ;redcode-94 ;name Fern 1c ;author Ilmari Karonen ;strategy ** Anton's Core War Tournament round 3 entry ** ;strategy I hope this one's something a bit different: ;strategy A fractal fern, created using a simple random ;strategy bounce algorithm. ;strategy Best viewed with: "pmarsv -b -v 114 fern1c.red" ;strategy I used the 286 version, but it should work on ;strategy others as long as the line width is the same. ;author Ilmari Karonen ;history 1b - works, fixed a math bug ;history 1c - looks a lot nicer ;date Aug 22, 1997 ;planar boot, other ;assert CORESIZE == 8000 ; Line width: WIDTH equ 154 ; Screen attributes: HEIGHT equ ((CORESIZE-MAXLENGTH)/WIDTH) XDISP equ (WIDTH/2) ; Probabilities of different parts: prb01 equ 4560 prb02 equ 1639 prb03 equ 1639 prb04 equ (CORESIZE-prb01-prb02-prb03) ; 162 ; Magic constants for RNG: magic equ 4221 seed equ (prb01+prb02) ; Boot distance: away equ (bptr-dest) org start ; Boot: start mov.i >dest, >bptr ; will overwrite itself bptr jmp start, #away ; Scaling constants: mulc01 dat #7, #7 divc01 dat #10, #10 mulc02 dat #3, #1 divc02 dat #5, #4 addc02 dat #XDISP-((HEIGHT*3)/5), #HEIGHT-((HEIGHT*1)/4)+((XDISP*1)/4) mulc03 equ mulc02 divc03 equ divc02 addc03 dat #XDISP+((HEIGHT*3)/5), #HEIGHT-((HEIGHT*1)/4)-((XDISP*1)/4) mulc04 dat #0, #3 divc04 equ divc01 addc04 dat #XDISP, #HEIGHT-((HEIGHT*3)/10) ;limits dat #WIDTH, #HEIGHT ; Pseudorandom number generator: rand = (rand*magic+1)%CORESIZE rand mul.ab #magic, #seed ; Part selector: select slt.ab #prb01, rand jmp move01, >rand jmn.f 1, @rand ; ground slt.ab #prb01+prb04, rand jmp move04, >rand mov.a #XDISP-((XDISP*7)/10), addc01 slt.ab #prb01+prb04+prb02, rand jmp move02, >rand ; Part 3 - right leaf move03 coord mov.x #XDISP, #HEIGHT mul.f mulc03, coord div.f divc03, coord mul.a #-1, coord add.f addc03, coord jmp plot, >rand ; Part 4 - stem: move04 mov.a #XDISP-((XDISP*7)/10), addc01 mul.f mulc04, coord div.f divc04, coord add.f addc04, coord jmp plot ; Part 1 - top: move01 mul.f mulc01, coord div.f divc01, coord addc01 add.a #XDISP-((XDISP*7)/10), coord jmp plot, {addc01 ; Part 2 - left leaf move02 mov.x coord, coord mul.f mulc02, coord div.f divc02, coord mul.ab #-1, coord add.f addc02, coord ; Plot coordinates: plot ;mod.f limits, coord ; safety jmz.b move04, coord ; kluge mov.b coord, dest mul.ab #WIDTH, dest add.ab coord, dest dest djn.b rand, >bptr+1 ; bfield used as boot ptr end ;To see the starfield please run pMARS like this: ;PMARSV.EXE PStars.red -v 011 -c 999999999 ;If know, the colours arn't that good. It would have been better ;do the animation over several rounds. ;This is propably my last entry for this tournament because I'm ;going to stay a term in London and I don't know if I'm able to ;do Core War there. Thank you for the great tournament, Philipp ;name PStars v1.0 ;author Philipp Offermann ;strategy Starfield ;url http://home.t-online.de/home/offermann ;assert CORESIZE==8000 org clear l equ 158 laenge equ (ende-empty+1) speed equ 8000 ;If the simulation runs to slow ;you may use a smaller value! empty dat.f -1,1 d jmp.a 0,0 stars jmp.a -(l*30+70+1),l*30+70 jmp.a -(l*34+57+1),l*34+57 jmp.a -(l*6+84+1),l*6+84 jmp.a -(l*8+74+1),l*8+74 jmp.a -(l*8+138+1),l*8+138 jmp.a -(l*38+124+1),l*38+124 jmp.a -(l*11+33+1),l*11+33 jmp.a -(l*19+109+1),l*19+109 jmp.a -(l*13+154+1),l*13+154 jmp.a -(l*46+71+1),l*46+71 jmp.a -(l*30+150+1),l*30+150 jmp.a -(l*47+135+1),l*47+135 jmp.a -(l*39+145+1),l*39+145 jmp.a -(l*49+110+1),l*49+110 jmp.a -(l*24+46+1),l*24+46 jmp.a -(l*18+141+1),l*18+141 jmp.a -(l*45+141+1),l*45+141 jmp.a 0,0 jmp.a -(l*45+36+1),l*45+36 jmp.a -(l*27+104+1),l*27+104 jmp.a -(l*34+108+1),l*34+108 jmp.a -(l*22+122+1),l*22+122 jmp.a -(l*22+135+1),l*22+135 jmp.a -(l*22+5+1),l*22+5 jmp.a -(l*12+25+1),l*12+25 jmp.a -(l*31+103+1),l*31+103 jmp.a -(l*4+19+1),l*4+19 jmp.a -(l*6+139+1),l*6+139 jmp.a -(l*24+141+1),l*24+141 jmp.a -(l*37+14+1),l*37+14 jmp.a -(l*23+83+1),l*23+83 jmp.a -(l*43+32+1),l*43+32 jmp.a -(l*11+88+1),l*11+88 jmp.a -(l*2+71+1),l*2+71 jmp.a -(l*2+60+1),l*2+60 jmp.a 0,0 jmp.a -(l*44+52+1),l*44+52 jmp.a -(l*40+54+1),l*40+54 jmp.a -(l*4+43+1),l*4+43 jmp.a -(l*3+118+1),l*3+118 jmp.a -(l*4+15+1),l*4+15 jmp.a -(l*22+94+1),l*22+94 jmp.a -(l*34+42+1),l*34+42 jmp.a -(l*48+14+1),l*48+14 jmp.a -(l*39+24+1),l*39+24 jmp.a -(l*32+152+1),l*32+152 jmp.a -(l*9+43+1),l*9+43 jmp.a -(l*32+98+1),l*32+98 jmp.a -(l*9+83+1),l*9+83 jmp.a -(l*36+111+1),l*36+111 jmp.a -(l*48+148+1),l*48+148 jmp.a -(l*23+113+1),l*23+113 jmp.a -(l*14+16+1),l*14+16 jmp.a 0,0 jmp.a -(l*24+112+1),l*24+112 jmp.a -(l*18+19+1),l*18+19 jmp.a -(l*31+68+1),l*31+68 jmp.a -(l*30+130+1),l*30+130 jmp.a -(l*12+13+1),l*12+13 jmp.a -(l*21+6+1),l*21+6 jmp.a -(l*49+53+1),l*49+53 jmp.a -(l*6+143+1),l*6+143 jmp.a -(l*37+25+1),l*37+25 jmp.a -(l*4+21+1),l*4+21 jmp.a -(l*34+154+1),l*34+154 jmp.a -(l*15+59+1),l*15+59 jmp.a -(l*6+153+1),l*6+153 jmp.a -(l*22+123+1),l*22+123 jmp.a -(l*42+21+1),l*42+21 jmp.a -(l*16+70+1),l*16+70 jmp.a -(l*8+15+1),l*8+15 wo dat.f stars,0 sdec jmp.a -(l+1),l cinc dat.f -1,1 cjump jmp.a -(ende+1-wo),ende+1 clear mov.i cjump,@cjump spl.a @cjump add.f cinc,cjump djn.b clear,#CORESIZE-laenge init mov.a #stars-wo,wo sub.f cinc,cinc schneller add.f empty,cinc anim mov.i *wo,d mov.i d,@d spl.a @d add.f cinc,d slt.b d,#7900 mov.i sdec,d mov.i wo,@d spl.a @d mov.i d,}wo jmn.b anim,}wo djn.b schneller,#4 mov.ab #4,-1 djn.b 0,#speed mov.ab #speed,-1 ende jmp.a init end ;redcode-94 ;name Life ;author Philip Kendall ;assert CORESIZE==8000 ;planar other width equ 13 height equ 13 first equ (2092-CURLINE) line equ 158 die equ (first-2) main mov.ab #(first-param1),param1 mov.ab #height,count32 loop32 mov.ab #width,count31 loop31 jmz.a count31,>param1 sub.ab #(line+2),param1 mov.ab #3,count12 loop1 mov.ab #3,count11 param1 nop.f >0,>0 count11 djn.b param1,#0 add.ab #(line-3),param1 count12 djn.b loop1,#0 sub.ab #(2*line-2),param1 count31 djn.b loop31,#0 add.ab #(line-width),param1 count32 djn.b loop32,#0 mov.ab #(first-param2),param2 mov.ab #height,count42 loop42 mov.ab #width,count41 loop41 mov.ab #0,storage param2 jmz.a 2,0 seq.ab #4,@param2 sne.ab #3,@param2 storage mov.ab #1,#0 jmn.b alive1,storage mov.i dead,@param2 jmp.a 3 alive1 mov.i alive,@param2 sub.ba param2,@param2 spl.a >param2 count41 djn.b loop41,#0 add.ab #(line-width),param2 count42 djn.b loop42,#0 jmp.a main dead dat.f 0,0 alive jmp.a (die-param2),0 start mov.i alive,(first+0*line+1) mov.i alive,(first+1*line+2) mov.i alive,(first+2*line+0) mov.i alive,(first+2*line+1) mov.i alive,(first+2*line+2) jmp.a main end start ;redcode ;name fireworks ;author Brian Haskin ;strat draw fireworks ;strat runs with a -v of 714 ;strat the width of the display should be 158 instructions ;assert CORESIZE==8000 org star first equ 2880 fcirc equ 1800 row equ 158 sinc dat 1041,1041 ;567,567 sptr dat star,star cinc dat 521,521 cptr dat circ,circ star mov first,first+row+1 mov star+first+row-1,star+first-row-1 mov star+first-row+1,star+first+(row*2)+2 mov star+first-(row*2)-2,star+first-(row*2)+2 mov star+first-(row*3)+3,star+first+(row*2)-2 mov star+first+(row*3)+2,star+first-(row*3)+4 mov star+first+(row*3)-2,star+first-(row*3)-3 mov star+first+(row*4)-3,star+first+(row*4)+3 mov star+first-(row*3)-4,star+first+(row*6)-3 mov star+first+(row*6)+3,star+first-(row*2)-5 mov star+first-(row*2)+5,star+first add.f sinc,>sptr djn -1,#11 mov #11,-1 mov.ab sptr,sptr djn 0,#2000 mov #2000,-1 circ sne fcirc-row,fcirc+row sne circ+fcirc-1,circ+fcirc+1 sne circ+fcirc+(row*2)+2,circ+fcirc+(row*2)-2 sne circ+fcirc-(row*2)+2,circ+fcirc-(row*2)-2 sne circ+fcirc+3,circ+fcirc-3 sne circ+fcirc+(row*3),circ+fcirc-(row*3) sne circ+fcirc+5,circ+fcirc-5 sne circ+fcirc+(row*5),circ+fcirc-(row*5) sne circ+fcirc+(row*4)+4,circ+fcirc-(row*4)-4 sne circ+fcirc+(row*4)-4,circ+fcirc-(row*4)+4 add.f cinc,>cptr djn -1,#10 mov #10,-1 mov.ab cptr,cptr djn 0,#2000 mov #2000,-1 djn star,#20 end From: Anton Marsden Subject: Anton's CW Tournament Round 2 Warriors Date: 1998/02/23 Message-ID: ;redcode-94 ;name Short Circuit ;strategy Get Electric Head to it's Mini-HSA component, ;strategy then beat that & brainwash it so it says active ;strategy Is around 95% wins, 2900 points over 1000 rounds ;strategy good enough? ;author Philip Kendall ;assert CORESIZE==8000 ;planar clear,scan,boot,pspace ;Anton's Tournament Round 2 ;This warrior has two components: firstly, Paul Kline's Clisson, ;which is used to beat the Core Clear component of Electric Head ;(it gets around 80% wins), and force Electric Head to its Mini-HSA ;component. Then comes the dirty tricks :-) ;The anti-Mini HSA component is a variant on a d-clear: a length 20 ;decoy followed by two blanks cells before the d-clear ensures that ;Mini-HSA bombs the decoy, then steps over the actual d-clear. Then, ;Mini-HSA finds more decoy, with my d-clear starting at the end of ;that. As Mini-HSA bombs at 0.67c, but the d-clear moves at c, this ;keeps Mini-HSA in its bombing loop. Therefore the d-clear hits the ;executing body of Mini-HSA before Mini-HSA can do any damage to me. ;The d-clear bomb used is stp.ab #13,#250, which brainwashes ;Electric Head so that it stays on its Mini-HSA component for all ;time. This kills as it is only placed every second instruction, with ;rubbish being left inbetween, which is what Mini-HSA actually ;terminates on. ;The switcher used basically P^2: the first three entries are for ;Clisson, and are used to maintain Short Circuit in exactly the same ;state as Electric Head, until we force the switch to Mini-HSA, at ;which point, Short Circuit changes to the d-clear component and stays ;there (unless brainwashed). The switcher also erases its own pspace ;value, which cut down the number of times I brainwash myself, and ;also throws out a bomb which lands in Mini-HSA's boot routine if ;it is a location which would boot on top of me. Epspace equ 250 ; Electric Head's pspace cell ; the anti Mini-HSA component ; a dclear and a nasty trick first dummy for 20 dat.f 10,20 rof dCstart equ 13 ; must be congruent to 3 mod 10 dat.f 0,0 ; these two lines are crucial. Do not change dat.f 0,0 ; any field to non-zero under any circumstances! dPtr spl.a (MAXLENGTH-CURLINE),0 dStart spl.a #0,>dPtr dClear mov.i dBomb,}dPtr djn.f dClear,}dPtr dat.f 0,0 dBomb stp.ab #dCstart,#Epspace ; the anti-Core Clear component ; credit for this bit to Paul Kline cStart mov.ab #86,66 cClisson sne {cWatch1,{cWatch1 ; Clisson to beat fast bombers jmz.f -1,@64 add.a #3,cWatch1 mov -200 for 5 MOV.I prime prime MOV.I impy, impy ADD.F #st+1, jump jump JMP.B impy-st-1, <-535 impy MOV.I #st, *0 iloc DAT.F $0, $0 gate DAT.F >5335, #3600 bomb DAT.F >5335, #15 first SPL.B #0, >gate-2667 SPL.B #0, >gate-2667 MOV.I bomb, >gate str DJN.F -1, >gate dloc DAT.F $0, $0 for 24 SPL.B #1, >1 SPL.B #1, <1 SPL.B #1, #1 rof end ;name Nautilus ;author Mole IX ;strategy please please don't kill me too fast ;assert CORESIZE==8000 first equ 100 ;20 second equ 100+13 ;20+15 step equ 2*13 ;2*15 b dat.f 5, 5 s dat.f step, step dodaj add.f s, @2 mov.i b, @scan mov.i b, *scan scan sne *first, @second jmp dodaj, <-1000 mov.ab scan, bom spl drugi bom spl #b1, clear+1 mov.i *bom, >bom djn -1, {-100 b3 dat.f #b3-bom, clear+1-bom b2 spl #b3-bom, clear+1-bom b1 spl #b2-bom, clear+1-bom drugi mov.ab scan, dr add.ab #3960, dr dr spl #b1, clear+1 mov.i *dr, >dr djn -1, #1000 dat 0, 0 clear end dodaj ;redcode-94 ;name P^(1/2) ;author Christian Schmidt ;strategy P-Warrior which uses a P^(1/2) switcher :-) ;strategy this means switch on win ;strategy it runs complementary to Electric Head ;strategy but use only 3 compounds ;strategy <----------------------------------------------> ;strategy < BLUR 2 -----> THE CORE CLEAR > ;strategy < CARBONITE -----> MINI HSA > ;strategy < BLUR 2 -----> MINI PAPER > ;strategy < CC PAPER -----> CARBONITE > ;strategy <----------------------------------------------> ;assert CORESIZE==8000 ;This was easy done by changing the input value. ;It sounds really good but there is a main problem. The brainwash ;of the papers. In a good run it scores up to 2550 Pts (1000 fights) ;on a bad run unfortunatly less than 2000 Pts. ;Ok, I'll pray for a better result than in the first round ;-) ;------------------------------------------------------ ;---------------------CC-PAPER------------------------- ;------------------------------------------------------ len EQU 9 fcp EQU 3039 scp EQU 2365 tcp EQU 777 ccb spl 1, <-3000 mov -1, 0 mov -1, 0 mov -1, 0 frog spl @0, -1 spl @0, -1 spl @0, -1 mov 2, <-1 jmp -1, <-10 bm dat <2667, <2667*2 ;--------------------------------------------------- ;--------------P^(1/2)-SWITCHER--------------------- ;--------------------------------------------------- dbomb dat >-1, >1 in dat 0, win_table-state ;<-- changed !!!!!! dat 1, loss_table-state ;<------/ dat 1, tie_table-state PSTATE EQU 250 ; pspace location containing current state STATES EQU 10 ; maximum number of states (for brainwash protection) ;NOTE: state values go from 0 to STATES-1 w0 EQU ccb ; CC PAPER w1 EQU scan ; BLUR 2 w3 EQU cboot ; CARBONITE think ldp.a #0, in ; get input value load ldp.a #PSTATE, state ; load old state mod.a #STATES, state ; brainwash protection add.ba *in, state ; select correct state table store stp.a *state, load ; store new state win_table state jmp @0, w0 ; jump to warrior code init_state; /----Electric Heads states !!!!!!!!! spl #0,w1 ;w0 spl #0,w1 ;w0 spl #3,w3 ;w1 spl #3,w3 ;w1 spl #4,w3 ;w1 spl #6,w1 ;w2 spl #7,w0 ;w3 spl #7,w0 ;w3 spl #8,w0 ;w3 tie_table spl #1,w1 ;w0 spl #2,w1 ;w0 spl #3,w3 ;w1 spl #3,w3 ;w1 spl #4,w3 ;w1 spl #5,w3 ;w1 spl #0,w1 ;w0 spl #7,w0 ;w3 spl #8,w0 ;w3 spl #9,w0 ;w3 loss_table spl #1,w1 ;w0 spl #2,w1 ;w0 spl #3,w3 ;w1 spl #4,w3 ;w1 spl #5,w3 ;w1 spl #6,w1 ;w2 spl #7,w0 ;w3 spl #8,w0 ;w3 spl #9,w0 ;w3 spl #3,w3 ;w1 ;-------------------------------------------------- ;------------------CARBONITE++--------------------- ;-------------------------------------------------- caway EQU (-100) cboot mov tar+1, step top mov.i inc, >ptr scan seq.i 2*step+5,2*step chg mov.b scan, @top a add.f inc, scan djn.b top, #800 inc spl.i #step, #step mov.i clr, >gate btm djn.f -1, >gate clr dat.f <1, #clr-gate+2 END think ;redcode-94 ;name Shelter 1f3 ;author Ilmari Karonen ;strategy Anton Marsden's tournament round 2 entry: ;strategy hide from HSA behind a decoy, and catch ;strategy it with a brainwashing 1c forward clear ;date Jul 31, 1997 ;planar clear, pspace ;assert CORESIZE == 8000 PSTATE equ 250 ; from EH STATES equ 10 ; from EH BWASH equ 2 hsastep equ 9 ; from EH's mini HSA proglen equ 7 cend equ (cptr+BWASH+2*STATES) org start decoy z for (MAXLENGTH-19) spl #-z, 4000+z rof dgap dat.f 0, 0 ; next scan will land at dgap+hsastep+1 dat.f 0, 0 ; or at dgap+hsastep+2 dat.f 0, 0 cptr dat.f 0, 0 dat.f 0, 0 dat.f 0, 0 dat.f 0, 0 dat.f 0, 0 cbmb dat.f {1234, {BWASH+2*STATES cwsh stp.ba #250, #BWASH+2*STATES dat.f 0, 0 ; this will be scanned dat.f 0, 0 ; or this start spl #0, 0 loop mov.i cbmb, >cptr mov.i cwsh, >cptr mov.i cwsh, >cptr mov.i cwsh, >cptr djn.f loop, >cptr end ;redcode ;name Head Basher ;author Brian Haskin ;strat kill electric head ;strat use a dodger to boot a ;strat brainwashing core clear ;strat not very elegant but really effective. ;assert CORESIZE==8000 org start guard dat 0,lst+5 for 6 dat 1,1 rof start sne cdaten djn.b copy,#ganzende-leer+1 spl.a neupos+cdaten+start-leer jmp.a start leer dat.f 0,0 pirat stp #0,#PSTATE adder dat.f elhead,-elhead counter dat.f leer+100,leer-100 start seq.i leer,@counter jmp.a bomben test2 seq.i leer,*counter jmp.a vorbomben add.f adder,counter jmp.a start vorbomben mov.ab counter,counter bomben add.ab #cca,counter mov.ba counter,counter loop mov.i pirat,counter mov.i leer,{counter ganzende jmp.a clear end From: Anton Marsden Subject: Anton's CW Tournament Round 1 Warriors Date: 1998/02/23 Message-ID: ;name Particle Sorter ;author Mole IX ;strategy Bubble sorter ;strategy 12 instructions ;assert 1 tmp equ loop_a-1 loop_a mov.b d2, d1 nop.f >loop mov.b loop, l loop slt.b >l, ITEMLIST-1 l jmp d1 mov.f @loop, tmp mov.f l d1 djn loop, #0 start jmz.b finish, #ITEMS d2 djn loop_a, #ITEMS finish dat 0 end start ;redcode-94 ;name Sortidator ;author Christian Schmidt ;assert 1 ;strategy ---------------------------------------------------------- ;strategy 1. search for the lowest key value (hopfully save a lot of cycles) ;strategy 2. sort the itemlist starting with the value ;strategy found in part 1 and store the items behind the ;strategy itemlist. ;strategy 3. overwrite the itemlist by the generated list of items ;strategy ---------------------------------------------------------- SL equ (ITEMLIST+ITEMS+1) ;------------------------------------------------------------------- ;find the lowest keynumber of the itemlist ;and store it as startvalue for the ascending sorting routine (13 instructions) ;------------------------------------------------------------------- low slt.b *sqeptr,@sqeptr ;has the comparing item a lower b-value incr jmp.a chsqe, 1 ;yes, get this item plus add.b incr, sqeptr ;no, Ok the next one seq.b next, stor ;or am I at the end of the list? jmp.a low, >stor ;no, compare the next item add.b *sqeptr, ref ;yes, set the startvalue for the sorting routine stor jmp.a start, 2 ;and start the sorting chsqe sub.ab sqeptr, sqeptr ;uhhh, I do not find a better routine add.ba sqeptr, sqeptr ;for reseting this sub.b sqeptr, sqeptr ;but, it works add.ab sqeptr, sqeptr ;and that's it jmp plus ;and look again sqeptr dat ITEMLIST, ITEMLIST+1 ;here are the pointer for this ;------------------------------------------------------------------- ;this is the sorting routine, which search in ascending ;order through the itemlist (15 instruction) ;------------------------------------------------------------------- start sne.b *ptr, @ptr ;is this a item I need? ref jmp.a sort, 0 ;yes, it is, go to the sorting routine ad nop >ptr, >reset ;no, increment pointer and reset seq.b next, reset ;am I at the end of the itemlist? reset jmp.a start, 0 ;no, let's see what the next item brings anz jmp.a back, 0 ;yes sort mov @ptr, @sziel ;move the item to the sorting list nop >anz, >sziel ;actualize pointer sne.b next, anz ;do I have all items? sziel jmp copy, SL ;yes, then copy them to the itemlist next jmp.a ad, ITEMS ;and again back sub.b reset, ptr ;now I'll go to the start of the itemlist sub.b reset, reset ;reset the pointer and the reset itself jmp.a start, >ref ;start again and increment the key-value ptr dat ref, ITEMLIST ;this is the pointer ;------------------------------------------------------------------- ;copy now the sorted list to the itemlist (3 instructions) ;------------------------------------------------------------------- copy mov.i }cc, >cc ;copy the sorted list djn -1, #ITEMS ;and finish ;YESSSSS!!!!!!!!!! I'm ready cc dat SL, (SL-ITEMS-1) ;my copy pointer ;redcode-94 ;name Sort v1.5 ;author Zul Nadzri ;strategy Round 1 Entry : Anton's Sorting Tournament ;assert 1 org start a slt ITEMLIST-comp,ITEMLIST-comp b slt ITEMLIST-comp,ITEMLIST-comp+1 second mov.b ida,idb sub minus,b mov b,comp mov #0,second-4 start mov *comp,second-3 comp slt ITEMLIST,ITEMLIST+1 ida jmp mark,ITEMS-1 adjust sub #-1,comp return djn comp,idb sne #0,second-4 idb jmp loop,ITEMS-1 mov a,comp mov second-3,@comp loop djn second,ida minus dat #-1,#-1 mark mov @comp,*comp mov comp,a jmp adjust,data1-3,}data1-3 jmp.a return mov.i {data1-3,data1-1-3 mov.i data1-3 return djn.b runer,data1-2 djn.a init,init ende dat.f #256,#256 end ;redcode ;name Consort ;author Robert Hale ;contact rghale@market1.com ;assert 1 ;strategy A simple bubble sort. ;strategy Optimized to be long and slow. ;) ;strategy Ok maybe not so long but it is a N^2 sort. inc add.f #1, comp comp slt.b ITEMLIST, ITEMLIST+1 done jmp loop, #1 swap mov.i *comp, tEnd+1 mov.i @comp, *comp mov.i tEnd+1, @comp mov.ab #0, done loop djn inc, #ITEMS-1 check jmn.b tEnd+1, done ;reset flag, counter and pointers mov.ab #1, done mov.ab #ITEMS-1, loop sub.a #ITEMS-2, comp sub.ab #ITEMS-2, comp tEnd jmp comp end comp ;redcode ;name Seaside sort ;author Brian Haskin ;strategy Walking by the sea one day ;strategy I saw a shell by the way ;strategy Then looking inside there to my suprise ;strategy It was sorting and ordering in ascending ;strategy Ok, so I write terrible poems. ;startegy Hopefully I did a little better on the program. :) ;strategy shell sort ;assert 1 tmp equ (back-10) LAST equ (ITEMLIST+ITEMS-1) SDIST equ ((ITEMS/3)+1) org comp back add.f const, comp mov.i bjmp,ljmp comp slt.b LAST-SDIST, LAST sne.b *comp,@comp ljmp djn.f comp,comp slt.a #-comp+ITEMLIST-1,comp jmp cdist slt.f hgh,comp mov.f comp,hgh mov.i *comp,tmp mov.i @comp,*comp mov.i tmp,@comp retr slt.ab #-comp+LAST-SDIST,comp jmp back snorm mov.i njmp, ljmp mov.f hgh,comp djn.f comp,comp hgh dat #-comp+LAST,#-comp+LAST cdist slt.a #1,const const dat SDIST,SDIST div.f dvc,const mov.f lstc,comp sub.a const,comp mov.a #-comp+LAST,retr sub.a const,retr mov lstc,hgh jmp comp bjmp jmp -ljmp+snorm njmp djn.f -ljmp+comp,-ljmp+comp lstc dat #-comp+LAST,#-comp+LAST dvc dat #2,#2 end ;redcode-94 ;name Bubbly Sort 1b ;author Ilmari Karonen ;strategy Going for the size point with this one.. ;strategy I hope I'm not too late, good reason: ;strategy I've spent the last twelve days a few ;strategy kilometers away from the nearest modem, ;strategy and so couldn't participate earlier, or ;strategy even know that the tournament had begun ;strategy Written and optimized in a few hours for ;strategy size only! ;strategy length: 10 instructions ;strategy speed: ITEMS*(ITEMS-1)/2 comparisons ;strategy 1 comparison = 2 cycles ;strategy 1 swap = 7 cycles (!) ;date Jul 14, 1997 ;planar sort ;assert MAXLENGTH > 10 LAST equ (ITEMLIST+ITEMS-1) temp equ (swap-1) org loop swap mov.i @ptr, temp mov.i *ptr, >ptr mov.i temp, }ptr loop slt.b Subject: Re: Third round results of the Redcode Maniacs Tournament Date: 1998/02/24 Message-ID: #1/1 Planar writes: > >From: Philip Kendall > > >clear (This was based on the Hint Test from CW 2). There's a pretty > >rubbish version of it in Planar's archive as Syzygy 1.0 -- I have a > >better version on my HD, which I'll publish if anyone really wants me to. > > I do. Well, OK then: ---cut here--- ;redcode-94 ;name Syzygy 1.3 ;author Philip Kendall ;strategy Scan / spl carpet -> spl/spl/dat coreclear ;strategy 1.3: major rewrite ;assert CORESIZE==8000 scan1 equ 109 sep equ 5 step equ 15 bomblen equ 10 stream equ (-211+loop) cstart equ (cptr+5-ptr) ptr equ (dbomb-5) dbomb dat.f -20,cstart sbomb spl.a #0,cstart loop add.f inc,scan scan sne.i scan1,scan1+sep add.f inc,scan sne.i *scan,@scan djn.f loop,step clear mov.i @cptr,>ptr mov.i @cptr,>ptr cptr djn.b clear,{sbomb end scan ---cut here--- Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: "Gene R Gomez" Subject: Re: pizza... Date: 1998/02/24 Message-ID: <199802231749.MAA06387@fcp.essex.navy.mil>#1/1 > Pizza's been down for like a month now... I've lost track of time. Tuc said > he'd > put up a -94 Hill on koth.org if their was interest. If anyone wants him > to, just > reply to me and I'll relay it to him... I would LOVE to see this happen.... :) LLL, Gene Gomez From: Brett Greenfield Subject: more warrior posts Date: 1998/02/24 Message-ID: <6d26s1$1v2@bgtnsc01.worldnet.att.net>#1/1 hey thanks to tips from this news group i was able to improve my program, so i am posting the much improved version notice the two cool pengines, use them if you like i seem to have maximized the commented engine but the score table needs improvement (different numbers) what scores should i use for win, loss and tie ? ;Copyright (c) 1997 by Brett Greenfield ;redcode-94 ;name I am EMCFDT 1.43 ;author Compudemon ;strategy Ultimate thinking code ;strategy scores itself and selects the ;strategy best strategy ;strategy if anyone as a faster way to do this contact me ;strategy note the commented pengine it works well but not ;strategy better then the first why? ;strategy notice also the random paper ;assert (CORESIZE==8000) && (PSPACESIZE>0) bjs EQU (4000) min EQU (10) fst EQU (min*389) step EQU (min*73) lsc LDP #0,lsc lst LDP #1,lst JMN gd,lsc flt LDP #2,flt JMZ bd,flt SUB.BA lst,cn cn STP #1,#1 JMP gd bd MOV.A #1,gd gd STP #0,#2 MOV 0,cn ; slows down code works better ? MOV 0,gd ; these are not nessary but seem to improve performance JMN ppr,lst JMP scn ;lsc LDP #0,lsc ;lss LDP #1,lss ;SLT lss,#4000 ;tbi ADD #3,#stb ;ADD lsc,tbi ;ADD @tbi,lss ;STP lss,#1 ;SLT #4000,lss ;JMP ppr ; papper ;JMP scn ; scissors for 10 DAT 0,0 rof ;DAT 0 ;data for other pengine ;stb DAT -7 ;DAT 14 ;DAT -1 ;DAT 7 ;DAT -14 ;DAT 1 ;DAT 0 ;DAT 0 ;DAT 0 ;paper st DAT -cpy,-cpy+230 top MOV st,cpy ppr MOV }cpy,>cpy MOV }cpy,>cpy MOV }cpy,>cpy JMN.A ppr,cpy SPL scn JMN.B stk,@scn MOV tpe,@scn CMP scn,#(ed-scn) bl2 JMP scn,bl+1 kl MOV trp,>bl MOV trp,{bl DJN kl,#scn-ed kl2 MOV bl,>bl2 MOV bl,{bl2 DJN kl2,#scn-ed trp SPL #5,#0 tpe JMP -1,#0 bl DAT scn-1,2 DAT 0,0 for 9 DAT 1 rof ed DAT 0 END From: Alan McCutcheon Subject: Re: Scientific American Article? Date: 1998/02/24 Message-ID: <1.5.4.32.19980224154339.006bcc2c@mail.iinet.net.au>#1/1 At 09:29 PM 2/23/98 -0500, you wrote: >On Wed, 18 Feb 1998 08:15:11 -0800, Brett Greenfield > wrote: > >>he wrote a series of articles around 1977 > >I think it was 1987 (first half of it) - I just got it from the >library, where all scientific americans of 1987 came in one book.=> >amazing rediscovery of all those Computer recreations :-) Does anybody >remember the analogue rope-computer allegedly discovered in some >jungle?-) > >I think the article in 1987 was the last of Dewdneys Corewar articles, >from a series of 3(?). So maybe the others have been in 1986 [Info previously posted Jan 20, 1998] I have copies of 5 articles in Scientific American by Dewdney mentioning Core Wars. In the following issues: May 1984: "Two computer programs in their native habitat - the memory chips of a digital computer - stalk each other from address to address. ... The aim, of course, is to destroy the other program by ruining its instructions. ..." March, 1985: "... My descriptions of machine-language programs, moving about in memory and trying to destroy each other, struck a resonant chord. ..." July, 1986: "... The cleverer programs will render their weaker colleagues inoperable by destroying vital instructions. ..." ?month, 1987: "Core War - the game in which specialized programs do their level best to destroy one another - was in the spotlight late last year at the first international Core War tournament ..." March, 1989: "... a game in which computer programs are purposely designed to destroy one another. ... The two programs engage in subtle or blatant conflict in a specially reserved area of a computer's memory called the coliseum. ..." If you could advise me in which month in 1987 the fourth one appeared it would be a help. My copy has no month listed with the article. micral From: Brett Greenfield Subject: p space confusion Date: 1998/02/24 Message-ID: <6cvjr3$bf0@bgtnsc01.worldnet.att.net>#1/1 I am a little confused about what happens when one program executes another program's pspace instruction. why does it effect the host programs pspace an instructions'. since owner is defined by who executed it last, would not the pspace of the invading program be effected instead and why/why not? From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: pizza... Date: 1998/02/24 Message-ID: <34f33728.918555@news.image.dk>#1/1 On 23 Feb 1998 11:24:48 -0500, jwilkinson@mail.utexas.edu wrote: >Pizza's been down for like a month now... I've lost track of time. Tuc said >he'd >put up a -94 Hill on koth.org if their was interest. If anyone wants him >to, just >reply to me and I'll relay it to him... Yes please. I've sent a worrior to stormking, but no answer, hmm? I think I did what the faq said to. And a beginner hill 2 please :-) ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: Philip Kendall Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/24 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > The Core Warrior #2 says that spl x,<-y acts like spl 0 Ummm... no it doesn't :-) A quick copy and paste gives: spl #X, <-Y acts like a split 0. The crucial point here is the '#'. > Why? Is that in the definition of redcode or does it only work in > pmars? (And where can I read about it?) The # (immediate addressing mode) is a Redcode '94 feature -- see one of the guides (linked from my pages -- URL in sig). -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/24 Message-ID: <34f07b79.2125042@news.image.dk>#1/1 On 22 Feb 1998 12:18:19 +0000, Philip Kendall wrote: >> I would like to know how to write them, how the code executes, etc. >The second part is easier to write: the code doesn't execute :-) Heh :-) >In many ways, the best decoy may well be something like: > spl.a #1,1 > spl.b #1,1 > spl.ab #1,1 > spl.ba #1,1 > spl.f #1,1 > spl.x #1,1 > spl.i #1,1 Would you mind telling what the differens is? :-) The Core Warrior #2 says that spl x,<-y acts like spl 0 Why? Is that in the definition of redcode or does it only work in pmars? (And where can I read about it?) ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: jwilkinson@mail.utexas.edu Subject: Re: p space confusion Date: 1998/02/25 Message-ID: <199802250633.BAA66259@valhalla.stormking.com>#1/1 >For an additional exercise, write a vampire that can _read_ your opponent's >pspace! > >- David Are pspacers going to have to put decoys into their pspace to prevent their enemy from finding their stored strategy's location and using it against them? :) From: qute@daimi.aau.dk (Anders Rosendal) Subject: Re: ARRGHH!! My warrior won't work! Date: 1998/02/25 Message-ID: <34f48c66.441255@news.image.dk>#1/1 On 24 Feb 1998 21:09:02 +0000, Philip Kendall wrote: >> The Core Warrior #2 says that spl x,<-y acts like spl 0 >Ummm... no it doesn't :-) A quick copy and paste gives: >spl #X, <-Y acts like a split 0. >The crucial point here is the '#'. Argh :-) Ok, you're of course right. >> Why? Is that in the definition of redcode or does it only work in >> pmars? (And where can I read about it?) >The # (immediate addressing mode) is a Redcode '94 feature -- see >one of the guides (linked from my pages -- URL in sig). Ahhh, I read about it already in guide by Ilmani(Very good tutoriel). It's what to do when someone try's to jump into a number like jmp #300,#300 the jump jumps 0 ahead. So it was because I erased the '#', that I couldn't understand it. ----------- This is Anders Rosendal signing off homepage www.daimi.aau.dk/~qute From: Philip Kendall Subject: Re: pizza... Date: 1998/02/25 Message-ID: #1/1 qute@daimi.aau.dk (Anders Rosendal) writes: > >Pizza's been down for like a month now... I've lost track of time. Tuc said > >he'd put up a -94 Hill on koth.org if their was interest. If > > anyone wants him to, just reply to me and I'll relay it to him... > > Yes please. I've sent a worrior to stormking, but no answer, hmm? I > think I did what the faq said to. Aaahh... The FAQ is rather out of date... Stormking has moved from koth@stormking.com to koth@koth.org (other instructions remain the same, apart from a couple of Hills have appeared and disappeared -- see the Koth web pages for details). HTH Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: mooredav@cps.msu.edu (David Matthew Moore) Subject: Re: p space confusion Date: 1998/02/25 Message-ID: <6cvpqs$gct$1@msunews.cl.msu.edu>#1/1 Brett Greenfield (nospam@nospam.com) wrote: : I am a little confused about what happens when one program executes : another program's pspace instruction. why does it effect the host : programs pspace an instructions'. since owner is defined by who executed : it last, would not the pspace of the invading program be effected : instead and why/why not? First, the "ownership" of instructions has no effect on computation. Only a debugging tool would mark instructions as being owned by a program. Warriors have only two things that they can call their own: 1. a queue of processes (1 process = 1 program counter) 2. pspace STP and LDP always affect the executing program's pspace. Therefore, if you want to change your opponent's pspace, then you must force one of its processes to execute a STP. For example, a vampire can do this by placing a JMP where the opponent's code is running. The JMP instruction would direct the enemy's processes into a "brainwash pit" like this: SPL #0, 0 STP >0, #0 JMP -2, 0 For an additional exercise, write a vampire that can _read_ your opponent's pspace! - David From: Brett Greenfield Subject: Re: Redcode Maniacs Round 5 Rules Date: 1998/02/26 Message-ID: <6dca6g$nkv@bgtnsc02.worldnet.att.net>#1/1 Philip Kendall wrote: > > Maniacs, > > After the rule-fest that was Round 4, Round 5 will (hopefully :-) ) be a > lot simpler: standard '88 Redcode. More specifically, that is: I am afraid i am not familiar with the 88 standard could some one please direct me to the proper faq with the 88 specs (preferably a very complete description). thanks just put you answer in news i no longer put my email cause of spam i got From: Robert Macrae Subject: Re: more warrior posts Date: 1998/02/26 Message-ID: <34F6394B.3352@dial.pipex.com>#1/1 Brett Greenfield wrote: ... > ;Copyright (c) 1997 by Brett Greenfield > ;redcode-94 > ;name I am EMCFDT 1.43 > ;author Compudemon... > cn STP #1,#1 > JMP gd > bd MOV.A #1,gd > gd STP #0,#2 > MOV 0,cn ; slows down code works better ? > MOV 0,gd ; these are not nessary but seem to improve performance This is quite hard to read; comments and lining up the instructions both help. The MOVs reduce the chance that your replicator brainwashes itself -- late on in the battle, when all the copies are damaged, some of your processes may well "Leak" into the STP instructions and store something meaningless. Combining a paper and a scanner looks like a sensible mix. -- Regards, Robert Macrae From: Philip Kendall Subject: Re: ICWS-88 Reference? Date: 1998/02/26 Message-ID: #1/1 squonk@mousehouse.com (Josh Lubliner) writes: > Ok, I've read the FAQ, I've checked the FTP archives, I've looked all > over the place, but I can't find a definitive reference of what the > valid opcodes are for redcode ICWS-88 (or -94 for that matter, > although right now I'm just looking for 88). How about /documents/standards/redcode-icws-88.Z on the FTP sites? For the '94 stuff, there is no official standard, as the defunct ICWS still has copyright on the draft document (also in the /documents directory), and pMARS has made extensions to that draft (notably a-field addressing and pspace). Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/spectrum.htm | | New? Read the FAQ: http://www.kendalls.demon.co.uk/cssfaq/ | \ Looking for something?: http://www.void.demon.nl/archive.html / From: squonk@mousehouse.com (Josh Lubliner) Subject: ICWS-88 Reference? Date: 1998/02/26 Message-ID: <34f500c9.8069020@nntp.netgate.net>#1/1 Ok, I've read the FAQ, I've checked the FTP archives, I've looked all over the place, but I can't find a definitive reference of what the valid opcodes are for redcode ICWS-88 (or -94 for that matter, although right now I'm just looking for 88). I know this must exist someplace. Help! No tutorials, no beginners guides, just a strict reference! Thanks! --Josh From: Anton Marsden Subject: Re: pizza... Date: 1998/02/26 Message-ID: #1/1 On 25 Feb 1998, Philip Kendall wrote: > Aaahh... The FAQ is rather out of date... Stormking has moved from > koth@stormking.com to koth@koth.org (other instructions remain the > same, apart from a couple of Hills have appeared and disappeared -- > see the Koth web pages for details). I've been updating the FAQ recently (and still am). However, the HTML code needs a bit of fixing (my fault) and Stefan hasn't changed the auto-posted FAQ version yet. Since I'm still working on the FAQ, I'll try and set up a web page for it next week - so that people can browse through it and suggest changes. Anton. From: GNRB30E@prodigy.com (Mrs. Margaret E. Yeager) Subject: Re: p space confusion Date: 1998/02/27 Message-ID: <6d761u$47ui$1@newssvr03-int.news.prodigy.com>#1/1 >For an additional exercise, write a vampire that can _read_ your opponent's >pspace! > >- David Is it really possible to do that? Josh From: "Thinker" Subject: Re: Asian Oral Sex - japbj0024.jpg [1/1] Date: 1998/02/27 Message-ID: #1/1 Haha. That would be nice... It isn't just these newsgroups, though... Have you ever done a search on "breast" or something like that with an innocent end in mind? I don't know, maybe you were looking for a recipe for chicken breasts... The whole point is you get back literally 10's of thousands of SEX sites!!! Arghhh... Cheers! Thinker Nachtergal Philippe wrote in message <34F6BC67.62AD@student.fsa.ucl.ac.be>... >lomrtblm@Japannet.com wrote: >> >> --------------------------------------------------------------- >> >> http://SPAM >> http://SPAM >> >> http://SPAM > >Are all pc gamers so sex starved that those fucking spammers want >to target us specificaly ? > >One day,i'll find a security hole in one of those sites and >they'll wish they had made a full backup :) > >Help from any experienced hacker would be most welcome. > > >Thufir Hawat. >-Master of spies and assassins. From: Dundee@LakeSuperior.Shard (Dundee) Subject: Re: Asian Oral Sex - japbj0024.jpg [1/1] Date: 1998/02/27 Message-ID: <2322BCC4088710F2.1F6E4B7FFCE0D5AA.DD5FABF5B937499A@library-proxy.airnews.net>#1/1 On Fri, 27 Feb 1998 14:15:19 +0100, Nachtergal Philippe wrote: >Are all pc gamers so sex starved that those fucking spammers want >to target us specificaly ? Not "all". But a significant number of them, probably. >One day,i'll find a security hole in one of those sites and >they'll wish they had made a full backup :) Nice, but don't do anything to get yourself in trouble. -- Dallas, TX area gaming http://www.geocities.com/TimesSquare/Realm/3064/ (DallasGaming@geonospamcities.com) From: Nachtergal Philippe Subject: Re: Asian Oral Sex - japbj0024.jpg [1/1] Date: 1998/02/27 Message-ID: <34F6BC67.62AD@student.fsa.ucl.ac.be>#1/1 lomrtblm@Japannet.com wrote: > > --------------------------------------------------------------- > > http://SPAM > http://SPAM > > http://SPAM Are all pc gamers so sex starved that those fucking spammers want to target us specificaly ? One day,i'll find a security hole in one of those sites and they'll wish they had made a full backup :) Help from any experienced hacker would be most welcome. Thufir Hawat. -Master of spies and assassins. From: guenzel.p1@usa.net (Bjoern Guenzel) Subject: Re: ICWS-88 Reference? Date: 1998/02/27 Message-ID: <34f671fb.812017@news.lrz-muenchen.de>#1/1 On Thu, 26 Feb 1998 05:44:36 GMT, squonk@mousehouse.com (Josh Lubliner) wrote: >Ok, I've read the FAQ, I've checked the FTP archives, I've looked all >over the place, but I can't find a definitive reference of what the >valid opcodes are for redcode ICWS-88 (or -94 for that matter, >although right now I'm just looking for 88). > >I know this must exist someplace. Help! > >No tutorials, no beginners guides, just a strict reference! Thanks! > >--Josh Isn't it all in the pmars documentation (comes with pmars)? Bjoern -- My e-mail address will be altered when it gets flooded by advertising. To send me mail after June '98 in reply to this post, please use the word 'usenet' in the subject line to make sure I receive it. From: "Stacey Ward" Subject: Re: Asian Oral Sex - japbj0024.jpg [1/1] Date: 1998/02/28 Message-ID: <6da8q6$4mb$1@nnrp3>#1/1 Nachtergal Philippe wrote in message <34F6BC67.62AD@student.fsa.ucl.ac.be>... >lomrtblm@Japannet.com wrote: >> >> --------------------------------------------------------------- >> >> http://SPAM >> http://SPAM >> >> http://SPAM > >Are all pc gamers so sex starved that those fucking spammers want >to target us specificaly ? > >One day,i'll find a security hole in one of those sites and >they'll wish they had made a full backup :) > >Help from any experienced hacker would be most welcome. I don't have any hacking help, but may be this would be helpful... "By US Code Title 47, Sec.227(a)(2)(B), a computer/modem/printer meets the definition of a telephone fax machine. By Sec.227(b)(1)(C), it is unlawful to send any unsolicited advertisement to such equipment. By Sec. 227(b)(3)(C), a violation of the aforementioned Section is punishable by action to recover actual monetary loss, or $500, whichever is greater, for each violation." Actually, I'm pretty sure that this applies to email spam, but wouldn't it be cool if we could all collect this fee? Just a personal opinion, Moped From: "Gene R Gomez" Subject: Re: =----+ ---+++ CD Date: 1998/02/28 Message-ID: <199802280447.XAA06501@fcp.essex.navy.mil>#1/1 > NBA 98 > NHL 97 > FIFA 97 > -- 100 +-+++ -+-�+- > f1volf@cityline.ru Um...did I miss something? :) LLL, Gene Gomez From: Robert Macrae Subject: Re: Redcode Maniacs Round 4 Results Date: 1998/02/28 Message-ID: <34F90902.4778@dial.pipex.com> Nice to see the two most adaptive programs doing best :-) At midnight last night, having finally found and dispatched a working version, I decided to write up my strategy which I attach. I had underestimated the number of paper-only and paper-heavy warriors which would be present, but it could have been even worse. My second choice of warrior was exactly as PSST 2.0, but with a hard-wired Paper selected every 4th round... ----------------------------------------------------------------------- This round is a complex one. One reason is that the components are almost-but-not-quite fixed. Because we have freedom to boot and know the scanner step size, we can construct various cunning schemes to make the scanner inneffective. With the appropriate decoy, stone always beats scanner and even paper has a reasonable chance. Most devious of all, we can control exactly where the scanner will hit our scanner and use this to construct a core clear when our scanner is damaged. The weakness of scanners means that papers grows in strength since they have no effective counter, but because we do not know how many of these dodges will be used by our opponent, we cannot be sure exactly how the components are likely to score. My best guess table below. Paper Scissor Stone Paper 100 180 10 Scissor 100 150-240 290 Stone 280 10 150 Average 160 110-140 150 A second is that brainwashes will be a rare but unavoidable and serious nuisance. Any long P-Code may get hit by a paper before it has a chance to erase its own STPs, or your own paper may execute the enemy's STPs, even assuming that he does not create an intentional brainwash. This hurts complex state machines and learning algorithms, which would otherwise be the weapons of choice. In my tests I seemed to get brainwashed every 50 rounds or so, though naturally this is very dependent on the opponent. The final challenge, and really the core of this round, is to find a general-purpose way to outsmart other P-spacers. There are various possibilities: 1) Develop a fixed switching algorithm which beats some of the obvious algorithms such as switch-on-loss, and hope to meet some of them. 2) Choose a random-looking algorithm which is hard to predict and, preferably, plays the warriors with the higher expected scores more often. 3) Write an adaptive algorithm which attempts to learn what the opponent is doing. Option 1) and 2) are reasonably straightforward and perform well. On the other hand option 3) is the most complex, but also the most interesting and so, armed only with a copy of PSST from the similar NSFCWT round, I set off to forecast and destroy. I should really have checked out Blizzard too, but we only have one week :-) Anyway, I am not convinced this was a wise decision. -- Fielding a P-Spacer against other P-Spacers with only 200 rounds per battle means there will be a substantial random component to the scores -- the butterfly effect which bedevils the hills, but worse as *every* warrior is a switcher. This means that very simple strategies like switch-on-loss will perform nearly as well as the environment is nearly random. -- Every brainwash will hurt and if these are very frequent then learning is a very bad idea because all the time is spent accumulating painful experience. -- We cannot even be certain what the opponent played just by examining the result because most results have two plausible explanations. For example if your scanner wins it may have faced a scanner or a paper. But it would be a shame to let such mundane considerations get in the way. I tried various adaptive P-Space routines to collect information on the opponent and use this to modify my strategy. The base code comes from PSST in NSFCWT adapted to the uncertain nature of this round. With a some extra space I would convert the result of the last round into likelihoods for each of the enemy components, but this would take about 30 words I don't have; in any case I think the gain in learning efficiency would be fairly low. Instead I just try to predict the next result based on my last play and its result. This is effectively the same as just recording the most plausible of the opponent's plays and ignoring the other possibilities. This code should be reasonable or good against most warriors. It will not learn well enough to crush fast-shifting strategies like Switch-on-Loss, but it does learn enough to avoid losing heavily to anything I have constructed. In my tests it was distinctly better than SOL at exploiting other strategies which rotated components slowly, but similar against most other warriors. Hopefully there are enough slow-rotating table switchers for me to eat -- the Alladin switcher should do nicely :-) I anticipate that its worst opponent would be a switch-on-loss algorithm surrounded by heavy brainwashing pits to trap my papers; the SOL will score well while I am learning, and the pits will keep me that way. I may also suffer strings of draws against paper-heavy warriors which use similar anti-scanner tricks, and of course there may be further improvements which can be made along these lines. From: Philip Kendall Subject: Redcode Maniacs Round 4 Results Date: 1998/02/28 Message-ID: Maniacs, The results of round 4 are here: ;name Simple things do well ;author Beppe ;strategy round 4 entry ;strategy switch on loss ;strategy tried some other strategy some rather refined and also weighted random ;strategy simple switch on loss seems to be the best. ;strategy BTW 2nd best seems to be using but Timescape :-/ ;name LightSwitch v6 ;author Ryan Coleman ;strategy pswitcher for 3 components ;name Wizard 1.2 ;author Compudemon ;strategy ultimate 2 way switcher ;strategy speed speed speed hahaha ;strategy fastest pcode ever!!! (no really) ;strategy i have favored speed over brains ;strategy kill off slower strategies ;strategy contains three programs but uses two ;name Triac ;author Planar ;strategy p-switcher for round 4 of the Maniacs Tournament ;name Ghost in the Core ;author Edgar ;strategy Since the rest is doubtlessly going to use ;strategy disgustingly complex pswitching engines, ;strategy so I'm going the opposite way, just for fun. ;strategy Switch time: min 3, max 4, total engine size 6 cells ;name Randomizer ;author Robert Hale ;assert CORESIZE == 8000 ;strategy Coreclear ;strategy Mini HSA ;strategy TimeScape ;strategy ;strategy I could have done a switch of lose or switch on tie, ;strategy I could have even do a complicated table but ;strategy I did not see how I could outsmart the rest of the players ;strategy so a random choice seemed like a good idea. ;strategy I choose a random strategy in 11 cycles. ;strategy I could eliminated 2 cycles but I liked adding one if I won. ;strategy It made the behavior that much more random. Hope it works :) ;name Maybe ;author Ilmari Karonen ;strategy Very simple table-based pseudorandom switcher ;strategy Weights optimized using an "ecosystem" approach ;strategy since I have no idea what I'll be against. ;name rmt 4 pk ;author P.Kline ;strategy Timescape, Timescape, Timescape ;strategy unless opponent is doing same, then HSA ;name Batz Maru ;author John K. Lewis ;strategy "Smart" program. Uses P-Space to remember last fight. ;name Psst 2.0 ;author Robert Macrae ;strategy Adapted Psst for '98 tournament ;strategy Adaptive play based on last two plays and last result ;strategy Based on simplified NSFCWT PSST ;strategy Still no imp spiral, but remember the garlic Paul? ;-] ;name The Optimist ;author David Moore ;assert 1 ;strategy pswitcher chooses between 3 pspace strategies ;strategy 1. TimeScape only ;strategy 2. Switch on Win ;strategy 3. Switch on Loss/Tie ;name psych ;author JKW ;assert (CORESIZE == 8000) ;strategy Ya know... it's kinda odd, but I did some statistical tests, and ;strategy as near as I can figure, I can't possibly score less than 67 ;strategy tournament points for this round. My warrior does nothing but boot ;strategy straight to timescape, and then proceeds to beat any pspacer that ;strategy takes more than 7 cycles to boot. Even if the opponent always ;strategy chooses HSA, the 7 cycles I save by not having any pspace routines ;strategy allows me to come out slightly ahead. ;strategy And since as far as I know any warrior capable of remembering the ;strategy results for more than past round will require at least 7 cycles... ;strategy so thusly this program beats any possible pspacer for this round. ;strategy ;strategy Worst case scenario: an infinite number of people submit warriors, ;strategy and they all boot straight to timescape. And one other person ;strategy submits a warrior which boots straight to HSA. We all score 67 ;strategy and the HSA guy scores 100. ;strategy ;strategy I felt the need to justify my warrior choice with a lot of strategy ;strategy lines, since it's so incredibly lame. :) ;name Circle of Life ;author WolfWings ;strategy Well, my area fell prey to El Nino's powers, so I missed entering ;strategy round 3, but here's a round 4 entry. Just cycles through the ;strategy available components based on win/tie/loss. ;strategy Takes 7 cycles to decide+launch. Didn't bother with booting or ;strategy decoy's, figured I'd get a few extra scans/bombs/copies done ;strategy before those that did, which might be enough of an edge to win. ;strategy Nieve switching method (I can think of dozens of improvements): ;strategy tie=bomb->copy->scan->bomb ;strategy loss=bomb->scan->copy->bomb ;strategy Lose As | Tie As | Win As | Switch To ;strategy Stone | Paper | Scissors | Scissors ;strategy Paper | Scissors | Stone | Stone ;strategy Scissors | Stone | Paper | Paper And here are the results: Rank Name Author %W %L %T Score ___________________________________________________________________________ 1 Psst 2.0 Robert Macrae 47 34 19 4182 2 The Optimist David Moore 42 23 34 4175 3 Triac Planar 43 29 28 4089 4 rmt 4 pk P.Kline 41 32 26 3906 5 Simple things do well Beppe 38 28 34 3835 6 psych JKW 34 20 46 3821 7 Wizard 1.2 Compudemon 37 28 35 3792 8 Maybe Ilmari Karonen 38 30 32 3776 9 LightSwitch v6 Ryan Coleman 31 24 45 3574 10 Struma & Maritza John Metcalf 29 35 36 3215 11 Randomizer Robert Hale 31 42 27 3114 12 Ghost in the Core Edgar 29 40 30 3081 13 Batz Maru John K. Lewis 22 55 22 2331 14 Circle of Life WolfWings 11 52 37 1844 And the current standings: (points this round in brackets) Robert Macrae 378.3 (100.0) David Moore 371.9 ( 99.8) John K Wilkinson 367.3 ( 91.4) Paul Kline 361.6 ( 93.4) Beppe Bezzi 361.2 ( 91.7) Ryan Coleman 320.4 ( 85.5) Planar 306.0 ( 97.8) Edgar 287.2 ( 73.7) Ilmari Karonen 276.6 ( 90.3) Robert Hale 275.8 ( 74.5) John K Lewis 260.2 ( 55.7) Bjoern Guenzel 179.5 ( 0.0 -- no entry) Compudemon 140.3 ( 90.7) George Eadon 139.3 ( 0.0 -- no entry) John Metcalf 76.9 ( 76.9) Wolfwings 44.1 ( 44.1) Robert Macrae's victory extends his lead at the top, whilst David Moore's very close second sends him above JKW in the overall rankings. Once again, the veterans occupied the top 6 places in this round, but a notable mention goes to Compudemon, with a very creditable result in 7th. This lot will go up on the Web page sometime when I get some more free time -- don't hold your breath :-) Round 5 rules out tomorrow... Phil -- / Philip Kendall (pak21@cam.ac.uk pak21@kendalls.demon.co.uk) \ | http://www.geocities.com/SiliconValley/Park/5427/corewar.htm | | Join the Redcode Maniacs Tournament: | \ http://www.geocities.com/SiliconValley/Park/5427/maniacs.htm / From: Walker@Spam.disembowelling.demon.co.uk (Walker) Subject: Re: Asian Oral Sex - japbj0024.jpg [1/1] Date: 1998/02/28 Message-ID: <34f807ce.6492875@news.demon.co.uk>#1/1 In the candlelit library of the darkened Keep, a book flicks open to a page where Nachtergal Philippe has written... >Are all pc gamers so sex starved that those fucking spammers want >to target us specificaly ? They didn't. This cropped up in three non-gaming NGs that I 'scribe to. >One day,i'll find a security hole in one of those sites and >they'll wish they had made a full backup :) Go for it. [The candle flickers as Walker once again resumes his poring over the Histories] Walker -==(UDIC)==- d+++ e-- N+ T?;) Om++ U6!7'!S'!8 u+++ uC++ uF++ uG++++/--- uLB+ uA- nC++ nH+ nP nPT nS+++ nT+ From: Robert Macrae Subject: Re: p space confusion Date: 1998/02/28 Message-ID: <34F85135.52E@dial.pipex.com>#1/1 Mrs. Margaret E. Yeager wrote: > >For an additional exercise, write a vampire that can _read_ your > > opponent's pspace! > Is it really possible to do that? Yes. For example trap a single enemy process in a pit like LDP.ab #500, 510 DJN.f -1, -1 Which will copy his P-space into the next 500 words. -- Regards, Robert Macrae From: jwilkinson@mail.utexas.edu Subject: Re: p space confusion Date: 1998/02/28 Message-ID: <199802280427.XAA22271@valhalla.stormking.com>#1/1 >>For an additional exercise, write a vampire that can _read_ your >opponent's >>pspace! >> >>- David > >Is it really possible to do that? Yeah, the real question is, could it somehow be useful...