From: chrisopj@acfcluster.nyu.edu Subject: Team Play Message-ID: <1993Apr30.201828.1@acfcluster.nyu.edu> Date: Sat, 1 May 1993 01:18:28 GMT Hoi! I'm still a newbie, but learning here and there by combing the *huge* files of archived warriors at soda.b.e. Quick question: are there any facilities out there for having more than two warriors in core at once...or more specifically, more than two warriors, but stilll with *two* "sides", so that teammates would have to work together somehow (IPC!)... *shrug* Just asking. I could of course spend quite a long time just figuring out what is here now, but there seem to be many posts in the archives of people suggesting that stalemates of some kind have been reached, or that the scope and range of innovation has been reduced to finding better optimum numbers... Just a suggestion, or not even that...;) Jeff, whose 1 line test program did better on the hill than his 9 line real one :( From: jonn@microsoft.com (Jon Newman) Subject: Re: Core! 1.1 on a Quadra-800; Crashes. Message-ID: <1993May01.234617.8373@microsoft.com> Date: 01 May 93 23:46:17 GMT Burch_Ben@msmail.wes.mot.com (Ben Burch) writes: >Hello! I recently started trying to use Core! 1.1. It crashes a lot on my >Quadra-800. Does anybody else have the same experience? Is there a more >up-to-date version which does not crash so often? Thanks! > >-Ben Burch >Burch_Ben@msmail.wes.mot.com There is a know problem with Core! 1.1 involving a certain Redcode instruction (I think it was SUB). Please contact me at jonn@microsoft.com for an updated version of Core! Jon Newman -- jonn@microsoft.com This is not the official opinion of Microsoft Corporation. Bill Rules! From: DURHAM@ricevm1.rice.edu (Mark A. Durham) Subject: New MADgic Core v5.0 for Amiga Message-ID: <16BC26524.DURHAM@ricevm1.rice.edu> Date: Sun, 2 May 1993 12:11:32 GMT Is anyone interested in a new version of The MADgic Core for the Amiga? I have doubled the colors, added tracing to files, trimmed the MARS engine, squished a few bugs, improved the 2.0 look-and-feel (still even on 1.3, but particularly on 2.x and up now that I have 2.1 myself), and a few other things (like read and write limits with folding!). I would ordinarily just go ahead and post it to soda, but I have so many plans which have not been included yet (like AGA support and support for the new draft) that I tend to think it would be better to wait. So, anyone desperate for a new version please send me a message saying so. (If you would rather wait, you can tell me that instead). Mark A. Durham durham@ricevm1.rice.edu From: jhbrown@athena.mit.edu (Jeremy H Brown) Subject: RedCode test suite... Date: 2 May 1993 23:01:43 GMT Message-ID: <1s1jsnINN8ot@senator-bedfellow.MIT.EDU> Howdy. I'm looking for a full suite of test code with which to test a corewar system I and a friend built (yes, hardware) for a class. I would like something that tests each opcode in all addressing modes, etc. etc. according to the '88 standard. It would be particularly nice if it could switch between in-memory and in-register evaluation, as the former is easier to implement in hardware and is what we currently (think we) have working. Thanks in advance! Jeremy Brown From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Tournament update Date: 3 May 1993 01:54:17 -0500 Message-ID: <9305030654.AA09954@necs.vuse> As the first entries for the upcoming summer tournament arrive, I thought I'd ask you to adhere to the following format to make parsing by my tournament script possible. Please start your warrior with: ;redcode ;name ;author ;contact ;group {A/B} (;strategy lines are also encouraged) It looks like there's going to be enough entries for two separate groups (leagues). Group A will consist of "veterans" with current or past stable warriors on the hill; group B is reserved for newcomers. Include the ;group directive if you want to override my decision where to put you. To those who have already sent me their entry, don't resend. I will reject entries that have been deliberately obfuscated by omission of labels, etc., since your next opponent has to be able to understand your code. To repeat, you will receive code for all warriors of the previous round along with the name of your next opponent. You may submit a new entry for the next round or keep your previous one. This tournament is open to anyone with an email address, but understand that due to time constraints I cannot accept more than about 50 entries, first come first serve. Deadline is Friday, May 7th, 20:00 CST. The tournament will be run on my Cyrix486 Notebook, using Albert Ma's Mercury system and scripts written in 4DOS BTM-language. Good luck, Stefan (stst@vuse.vanderbilt.edu) From: bdthomse%peruvian.cs.utah.edu@cs.utah.edu (Brant Thomsen) Subject: Wimp Date: 3 May 93 13:18:43 MDT Message-ID: <1993May3.131844.25847@hellgate.utah.edu> I have been spending the last month trying to perfect the perfect fighter against an Imp-spiral/stone combination. Unfortunately, it appears that they are no longer enjoying their dominance on the hill. Of the programs I submitted to KOTH, the one that did best was Wimp 6.1 It could hold its own against the Spirals and Scanners, but has been getting demolished by the replicators (* paper). It appears that it is time to start over with a different tact. (Perhaps pull an old vampire out of the dust bin and try to polish it up again...) Wimp had three separate parts that ran in tandem. The largest part was a stone that turned into an Imp-gate when it bombed itself. (It is of the form SPL 0, Date: Tue, 4 May 1993 20:15:51 GMT Hello there, I seem to have lost the ftp address for CoreWar material and I can't find an old copy of the FAQ list on this board. Could someone help out and mail the address to me where I can get a copy of the CoreWar basics (RedCode and such)? Thanks in advance for helping out a newbie with a pesky question. (: -Dave Kosak kosakd@alleg.edu -- (@) () \^/ * {O} @ <@> (o) ___|*___|_|____**____*_|_____*___|___**____|___|____|____***_____*|_____ |_____|______|______|______|______|______|______|______|______|______|_| |__|______|_DAVID GEORGE KOSAK_|______|kosakd@alleg.edu____|______|____| |___(@)______|______|______|______|______|______|______|______|______|_| ||/*/|/\@/\(The new flowers on my wall are in honor of Spring.)|*|/\|*\| From: han@sor.inria.fr (Jay Han) Subject: Core Wars enters the Top 100 PC Games chart Message-ID: Date: 5 May 93 16:44:13 GMT Yes sir. And about the same I entered the Hill for the first time :) Core Wars is at the 16th position of the Tip20 this week. So vote! The Top 100 Chart is posted in comp.sys.ibm.pc.games.announce, along with the rules to vote. -- Jay Han From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: (Last) tournament update Message-ID: Date: Thu, 6 May 1993 01:47:56 GMT *Please*, don't forget to add ;contact and ;group lines to your 1st round entry. I've been asked what I would do if the number of participants was not a power of 2 (required for double-elimination). To make things a little more interesting, I decided to bring the number of warriors to the next power of two by adding "cloaked" warriors. These have variable strength (the ones in the B group tend to be easier), and are mostly warriors posted to r.g.cw but no longer on the hill. The trick is that their code (and real name) will not be revealed until they drop out of the race. Cloaked warriors have unique (fake) names and do not change between rounds. So, if your next opponent is "Automatic Player", make sure you study his previous battles to find out what would be an effective countermeasure. I am trying to make this challenging, but not too difficult, since I don't want "Automatic Player" to win the tournament :-) Of course, your opponent for the 1st round is assigned randomly. I will send out warrior code as an uuencoded archive in portable-ZIP format (extractable by unzip5.0p1 on UNIX,DOS,OS/2,VMS,Mac,Atari and pkunzip2.04g on DOS). If this is a problem, tell me and I'll send them as a catenated text file (ca. 5x bigger) to you. Last thing: I am going to be away from my terminal all day Friday and won't be able to acknowledge receipt of last-minute entries or answer questions. Help make this tournament a success by submitting your warrior! -Stefan (stst@vuse.vanderbilt.edu) From: ama@athena.mit.edu (Albert Ma) Subject: Graphical Mercury is out Date: 6 May 1993 02:57:16 GMT Message-ID: <1s9uqcINNfd2@senator-bedfellow.MIT.EDU> I've just uploaded a graphical version of Mercury into soda.berkeley.edu. Right now it's in pub/corewar/incoming because they finally removed write access to systems. Do I need to email the administrator about moving it? The new program is called pluto. The files mercury.exe, pluto.exe, and readme.txt are all in the file mercury.zip. Mercury.exe has been updated. I reprogrammed parts of the compiler and the decode phase of the interpreter so that less memory access is done. The result is about 5% gain for 386's. I don't expect any gain for 486's as the 8K on-board cache makes memory access very speedy. The program is also slightly smaller now. I would suggest that people keep the old version of mercury around just in case there's a bug in the new version. Also in the old version I left out the instructions to set the maximum length of the program, even though it was implemented. Pluto uses VGA 80*50 mode to represent the core. As with Nandor's suggestion, the user can decide whether or not to display reads, moves, and decrements. Instructions are in readme.txt. This program is fast. Too fast. My first priority for an update will be to add a throttle. I guess it is about 3/4 of the speed of mercury. Blue is player1 and Green is player2. Experiment with the program to figure out the display. The status display is extremely crude. It was a kludge. I haven't tried the program in Windows yet. My guess is that everything will work except for the escape key, as in mercury. You guys have until the 19th to find all the bugs and to propose simple modifications to the program. After that I won't have my roommate's PC to program with. I don't have time for major modifications as finals are coming up. Comments are suggestions are welcome. Enjoy! Albert Ma ama@athena.mit.edu From: ama@athena.mit.edu (Albert Ma) Subject: Pluto problem Date: 6 May 1993 08:22:20 GMT Message-ID: <1sahrsINNmol@senator-bedfellow.MIT.EDU> Stefan informed me that on his machine, Pluto displays trash on the screen after trying to switch back from the status display. This doesn't happen on my computer. I'd like to ask that users of Pluto email me about whether or not everything works right on their system. In your email, please tell me: 1) whether it works 2) what the problem is if it doesn't work 3) CPU type and speed (Mhz) 4) VGA graphics card used 5) Environment running program under (Windows, Desqview, or DOS for example) This would help isolate the problem. Hopefully I can fix this problem quickly. Thanks in advance to everyone who responds By the way, the program is paused while in the status mode. I forgot to mention that in the instructions. Albert Ma ama@athena.mit.edu From: bezenek@plains.NoDak.edu (Todd M. Bezenek KO0N) Subject: crobots() robot needed to defeat mine Message-ID: Date: Thu, 6 May 1993 08:23:52 GMT I was told that some discussion of crobots() goes on here. I have a robot that has never been defeated. If someone has a robot that they think is good, let's get together and give me some severely wanted competition! Thanks, Todd -- Todd M. Bezenek, KO0N bezenek@plains.nodak.edu From: pk6811s@acad.drake.edu Subject: _Push Off_ Message-ID: <1993May6.093247.1@acad.drake.edu> Date: Thu, 6 May 1993 15:32:47 GMT _PUSH OFF_ A midweek review of Corewar May 6, 1993 ------------------------------------------------------------------------------- I. The Standings: # %W/ %L/ %T Name Author Score Age 1 48/ 40/ 12 Dragon Spear c w blue 157 357 2 48/ 43/ 8 Agony 5.1 Stefan Strack 154 409 3 46/ 41/ 13 Iron Gate 1.01 Wayne Sheppard 151 83 4 47/ 43/ 10 Backstabber Anders Ivner 150 175 5 46/ 46/ 8 Medusa's v7 Mintardjo & Strack 147 548 6 34/ 21/ 46 Snake Wayne Sheppard 147 15 7 34/ 22/ 44 Night Crawler Wayne Sheppard 145 255 8 39/ 38/ 23 Leprechaun 1b Anders Ivner 141 1167 9 43/ 48/ 9 Sting II Arno Fuhlendorf 139 73 10 31/ 24/ 45 Sphinx v2.8 W. Mintardjo 138 1253 11 30/ 23/ 47 Imprimis 6 P.Kline 137 655 12 29/ 22/ 49 ttest nandor sieben 136 131 13 28/ 21/ 51 ittt nandor sieben 135 132 14 39/ 46/ 15 Sucker 6 Stefan Strack 132 277 15 28/ 24/ 48 +0 Stormbringer Dan Nabutovsky 131 1685 16 27/ 28/ 45 Hobbits Arno Fuhlendorf 126 12 17 38/ 53/ 10 Paratroops v2.1 W. Mintardjo 122 27 18 26/ 32/ 43 FlyPaper 1.1 J.Layland 120 32 19 37/ 56/ 7 XBS Fredrik Ohrstrom 119 1 20 23/ 28/ 49 Nurgle III c w blue 118 8 21 30/ 53/ 17 FireTrap P.Kline 106 0 ------------------------------------------------------------------------------- II. The Basics: -Core War Archives are available via anonymous FTP at soda.berkeley.edu in pub/corewar... -FAQ for this newsgroup is available via anonymous FTP at rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.z ------------------------------------------------------------------------------- III. The Scoop: Well, this weeks biggest news item is S. Strack's announcement of a new tournament. Based on the annual 'PeekaBoo' Valentine Tournament, Stefan is seeking to challenge competitors with a little different format. This is an elimination tournament, where the winners get to submit a different warrior for each upcoming round. In order to give more people a chance he has divided things into expert and novice groups (I think he used the terms 'stable' and 'unstable' :-). One player trying to decide whether he wants to go with the big boys is J. Layland, whose FlyPaper 1.1 was seen momentarily in second place. Congrats! Unfortunately FlyPaper knocked off a stone or two and fell into the bottom ten after. FlyPaper and Hobbits (my guess - replicators) are making the scanners happy. Today's top five slots are all cmp-scanners. D. Nabutovsky put up his early-version imp-stone program, Impossible, to test the waters. Guess it's too hot! 21 4/ 44/ 51 Impossible Dan Nabutovsky 65 Wow, last Fall Impossible would have had less than 20% losses - maybe we ARE making some progress against imps. And my nomination for the Optimist Trophy: Program "miniscule" (length 2) by "Iain Scott" (contact address "eoin@ecr.mu.oz.au"): ;strategy ;strategy if it's really small, no one will find it Yeah, right. :-) ------------------------------------------------------------------------------- IV. The Outlook: 4 35/ 18/ 46 Snake Wayne Sheppard 152 1 1 49/ 41/ 9 Cleaver Wayne Sheppard 157 1 2 34/ 22/ 44 Test II Wayne Sheppard 147 1 10 43/ 47/ 10 Sting II Arno Fuhlendorf 138 1 9 45/ 45/ 10 Zipp 440 c w blue 144 1 5 46/ 41/ 13 Emerald 4 P.Kline 151 1 3 33/ 21/ 45 sub-type-i c w blue 145 1 2 33/ 21/ 46 Test II 1/2 Wayne Sheppard 146 1 8 40/ 42/ 18 sub-type-bs c w blue 138 1 9 31/ 21/ 48 Chimera v3.5 W. Mintardjo 140 1 2 37/ 27/ 37 FlyPaper 1.1 J.Layland 147 7 10 42/ 45/ 14 Iron Gate 1.1 Wayne Sheppard 139 1 8 43/ 47/ 11 Medusa's +7.2 Mintardjo W. 138 1 5 32/ 20/ 48 Snake-crawler Wayne Sheppard 144 1 8 41/ 43/ 16 Iron Gate 1.02 Wayne Sheppard 139 1 9 46/ 44/ 10 Glass House 2.0 j.layland 147 1 7 44/ 46/ 11 Paratroops v2.1 W. Mintardjo 142 1 ------------------------------------------------------------------------------- V. The Quick Look: 21 10/ 43/ 47 TS3 W. Mintardjo 78 0 20 28/ 57/ 15 XBS Fredrik Ohrstrom 99 1 21 11/ 70/ 19 6809 Rudi Cilibrasi 52 0 21 7/ 84/ 9 BANG David K. Peck 30 0 21 29/ 55/ 16 Harm c w blue 104 0 21 19/ 74/ 8 Tiny Iain Scott 64 0 21 19/ 72/ 9 bomp Harvey 66 0 21 27/ 73/ 0 simp Unknown 81 0 21 22/ 74/ 4 68010 Rudi Cilibrasi 70 0 21 23/ 62/ 14 68020 Rudi Cilibrasi 85 0 21 16/ 74/ 10 Dwarf George Gorman 57 0 20 25/ 37/ 38 Paper Wayne Sheppard 112 1 21 34/ 61/ 5 Scnfo Fredrik Ohrstrom 107 0 20 24/ 51/ 25 Sting Arno Fuhlendorf 96 1 21 21/ 79/ 0 ptest Unknown 63 0 21 16/ 71/ 14 quick Cliff Fitzmorris 61 0 21 1/ 89/ 10 BigImp David K. Peck 12 0 21 19/ 79/ 2 Circus David K. Peck 58 0 21 5/ 57/ 37 Estone Mestern 53 0 21 25/ 71/ 4 Invest Andre van Dalen 79 0 21 5/ 64/ 31 MiniMe David K. Peck 46 0 17 39/ 45/ 16 Wimp 6 Brant D. Thomsen 134 1 20 10/ 41/ 49 rabbit W. Mintardjo 78 1 21 8/ 84/ 9 Acrobat David K. Peck 32 0 21 6/ 64/ 30 Anarchy David K. Peck (95dpe 49 0 19 24/ 24/ 53 Hobbits Arno Fuhlendorf 123 1 21 9/ 71/ 20 Leecher David K. Peck 47 0 21 5/ 93/ 2 Carnival David K. Peck 17 0 21 1/ 50/ 49 Confused Jay Han 51 0 21 18/ 64/ 19 FineHook David K. Peck 72 0 21 28/ 54/ 18 FireTrap P.Kline 102 0 21 13/ 85/ 2 Hellfire David K. Peck 40 0 21 11/ 74/ 16 Ice Cube c w blue 48 0 21 10/ 60/ 31 MeAndYou David K. Peck 59 0 21 21/ 70/ 10 New tiny Iain Scott 71 0 19 38/ 50/ 12 Shredder c w blue 125 1 21 18/ 63/ 19 SinkHook David K. Peck 73 0 20 33/ 59/ 9 Sunburst Jay Han 107 1 21 7/ 88/ 4 The Borg Rudi Cilibrasi 26 0 19 39/ 47/ 13 Wimp 6.1 Brant D. Thomsen 132 1 21 37/ 52/ 11 Zipp 440 c w blue 122 0 21 6/ 78/ 16 Batallion David K. Peck 35 0 21 9/ 88/ 3 Biohazard David K. Peck 29 0 21 2/ 87/ 12 Defensive David K. Peck 17 0 21 18/ 65/ 17 Latchhook David K. Peck (95dpe 71 0 21 36/ 61/ 3 Sunburst1 Jay Han 110 0 20 36/ 52/ 12 Wimp 6.11 Brant D. Thomsen 120 1 20 31/ 54/ 14 ministone j.layland 108 1 21 19/ 57/ 24 s-n-a_1.0 Cliff Fitzmorris 81 0 21 0/ 53/ 47 test v0.1 Raistlin Majere 48 0 21 25/ 62/ 13 Early Bird c w blue 89 0 20 36/ 50/ 14 Eclipse II P.Kline 122 1 21 12/ 54/ 34 Homunculus Pi Qan 70 0 20 23/ 25/ 52 Nurgle III c w blue 121 1 21 11/ 87/ 2 ToxicWaste David K. Peck 35 0 21 0/ 43/ 56 Warp Speed Iain Scott 57 0 20 35/ 55/ 10 sub-type-s c w blue 115 1 21 1/ 38/ 61 test v0.4d Raistlin Majere 63 0 21 7/ 89/ 4 Dracula 1.0 Rudi Cilibrasi 26 0 21 23/ 47/ 30 Eclipse III P.Kline 98 0 18 39/ 46/ 15 Emerald 4.1 P.Kline 131 1 21 10/ 78/ 12 Love Bomber Iain Scott 41 0 19 28/ 51/ 21 Emerald City P.Kline 106 1 21 30/ 41/ 30 FlyPaper 1.0 J.Layland 118 0 21 7/ 83/ 10 Glass Houses Unknown 32 0 21 15/ 80/ 5 Ground-Zero+ E. J. Andrews 51 0 21 10/ 61/ 29 Parasite v 6 Roderick Easton 59 0 21 22/ 27/ 51 Silver Paper W. Mintardjo 117 235 21 30/ 58/ 12 Vamkill Orff Fredrik 103 0 19 24/ 26/ 50 sub-type-b+r c w blue 122 1 21 20/ 79/ 1 coloured tiny Iain Scott 60 0 20 27/ 41/ 32 Desperate I (b) Brant D. Thomsen 114 1 20 39/ 53/ 8 Glass House 2.0 j.layland 124 1 20 32/ 39/ 29 Plasma-Advanced Wayne Sheppard 124 1 21 16/ 75/ 9 bomber (v. 1.A) Th.F.Telkamp 56 0 21 28/ 59/ 13 BSLIV - my style P.Kline 97 0 20 38/ 53/ 10 Glass House 2.01 j.layland 123 1 20 33/ 43/ 23 No Ties Allowed 1.1 Wayne Sheppard 123 1 21 13/ 86/ 0 scan v0.1 -test- Th.F.Telkamp 41 0 19 37/ 47/ 16 Iron Gate testing..... Wayne Sheppard 128 1 21 3/ 97/ 0 2 handed coloured tiny Iain Scott 9 0 20 15/ 46/ 39 Trident [version 2] W. Mintardjo 85 1 21 0/ 93/ 7 Loving Stun Bomber Iain Scott 7 0 ------------------------------------------------------------------------------- VI. The Hint: Here's an idea to make yourself a little more resistant to imps. An imp-spiral kills you if it overruns your code and you have fewer processes running than it does. You will outrun the spiral and execute garbage instructions. Many programs use gates to keep the imps away, and some put a simple imp (mov 0,1) following their code to provide an escape. But another way to avoid being killed is to have more processes than the imp-spiral. Let's say you are executing a standard reverse core-clear: spl 0,<-10 mov bomb,<-12 bomb dat <-11 which will become a perfect gate once it completes clearing core. If you set it up so that only one process enters the spl-0, you will have three processes active at any one time (one is going to die at 'bomb'). If the imp-spiral has more than three processes (it will), and it overruns you before you are ready, you will die. Instead, if you can drop multiple processes into the routine, you won't die - you will just be overrun by the spiral and follow it around until the timer runs out on the battle. You get one point for the tie, and rob him of two points. The simplest variation (and the fastest core-clear) is to use this form: spl 0,<-10 mov bomb,<-12 jmp -1,<-12 bomb dat <-11 But if you don't want the extra length, you could try some other way of getting multiple processes in. Incidentally, even a partial gate like the above before completion, can be effective against Night Crawler whose imp-spiral is so short that one or two lucky hits will kill it. (It's the stone that's hard to find :-) ------------------------------------------------------------------------------- VII. The End: Paul Kline pk6811s@acad.drake.edu From: gyugyi@leland.Stanford.EDU (Paul Gyugyi) Subject: Re: crobots() robot needed to defeat mine Message-ID: <1993May7.001944.19740@leland.Stanford.EDU> Date: Fri, 7 May 93 00:19:44 GMT In article , bezenek@plains.NoDak.edu (Todd M. Bezenek KO0N) writes: |> I was told that some discussion of crobots() goes on here. |> |> I have a robot that has never been defeated. If someone has a robot |> that they think is good, let's get together and give me some severely |> wanted competition! There's an archive of robots at earthsea.stanford.edu (36.60.0.64) in ~ftp/pub/crobots/Xcrobots.tar (It also has a marginal X interface to the sun version of crobots). See if any robots there can beat yours. It has the entries from a contest run here about a year ago. -- Paul J. Gyugyi Grad student, control systems, Stanford University LEGGO Waffles, a breakfast you can build! gyugyi@isl.Stanford.EDU From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: EBS Summer Tournament Round 1 Results Message-ID: Date: Sat, 8 May 1993 04:34:28 GMT Round 1 of the EBS summer tournament is played. Unfortunately, only nine human players participated; I had to add seven "cloaked" warrior to get to 16. Needless to say I didn't split into group A and B. I guess with finals and all, this is probably the worst time to start a tournament (maybe the obligatory code-sharing is also a deterrent?). Automatic report follows. Note that people in the looser bracket can still win the tournament, if they get to the top within their bracket and win against the finalist of the winner bracket. Round 1 starts 05-07-93 22:17:46 ------------------------------------------------- Ivy3.4 by Damon Gallaty versus Homunculus by Pi Qan Results: 10 3 87 Ivy3.4 by Damon Gallaty advances in winner bracket Homunculus by Pi Qan moves to looser bracket ------------------------------------------------- No.4 by Automatic Player versus flash by Nandor Sieben Results: 39 61 0 flash by Nandor Sieben advances in winner bracket No.4 by Automatic Player moves to looser bracket ------------------------------------------------- Emerald 4 by Paul Kline versus No.1 by Automatic Player Results: 89 10 1 Emerald 4 by Paul Kline advances in winner bracket No.1 by Automatic Player moves to looser bracket ------------------------------------------------- No.7 by Automatic Player versus Leprechaun 1b by Anders Ivner Results: 52 48 0 No.7 by Automatic Player advances in winner bracket Leprechaun 1b by Anders Ivner moves to looser bracket ------------------------------------------------- No.3 by Automatic Player versus No.2 by Automatic Player Results: 43 48 9 No.2 by Automatic Player advances in winner bracket No.3 by Automatic Player moves to looser bracket ------------------------------------------------- Full moon by Dan Nabutovsky versus No.5 by Automatic Player Results: 92 8 0 Full moon by Dan Nabutovsky advances in winner bracket No.5 by Automatic Player moves to looser bracket ------------------------------------------------- Paper by Wayne Sheppard versus Give Me a Cmp-Scanner! by James Layland Results: 100 0 0 Paper by Wayne Sheppard advances in winner bracket Give Me a Cmp-Scanner! by James Layland moves to looser bracket ------------------------------------------------- Sphinx v2.9 by W. Mintardjo versus No.6 by Automatic Player Results: 56 28 16 Sphinx v2.9 by W. Mintardjo advances in winner bracket No.6 by Automatic Player moves to looser bracket ------------------------------------------------- Round 1 ends 05-07-93 22:20:35 Round 2 deadline for new submissions is Friday May 14th, 20:00 CST. Watch for these exciting confrontations. Winner bracket: Damon Gallaty vs. Nandor Sieben Paul Kline vs. No.7 by Automatic Player No.2 by Automatic Player vs. Dan Navbutovsky Wayne Sheppard vs. W.Mintardjo Looser bracket: Qui Pan vs. No.4 by Automatic Player No.1 by Automatic Player vs. Anders Ivner No.3 by Automatic Player vs. No.5 by Automatic Player James Layland vs. No.6 by Automatic Player Code for all warriors, except those by Automatic Player, is mailed to the participants. -Stefan (stst@vuse.vanderbilt.edu) From: DURHAM@ricevm1.rice.edu (Mark A. Durham) Subject: Re: New MADgic Core v5.0 for Amiga Message-ID: <16BC8EDA8.DURHAM@ricevm1.rice.edu> Date: Sat, 8 May 1993 21:53:46 GMT In article <16BC26524.DURHAM@ricevm1.rice.edu> DURHAM@ricevm1.rice.edu (Mark A. Durham) writes: > >Is anyone interested in a new version of The MADgic Core for the Amiga? > Due to overwhelming response, I will post v5.0 soon (within the week). MAD From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Round 2 for latecomers Date: 9 May 1993 12:19:15 -0500 Message-ID: <9305091719.AA22337@necs.vuse> Scott Adkins sent his entry to the EBS summer tournament too late for the 1st round, but I fit him in anyway. His warrior is going to replace one of the No.X warriors in the looser bracket and fight his first match in round 2. To be fair, I thought I'd make this public: I will accept up to four latecomer submissions for round 2 that will similarly replace No.X warriors in the looser bracket. You have until Tuesday, 20:00 CST, because I need to post the revised schedule for the looser bracket in order to give people already in this bracket a chance to react. -Stefan (stst@vuse.vanderbilt.edu) From: c_allison@icrf.icnet.uk Subject: Help: non-compressed documents Date: 10 May 93 10:43:17 GMT Message-ID: <1993May10.104317.1@icrf.icnet.uk> Hi, does anyone have plain text versions of: redcode-icws-88.Z tutorial.1.Z tutorial.2.Z If so, can you either mail them to me or let me know of an anonymous ftp site. Thanks in advance, Shade From: sadkins@bigbird.cs.ohiou.edu (Scott W. Adkins) Subject: Re: Help: non-compressed documents Message-ID: <1993May10.123607.11821@oucsace.cs.ohiou.edu> Date: Mon, 10 May 1993 12:36:07 GMT In article <1993May10.104317.1@icrf.icnet.uk> c_allison@icrf.icnet.uk writes: > >Hi, > >does anyone have plain text versions of: > >redcode-icws-88.Z >tutorial.1.Z >tutorial.2.Z What do you mean by plain text versions? They are already in ascii format (i.e., not formatted by postscript, tex, etc). For others who don't know yet, the above documents and even more documents can be found at soda.berkeley.edu in the /pub/corewar/documents directory. The redcode-icws-88.Z document is the ICWS '88 Standard that we base all of our programming on. That one is probably the most important document there... Scott -- Scott W. Adkins Internet: sadkins@ohiou.edu ~~~~~~~~~~~~~~~ ak323@cleveland.freenet.edu Ohio University of Athens Bitnet: adkins@ouaccvma.bitnet Date: Mon, 10 May 1993 13:00:00 MST From: Message-ID: <93130.130000ASMQK@ASUACAD.BITNET> Subject: Re: Help: non-compressed documents For me plain means : no .Z extension . Can anybody tell me how to get back the original file on a PC ? Nandor. From: sadkins@bird03.cs.ohiou.edu (Scott W. Adkins) Subject: Re: Help: non-compressed documents Message-ID: <1993May10.173842.10642@oucsace.cs.ohiou.edu> Date: Mon, 10 May 1993 17:38:42 GMT In article <1993May10.123607.11821@oucsace.cs.ohiou.edu> sadkins@bigbird.cs.ohiou.edu (Scott W. Adkins) writes: >In article <1993May10.104317.1@icrf.icnet.uk> c_allison@icrf.icnet.uk writes: >> >>Hi, >> >>does anyone have plain text versions of: >> >>redcode-icws-88.Z >>tutorial.1.Z >>tutorial.2.Z > >What do you mean by plain text versions? They are already in ascii format >(i.e., not formatted by postscript, tex, etc). > >For others who don't know yet, the above documents and even more documents >can be found at soda.berkeley.edu in the /pub/corewar/documents directory. >The redcode-icws-88.Z document is the ICWS '88 Standard that we base all >of our programming on. That one is probably the most important document >there... Well, it was pointed out to me that I should have read the subject line. I somehow missed it when I was replying to the last article... :-) The ".Z" extension is a method of compressing files, and is most notably used in Unix compression. If you are on a Unix system, then you can type: uncompress redcode-icws-88.Z And it will uncompress a file, leaving "redcode-icws-88" as the result. For those DOS users, you will have to find a comparible way of uncompressing the files. I suggest looking for COMPRESS.EXE, which can probably be found at wuarchive.wustl.edu in /mirrors/msdos/archivers or something close to that. Alternatively, feel free to send me email (at least I keep up with that...), and I can send you any of the above files in uncompressed format. Scott -- Scott W. Adkins Internet: sadkins@ohiou.edu ~~~~~~~~~~~~~~~ ak323@cleveland.freenet.edu Ohio University of Athens Bitnet: adkins@ouaccvma.bitnet From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Re: Help: non-compressed documents Message-ID: Date: Mon, 10 May 1993 20:39:18 GMT In article <93130.130000ASMQK@ASUACAD.BITNET> writes: >For me plain means : no .Z extension . Can anybody tell me how to >get back the original file on a PC ? > >Nandor. Sure. Get COMP430D.ZIP, a (un)compress-compatible for DOS. Available from SIMTEL, garbo, and other fine FTP sites near you. Better yet, get GZIP107.ZIP for DOS. This is a drop-in replacement for UNIX compress that produces tighter files using the new "deflate" algo. It will also decompress .Z files. -Stefan (stst@vuse.vanderbilt.edu) From: jlayland@kilroy.Jpl.Nasa.Gov (James Layland) Subject: Re: Help: non-compressed documents Date: 10 May 1993 23:25:59 GMT Message-ID: <1smoa7$m2o@elroy.jpl.nasa.gov> I have already sent a reply in email, but since I see 3 new articles posted here... If you have uncompress on your system (Unix), ftp the compressed file and then uncompress it as previously stated, but... If you do not have an uncompress program, then you can ftp the file _without_ the .Z extension, and you will get the uncompressed version. Of course, this takes longer to transmit. For example, after ftp'ing to soda, type "get tutorial.1" instead of "get tutorial.1.Z". Hope this helps anyone else with problems. For that matter, I hope this is all true... James jlayland@grissom.jpl.nasa.gov From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 11 May 1993 00:00:38 -0400 Message-ID: Archive-name: games/corewar-faq Last-modified: 1993/04/16 Version: 2.0.4 These are the Frequently Asked Questions (and answers) from the USENET newsgroup rec.games.corewar. This FAQ list is also available by anonymous FTP from rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.Z. TABLE OF CONTENTS Line ------------------------------------------------------------------------ 1. What is Core War? 67 2. Is it Core War or Core Wars? 80 3. Where can I find more information about Core War? 88 4. Core War has changed since Dewdney's articles. Where do I get 106 a copy of the current instruction set? 5. What is the ICWS? 120 6. What is TCWN? 130 7. How do I join? 138 8. Are back issues of TCWNs available? 158 9. What is the EBS? 165 10. Where are the Core War archives? 181 11. Where can I find a Core War system for . . . ? 198 12. I do not have ftp. How do I get all of this great stuff? 215 13. I do not have access to Usenet. How do I post and receive news? 222 14. When is the next tournament? 243 15. What is KOTH? How do I enter? 252 16. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 357 17. How does SLT (Skip if Less Than) work? 369 18. What does (expression or term of your choice) mean? 381 19. Other questions? 509 --------------------------------------------------------------------- Q 1: What is Core War? A 1: 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 of the opposing programs 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. ---------------------------------------------------------------------- Q 2: Is it "Core War" or "Core Wars"? A 2: 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. ---------------------------------------------------------------------- Q 3: Where can I find more information about Core War? A 3: 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 an anthology: 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 The Redcode language has changed somewhat since; see Q 4. --------------------------------------------------------------------- Q 4: Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A 4: A draft of the official standard (ICWS'88) is available by anonymous FTP from the Core War archives (soda.berkeley.edu) as pub/corewar/documents/standards/redcode-icws-88.Z This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at pub/corewar/documents/tutorial.1.Z tutorial.2.Z (See also Q10) --------------------------------------------------------------------- Q 5: What is the ICWS? A 5: 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). --------------------------------------------------------------------- Q 6: What is TCWN? A 6: 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 on soda.berkeley.edu (see Q9). --------------------------------------------------------------------- Q 7: How do I join? A 7: For more information about joining the ICWS (which includes a subscription to TCWN), contact: A 7: 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. ---------------------------------------------------------------------- Q 8: Are back issues of TCWN available? A 8: Recent issues can be found on soda.berkeley.edu (see Q10). Older issues (up to Winter 1991) are also available (see the next TCWN for details). --------------------------------------------------------------------- Q 9: What is the EBS? A 9: 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 in preparation for the tenth anniversary of Core War in May of 1994. Its immediate business will be to set up a Charter and establish its officers. ---------------------------------------------------------------------- A10: Where is the Core War archive? Q10: 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 soda.berkeley.edu (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@soda.berkeley.edu) is the archive administrator. 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. This FAQ is automatically archived by news.answers. See the header for the current archive name and news.answers for how to get it. ---------------------------------------------------------------------- Q11: Where can I find a Core War system for . . . ? A11: Core War systems are available via anonymous ftp from soda.berkeley.edu in the pub/corewar/systems directory. Currently, there are Unix X-Window, IBM PC-compatible (sorry, no systems specifically designed for MS-Windows yet), Macintosh, and Amiga Core War systems available there. 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 soda.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. ---------------------------------------------------------------------- Q12: I do not have ftp. How do I get all of this great stuff? A12: 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. ---------------------------------------------------------------------- Q13: I do not have access to Usenet. How do I post and receive news? A13: If you have access to telnet, you can read rec.games.corewar (and many more groups) through the gopher information retrieval system. Telnet to consultant.micro.umn.edu (134.84.132.4) or any of the other gopher servers and go through these menus: 1 - Information about Gopher 10 - Gopher+ example server 11 - non-Gopher+ link 7 - News 11 - USENET news 24 - rec 21 - games 6 - corewar If you somehow receive rec.games.corewar but just can't post, you can email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. ---------------------------------------------------------------------- Q14: When is the next tournament? A14: 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. ---------------------------------------------------------------------- Q15: What is KOTH? How do I enter? A15: King Of The Hill (KOTH) is an ongoing Core War tournament available to anyone with email provided by William Shubert (wms@iwarp.intel.com). You enter by submitting via email a Redcode program with special comment lines. You will receive a reply indicating how well your program did against the current top twenty programs "on the hill". Your program 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. 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 the line ";redcode" 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. 3) Mail this file to "wms@iwarp.intel.com". 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 programs. If no news arrives in an hour, 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. MORE ON KOTH COREWAR IMPLEMENTATION Core size: 8 000 instructions Max processes: 8 000 per program Duration: After 80 000 cycles per program, a tie is declared. Max entry length: 100 instructions Programs are guaranteed a 100 instruction block (inclusive of their warrior's instructions) without overlapping their opponent. 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. Rule variants for "eXperimental" corewar: The same as above but use ";redcode-x" to start your program. Your program will be entered into a second tournament with slightly different rules. The rules are: - All addressing modes are allowed with all instructions. - There is an additional addressing mode, called "postincrement". To use it try an instruction like "mov >5,6". - The maximum write distance is 250 instructions. That is, every time your program tries to modify memory, the address is checked; if it is more than 250 instructions from the process doing the modify, then memory is left unchanged, but the instruction continues as normal. - A tie is not declared until 150,000 cycles per program have elapsed. KotH runs on any Unix system with an X windows interface. The source code to KotH is available by email from William Shubert. Write to him at (wms@iwarp.intel.com) for a copy or get it by anonymous FTP from soda.berkeley.edu in the pub/corewar/systems directory. ---------------------------------------------------------------------- Q16: Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? A16: Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH) 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. ---------------------------------------------------------------------- Q17: How does SLT (Skip if Less Than) work? A17: 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. ---------------------------------------------------------------------- Q18: What does (expression or term of your choice) mean? A18: Here is a selected glossary of terms. If you have a definition and/or term you wish to see here, please send it to me. (References to an X-like program mean that the term X is derived from the specific program X and has become a generic term). 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. 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, Date: 11 May 93 00:06:57 GMT I've just uploaded c88v49.zip to soda.berkeley.edu The changes on this version mainly emphasize on the debugging level. Some other features such as user configuration file, core dump, etc are also added. It also fixes some subtle bugs which occured in the previous version. Version update: --------------- 1. Bugs fixed: - At the assembler level where it fails to reject invalid symbol - At the simulator level where it fails to normalize CMP/SLT address after skipping - At the simulator level where it misinterprets SLT instruction with direct addressing mode - Tracing, watch-point and break-point are now set properly 2. Source redcode listing is now directed to standard output 3. Replaying battle up to two rounds now works correctly 3. User configurable file 4. Faster execution and smaller simulator unit 5. Debugging now is not restricted to graphical battle only 6. Many new utilites such as: core dump, evaluator, response control, core edit, process tracing, debug zoom, process/memory viewing switch etc This brings together with the previous version to: 1. Full-screen interface. (Support 80x50 mode) 2. Windowing system interface 3. Multiple round battles 4. Speed optimization 5. Battle replay 6. Moderate debugging facilities such as: core dump, debug zoom, etc 7. Support user configurable file Hardware Requirement -------------------- 1. 8086+ 2. 640K RAM (suggested) 3. CGA color or better 4. DOS 3.30 or better Bugs/comments/suggestions go to: wangsawm@prism.cs.orst.edu Mintardjo W. From: c_allison@icrf.icnet.uk Subject: Newbie question Date: 12 May 93 14:43:32 GMT Message-ID: <1993May12.144332.1@icrf.icnet.uk> Hi everyone, being new to Core War and a complete bozo when it comes to all this low-level coding stuff I have a glaring newbie question! I can understand: BMB DAT #000 STA ADD #004, BMB which adds 4 to the value stored in location BMB to give an equivalent: BMB DAT #004 but I *don't* understand: STA ADD #004, LOC LOC JMZ STA, -01 How the hell do you add 4 to a JMZ instruction? And what do you get? Please help, Bewildered From: jlayland@kilroy.Jpl.Nasa.Gov (James Layland) Subject: Re: Newbie question Date: 12 May 1993 16:26:51 GMT Message-ID: <1sr8gb$fhf@elroy.jpl.nasa.gov> In article <1993May12.144332.1@icrf.icnet.uk> c_allison@icrf.icnet.uk writes: >I can understand: > >BMB DAT #000 >STA ADD #004, BMB > >which adds 4 to the value stored in location BMB to give an equivalent: > >BMB DAT #004 > >but I *don't* understand: > >STA ADD #004, LOC >LOC JMZ STA, -01 > >How the hell do you add 4 to a JMZ instruction? And what do you get? > The first thing you should do is FTP the tutorial and ICWS'88 specs for Redcode from the corewar archives on soda.berkeley.edu, to answer this and many other questions. To answer your specific question, the add instruction (with an immediate A operand) adds the number (4) to the B-field of the target (LOC). So in your example, you get LOC JMZ STA, 3 ; 3 = -1 + 4 However, the add instruction is even more versatile if it uses a non-immediate A-operand. A simple bomber might look like: STEP dat #-3364, #3364 LOOP mov <-1-3364, 1+3364 add STEP, LOOP djn LOOP, #1999 ... put core clear here... Now the add instruction increments both the A- and B- fields of LOOP, so that a different location is decremented and bombed on each pass through the loop. The DJN stops the loop just before it bombs itself. There is a lot of useful stuff in the corewar archive. Check it out. James jlayland@grissom.jpl.nasa.gov Date: Wed, 12 May 1993 22:45:09 MST From: Message-ID: <93132.224509ASMQK@ASUACAD.BITNET> Subject: Re: Help: non-compressed documents Finally I win against tar.Z but what can I do with an encapsulated postscript file ? Nandor. From: han@sor.inria.fr (Jay Han) Subject: Re: Newbie question Message-ID: Date: 13 May 93 15:09:21 GMT RTFM! :-) If you haven't yet, get the ICWS88 document, available at soda.berkeley.edu:/pub/corewar/documents/standards (I think) As to your question, one point that is not outlined clearly enough in the ICWS is the fact that there are 3 types of opcodes: Type 0: DAT Type 1: JMP DJN JMN JMZ SPL Type 2: MOV CMP ADD SUB SLT Type 0 accepts only @ and < arguments Type 1 accepts all arguments except # in the first (A) field Type 2 accepts all arguments except # in the second (B) field This is fine, but then Type 2 also has the following peculiarity: If field A is #, then that value is used as operand to the B-field of the location pointed to by the B-field. If A-field is not-#, then both A and B fields are used as operands. So, actually your code should look like: bomb DAT #0, #0 advance ADD #4, bomb This adds 4 only to the B-field of "bomb", because the A operand is immediate (#4). On the contrary, look at this: advance ADD #4, loc loc JMZ advance, -1 The line "advance" adds 4 to the B-field of "loc". After advance executes, these lines become: advance ADD #4, loc loc JMZ advance, 3 <--- -1+4 = 3 Then, the second line executes. JMZ jumps to the location pointed to by its A-field (here, "advance") if the B-field of the location pointed to by its B-field is zero. I.e. if the B-field of the location "loc+3" is zero, we get back to "advance". If not, we continue downward. Read and re-read the ICWS88 carefully. It took me several times to understand all the subtle rules in it (like what happens when something like "SPL 0" executes). Only recently did I find out that "DAT <-1, <-2" can be of some interesting use. Have fun! Jay (never did better than 19th on the Hill) Han -- Jay Han From: pk6811s@acad.drake.edu Subject: _Push Off_ Message-ID: <1993May13.113128.1@acad.drake.edu> Date: Thu, 13 May 1993 17:31:28 GMT _PUSH OFF_ A midweek review of Corewar May 13, 1993 ------------------------------------------------------------------------------- I. The Standings: # %W/ %L/ %T Name Author Score Age 1 35/ 21/ 43 Night Crawler Wayne Sheppard 149 338 2 37/ 26/ 37 ImpsAreMyFriend J.Layland 148 12 3 36/ 28/ 36 FlyPaper 2.0 J.Layland 145 43 4 44/ 44/ 13 Dragon Spear c w blue 144 440 5 33/ 23/ 44 Imprimis 6 P.Kline 143 738 6 33/ 25/ 42 Sphinx v2.8 W. Mintardjo 140 1336 7 42/ 45/ 14 Iron Gate 1.01 Wayne Sheppard 139 166 8 30/ 23/ 47 +0 Stormbringer Dan Nabutovsky 138 1768 9 41/ 44/ 15 Sucker 6 Stefan Strack 138 360 10 38/ 39/ 22 Leprechaun 1b Anders Ivner 137 1250 11 29/ 22/ 49 ttest nandor sieben 136 214 12 42/ 49/ 9 Agony 5.1 Stefan Strack 136 492 13 29/ 22/ 49 Snake Wayne Sheppard 136 98 14 42/ 50/ 9 Medusa's v7 Mintardjo & Strack 134 631 15 38/ 43/ 20 Herem II Anders Ivner 133 2 16 41/ 50/ 9 Sting II Arno Fuhlendorf 132 156 17 27/ 22/ 51 ittt nandor sieben 132 215 18 40/ 50/ 10 Backstabber Anders Ivner 130 258 19 38/ 48/ 14 ScanTest J.Layland 127 1 20 26/ 39/ 35 sub-type-b+r c w blue 114 5 21 2/ 2/ 1 ScanTest J.Layland 6 7 ------------------------------------------------------------------------------- II. The Basics: -Core War Archives are available via anonymous FTP at soda.berkeley.edu in pub/corewar... -FAQ for this newsgroup is available via anonymous FTP at rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.z ------------------------------------------------------------------------------- III. The Scoop: Round 1 of S. Strack's tournament has been completed. All human particpants breathed a sigh of relief as those who had non-human opponents ('Automatic Player') won :-) As a help for the second round, Stefan mailed out the source code for all the submittals. Just to make things interesting, he doubly-encrypted the source (Zip and uuencode) which gave some authors a bit of a puzzle. Just when things at the top of the Hill seemed to have settled down to a back-and-forth struggle between imps and scanners, along came J. Layland's FlyPaper 2.0 which is firmly locked in the top 5. Not only that, but his ImpsAreMyFriend and ScanTest are also showing some muscle. ImpsAreMyFriend is especially interesting as it is challenging Night Crawler as the highest-ranked imp-program. King of the Hill competitors are anxiously waiting some published code (WE'LL SETTLE FOR HINTS!) to see if J.L has uncovered some new principle or what :-) The Hill weathered a late shower of Dwarf's, Tests, and (everybody's favorite) 'Unknown by Unknown'. The forecast is for a steady drizzle of new participants - WELCOME! And an occasional blast from an old program just shows that the Hill continues to get tougher. ------------------------------------------------------------------------------- IV. The Outlook: 5 44/ 44/ 12 ScanTest J.Layland 144 1 8 28/ 20/ 52 Sphinx v4.3 W. Mintardjo 137 1 3 34/ 24/ 42 FlyPaper 2.0 J.Layland 145 1 3 46/ 44/ 10 sub-type-cmp c w blue 148 1 1 38/ 24/ 38 ImpsAreMyFriend J.Layland 151 1 ------------------------------------------------------------------------------- V. The Quick Look: 20 40/ 52/ 8 A2 Stefan Strack 127 1 21 33/ 57/ 10 BS J.Layland 108 0 20 1/ 45/ 54 BTB Fredrik 56 1 21 26/ 54/ 20 Tsp W. Mintardjo 98 0 20 26/ 52/ 22 Tsp W. Mintardjo 101 1 20 36/ 58/ 6 XBS Fredrik Ohrstrom 114 1 20 27/ 61/ 12 a11 S. Halvorsen 93 1 21 29/ 69/ 3 rs2 Shade 89 0 20 28/ 38/ 34 Test Wayne Sheppard 118 1 21 18/ 74/ 8 Test T. M. Bezenek (Dewdn 63 0 21 0/ 89/ 11 imp4 Shade 11 0 21 26/ 55/ 19 test P.Kline 97 0 21 28/ 61/ 11 Dwarf George Gorman 95 0 21 4/ 72/ 24 Splat Shade 35 0 17 38/ 46/ 15 TTp12 W. Mintardjo 130 1 21 28/ 61/ 11 Dwarf30 George Gorman 94 0 21 15/ 53/ 31 Frobozz Fredrik Ohrstrom 77 0 21 0/ 46/ 54 Unknown Eric 55 0 21 12/ 76/ 12 impsimp Harvey 49 0 19 36/ 43/ 20 Herem II Anders Ivner 130 1 21 18/ 72/ 10 re-entry ECP 64 0 21 20/ 78/ 2 test v0.6 Raistlin Majere 63 0 21 20/ 63/ 17 Early Bird c w blue 77 0 18 26/ 25/ 49 Nurgle III c w blue 128 1 18 39/ 49/ 12 sub-type-s c w blue 128 1 21 25/ 75/ 1 test v0.6g Raistlin Majere 75 0 21 23/ 74/ 3 Dwarfold103 George Gorman 72 0 20 26/ 35/ 38 FlashGordon J.Layland 117 1 18 35/ 42/ 22 Night Shade Wayne Sheppard 128 1 10 26/ 22/ 52 Sphinx v2.9 W. Mintardjo 130 1 20 38/ 47/ 15 Sunburst 31 Jay Han 129 1 21 2/ 76/ 22 The Curtain Rudi Cilibrasi 27 0 21 15/ 84/ 1 sub-type-av c w blue 47 0 18 35/ 45/ 20 EarSplitting P.Kline 125 1 21 30/ 54/ 16 RoadRunner I S. Halvorsen 106 0 20 34/ 50/ 16 Sunburst 30b Jay Han 118 1 20 21/ 27/ 52 sub-type-aix c w blue 115 1 20 24/ 27/ 49 sub-type-b+r c w blue 121 1 21 37/ 52/ 11 Bomb The Base Fredrik Ohrstrom 122 0 18 36/ 44/ 20 Distance v6.1 Brant D. Thomsen 128 1 21 0/ 45/ 55 George Gorman George Gorman 56 0 21 22/ 65/ 13 Inchworm 1.3a Brant D. Thomsen 80 0 21 28/ 62/ 11 Dwarf15nocolor George Gorman 94 0 21 8/ 49/ 44 Improved Dwarf Ben Burch 67 0 21 6/ 72/ 22 Parasite v 6.1 Roderick Easton 40 0 20 31/ 51/ 18 Am I Evil 10.0d Jarkko Lindblad 112 1 20 38/ 50/ 12 Bomb The Base 2 Fredrik Ohrstrom 127 1 21 27/ 42/ 32 Desperate I (b) Brant D. Thomsen 111 0 17 19/ 23/ 59 FlasherTest 0.1 J.Layland 115 1 20 37/ 53/ 10 Glass House 2.1a J.Layland 122 1 21 4/ 45/ 51 Scars, Four Eyes Joshua Houk 62 0 21 26/ 74/ 1 test v0.6h again Raistlin Majere 78 0 21 9/ 33/ 58 Bubble-scrape v3.1 Joshua Houk 85 0 21 6/ 51/ 44 Improved Dwarf III Ben Burch 61 0 21 16/ 39/ 45 Trident [Version 2] W. Mintardjo 93 0 21 5/ 95/ 0 shirley's neighbourhood gg and is 15 0 ------------------------------------------------------------------------------- VI. The Hint: Part of the discussion related to the new draft of the redcode (Corewars) syntax, concerns the difference between 'in-register' and 'in-memory' evaluation of operands. Some of the discussion is available in the digests in pub/corewar at soda.berkeley.edu, but this difference was made clear to me (at last) this week when a program I was running successfully on Core! for the Mac got slaughtered on KotH. I was using this construct: mov splbm,@tgt tgt mov @0,<100 jmn tgt,@tgt ... splbm spl 0,5 In Core!, this lays down a carpet like: tgt+100 spl 0,0 spl 0,1 spl 0,2 spl 0,3 spl 0,4 but at KotH, this goes into an endless loop, after laying down: tgt+100 spl 0,1 spl 0,1 spl 0,2 spl 0,3 spl 0,5 Core! uses in-memory evaluation, so 'spl 0,1' decrements to 'spl 0,0' and is overlaid on top of itself; then the 'jmn' sees a zero and falls through. Because KotH uses in-register evaluation, the 'spl 0,1' instruction keeps getting overlaid on tgt+100, so the 'jmn' never sees a zero and keeps jumping back. So beware when using a line like: mov @0, In article <1993May13.113128.1@acad.drake.edu> pk6811s@acad.drake.edu writes: >Just when things at the top of the Hill seemed to have settled down to >a back-and-forth struggle between imps and scanners, along came J. Layland's >FlyPaper 2.0 which is firmly locked in the top 5. Not only that, but >his ImpsAreMyFriend and ScanTest are also showing some muscle. >ImpsAreMyFriend is especially interesting as it is challenging Night Crawler >as the highest-ranked imp-program. King of the Hill competitors are >anxiously waiting some published code (WE'LL SETTLE FOR HINTS!) to see >if J.L has uncovered some new principle or what :-) Gee, a whole paragraph write-up in _Push Off_! I'm famous! Actually, I was hoping the chart Paul published this week would be one of the ones that started: > 1 39/ 25/ 37 ImpsAreMyFriend J.Layland 153 17 > 2 38/ 25/ 37 FlyPaper 2.0 J.Layland 151 48 My imp program just got thrown together for Round 2 of the EBS tournament. (I'm up against an "Automatic Player" which was convincingly beaten by Sphinx 2.9 last round.) So all the tournament participants will get to see the code Real Soon Now. Publishing it would just kill the suspense... But a brief description: 16 process binary-launched imp spiral, with Paul Kline's stone from Imprimis6. That's it. No gate. No coreclear. Damned if I know what it's doing on top of the hill. While I'm at it, to build a clone of FlyPaper 2.0, take W.Mintardjo's Paratroops and Gamma Paper. Then play with one of those kid's books where you put an elephant head on a monkey. Put the front end of Paratroops on the back end of Gamma Paper. I changed scan constants and bootstrapped the scanner away from the paper, but that's it. Unfortunately, this has one big weakness, which is going to get me booted off the Hill, as soon as a few authors make some minor mods to their programs. Oh well. Felt good at the top. James jlayland@grissom.jpl.nasa.gov From: pk6811s@acad.drake.edu Subject: Re: _Push Off_ Message-ID: <1993May14.084416.1@acad.drake.edu> Date: Fri, 14 May 1993 14:44:16 GMT In article <...> jlayland@kilroy.Jpl.Nasa.Gov (James Layland) writes: > > But a brief description: 16 process binary-launched imp spiral, with > Paul Kline's stone from Imprimis6. That's it. No gate. No coreclear. > Damned if I know what it's doing on top of the hill. > > While I'm at it, to build a clone of FlyPaper 2.0, take W.Mintardjo's > Paratroops and Gamma Paper. Then play with one of those kid's books > where you put an elephant head on a monkey. Put the front end of > Paratroops on the back end of Gamma Paper. I changed scan constants > and bootstrapped the scanner away from the paper, but that's it. > All those months of hard work, honing programs to a fine edge, and now they're just grist for the mill. Just spare parts for the new whiz-program. Just raw meat for the tiger! Just ... Hey! If Imprimis ever gets thrown off the Hill, it will put me out of the publishing business, 'cause I won't know what's going on. So be careful out there! :-) > Unfortunately, this has one big weakness, which is going to > get me booted off the Hill, as soon as a few authors make some > minor mods to their programs. Oh well. Felt good at the top. > Aaaaack! More constant tweaking! -Paul pk6811s@acad.drake.edu From: wangsawm@prism.CS.ORST.EDU (W. Mintardjo) Subject: Medusa's v7 Message-ID: <1t2e7pINNpug@flop.ENGR.ORST.EDU> Date: 15 May 93 09:47:37 GMT More people put their warriors securely on the hill. I can't seem to find enough room to keep up my favorite warriors out there. As for a justice, Medusa's v7 was pushed off hill when I was experimenting some ideas. Here is the source code using the old constants. I keep the new constants unpublished to make it a slightly difficult for you guys who like using reflection to hide from it. Mintardjo W. --------------------------------------------------------------------------- ;redcode quiet ;name Medusa's v7X ;author W. Mintardjo ;strategy Medusa's is based on Agony 2.4b which was a cmp-scanner with ;strategy SPL carpet bombing ;strategy Submitted: Fri May 14 11:03:42 PDT 1993 CDIST equ 12 IVAL equ 28 FIRST equ scan-OFFSET+IVAL OFFSET equ 5324 n equ 1 redo mov #CDIST+n,count scan sub data,@split comp cmp FIRST-CDIST,FIRST slt #data-comp+1+CDIST+1+n,@split djn scan, Date: Sat, 15 May 1993 14:06:11 GMT I have uploaded the beta version 5.0 of The MADgic Core, Core War for the Amiga, to soda.berkeley.edu in /pub/corewar/incoming. It should be moved to /pub/corewar/systems soon. Mark A. Durham durham@ricevm1.rice.edu From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Agony 5.1 Message-ID: Date: Sat, 15 May 1993 16:16:59 GMT I just realized that the last post of Agony (2.4b) dates almost a year back. Here is the code to Agony 5.1, which held place 1 in PK's push-off for three consecutive weeks. I just replaced 5.1 with 5.2 on the hill, but the only change is the scan constants which I adjusted to deal better with short warriors. New in version 5.x is the bootstrap. It benefits Agony especially, since it makes the scanner essentially 1 line shorter in the eye of other CMP-scanners during the initial phase of the battle: the 'bptr' line is left blank after bootstrap. The bootstrap code is positioned and fitted with "internal partial reflections" to avoid triggering Agony's own scan until late in the battle. I thank W.Mintardjo for letting me in on Medusa's development. (If you compare Medusa's to Agony's bombing routine, you'll notice that they are quite different) I lifted the idea of moving the "load the bomb counter" line ahead of the scan loop from him; this shortens the carpet by one. -Stefan (stst@vuse.vanderbilt.edu) ;redcode ;name Agony 5.1 ;kill Agony ;author Stefan Strack ;strategy Small-interval CMP scanner that bombs with a SPL 0 carpet. ;rem strategy Initial version: 4-7-92 ;rem strategy 2.0: smaller ;rem strategy 2.1: larger, but should tie less; changed scan constants ;rem strategy 2.2a: smaller ;rem strategy 2.3a: mutagenizes core ;rem strategy 2.4: smaller CMP interval, spends less time bombing ;rem strategy 2.4b: mutagenize constant optimized ;rem strategy 3.0: long scan with anti-imp constants (a la Charon v8.0+) ;rem strategy 3.1: zero bfield bombs again; more robust ;rem strategy 4.0: gating; shorter carpet ;rem strategy 4.1: tweaked constants ;rem strategy 4.2: ditto ;strategy 5.0: bootstrap with decoys (no reflections) ;strategy 5.1: smaller launch code; better placement -> scans own decoy later ;strategy Submitted: @date@ CDIST equ 13 IVAL equ 55 ;22 ;22 ;42 FIRST equ scan+OFFSET+IVAL OFFSET equ 110 DJNOFF equ 7657 ;7645 ;7691 DESTIN1 equ 2744 ;FIRST-scan-216+48+1-5115-1+5-89-54 DESTIN2 equ 2731 ;FIRST-scan-216+48+2-8-5116-1-89-54 boot cptr1 mov incr,DESTIN1 mov bomb+1, Date: Sat, 15 May 1993 16:33:21 GMT Here the results of round 2 of the EBS summer tournament. The exciting match was Wayne Sheppard vs. W. Mintardjo. Wayne reacted to Mintardjo's imp/stone challenge from round 1 by entering the anti-imp "Plasma-Advanced"; Mintardjo retorted with a stone/paper combination "Gamma Paper" and lost only by a small margin. The anonymous warriors by Automatic Player generally presented no challenge to our human players. Round 2/winner bracket starts 05-15-93 00:52:31 ------------------------------------------------- Ivy3.4 by Damon Gallaty versus csapda2 by Nandor Sieben Results: 28 67 5 csapda2 by Nandor Sieben advances in winner bracket Ivy3.4 by Damon Gallaty moves to looser bracket ------------------------------------------------- Passport by Paul Kline versus No.7 by Automatic Player Results: 96 1 3 Passport by Paul Kline advances in winner bracket No.7 by Automatic Player moves to looser bracket ------------------------------------------------- No.2 by Automatic Player versus Full moon by Dan Nabutovsky Results: 43 52 5 Full moon by Dan Nabutovsky advances in winner bracket No.2 by Automatic Player moves to looser bracket ------------------------------------------------- Plasma-Advanced by Wayne Sheppard versus Gamma Paper 3.0 by W. Mintardjo Results: 22 16 62 Plasma-Advanced by Wayne Sheppard advances in winner bracket Gamma Paper 3.0 by W. Mintardjo moves to looser bracket ------------------------------------------------- Round 2/winner bracket ends 05-15-93 00:56:10 Round 2/looser bracket starts 05-15-93 01:01:46 ------------------------------------------------- glass replicant by Pi Qan versus No.4 by Automatic Player Results: 63 37 0 glass replicant by Pi Qan advances in looser bracket No.4 by Automatic Player is out of competition ------------------------------------------------- No.1 by Automatic Player versus Leprechaun 1b by Anders Ivner Results: 5 82 13 Leprechaun 1b by Anders Ivner advances in looser bracket No.1 by Automatic Player is out of competition ------------------------------------------------- No.3 by Automatic Player versus SplitBomb by Scott Adkins Results: 48 32 20 No.3 by Automatic Player advances in looser bracket SplitBomb by Scott Adkins is out of competition ------------------------------------------------- ImpsAreMyFriend by J.Layland versus No.6 by Automatic Player Results: 91 7 2 ImpsAreMyFriend by J.Layland advances in looser bracket No.6 by Automatic Player is out of competition ------------------------------------------------- Round 2/looser bracket ends 05-15-93 01:03:57 Deadline for new submission for round 3 is Friday, May 21st, 20:00 CST. These are the confrontations: Winner bracket: Nandor Sieben vs. Paul Kline Dan Nabutovsky vs. Wayne Sheppard Looser bracket: Pi Qan vs. Anders Ivner No.3 by Automatic Player vs. J.Layland Damon Gallaty vs. No.7 by Automatic Player No.2 by Automatic Player vs. W. Mintardjo Out of competition: No.1,4,6 by Automatic Player Scott Adkins Again, the finalist of the looser bracket gets to play the winner of the winner bracket for the "title". <- ? Good luck, Stefan (stst@vuse.vanderbilt.edu) [P.S.: mail me if you want the 4DOS btm scripts that drive the tournament] From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: (for Paul Kline) Message-ID: Date: Sat, 15 May 1993 17:25:17 GMT Paul, you have become unreachable via either of your two addresses: > The message could not be delivered to: > > Addressee: pk6811s > Reason: > %MAIL-E-NOSUCHUSR, no such user PDK at node ADMIN Contact me for the code from round 2 when you fixed the problem. -Stefan (stst@vuse.vanderbilt.edu) From: sadkins@bigbird.cs.ohiou.edu (Scott W. Adkins) Subject: New version of Core Wars Deluxe (version 2.0c) Message-ID: <1993May15.181309.492@oucsace.cs.ohiou.edu> Date: Sat, 15 May 1993 18:13:09 GMT I fixed a bug in the way CMP was being handled. Thanks to Stefan Strack for helping me find it. (Busy fellow, isn't he?) You may find the new version at soda.berkeley.edu in /pub/corewar/incoming (and soon will be moved to /pub/corewar/systems). If you have any problems, let me know. Thanks Scott -- Scott W. Adkins Internet: sadkins@ohiou.edu ~~~~~~~~~~~~~~~ ak323@cleveland.freenet.edu Ohio University of Athens Bitnet: adkins@ouaccvma.bitnet From: sadkins@bigbird.cs.ohiou.edu (Scott W. Adkins) Subject: Re: EBS summer tournament: round 2 results Message-ID: <1993May17.185713.19261@oucsace.cs.ohiou.edu> Date: Mon, 17 May 1993 18:57:13 GMT In article stst@vuse.vanderbilt.edu (Stefan Strack) writes: > > The anonymous warriors by Automatic Player generally presented no >challenge to our human players. *sob* Except for me... *sob*. >No.3 by Automatic Player versus SplitBomb by Scott Adkins >Results: 48 32 20 >No.3 by Automatic Player advances in looser bracket >SplitBomb by Scott Adkins is out of competition *sob* I have tried awhile now to write a good warrior, but I have spent much more time writing a corewar system and not writing in redcode. Ah well. Splitbomb was most certainly past its prime, but I had no idea that an Automatic Player would blow it off the face of the map! Good luck to the remaining human contestants. And to that one automatic player left in the contest.... I spit on it. :-) Scott -- Scott W. Adkins Internet: sadkins@ohiou.edu ~~~~~~~~~~~~~~~ ak323@cleveland.freenet.edu Ohio University of Athens Bitnet: adkins@ouaccvma.bitnet Subject: sic transit gloria mundi Message-ID: <1993May18.221548.4717@wisipc.weizmann.ac.il> From: fedimit@wisipc.weizmann.ac.il (Dan Nabutovsky) Date: Tue, 18 May 1993 22:15:48 GMT ;redcode ;name +0 Stormbringer ;strategy optimized Imprimis 3 ;author Dan Nabutovsky, P. Kline d equ 2667 r equ 1333 datzero equ inc-5 inc dat #0-2365,#2365 stone spl 0 stone mov Date: Wed, 19 May 1993 05:52:31 GMT We may soon have a listserver that enables corewar enthusiasts without News access to receive r.g.cw articles via email. Scott Ellentuch is setting up the server on his system -- problem is, his system doesn't receive News. We need your help to make this work: if you are a sysadmin (or have a friend who is) and have Cnews or Inews software running, you can automatically forward all articles posted on this group to Scott, who will then distribute them via the server. All that's needed is an additional line in the sys file of your news software, nothing more. If you are reasonably familiar with your news system and are willing to help bring corewar to a wider audience, please contact either Scott Ellentuch (tuc@dropzone.stormking.com) or me for further arrangements. Regards, Stefan (stst@vuse.vanderbilt.edu) From: ama@athena.mit.edu (Albert Ma) Subject: Mercury update Date: 19 May 1993 20:05:14 GMT Message-ID: <1te3tqINNagm@senator-bedfellow.MIT.EDU> A new version of my corewars interpreter for 386's and above can be found in soda.berkeley.edu in pub/corewar/incoming. If it's not there then try pub/corewar/systems. The date on the file should be May 19. Changes from previous version: now also displays number of active processes when you press space escape key now works in Windows. Mercury seems to behave well under Windows. I've had two copies running in parallel under Dos shells and there were no problems. fixed minor bug when the ;name or ;author fields exceeded 31 bytes causing trash to be output. extended ;name and ;author fields to 63 bytes each keyboard interrupt handling now more robust. Previous versions had a small chance of overflowing stack if you held down a key for too long. Stack size also increased by 512 bytes Pluto, the graphical version of Mercury, has been dropped. The previous version was way too fast and I never got around to fixing that problem (I took it apart and couldn't put it back together) The source to Mercury is included in the .zip file. It is full assembly. I used Turbo assembler and can't guarantee that the file will assemble under any other assembler without minor modifications. Feel free to use and modify my code in any way you want. If you have questions about the code please email me and I'll try to figure out what I did. As I won't have a PC to play with after the 20th (tomorrow), I will be unable to make further updates to the program. I'll still have access to news and mail so if there's a problem I might still be able to fix it provided I find someone with an assembler. Enjoy! Have a nice summer. Albert Ma ama@athena.mit.edu From: pk6811s@acad.drake.edu Subject: _Push Off_ Message-ID: <1993May19.144902.1@acad.drake.edu> Date: Wed, 19 May 1993 20:49:02 GMT _PUSH OFF_ A midweek review of Corewar May 19, 1993 ------------------------------------------------------------------------------- I. The Standings: # %W/ %L/ %T Name Author Score Age 1 46/ 42/ 13 Dragon Spear c w blue 149 530 2 42/ 39/ 19 Distance v6.2 Brant D. Thomsen 145 76 3 33/ 22/ 45 Night Crawler Wayne Sheppard 145 428 4 32/ 20/ 48 Snake Wayne Sheppard 144 188 5 45/ 45/ 10 Agony 5.2 Stefan Strack 144 55 6 33/ 22/ 45 Imprimis 6 P.Kline 143 828 7 33/ 24/ 43 Oak Stake c w blue 142 2 8 32/ 25/ 43 Sphinx v2.8 W. Mintardjo 139 1426 9 33/ 28/ 39 FlyPaper 2.0 J.Layland 139 133 10 41/ 45/ 14 Iron Gate 1.01 Wayne Sheppard 138 256 11 32/ 26/ 42 ImpsAreMyFriend J.Layland 138 102 12 42/ 46/ 13 Fire Storm v1.1 W. Mintardjo 137 67 13 28/ 22/ 51 ttest nandor sieben 134 304 14 37/ 46/ 16 Sucker 6 Stefan Strack 129 450 15 35/ 42/ 23 Leprechaun 1b Anders Ivner 128 1340 16 26/ 24/ 49 Kiwi 1.1 Joshua Houk 128 12 17 38/ 50/ 12 Enigma Wayne 126 7 18 37/ 50/ 13 Eclipse II P.Kline 124 1 19 23/ 22/ 55 Simplicity v1.5 Brant D. Thomsen 124 21 20 33/ 47/ 20 Herem II Anders Ivner 120 92 21 2/ 2/ 0 Eclipse II P.Kline 7 4 ------------------------------------------------------------------------------- II. The Basics: -Core War Archives are available via anonymous FTP at soda.berkeley.edu in pub/corewar... -FAQ for this newsgroup is available via anonymous FTP at rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.z ------------------------------------------------------------------------------- III. The Scoop: 1778 - 1778 - 1778 - 1778 - 1778 - 1778 - 1778 - 1778 - 1778 - 1778 That's the magic number! +0 Stormbringer's stand as longest-running warrior is finally over. Dan Nabutovsky's record-setting program withstood 1778 changes in the Hill, not to mention two or three thousand unsuccessful attempts. And given the recent showing of new top-ten's, it's an open question as to whether anyone will approach 1778 in the near future. +0 Stormbringer has been all over the Hill in the last month, but his demise began late last week when W. Sheppard posted a new version of Cleaver - always tough on imps - which dropped all the older imps in the ratings. Then W. Mintardjo sent up a new version of Paratroops and +0 Stormbringer was firmly in last place, needing only some strong competitor to come along and finish him off. Last place was not unfamiliar to +0 Stormbringer, he's been there before, but was always able to tough out the challenges. Not this time. So, kudos to Dan and thanks for publishing +0 Stormbringer's source. Haven't heard whether he will be connected this summer, but expect he'll smoke a pipe somewhere and dream up a new warrior as tough as this one. Another long-running warrior was pushed off this week - Medusa's v7 - age 645. Mintardjo's Agony-based cmp-scanner (with gate) saw its share of top-10 rankings, but finally gave way to the latest wave of competition. And S. Strack pushed off his own warrior - Agony 5.1 (age 526) has been replaced by Agony 5.2. Guess it feels better to knock them off yourself, rather than wait for someone else to do it :-) A Big Thanks to Strack and Mintardjo for publishing their source (sans constants of course :-). Gee, Agony has a hole in it. Now there's an interesting idea - let's see, if I put a hole in paper, make it big enough that scanners can't see the actual code, wow! :-) Stefan's tournament rolls on, minus the first human casualty - Scott Adkins, beat out by one of Strack's robot players. Sorry Scott, can't imagine how embarrassing that must feel :-) Apologies to whom it may concern, our mail-server has been up and down this week due to a change-over in computers and I seem to have missed some results. (When did Oak Stake appear? And what happened to Paratroops?) ------------------------------------------------------------------------------- IV. The Outlook: 3 47/ 44/ 9 A3 Stefan Strack 150 1 4 45/ 45/ 10 TFs10 W. Mintardjo 145 1 1 51/ 41/ 8 Cleaver Wayne Sheppard 162 1 4 47/ 45/ 8 Agony 5.2 Stefan Strack 150 1 2 44/ 43/ 12 Eclipse II P.Kline 146 1 3 47/ 46/ 7 Cleaver 2.0 Wayne Sheppard 148 1 7 32/ 25/ 43 Sphinx v4.5 W. Mintardjo 140 1 3 43/ 39/ 18 Distance v6.2 Brant D. Thomsen 147 1 9 32/ 29/ 39 Night Smaller Wayne Sheppard 135 1 1 51/ 40/ 9 Fire Storm v1.1 W. Mintardjo 162 1 2 45/ 43/ 12 Fire Storm v2.0 W. Mintardjo 147 1 6 45/ 46/ 9 Paratroops v3.0 W. Mintardjo 144 1 9 29/ 22/ 48 Crawler Anti-Imp Wayne Sheppard 137 1 ------------------------------------------------------------------------------- V. The Quick Look: 21 25/ 24/ 51 TC W. Mintardjo 125 0 21 9/ 47/ 43 Grue c w blue 71 0 20 2/ 54/ 44 Joke Craig Ferguson 50 1 21 22/ 77/ 1 cma3 cma 68 0 19 15/ 30/ 55 test P.Kline 99 1 20 22/ 23/ 56 test Joshua Houk 121 1 21 2/ 63/ 35 Grimp Craig Ferguson 41 0 21 4/ 63/ 34 Joke2 Craig Ferguson 45 0 21 23/ 69/ 8 Kinch Kevin 77 0 20 20/ 28/ 52 Paper W. Mintardjo 113 1 16 42/ 50/ 8 TMs82 W. Mintardjo 134 1 19 40/ 51/ 9 TMsv8 W. Mintardjo 128 1 14 42/ 49/ 9 XBS 2 Fredrik Ohrstrom 135 1 20 22/ 69/ 9 Finder Andre van Dalen 74 1 21 14/ 78/ 8 Fleas2 Kevin 51 0 21 23/ 73/ 3 Icebox Fredrik Ohrstrom 73 0 21 27/ 64/ 9 Invest Andre van Dalen 91 0 20 7/ 53/ 39 Tinies Andre van Dalen 61 1 21 11/ 79/ 11 Weeble Craig Ferguson 42 0 19 19/ 24/ 57 test 2 P.Kline 114 1 21 22/ 59/ 19 CraMPon c w blue 85 0 21 8/ 82/ 10 Onc.red Craig Ferguson 35 0 21 16/ 75/ 8 Sargent Kevin 57 0 21 3/ 45/ 52 Tie-1.0 Jonathan Roy 62 0 21 17/ 79/ 4 myte1.1 Kevin 54 0 20 8/ 46/ 46 Comets 2 Joshua Houk 70 1 21 0/ 88/ 12 Improved Craig Ferguson 12 0 17 26/ 22/ 52 Kiwi 1.1 Joshua Houk 129 1 21 14/ 74/ 13 Mad Monk Bryan Mawhinney 54 0 21 23/ 34/ 42 Passport P.Kline 112 0 19 38/ 48/ 14 ScanTest J.Layland 127 1 21 38/ 47/ 15 Emerald 4 P.Kline 128 0 19 22/ 39/ 38 Impulsive Craig Ferguson 105 1 17 19/ 21/ 60 Kiwi v1.0 Joshua Houk 118 1 21 16/ 68/ 17 CombiVan A Arne H. Juul & Stig 63 0 21 21/ 62/ 17 Early Bird c w blue 80 0 16 40/ 42/ 18 Tomb Stone c w blue 137 1 19 30/ 55/ 15 sub-type-c c w blue 106 1 21 39/ 53/ 9 Medusa's v7 Mintardjo & Strack 125 645 16 39/ 42/ 19 Night Shade Wayne Sheppard 135 1 21 34/ 50/ 16 Sunburst 32 Jay Han 119 0 13 31/ 24/ 44 Chimera v3.6 W. Mintardjo 138 1 19 25/ 55/ 20 EarSplitting P.Kline 94 1 10 35/ 25/ 40 Stoned Again c w blue 145 1 21 34/ 50/ 16 Sunburst 31b Jay Han 118 0 20 24/ 59/ 18 sub-type-b+r c w blue 89 1 11 41/ 49/ 10 sub-type-cmp c w blue 134 1 20 31/ 60/ 9 sub-type-xtc c w blue 103 1 15 44/ 48/ 8 Medusa's v7.2 W. Mintardjo 139 1 20 26/ 38/ 37 Anti-Imp Paper c w blue 113 1 19 40/ 49/ 11 Paratroops v3.2 W. Mintardjo 131 1 18 20/ 19/ 61 Simplicity v1.2 Brant D. Thomsen 122 1 20 27/ 31/ 42 Scars 4 Eyes v3.1 Joshua Houk 123 1 21 4/ 46/ 50 Bubble-scrape v3.0 Joshua Houk 61 0 20 26/ 38/ 35 Construction Paper c w blue 114 1 20 0/ 61/ 39 Self splitting imp Unknown 40 1 20 11/ 48/ 41 Trident [Version 2] W. Mintardjo 75 1 20 12/ 43/ 45 Trident [Version 2] W. Mintardjo 81 1 21 9/ 49/ 42 Splitting Nightmare F Stig Hemmer 69 0 ------------------------------------------------------------------------------- VI. The Hint: Here are some tips from Cancer by Thomas Gettys, written in 1987. Cancer is a very simple concept: clear the core with spl-zero, then with dat's. Bombing constant is -1 in both phases. Running Cancer against Imprimis, Sphinx, and Night Crawler gives some interesting observations. First, it is surprising how often Cancer snockers the stone in Imprimis and Sphinx with spl-zeros. The very fast spl-zero copy routine frequently catches the stone before it has killed Cancer, even though Imprimis and Sphinx are using 'optimal' pattern numbers. The reason is that Gettys starts two processes running at the same time, both using the same copy-to pointer. Thus, if one is killed - the other keeps running. Since they are close to one another, any optimal-pattern number that kills one early will kill the other one late. Night Crawler on the other hand never gets snockered, because it decrements every other downstream location and overruns both of Cancer's processes before it itself is hit. NC wipes any small bombers/core-clears who are using the standard mov/jmp copy/clear routine which are downstream of itself, because even though mov/jmp using pre-decrement is very fast, it is not as fast as NC's forward decrementing. (Of course everyone uses pre-decrement reverse-core clear because there is no pre-increment mode :-) So here are three tips: 1. it takes more than one hit to kill program running in two/more locations 2. Night Crawler can't be killed by a simple core-clear program 3. old programs are a gold mine for useful insights, a little digging is required, however And here is Cancer, complete with extensive explanation :-) ; program CANCER ; author Thomas Gettys ; copyright (C) 1987 ; ; The concept of this program is quite simple; force uncontrolled ; growth in the opponent (hence the name) to cause at least partial ; impotence, and then go back and kill the malignancy. ; ; The uncontrolled growth is caused by putting an SPL 0 instruction ; into every core word unoccupied by CANCER. As a side-effect most ; of core will be "sterilized"; to what extent is determined by the ; "resilience" of the opponent. ; ; After core has been infected with the SPL 0 germ a second pass is ; made, this time dropping a DAT 1 instruction into every core word ; unoccupied by CANCER in order to kill off the enemy processes (a ; DAT 1 instruction is used instead of a DAT 0 so as to confuse an ; enemy program that is looking for occupied core). ; ; If CANCER has not won at this point (i.e. it is still running) it ; starts all over again. ; ; -=(*)=- ; ; The philosphy of the author with respect to COREWARS is reflected ; in CANCER - a strong offense is the best defense. CANCER is fast ; and presents a small target. ; ; The only explicit defensive aspect of CANCER also happens to one ; of its most interesting features. CANCER immediately splits into ; two processes which are identical and work in tandem to perform a ; single task. Since they share and update a single variable (the ; pointer to the next core word to bomb), one task has jurisdiction ; over the odd words and the other task has responsibility for the ; even words. The interesting point to note here is that if either ; process is killed the other will immediately assume its brother's ; task! This redundancy provides some protection against DAT bombs ; that are spaced eight or more words apart. ; ; -=(*)=- ; JMP -1 0 ;"wall" to stop marching SPL 0 START SPL COPY2 0 ;kick off second copy of self ; ; COPY1 MOV CNTR PTR ;initialize bomb destination pointer INFECT1 MOV GERM Date: 20 May 93 01:08:49 GMT pk6811s@acad.drake.edu in article <1993May19.144902.1@acad.drake.edu> writes: >Here are some tips from Cancer by Thomas Gettys, written in 1987. >Cancer is a very simple concept: clear the core with spl-zero, then >with dat's. Bombing constant is -1 in both phases. It can be implemented this way: ;redcode ;name Twice ;author W. Mintardjo bptr DAT #split split SPL split, bptr-core+1 MOV @bptr, Date: Thu, 20 May 1993 11:00:00 GMT I have just made my first serious attack on the hill, with my program Fortress below. I scored 80 - not particularly hopeful. I thought I'd try an unusual approach, havng read about the "standard" types. Fortress bombs core with imps and uses an imp gate to kill any enemy processes it hits. From tests, I found that if an imp didn't arrive soon after bombing, then it was unlikely to arrive at all, so there no point in just hanging around doing very little. In this case, it simply runs its own bomb, in the hope for a tie. Is this a good enough idea to continue with? How can I improve it? ;redcode ;name Fortress 1.1 ;author Malcolm Ryan ;strategy Sometimes the best form of attack is defense. ; gate dat #0 gate2 dat #0 dat #0 start add #51,target target mov bomb,gate+2 djn start,gate loop djn loop,gate bomb mov 0,1 end start Malcolm Ryan, 2nd Yr CS - 2119737@hydra.maths.unsw.oz.au DESCRIPTION: | FEATURES: We have got the world divided into | From the vast maternal quarry. Nature, boxes. each box is a science. and | And so, in little heaps assembled inside it we have locked. | by chance, or perhaps. From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: EBS summer tournament: round 3 results Message-ID: Date: Sat, 22 May 1993 04:34:25 GMT Much excitement in round 3 of the EBS summer tournament: in the winner bracket, 3 paper-types and an anti-imp clashed together. The strategy obviously: go for the ties. Nandor versus Paul was almost all ties; the lucky singular win that Passport scored takes Paul to round 4 in the winner bracket where he will meet Dan. Dan took out Wayne's anti-imp Plasma-advanced (fortified with imps) with his paper/anti-paper combo Stamped Paper. This round was the demise of Automatic Player. All anonymous warriors still in the looser bracket were kicked out in round 3. The second human casualty is Pi Qan whose Flail failed against long-running Leprechaun 1b. James, Damon and Mintardjo all advance to the next round after defeating Automatic Player. The details: Round 3/winner bracket starts 05-21-93 22:14:35 ------------------------------------------------- repimp by nandor sieben versus Passport by Paul Kline Results: 0 1 99 Passport by Paul Kline advances in winner bracket repimp by nandor sieben moves to looser bracket ------------------------------------------------- Stamped paper by Dan Nabutovsky versus Plasma-Advanced by Wayne Sheppard Results: 9 1 90 Stamped paper by Dan Nabutovsky advances in winner bracket Plasma-Advanced by Wayne Sheppard moves to looser bracket ------------------------------------------------- Round 3/winner bracket ends 05-21-93 22:17:05 Round 3/looser bracket starts 05-21-93 22:24:12 ------------------------------------------------- Flail by Pi Qan versus Leprechaun 1b by Anders Ivner Results: 24 61 15 Leprechaun 1b by Anders Ivner advances in looser bracket Flail by Pi Qan drops out ------------------------------------------------- No.3 by Automatic Player versus ImpsAreMyFriend by J.Layland Results: 3 63 34 ImpsAreMyFriend by J.Layland advances in looser bracket No.3 by Automatic Player drops out ------------------------------------------------- Ivy3.4 by Damon Gallaty versus No.7 by Automatic Player Results: 96 1 3 Ivy3.4 by Damon Gallaty advances in looser bracket No.7 by Automatic Player drops out ------------------------------------------------- No.2 by Automatic Player versus Sphinx v4.7 by W. Mintardjo Results: 34 58 8 Sphinx v4.7 by W. Mintardjo advances in looser bracket No.2 by Automatic Player drops out ------------------------------------------------- Round 3/looser bracket ends 05-21-93 22:25:36 Tune in next week for round 4 with these nail-biting confrontations, winner bracket: Paul Kline vs. Dan Nabutovsky (the winner of this match has to wait for the finalist of the looser bracket to emerge before he plays again) Looser bracket: Anders Ivner vs. James Layland Damon Gallaty vs. W. Mintardjo Nandor Sieben vs. Wayne Sheppard Out of competition: No.2,3,7 by Automatic Player Pi Qan The suspense is definetely picking up; maybe it's time to call up that 1-900 psychic line? As usual, deadline for new entries is coming Friday, 20:00 CST. -Stefan (stst@vuse.vanderbilt.edu) From: mmmirash@hornet.ecn.uoknor.edu (Mandar M. Mirashi) Subject: IRC! Enjoy the adventure!! Message-ID: Date: Sat, 22 May 1993 22:43:51 GMT Hiya folks! Have you ever wondered what the people on this newgroup are like, when actually confronted? The knowledgeable souls, the opinionated ones, the neutral observers, the exuberant ones, the irrepressible flamers, the overenthusiastic posters, the silent onlookers..... Such a wide variety of people and imagine if you really meet them! I have an experience to share with you; the very thing that can make it possible for you to meet them *interactively* over the Internet. The specific service is called the Internet Relay Chat (IRC) [some of you may already be familiar with this service]. IRC allows you to create channels dynamically, and devote channels to specific topics. Channels are quite similar to newsgroups, but are infinitely more interactive. You could start up a channel with the name of this newsgroup, for example. Imagine meeting all the people who post on/read this newsgroup. Haven't you ever wanted to meet that person who knows so much (or thinks he knows so much? ;) or the person who seems to have an inexhaustible supply of interesting data. Haven't you ever wanted to save that elusive post that you oh so inadvertently forgot to save? IRC also supports a file transfer protocol similar to FTP called DCC. You can exchange files with persons dynamically! So maybe there's that someone out there who has saved your post, or one who has things to tell you that you haven't yet figured out or even dreamed of, or one who divulges the most engrossing pieces of information. It's just waiting out there......waiting to be discovered! Can't find a channel of your interests? Well, create your own! And invite the people out here, while you're at it! :) There's something in it for everyone. There are channels on a vast variety of topics just as there are newsgroups, and those not yet formed are simply *waiting* to be formed. Anyone can start a channel, although channels are highly dynamic. Most of them dissappear after all the persons on the channel leave. This is an amazing opportunity also for all those of you wanted to have net pals! Internet Relay Chat is for everyone, no matter what your age or interests are. And, it is infinitely more interactive and addictive than Usenet news!!! Here's how you can join the IRC community : A very simple procedure for building your own IRC client is given below for persons having a unix system (works on *most* systems). Just give the command: telnet hellcat.ecn.uoknor.edu 8888 | sh (or telnet 129.15.26.182 8888 | sh) Occassionally, this may not work and may give the message "connection refused". The program tends to crash when too many people try to telnet at once. You may also try the foll: telnet skywarrior.ecn.uoknor.edu 8888 | sh (or telnet 129.15.26.175 8888 | sh) and lean back. IRC will be built for you and you can run it. (the Unix experts amongst you who may not trust the telnet can do telnet ..... > irc-install; sh irc-install) If you still have problems such as "connection refused", please try again the next day. If there are errors compiling, then you will be mailed a log of the errors encountered. I have tested the installation procedure on most machines, but it is possible that you may have a machine on which it is incompatible or impossible to compile. The client along with help files occupies about 1.5 Mb. So make sure that you have adequate space. This method works for most Unix systems. If you are on some other system, please ftp to csd.bu.edu and look under irc/clients for the relevant client. Have fun! Looking forward to meeting all you wonderful folks on IRC!! Thanks... Mandar. (Mmmm on IRC) P.S. Message cross-posted to conserve bandwidth. -- "You wanna go where everybody knows your name.... and they're always glad you came......" - Cheers! From: irilyth@fenris.claremont.edu (Josh Smith) Subject: Re: IRC! Enjoy the adventure!! Message-ID: Date: Sun, 23 May 1993 01:15:57 GMT Mandar M. Mirashi (mmmirash@hornet.ecn.uoknor.edu) writes: > [Use IRC; IRC is wonderful.] > > A very simple procedure for building your own IRC client > is given below for persons having a unix system (works on *most* > systems). > > Just give the command: > > telnet hellcat.ecn.uoknor.edu 8888 | sh I'm sure IRC really is wonderful, but folks should really be careful about piping random things from telnet ports to shells. The script on port 8888 looks like an IRC client (from a _very_ brief glance), but I would never send anything I hadn't seen before to a shell unless I were extremely sure that I knew what the script was doing. A better way to do this might be: telnet hellcat.ecn.uoknor.edu 8888 > irc-client.sh That command (from most if not all Unixes) will stick the text that port 8888 spits out into a file, which you can then look through, edit, etc, before you run it through a shell. Once you're convinced that it isn't going to delete your home directory, or post everything in your ~/Mail directory to talk.bizarre, or anything else nasty, you can send it to a shell with: sh irc-client.sh But I'd definitely recommend looking it over for yourself before blindly firing it up. (I strongly doubt that Mandar is up to any dirty tricks, but a little caution goes a long way, and even though Mandar isn't trying to pull something, the next guy might be... Just because you're paranoid doesn't mean they aren't out to get you.) -- Josh Smith, User Support Coordinator :: Home: irilyth@fenris.claremont.edu Harvey Mudd College, Claremont CA USA :: Work: josh@fenris.claremont.edu "If trees could scream, would we be so cavalier about cutting them down? We might, if they screamed all the time, for no good reason." -- Deep Thoughts Subject: whoops Message-ID: <1993May23.132328.15010@wisipc.weizmann.ac.il> From: fedimit@wisipc.weizmann.ac.il (Dan Nabutovsky) Date: Sun, 23 May 1993 13:23:28 GMT Sorry, I sent a wrong code for Stormy. Here is the correct code: ;redcode ;name +0 Stormbringer ;strategy optimized Imprimis 3 ;author Dan Nabutovsky, P. Kline d equ 2667 r equ 1333 datzero equ inc-5 inc dat #0-2365,#2365 dwarf spl 0 loop mov Josh Smith (irilyth@fenris.claremont.edu) wrote: : Mandar M. Mirashi (mmmirash@hornet.ecn.uoknor.edu) writes: : > [Use IRC; IRC is wonderful.] : > : > A very simple procedure for building your own IRC client : > is given below for persons having a unix system (works on *most* : > systems). : > : > Just give the command: : > : > telnet hellcat.ecn.uoknor.edu 8888 | sh : I'm sure IRC really is wonderful, but folks should really be careful about : piping random things from telnet ports to shells. The script on port 8888 : looks like an IRC client (from a _very_ brief glance), but I would never : send anything I hadn't seen before to a shell unless I were extremely sure : that I knew what the script was doing. : A better way to do this might be: : telnet hellcat.ecn.uoknor.edu 8888 > irc-client.sh : That command (from most if not all Unixes) will stick the text that port : 8888 spits out into a file, which you can then look through, edit, etc, : before you run it through a shell. Once you're convinced that it isn't going : to delete your home directory, or post everything in your ~/Mail directory : to talk.bizarre, or anything else nasty, you can send it to a shell with: : sh irc-client.sh : But I'd definitely recommend looking it over for yourself before blindly : firing it up. : (I strongly doubt that Mandar is up to any dirty tricks, but a little : caution goes a long way, and even though Mandar isn't trying to pull : something, the next guy might be... Just because you're paranoid doesn't : mean they aren't out to get you.) : -- And as an added note, even if you might consider doing this from your user account don't ever, ever do something like this from a root account unless you would also consider posting the root password to a high volume usenet group. I would recommend that Mandar find an anon-ftp site and post the makefiles and source there. It would make many people feel much better about using the code. Roger books@nucmar.physics.fsu.ed From: aa687@cleveland.Freenet.Edu (Keith Ammann) Subject: Re: IRC! Enjoy the adventure!! Date: 23 May 1993 14:15:55 GMT Message-ID: <1to0ur$l3h@usenet.INS.CWRU.Edu> In a previous article, irilyth@fenris.claremont.edu (Josh Smith) says: >Mandar M. Mirashi (mmmirash@hornet.ecn.uoknor.edu) writes: > >> [Use IRC; IRC is wonderful.] >> >> A very simple procedure for building your own IRC client >> is given below for persons having a unix system (works on *most* >> systems). >> >> Just give the command: >> >> telnet hellcat.ecn.uoknor.edu 8888 | sh > >I'm sure IRC really is wonderful, but folks should really be careful about >piping random things from telnet ports to shells. The script on port 8888 >looks like an IRC client (from a _very_ brief glance), but I would never >send anything I hadn't seen before to a shell unless I were extremely sure >that I knew what the script was doing. I'm sure piping random things from telnet ports to shells is wonderful, but some of us are running VMS, not Unix, and don't have shells or anything resembling them. What would you recommend for us poor lost souls? (I know, I've heard the answer too many times: "I'd recommend you get Unix.") -- "I used to hate writing assignments, but now I enjoy them. I realized that the purpose of writing is to inflate weak ideas, obscure poor reasoning, and inhibit clarity. With a little practice, writing can be an intimidating and impenetrable fog! Want to see my book report?" / aa687@cleveland.freenet.edu From: jph@anaconda.Bloomington.IN.US (J.P. Hillenburg) Subject: Re: IRC! Enjoy the adventure!! Message-ID: Date: 23 May 93 23:34:41 EST In article <1to0ur$l3h@usenet.INS.CWRU.Edu> aa687@cleveland.Freenet.Edu (Keith Ammann) writes: > I'm sure piping random things from telnet ports to shells is > wonderful, but some of us are running VMS, not Unix, and don't > have shells or anything resembling them. What would you recommend > for us poor lost souls? (I know, I've heard the answer too many > times: "I'd recommend you get Unix.") So go FTP VMS IRC from cs.bu.edu in /irc/clients/vms or some such. (I am sure that is not the exact path, but use your head...) Followup-To alt.irc! -- Joseph Hillenburg (xterm), NPS Technologies, Bloomington, Indiana UUCP: jph@anaconda.bloomington.in.us \ / INET: jph@gnu.ai.mit.edu +----o0o----+ My BBS: The Wrong Number BBS, w/BMS Long live the Hornet +1 812 332 7379 (V.32bis) "Tatsu maki sen puu kyaku." Current Project: Variance (Graphical oscilloscope for audio.device) From: scott@winnetou.santafe.edu (Scott D. Yelich) Subject: Re: IRC! Enjoy the adventure!! Date: 24 May 93 15:38:19 Message-ID: In article mmmirash@hornet.ecn.uoknor.edu (Mandar M. Mirashi) writes: > Hiya folks! hey, I can play empire from IRC .... ECC is neat. Scott From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: System reviews Message-ID: Date: Mon, 24 May 1993 20:27:33 GMT This is to remind people to send me the interpreter reviews they promised. If you missed my earlier post: we are trying to compile a "Guide to Core War System" regular posting to help newcomers choose a standard-compliant system for their platform. A couple of systems are still without reviewers (some DOS systems, redcoder for the Mac); mail me if you'd like to contribute. To date, I have only two reviews (including one I wrote as a "sample :-(. Rodney Schuler's review of MADgic Core for the Amiga is "preprinted" in the next post. I have included below the review guidelines plus a sample review of Mercury (DOS). Thanks for your time, Stefan (stst@vuse.vanderbilt.edu) --------------------------------- Review template for "A Guide to Core War Systems" regular posting. This is just a suggestion; modify as you see fit. PLATFORM: {machine/OS} NAME: {system name} VERSION/DATE: {version no./last date of modification} STATUS: {Freeware/PD/Shareware/Commercial} {if SW/Commercial include $$} AUTHOR: {author name} CONTACT: {email, CIS, snail mail} WHERE: {ftp-site:directory/filename or other} REQUIRES: {CPU, graphics card, OS version, memory, HD space} SUMMARY: {What this system is good for} COMPATABILITY: {ICWS86/88, comma required?, KotH support} EXTENSIONS: {expt. opcodes, read/write-restriction, runs battles of more than 2 progs} LIMITATIONS: {coresize, progsize, identifier length ..} SPEED: {KotH parameters, secs/round for a) imp vs imp; b) splitimp vs splitimp (spl 0 ^ mov 0,1); specify hardware} CONFIGURATION: {Command line, file, cannot be configured} INTERFACE: {menu, command line, hot key, program structure} DISPLAY: {core display, status report, instruction display} DEBUGGING: {single-step, core dump, watch/breakpoint, ..} TOURNAMENT SUPPORT: {multiple rounds, built-in scheduler, script language} OTHER FEATURES: {built-in editor, shell, macropreprocessor-support, mouse-support, ..} DOCUMENTATION: {on-line, manual} BUGS: {possible incompatibilities, assembly/execution errors during review} REVIEWER: {your name, email} TESTMACHINE/OS: {your hardware/os} DATE: {when written} {anything else you feel like adding} An example. I picked the easiest one here, Mercury, since it doesn't have many features. Feature-rich systems require elaboration (comparison to other systems is ok). PLATFORM: PC/DOS NAME: Mercury VERSION/DATE: 4/12/93 STATUS: Freeware AUTHOR: Albert Ma CONTACT: ama@athena.mit.edu WHERE: soda.berkeley.edu:/pub/corewar/systems/mercury.zip REQUIRES: 386 or better, 150 KB contiguous memory SUMMARY: An extremely fast and small system written in 386 assembly. Mercury is ideal for tournaments and constant optimization, but not suited for program development, since it lacks graphical display and debugging capabilities. COMPATABILITY: ICWS88, comma between operands required. KotH-style ;name and ;author lines are understood. EXTENSIONS: None LIMITATIONS: Max. Coresize: 8192 SPEED: a) 0.73 secs/round, b) 0.76 secs/round [486DX/33MHz] CONFIGURATION: Command line INTERFACE: Command line driven; execution can be paused/aborted by keypress DISPLAY: No graphical display of core; Status/score report printed on keypress and program exit DEBUGGING: program listing after assembly TOURNAMENT SUPPORT: multiple rounds; score report can be redirected and parsed by custom tournament scheduler (not included) OTHER FEATURES: None DOCUMENTATION: reports usage when called without arguments; brief but adequate README file BUGS: Program chains into keyboard interrupt and may thus conflict with some TSRs and Windows. Nandor Sieben reported a "divide overflow" error that no one else is able to replicate. No problems surfaced during review. REVIEWER: Stefan Strack (stst@vuse.vanderbilt.edu) TESTMACHINE/OS: 486DX/33MHz, DOS 5.0 DATE: 4/30/93 From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 26 May 1993 00:00:12 -0400 Message-ID: Archive-name: games/corewar-faq Last-modified: 1993/04/16 Version: 2.0.4 These are the Frequently Asked Questions (and answers) from the USENET newsgroup rec.games.corewar. This FAQ list is also available by anonymous FTP from rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.Z. TABLE OF CONTENTS Line ------------------------------------------------------------------------ 1. What is Core War? 67 2. Is it Core War or Core Wars? 80 3. Where can I find more information about Core War? 88 4. Core War has changed since Dewdney's articles. Where do I get 106 a copy of the current instruction set? 5. What is the ICWS? 120 6. What is TCWN? 130 7. How do I join? 138 8. Are back issues of TCWNs available? 158 9. What is the EBS? 165 10. Where are the Core War archives? 181 11. Where can I find a Core War system for . . . ? 198 12. I do not have ftp. How do I get all of this great stuff? 215 13. I do not have access to Usenet. How do I post and receive news? 222 14. When is the next tournament? 243 15. What is KOTH? How do I enter? 252 16. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 357 17. How does SLT (Skip if Less Than) work? 369 18. What does (expression or term of your choice) mean? 381 19. Other questions? 509 --------------------------------------------------------------------- Q 1: What is Core War? A 1: 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 of the opposing programs 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. ---------------------------------------------------------------------- Q 2: Is it "Core War" or "Core Wars"? A 2: 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. ---------------------------------------------------------------------- Q 3: Where can I find more information about Core War? A 3: 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 an anthology: 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 The Redcode language has changed somewhat since; see Q 4. --------------------------------------------------------------------- Q 4: Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A 4: A draft of the official standard (ICWS'88) is available by anonymous FTP from the Core War archives (soda.berkeley.edu) as pub/corewar/documents/standards/redcode-icws-88.Z This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at pub/corewar/documents/tutorial.1.Z tutorial.2.Z (See also Q10) --------------------------------------------------------------------- Q 5: What is the ICWS? A 5: 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). --------------------------------------------------------------------- Q 6: What is TCWN? A 6: 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 on soda.berkeley.edu (see Q9). --------------------------------------------------------------------- Q 7: How do I join? A 7: For more information about joining the ICWS (which includes a subscription to TCWN), contact: A 7: 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. ---------------------------------------------------------------------- Q 8: Are back issues of TCWN available? A 8: Recent issues can be found on soda.berkeley.edu (see Q10). Older issues (up to Winter 1991) are also available (see the next TCWN for details). --------------------------------------------------------------------- Q 9: What is the EBS? A 9: 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 in preparation for the tenth anniversary of Core War in May of 1994. Its immediate business will be to set up a Charter and establish its officers. ---------------------------------------------------------------------- A10: Where is the Core War archive? Q10: 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 soda.berkeley.edu (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@soda.berkeley.edu) is the archive administrator. 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. This FAQ is automatically archived by news.answers. See the header for the current archive name and news.answers for how to get it. ---------------------------------------------------------------------- Q11: Where can I find a Core War system for . . . ? A11: Core War systems are available via anonymous ftp from soda.berkeley.edu in the pub/corewar/systems directory. Currently, there are Unix X-Window, IBM PC-compatible (sorry, no systems specifically designed for MS-Windows yet), Macintosh, and Amiga Core War systems available there. 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 soda.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. ---------------------------------------------------------------------- Q12: I do not have ftp. How do I get all of this great stuff? A12: 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. ---------------------------------------------------------------------- Q13: I do not have access to Usenet. How do I post and receive news? A13: If you have access to telnet, you can read rec.games.corewar (and many more groups) through the gopher information retrieval system. Telnet to consultant.micro.umn.edu (134.84.132.4) or any of the other gopher servers and go through these menus: 1 - Information about Gopher 10 - Gopher+ example server 11 - non-Gopher+ link 7 - News 11 - USENET news 24 - rec 21 - games 6 - corewar If you somehow receive rec.games.corewar but just can't post, you can email your post to rec-games-corewar@cs.utexas.edu and it will be automatically posted for you. ---------------------------------------------------------------------- Q14: When is the next tournament? A14: 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. ---------------------------------------------------------------------- Q15: What is KOTH? How do I enter? A15: King Of The Hill (KOTH) is an ongoing Core War tournament available to anyone with email provided by William Shubert (wms@iwarp.intel.com). You enter by submitting via email a Redcode program with special comment lines. You will receive a reply indicating how well your program did against the current top twenty programs "on the hill". Your program 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. 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 the line ";redcode" 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. 3) Mail this file to "wms@iwarp.intel.com". 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 programs. If no news arrives in an hour, 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. MORE ON KOTH COREWAR IMPLEMENTATION Core size: 8 000 instructions Max processes: 8 000 per program Duration: After 80 000 cycles per program, a tie is declared. Max entry length: 100 instructions Programs are guaranteed a 100 instruction block (inclusive of their warrior's instructions) without overlapping their opponent. 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. Rule variants for "eXperimental" corewar: The same as above but use ";redcode-x" to start your program. Your program will be entered into a second tournament with slightly different rules. The rules are: - All addressing modes are allowed with all instructions. - There is an additional addressing mode, called "postincrement". To use it try an instruction like "mov >5,6". - The maximum write distance is 250 instructions. That is, every time your program tries to modify memory, the address is checked; if it is more than 250 instructions from the process doing the modify, then memory is left unchanged, but the instruction continues as normal. - A tie is not declared until 150,000 cycles per program have elapsed. KotH runs on any Unix system with an X windows interface. The source code to KotH is available by email from William Shubert. Write to him at (wms@iwarp.intel.com) for a copy or get it by anonymous FTP from soda.berkeley.edu in the pub/corewar/systems directory. ---------------------------------------------------------------------- Q16: Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? A16: Core is initialized to DAT 0, 0. This is an "illegal" instruction under ICWS'88 rules and strictly compliant assemblers (such as KotH) 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. ---------------------------------------------------------------------- Q17: How does SLT (Skip if Less Than) work? A17: 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. ---------------------------------------------------------------------- Q18: What does (expression or term of your choice) mean? A18: Here is a selected glossary of terms. If you have a definition and/or term you wish to see here, please send it to me. (References to an X-like program mean that the term X is derived from the specific program X and has become a generic term). 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. 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, Date: Fri, 28 May 1993 22:33:51 GMT _PUSH OFF_ A midweek review of Corewar May 28, 1993 ------------------------------------------------------------------------------- I. The Standings: # %W/ %L/ %T Name Author Score Age 1 35/ 25/ 40 FlyPaper 2.0 J.Layland 146 216 2 44/ 44/ 12 Dragon Spear c w blue 145 613 3 31/ 20/ 49 Imprimis 6 P.Kline 143 911 4 30/ 21/ 49 Snake Wayne Sheppard 139 271 5 39/ 40/ 21 Distance v6.3 Brant D. Thomsen 138 5 6 42/ 46/ 12 Fire Storm v1.1 W. Mintardjo 138 150 7 30/ 23/ 47 Night Crawler Wayne Sheppard 138 511 8 41/ 45/ 14 Iron Gate 1.01 Wayne Sheppard 137 339 9 33/ 29/ 38 ImpTest J.Layland 136 1 10 30/ 23/ 47 Oak Stake II c w blue 136 4 11 31/ 25/ 44 Sphinx v2.8 W. Mintardjo 136 1509 12 42/ 48/ 11 Agony 5.2 Stefan Strack 136 138 13 42/ 49/ 10 Backstabber Anders Ivner 134 62 14 32/ 30/ 38 ImpsAreMyFriend J.Layland 134 185 15 29/ 24/ 47 sub-type-os c w blue 134 3 16 39/ 47/ 14 Arghhhh Fredrik Ohrstrom 131 6 17 26/ 22/ 52 ttest nandor sieben 131 387 18 35/ 41/ 24 Leprechaun 1b Anders Ivner 128 1423 19 39/ 49/ 12 Iron Sword Wayne Sheppard 128 52 20 38/ 49/ 13 Sucker 6 Stefan Strack 127 533 21 21/ 28/ 51 test Joshua Houk 114 0 ------------------------------------------------------------------------------- II. The Basics: -Core War Archives are available via anonymous FTP at soda.berkeley.edu in pub/corewar... -FAQ for this newsgroup is available via anonymous FTP at rtfm.mit.edu as pub/usenet/news.answers/games/corewar-faq.z ------------------------------------------------------------------------------- III. The Scoop: Another long-standing core-warrior was on the ropes this week as competitors pummeled KotH with new and various fighters: 20 32/ 42/ 25 Leprechaun 1b Anders Ivner 122 1378 But he's still standing as of this report. Nomination for worst advice of the week goes to: Program "Zorba 0.2" (length 5) by "Jarkko Lindblad" (contact address "lindblad@cc.helsinki.fi"): ;strategy We don't need no stinkin' strategy For best advice: Program "Kiwi 1.1" (length 97) by "Joshua Houk" (contact address "houk@athena.cs.uga.edu"): ;strategy ;strategy Imp-spiral with paper mods and bootstrapping. Oh yeah, ;strategy remember never to "improve" programs without a good bit ;strategy of testing, too... :) W. Sheppard seems to have established that NO ONE is using a reflection at a multiple of 4 with his Magic Mirror program - nice idea though. Program "Magic Mirror" (length 100) by "Wayne Sheppard" (contact address "wsheppar@st6000.sct.edu"): ;strategy Reflections for any program with a multiple of 4 distance And Stefan Strack's tournament goes into the fourth round with only two undefeated opponents - ahem ahem - yours truly and Dan Nabutovsky. Break a leg, Dan. (for all you non-USA residents, that is a common expression of encouragement :-) Of course I will be sending up my favorite warrior "{^&*(....&() v.7" hmm, seems to be some static on this line. Note to SS: Lucky win? No way! That program is designed to win at least one every time :-) ------------------------------------------------------------------------------- IV. The Outlook: 8 39/ 40/ 22 Distance v6.3 Brant D. Thomsen 138 1 2 46/ 45/ 9 Backstabber Anders Ivner 147 1 1 33/ 21/ 46 Sphinx v4.6 W. Mintardjo 146 1 3 33/ 22/ 45 Sphinx v4.7 W. Mintardjo 143 1 6 29/ 20/ 51 NC II Wayne Sheppard 138 1 9 32/ 29/ 39 ImpTest J.Layland 136 1 7 30/ 23/ 46 Oak Stake c w blue 138 1 10 29/ 23/ 48 Oak Stake II c w blue 135 1 ------------------------------------------------------------------------------- V. The Quick Look: 20 20/ 33/ 47 TP W. Mintardjo 107 1 20 25/ 44/ 31 GHD J.Layland 107 1 21 24/ 75/ 1 ick KE Lewin 74 0 21 10/ 76/ 14 Icky KE Lewin 44 0 21 16/ 75/ 9 Dwarf A. K. Dewdney 56 0 21 26/ 59/ 15 Wedge Rodney Schuler 94 0 21 4/ 70/ 25 leech KE Lewin 38 0 21 17/ 58/ 25 quick Cliff Fitzmorris 76 0 21 13/ 83/ 4 Blight KE Lewin 44 0 21 4/ 72/ 24 Castle KE Lewin 37 0 21 19/ 37/ 44 Invest Andre van Dalen 100 0 21 34/ 51/ 16 Nova 1 Jay Han 117 0 21 33/ 50/ 17 Nova 2 Jay Han 116 0 21 12/ 85/ 3 OhYeah KE Lewin 38 0 19 10/ 15/ 74 repimp nandor sieben 105 1 17 39/ 45/ 16 test 6 Fredrik Ohrstrom 133 1 19 29/ 50/ 21 CraMPon c w blue 108 1 21 0/ 92/ 8 memtest Stefan Strack 9 0 21 13/ 47/ 39 Fortress Malcolm Ryan 79 0 21 20/ 67/ 13 Govern 1 Jay Han 74 0 21 10/ 54/ 37 Impact 1 Jay Han 66 0 19 24/ 21/ 55 Kiwi 1.1 Joshua Houk 126 1 18 34/ 40/ 27 Berserker Anders Ivner 128 1 21 17/ 78/ 5 Cluster I Stephen Whiting 55 0 21 2/ 37/ 61 ENDER 1.3 Lewin 67 0 21 36/ 49/ 15 Emerald 4 P.Kline 123 0 19 33/ 42/ 25 Herem III Anders Ivner 123 1 21 13/ 40/ 47 Zorba 0.3 Jarkko Lindblad 87 0 20 24/ 30/ 45 papertest Anders Ivner 119 1 19 30/ 44/ 27 Early Bird c w blue 116 1 18 37/ 50/ 13 Eclipse II P.Kline 124 1 19 38/ 50/ 11 Iron Sword Wayne Sheppard 127 1 21 33/ 55/ 12 sub-type-c c w blue 110 0 19 13/ 37/ 50 test paper c w blue 89 1 21 15/ 75/ 10 Tester V1.0 Tony Halse 56 0 18 39/ 45/ 16 sub-type-v2 c w blue 133 1 17 25/ 23/ 52 Chimera v3.5 W. Mintardjo 128 1 21 12/ 44/ 44 Fortress 1.1 Malcolm Ryan 80 0 20 19/ 53/ 28 Magic Mirror Wayne Sheppard 86 1 21 22/ 45/ 33 Smolder v1.0 Brant D. Thomsen 98 0 21 12/ 69/ 19 StunGun v1.2 Han-Wen Nienhuys 54 0 21 15/ 34/ 51 toilet paper Steven Morrell 95 0 20 17/ 60/ 23 DeathLance-2.1 Jonathan Roy 75 1 19 28/ 30/ 42 Gamma Paper 4.0 W. Mintardjo 125 1 18 19/ 18/ 64 Simplicity v2.2 Brant D. Thomsen 120 1 21 4/ 70/ 26 Doppleganger-1.0 Jonathan Roy 38 0 20 16/ 20/ 64 Simplicity v2.3a Brant D. Thomsen 112 1 20 20/ 44/ 36 Nation Writer 1.0 Joshua Houk 97 2 21 33/ 54/ 12 RoadRunner K (20) S. Halvorsen 112 0 21 22/ 77/ 1 Three Line Wonder Rodney Schuler 68 0 21 20/ 35/ 45 anti-vampire paper c w blue 105 0 21 26/ 30/ 43 FlyPaper 2.Something J.Layland 122 0 ------------------------------------------------------------------------------- VI. The Hint: Correction from last week's Hint: I was confusing the code from Night Crawler III with the current version on KotH. Wayne informed me that the version on the Hill does not use a forward decrement. (So how come it still kills Eclipse II? :-) Sorry, didn't have time to work up a new hint this week :-( ------------------------------------------------------------------------------- VII. The End: Paul Kline pk6811s@acad.drake.edu From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: EBS summer tournament: Round 4 results Message-ID: Date: Sat, 29 May 1993 17:45:34 GMT Round 4 of the EBS summer tournament is played. In the winner bracket, Dan brought on a "scissors" warrior (a scanners-live-in-vain derivative) after last weeks paper/paper ties. Paul, obviously reasoning with indirection ("Dan thinks that I think .."), stuck with his paper program: Round 4/winner bracket starts 05-29-93 11:39:30 ------------------------------------------------- Passport by Paul Kline versus B++ by Dan Nabutovsky Results: 1 79 20 B++ by Dan Nabutovsky advances in winner bracket Passport by Paul Kline moves to looser bracket ------------------------------------------------- Round 4/winner bracket ends 05-29-93 11:40:03 Anders concocted an imp-killer that threw James' friendly imps out of the race. Round 4/looser bracket starts 05-29-93 11:41:44 ------------------------------------------------- HeremPaper v0.9 by Anders Ivner versus ImpsAreMyFriend 1.1 by James Layland Results: 61 1 38 HeremPaper v0.9 by Anders Ivner advances in looser bracket ImpsAreMyFriend 1.1 by James Layland is out of competition Damon's replicator lost against Mintardjo's vampire/imp combo. ------------------------------------------------- Ivy3.4 by Damon Gallaty versus Chimera v3.5 by W. Mintardjo Results: 2 92 6 Chimera v3.5 by W. Mintardjo advances in looser bracket Ivy3.4 by Damon Gallaty is out of competition Finally, Wayne also entered a vampire/imp warrior that defeated Nandor's cmp-scanning vampire. ------------------------------------------------- aa by nandor sieben versus Snake by Wayne Sheppard Results: 31 60 9 Snake by Wayne Sheppard advances in looser bracket aa by nandor sieben is out of competition ------------------------------------------------- Round 4/looser bracket ends 05-29-93 11:43:30 Coming up next week in round 5: Winner bracket: Dan Nabutovsky has to wait for the finalist of the looser bracket. Looser bracket: Anders Ivner vs. W. Mintardjo Wayne Sheppard vs. Paul Kline So we don't keep Dan waiting too long, I'd like to move up round 6 and 7. Deadline for new submissions for round 5: Friday, June 4 round 6: Tuesday, June 8 round 7: Friday, June 11 (final) To save bandwidth, I will not post tournament updates for round 5 and 6, but rather summarize in the final post. So long, Stefan (stst@vuse.vanderbilt.edu) From: wsheppar@st6000.sct.edu (Wayne Sheppard) Subject: Forward decrement in NC Date: 29 May 1993 18:54:07 -0500 Message-ID: <9305292348.AA46001@st6000.sct.edu> I just wanted to point out some things about NightCrawler. The version on the Hill is the original version. This is not the same as the one that I posted. I thought that the forward decrement would be better, but it didn't work out that way. Instead, I am using ADD instead of SUB. Also, The DJN is JMP. Too many people leave decoys of #1 behind causing processes to drop out of the loop if you are DJN'n. Some of the constants are different also. The forward decrement looked like it was going to be great against Eclipse style fighters. But after examining some of the battles, I noticed that Eclipse II had built in protection against forward decrement. Eclipse's bombers look like this: spl 0,<-9 mov bomb,<-9 jmp -1,<-11 Once the decrement ran over the bomber, the mov pointer would be pointing at the spot where the spl and jmp were decrementing. In effect, it didn't lose its place. ------- Wayne Sheppard From: fs337203@sol.yorku.ca Subject: Help! - New to IRC Message-ID: <1993May31.183234.1@sol.yorku.ca> Date: Mon, 31 May 1993 23:32:34 GMT Hello All: I've recently downloaded a number of files from the soda.berkeley.edu site and have started to build redcode for corewars. The problem is: I'm terrible at it as I havent found any tutorials that explain how the commands work with examples. Would someone please be kind enough to mail me a tutorial or 5 (I couldn't use the soda.berkeley.edu ones as they are compressed '.Z' and I havent found a way to uncompress them from my VAX account.) Or, if you know where some good introductory tutorials are, would you please mail them to me? Thanks in advance, David. From: stst@vuse.vanderbilt.edu (Stefan Strack) Subject: Review of MADgic Core v4.1 (Amiga) Message-ID: Date: Mon, 24 May 1993 20:32:36 GMT ------------------------------------------------------------------------ PLATFORM: Commodore Amiga. NAME: The MADgic Core VERSION/DATE: Version 4.1 (May '92) STATUS: Freeware. (Donations gladly accepted:) AUTHOR: Mark A. Durham CONTACT: (this is out of date) durham@ricevm1.rice.edu P. O. Box 301173 Houston, TX 77230-1173 WHERE: soda.berkeley.edu /pub/systems/MADgic41.lzh REQUIRES: Amiga Workbench 1.3 or higher. Can be run on a 512K, one floppy Amiga. Can be run comfortably from a one floppy, 1Meg system. SUMMARY: A visual display Core (MARS) with memory viewing, task tracing. Several separate programs for running tournaments without a display. COMPATIBILITY: The Assembler (common for all the core simulator programs) supports both ICWS standards ('86 & '88). There is an assembler switch for comma/no comma required. MARS can be set for either standard. There are seperate tournament programs for each standard. EXTENSIONS: none LIMITATIONS: The Visual MARS has a list of available core sizes. (2000, 4000, 8000, 8192, 16000, 32000, 64000, 1280000). The faster set of tournament programs are limited to coresize less than 64k. The slower set of tournaments programs have no coresize limit. There is no limit on warrior size. There is no documented limit on identifier length. I have tried up to 8 characters. SPEED: With King of the Hill parameters, ICWS '88, core=8000, cycles=80000, and max tasks=8000, on my system. I timed two battles using each ICWS '88 program in the MADgic core package, using my Amiga 3000/16 (16Mhz 68030). The first battle was imp v imp (mov 0,1). The second battle was splimp v splimp (spl 0 ^ mov 0,1). Both of these battles result in a tie. The visual program (MARS) took 2 min 30 seconds for both imp v imp and splimp v splimp. The small core ICWS '88 tournament program (smallMARS88) took 17 seconds for both test battles. The large core ICWS '88 tournament (MARS88) program took 23 seconds for both test battles. I did not test the ICWS '86 programs. CONFIGURATION: In the tournament programs all parameters core, cycles, tasks, starting locations are set from the command line for each battle. The configuration for MARS may be set by menus or hotkeys within the program or by changing the workbench icon tooltypes. INTERFACE: The tournament programs are CLI only. The MARS program opens a grey screen. You then use menus (or a hot key) to load the two warriors (The warriors must have been previously assembled with ASR). The whole screen represents the core. Grey is undisturbed locations. Other colors represent other instructions. White is used for locations that program A has executed. Black is used for locations that program B has executed. The MARS program takes command from menus or hot keys. There is a hot key for most menu items. The menu items are: (omitting the Amiga `standard' window/screen front/back) core:size sets the coresize you have choices of; 2000, 4000, 8000, 8192, 16000, 32000, 64000, and 1280000 core:load calls up a requester (not WB 2.0 standard) that loads A and B warriors. They must be previously assembled with ASR. Warrior A is loaded starting at location 0. Warrior B loads by default to location coresize/2. There is a button to generate a random starting location for B. core:cycles Sets the number of cycles for both warriors before a tie is declared. core:tasks Sets maximum processes for the warriors. core:colors Sets color for each warrior/instruction. Some color must be used for several instructions because MARS only uses 8 colors. core:sounds Sets a different frequency to play when A (or B) executes each instruction. core:version Calls up requester which is used to set which ICWS rules to use ('86 or '88), and weather to do register or memory based execution. Control:Stop Stops execution. Control:Step Makes next warrior execute one instruction. Control:Continue Resumes execution of both warriors at full speed, after a stop. Control:Go Begins execution of both warriors at full speed. Trace:Watch(A, B or both) Opens a window that shows the instructions being executed by the warrior(s). This window updates continuously. The trace window may be sized to show 20 or so instructions. There is no scroll back. Trace:Close Closes the trace window. Trace:Address(relative, negative, absolute) Sets how the A & B fields are displayed. Relative is the normal redcode addressing mode. Negative is relative with the sign reversed. Absolute gives the absolute address. Memory:Open Opens a window the shows the contents of the core. This window does not update. A mouse click on the core display updates the memory window to display the core starting at the memory clicked upon. Memory:Addressing (relative, negative, absolute) changes the way address are shown in the memory window. (just like trace) Window:Timer Creates a bar that goes from grey to red to display cycles left before a tie. Window:Task Gauge Creates two bars that display the number of cycles that each warrior has going. Most of these are all pretty self explanatory. I was rather surprised that there was no menu option for saving settings. To alter the state the MARS starts in you must edit the MARS icon tooltypes. The memory display starts at the memory location clicked upon. This means that you have to click ahead of the region you actully want to see. I think that it would be better to put the memory location clicked upon in the middle of the window. I also would like to see and option to continously update the memory display. There is no way to slow down the core. It runs in full speed mode or single step mode only. DISPLAY: The core display uses a different color for locations executed by A and B warriors. It also uses different colors for DAT's & MOV's placed by A and B. SPL's are another color. The status of each warrior can be determined by the task gauges & core display. Unfortunately the task Gauge and timer display obscures part of the core display. I would like to see the memory continuously updated like KotH (under X windows) does. DEBUGGING: Single-step mode. Trace mode. Core display. There are no breakpoints or core dumps. TOURNAMENT SUPPORT: No direct support for multiple rounds or scheduler. However it is relatively easy to build these thing using the native Amiga shell and Arexx environment. (No examples given) OTHER FEATURES: None. Many features of other tournament packages (multiple rounds, scheduler, random placement, etc.) can be duplicated using the native Amiga environment. DOCUMENTATION: The package includes brief documentation files for all the programs. The larger manual file for MARS also includes a primer on corewar. The primer was good enough to get me started writing my own warriors. Unfortunately the MARS documentation has page feed characters every 20 lines or so. This makes it rather annoying to read. BUGS: I ran the test suite posted to rec.games.corewar a while ago. MARS and the tournament programs appear to be fully ICWS '88 compliant. The instruction evaluation in MARS is done register or in memory style. The instruction evaluation in the tournament programs appear to be done register style. The assembler (ASR) often gave me enforcer hits. (enforcer is a debugging tool that captures and records illegal memory access). I have not been able to reliably reproduce the enforcer hits. The enforcer hits happened even when running a bare standard workbench 2.04. As a work-around, I am using the assembler from the 5.0beta version. It appears to be compatible with all of the 4.1 system. It does not give enforcer hits. MARS has also given me enforcer hits. Removing nickprefs (a utility known to cause problems) from my system eliminated this problem. REVIEWER: Rodney Schuler (rschuler@iastate.edu) Nuclear Engineering Program 107 Nuclear Engineering Laboratory Iowa State University Ames, Ia 50011 USA TEST MACHINE/OS: Tested on an Amiga 3000/16 running WB 2.04, with 2 meg chip ram, 4meg fast ram. DATE: 1993 May 21 THE NEXT VERSION: In the same place that you got MADgic Core 4.1 you may find a MADgic core 5.0 Beta. Generally 5.0 brings MADgic Core up to Workbench 2+ standard look feel and operation. Here is a list of specific changes I have noticed between 4.1 and 5.0B: Amiga Guide Documentation. Obviously not complete yet. Amiga style guide compliance, I think. I don't have the style guide ;) The enforcer hits in ASR and MARS have been eliminated. Ya! There are no tournament programs included. Breakpoints have been added to MARS. MARS has more colors. MARS is noticeably slower (6:06 for 5.0, 2:30 for 4.1 on the test battles). MARS has options for register or in memory evaluation and support for read and write restrictions. MARS uses the standard ASL requester to load warriors.