From: "Alkhimey" Subject: pMARS on windows xp Date: 1 Jan 2006 05:18:10 -0800 Message-ID: <1136121490.663681.308960@g44g2000cwa.googlegroups.com> Hello everyone! Is there a pMARS for windows XP? I have problems downloading pMARS for windows 95 from the offical site, is there any other place where I can download it? Thank you Artem From: "Judodudo" Subject: Re: pMARS on windows xp Date: 1 Jan 2006 05:58:55 -0800 Message-ID: <1136123935.580889.87070@z14g2000cwz.googlegroups.com> Try Corewin. It's not pMARS, but it's what I use. It doesn't run through DOS, which I like. http://www.geocities.com/corewin2/ From: "Jens Gutzeit" Subject: Re: pMARS bug or problem with ICWS '88? Date: 1 Jan 2006 06:50:00 -0800 Message-ID: <1136127000.480423.23400@o13g2000cwo.googlegroups.com> The text about the ICWS '88 standard, that I have, says: "SLT A B: If the A operand is not immediate, the B-field of the memory location specified by the A operand is compared to the B-field of the B operand, otherwise the A operand itself is used in the comparison. If the A value is less than the B value, the next instruction is skipped." So the instruction "SLT $ x, # y" is a little bit tricky to interpret, because it is nowhere stated, that "# y" in B-field refers to the current instruction. Apart from that only the following combinations are stated to be valid: SLT (#, $, @, <) x, ($, @, <) y. Does someone has some kind of final version of the standard to clarify this? Jens Gutzeit From: "fizmo" Subject: 94nop warrior: S.D.N. (Satellite Defending Network) Date: 1 Jan 2006 14:40:40 -0800 Message-ID: <1136155240.261313.282860@z14g2000cwz.googlegroups.com> This time I want to present you a very unique kind of hopper/paper. In contrast to ordinary silk-dwarfs and paper-imps S.D.N. copies itself and the 'hot code' separately. That should makes him harder to find for scanner because it replicates always four lines of code in a line. Another advantage is, that it just needs 4 parallel processes to do that. That means it also can be launched much faster if you just boot away the replicating part and let pointing it back to the 'hot code'. I've added also a jmz.a copy check in the replicating part which seems to me scoring better than with a jmp or djn. As 'hot codes' I've used a dwarf and an imp-launcher, but one could use various kind of 4-line codes ;-) Christian ;redcode-94nop ;name S.D.N. ;author Christian Schmidt ;strategy "Satellite Defending Network" ;strategy a revolutionary strategical concept ;strategy which is much faster and less visible ;strategy I am still in progress to discover ;strategy this new and interesting field of ;strategy 'satellite using' warriors ;strategy including wipe check of the satellites ;strategy optimized test warrior ;assert 1 pStep1 equ 3161 pStep2 equ 2183 sStep1 equ 1171 sStep2 equ 826 sStep3 equ 6311 pBoo1 equ 5454 pBoo2 equ 4751 istep equ 2667 zero equ qbomb qtab3 equ qbomb pGo equ qtab2 qbomb dat >qoff, >qc2 dat 0, 0 dat 1, -1 mov <1, {1 cs jmz.a pStep1-pBoo1, -pBoo1 c0a spl @0, pStep2 mov }-1, >-1 mov <1, {1 csa jmz.a pStep2-pBoo2, -pBoo2 dat 0, 0 dat 0, 0 dat 0, 0 dat zero - 1, qa1 qtab1 dat zero - 1, qa2 for 14 dat 0, 0 rof iStart spl #0, <663 add.x imp, 1 djn.f imp-(istep*4), <4530 imp mov.i #337, istep for 13 dat 0, 0 rof stn spl #0, qptr, qptr + qz + (qb2-1) jmp q2, Subject: Re: pMARS on windows xp Date: 1 Jan 2006 20:35:56 -0800 Message-ID: <1136176556.442895.26930@g14g2000cwa.googlegroups.com> Alkhimey wrote: > Hello everyone! > Is there a pMARS for windows XP? I have problems downloading pMARS for > windows 95 from the offical site, is there any other place where I can > download it? > SDL pMARS runs on XP (and X11 too). It's pmars with an improved frontend. Available from: http://www.cs.helsinki.fi/u/jpihlaja/cw/pmars-sdl/index.html From: Nikola Skoric Subject: frequency of koft.org Date: Mon, 2 Jan 2006 00:57:39 +0100 Message-ID: How often is tournament on koft.org run? That is, when will I get result? :-) -- "Now the storm has passed over me I'm left to drift on a dead calm sea And watch her forever through the cracks in the beams Nailed across the doorways of the bedrooms of my dreams" From: Nikola Skoric Subject: Re: frequency of koft.org Date: Mon, 2 Jan 2006 01:04:02 +0100 Message-ID: On Mon, 2 Jan 2006 00:57:39 +0100 Nikola Skoric (nick-news@net4u.hr) said... > How often is tournament on koft.org run? That is, when will I get > result? :-) Ignore, I got it :-) -- "Now the storm has passed over me I'm left to drift on a dead calm sea And watch her forever through the cracks in the beams Nailed across the doorways of the bedrooms of my dreams" From: "Nenad Tomasev" Subject: Re: frequency of koft.org Date: 3 Jan 2006 08:27:49 -0800 Message-ID: <1136305669.561091.175150@g43g2000cwa.googlegroups.com> Apart from http://www.koth.org and http://sal.math.ualberta.ca hills there are actual tournaments which are run periodically (each month or two) - the "Redcoders Frenzy tournament" + sunday night irc mini tournaments at irc.koth.org #corewars channel, whenever there is enough people logged on to that channel. If there is anything else you'd like to know, feel free to post your question here, or go to the corewar irc channel and ask the people there. :) btw, do you by any chance live in Serbia? I'd be happy to see that there are other people here interested in corewar, as well. Regards, Nenad From: "Nenad Tomasev" Subject: Re: Speedscanner Date: 3 Jan 2006 08:33:53 -0800 Message-ID: <1136306033.469986.261110@z14g2000cwz.googlegroups.com> Hi. This is what I had in mind when I first read about Roy's rezoooming suggestion. It's still not good enough for the hill, but it won't miss like the first version posted here by Roy. It's also very large... I'm sure that it can still be modified to score better, but I don't have the time for it now, so I'm posting it here to see if you can find a way to do it. Here it is: ;redcode-94nop verbose ;name ReZooomII ;author Nenad Tomasev ;assert CORESIZE==8000 ;strategy scanner ;strategy zooom trick - multiple! - higher speed step equ 1370 gate equ (pokcpy-2) span equ 7 ini equ step org scan1 pokcpy dat 0, 0 pok dat ini+span, ini ;scanned (to begin coreclear) more dat step, step a mov.b @scan1, @(attack+1) sub more, @(attack+1) attack mov clr, pokcpy, >pokcpy jmn.f attack, >pokcpy dat 0, 0 ;scanned dat 0, 0 dat 0, 0 dat 0, 0 ;scanned stop spl a, 0 inc add more, pok scan1 jmn.f safety, @pok scan2 jmz.f inc, *pok mov.x @scan1, @scan1 safety jmn.b stop, @scan1 clr spl #0, 0 ;scanned mov b, >gate djn.f -1, >gate dat 0, 0 ;scanned b dat <2667, (b-gate+2) end From: "Nenad Tomasev" Subject: Lux Aeterna Date: 3 Jan 2006 08:35:13 -0800 Message-ID: <1136306112.932837.202920@g43g2000cwa.googlegroups.com> ;redcode-94nop verbose ;name Lux Aeterna ;author Roy/Nenad ;assert CORESIZE==8000 ;strategy scanner with modified zooom trick pBoot equ 4618 zero equ qbomb qtab3 equ qbomb qbomb dat >qoff , >qc2 bPtr dat b+1 , b+pBoot+1+8 bPtr2 dat gate+1 , }qb1 qtab2 dat gate+1+pBoot , }qb2 dat 0 , }qb3 wGo mov.i {bPtr , top incr sub.f clear+8 , scan scan seq }ini , }ini+span att djn.f top , @top loop djn.f incr , <2437 gate djn.f clear+8 , >2539 ;8 dats clear spl #-step , >-step mov.i b , >gate-8 djn.f -1 , >gate-8 b dat <2667 , {16 for 18 dat 0 , 0 rof qc2 equ ((1+(qtab3-qptr)*qy)%CORESIZE) qb1 equ ((1+(qtab2-1-qptr)*qy)%CORESIZE) qb2 equ ((1+(qtab2-qptr)*qy)%CORESIZE) qb3 equ ((1+(qtab2+1-qptr)*qy)%CORESIZE) qa1 equ ((1+(qtab1-1-qptr)*qy)%CORESIZE) qa2 equ ((1+(qtab1-qptr)*qy)%CORESIZE) qz equ 2108 ;3592;2108 qy equ 243 ;3511;243 ;qy*(qz-1)=1 ;q0 mutation qgo sne qptr+qz*qa1 , qptr+qz*qa1+qb2 seq <(qtab1-1) , qptr+qz*(qa1-1)+qb2 djn.a q0 , {q0 sne qptr+qz*qc2 , qptr+qz*qc2+qb2 seq qptr , qptr+qz+(qb2-1) jmp q2 , Subject: Re: Lux Aeterna Date: 3 Jan 2006 08:41:22 -0800 Message-ID: <1136306482.438460.106840@g14g2000cwa.googlegroups.com> Well, this is Lux Aeterna - a scanner developed by Roy and me which had some success at 94nop hill. It was preceded by GarbageCollector, which wasn't that well optimized. It uses a zooom trick, a little unusual variation of it. Enjoy! From: Nikola Skoric Subject: Re: frequency of koft.org Date: Wed, 4 Jan 2006 12:22:31 +0100 Message-ID: On 3 Jan 2006 08:27:49 -0800 Nenad Tomasev (tomasev@nspoint.net) said... > If there is anything else you'd like to know, feel free to post your > question here, or go to the corewar irc channel and ask the people > there. :) I sure will. I haven't yes read through all the available online documents, so I don't have questions yet, but be sure I'll ask if I have problems, because CW is AWESOME :-) > btw, do you by any chance live in Serbia? I'd be happy to see that > there are other people here interested in corewar, as well. No, I'm from Zagreb. The frend discovered CW just few days ago and now few of us are all over it. :-) -- "Now the storm has passed over me I'm left to drift on a dead calm sea And watch her forever through the cracks in the beams Nailed across the doorways of the bedrooms of my dreams" From: "Alkhimey" Subject: Re: Lux Aeterna Date: 5 Jan 2006 09:42:00 -0800 Message-ID: <1136482920.062386.93400@z14g2000cwz.googlegroups.com> Hello What is the "zooom trick"? Can you explain the principles of it? Thank you Artem Nenad Tomasev wrote: > Well, this is Lux Aeterna - a scanner developed by Roy and me which had > some success at 94nop hill. It was preceded by GarbageCollector, which > wasn't that well optimized. It uses a zooom trick, a little unusual > variation of it. Enjoy! From: "Nenad Tomasev" Subject: Re: Lux Aeterna Date: 6 Jan 2006 03:16:56 -0800 Message-ID: <1136546216.005956.256880@f14g2000cwb.googlegroups.com> Hi. Well, zooom trick is used in cds (clear-directing scanners) for quite some time now. It was first introduced (afaik) by John Metcalf in his warrior Zooom and hence the name. Usual cds (without this trick) scan and clear (using SPL ammo) simultaniously. With the zooom trick, they can gain some extra speed. What is it exactly? Well, instead of dropping SPL bombs in the core before anything is found, they start the carpeting only AFTER they already found something. Thus, they gain extra speed in the beginning and they "zoom in" and start attacking seriously once they detect pieces of enemy code (or decoys, of course). There are several ways to implement the zooom trick. You can start by looking at Zooom.red at 94nop Koenigstuhl and also Stalker.red by P. Kline. There is another way to add speed to your scanner. You can do that by including a prescan routine in your warrior (usually a 0.8c prescan with mod-10, mod-16 or mod-20 steps) You can gain even more speed that way, but your code is also significantly larger, so... it's your choice. You should probably test your warrior with both options. There are some flaws in zoooming, but also some advantages. You'll realize that when you make some of your own and test them against other warriors. However, zooom trick is usually a good thing. I hope that this small explanation was useful and not too confusing. Regards, Nenad From: "Nenad Tomasev" Subject: Re: frequency of koft.org Date: 6 Jan 2006 03:31:25 -0800 Message-ID: <1136547085.327843.306680@f14g2000cwb.googlegroups.com> Well, good luck with the tutorials. I hope that you'll read through all of them soon and start submitting some of your first own warriors to the hills. (I recommend 94b hill at SAL and 94m hill at koth.org for start). >No, I'm from Zagreb. >The friend discovered CW just >few days ago and now >few of us are all over it. :-) Well, that's not so far away, either. :) Most of the redcoders these days are from Germany or Scandinavian countries. I live in Novi Sad. I've discovered corewar 2.5 years ago but started seriously making warriors and submitting them to the hills only 1.5 years ago. (during the first year, I played a little by myself, at home, exploring some weird and useless strategies). Now I'm not so bad (I think). :) Da li ste videli casopis za pocetnike CoreExplorer? Clanke u njemu pisemo Roy van Rijn i ja, kada za to nadjemo vremena. Trebao bih uskoro da zavrsim treci broj (poceli smo sa tim krajem prosle godine). Moglo bi vam koristiti, ali tek kada se vec priviknete na sintaksu i semantiku redcode jezika (sto ste valjda vec uradili?) i kada mozda procitate nesto malo onih tutoriala koji su dostupni na web-u. Ako hoces, mogu ti poslati prva dva broja (verzija ovde na grupi je loshe formatirana, pa se tesko cita) Pozdrav! From: =?iso-8859-2?Q?=A3ukasz_Grabu=F1?= Subject: [OT] Re: frequency of koft.org (was: frequency of koft.org) Date: Sat, 7 Jan 2006 10:47:55 +0100 Message-ID: Dnia 6 Jan 2006 03:31:25 -0800, Nenad Tomasev napisa�(a): > Da li ste videli casopis za pocetnike CoreExplorer? Did you see webzine CoreExplorer? Heh, I have caught the meaning, damn it. > Pozdrav! Pozdrawiam! B�dziemy pisa� po polsku? :-) -- �ukasz Grabu�, http://www.grabun.com/ From: "Alkhimey" Subject: Re: Lux Aeterna Date: 8 Jan 2006 05:52:19 -0800 Message-ID: <1136728339.587650.211230@g47g2000cwa.googlegroups.com> Hello Nenad Thank you very much for your explanation. I am new to corewars and to assambley programming so I don't understand many things. I have another question: how does scaners work? What are they looking for? Thank you Artem Nenad Tomasev wrote: > Hi. > Well, zooom trick is used in cds > (clear-directing scanners) for quite some time now. > It was first introduced (afaik) by John Metcalf in his > warrior Zooom and hence the name. > Usual cds (without this trick) scan and clear > (using SPL ammo) simultaniously. With the > zooom trick, they can gain some extra speed. > What is it exactly? Well, instead of dropping > SPL bombs in the core before anything is found, > they start the carpeting only AFTER they already > found something. Thus, they gain extra speed in > the beginning and they "zoom in" and start attacking > seriously once they detect pieces of enemy code > (or decoys, of course). > There are several ways to implement the zooom trick. > You can start by looking at Zooom.red at 94nop Koenigstuhl > and also Stalker.red by P. Kline. > There is another way to add speed to your scanner. > You can do that by including a prescan routine in your warrior > (usually a 0.8c prescan with mod-10, mod-16 or mod-20 steps) > You can gain even more speed that way, but your code is also > significantly larger, so... it's your choice. You should probably > test your warrior with both options. > There are some flaws in zoooming, but also some advantages. > You'll realize that when you make some of your own and test > them against other warriors. > However, zooom trick is usually a good thing. > I hope that this small explanation was useful and not too > confusing. > Regards, > > Nenad From: "Alkhimey" Subject: Re: Lux Aeterna Date: 8 Jan 2006 06:00:39 -0800 Message-ID: <1136728839.904590.224460@g49g2000cwa.googlegroups.com> Hello Nenad Thank you very much for your explanations. I am new to corewars and to asambley programming so I do not understand many things. I have another question: What are scanners? Thank you, Artem Nenad Tomasev wrote: > Hi. > Well, zooom trick is used in cds > (clear-directing scanners) for quite some time now. > It was first introduced (afaik) by John Metcalf in his > warrior Zooom and hence the name. > Usual cds (without this trick) scan and clear > (using SPL ammo) simultaniously. With the > zooom trick, they can gain some extra speed. > What is it exactly? Well, instead of dropping > SPL bombs in the core before anything is found, > they start the carpeting only AFTER they already > found something. Thus, they gain extra speed in > the beginning and they "zoom in" and start attacking > seriously once they detect pieces of enemy code > (or decoys, of course). > There are several ways to implement the zooom trick. > You can start by looking at Zooom.red at 94nop Koenigstuhl > and also Stalker.red by P. Kline. > There is another way to add speed to your scanner. > You can do that by including a prescan routine in your warrior > (usually a 0.8c prescan with mod-10, mod-16 or mod-20 steps) > You can gain even more speed that way, but your code is also > significantly larger, so... it's your choice. You should probably > test your warrior with both options. > There are some flaws in zoooming, but also some advantages. > You'll realize that when you make some of your own and test > them against other warriors. > However, zooom trick is usually a good thing. > I hope that this small explanation was useful and not too > confusing. > Regards, > > Nenad From: "inversed" Subject: Re: Paper Experiments Part 1 Date: 8 Jan 2006 06:09:22 -0800 Message-ID: <1136659148.809120.58330@f14g2000cwb.googlegroups.com> >a process is a process. How it distinguishes itself as mentioned above? In typical silk (p3c, rotPapers, ...) you can have 9 processes intead of 8 and it will work. But if you have wrong nprocs in Moore-style paper, it will not work properly. >back to the papery lab, papers kill each other and can be grouped into >some sort of 'predatory' relationship (would follow the >stone-scissor-paper process). These relations are quite complex, I'll try to discuss them in next part From: "Alkhimey" Subject: Competitions Date: 8 Jan 2006 06:22:58 -0800 Message-ID: <1136730178.527658.15240@f14g2000cwb.googlegroups.com> Hello >From what I read in the koth site I understood that a usual corewars competition is of the type:"everybody against everybody". In this type of competition it is very hard to determine wich warrior is the best. In this competitions luck plays a big role. Consider the following examle: There are 5 warriors: 'a','b','c','d' and 'e'. In "one on one" battles 'a' beats all the other warriors. But if we put all of them in one in one place to fight in "everybody against everybody" style 'a' may win 1 time out of 3 and 'b' wins all the other times. So who is the best warrior? In my opinion 'a'. So I think hills are very unfair way to compete. Am I right? Thank you, and sorry for my bad English Artem From: "inversed" Subject: 2 new implaunchers Date: 8 Jan 2006 12:53:59 -0800 Message-ID: <1136662230.948829.10700@g14g2000cwa.googlegroups.com> 1. I was in need for NON-selfsplitting implauncher, so I've created this one: istep equ 2667 spl 1, 0 spl 1, 0 spl 2, 0 loop add.a #istep, iptr iptr spl imp-istep, 0 jmp loop, 0 imp mov.i #0, istep it's similar to vortex-launcher 2. This thing creates imp-structure with unusual execution order, so it scores much better against some papers, but worse against some others. losses against p3c: impfinity launcher 45% this launcher 7% RotPapers: impfinity launcher 26% this launcher 40% istep equ 2667 spl 2, 0 spl 1, 0 loop spl *tab, }0 add.a #istep, {loop jmp loop, 0 tab dat imp, 0 dat imp+istep, 0 dat imp+2*istep, 0 imp mov.i #0, istep It should only be used in agressive s/i because it's weaker against dclear. From: =?ISO-8859-2?Q?=A3ukasz_Adamowski?= Subject: Odp: [OT] Re: frequency of koft.org (was: frequency of koft.org) Date: Sun, 8 Jan 2006 22:38:37 -0500 (EST) Message-ID: <43c11135a4e75@wp.pl> Dnia 7-01-2006 o godz. 11:12 �ukasz Grabu� napisa�(a): > Dnia 6 Jan 2006 03:31:25 -0800, Nenad Tomasev napisa�(a): > > > Da li ste videli casopis za pocetnike CoreExplorer? > Did you see webzine CoreExplorer? > Heh, I have caught the meaning, damn it. > > > Pozdrav! > Pozdrawiam! Ja te� pozdrawiam! > B�dziemy pisa� po polsku? :-) Je�li tylko ja mam to zrozumie� - to tak! ;] �ukasz Adamowski -= "War is a problem, never a solution" =- -= "Wojna jest problemem, a nie rozwiazaniem" =- ---------------------------------------------------- PI�A 2 ju� w kinach! http://klik.wp.pl/?adr=www.pila2.wp.pl&sid=631 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/09/06 Date: Mon, 9 Jan 2006 00:31:25 -0500 (EST) Message-ID: <200601090509.k095902O093892@asgard.t-b-o-h.net> Weekly Status on 01/09/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sun Jan 8 19:31:43 EST 2006 # %W/ %L/ %T Name Author Score Age 1 41/ 42/ 17 HazyLazy C 42 Steve Gunnell / Chri 140 37 2 43/ 47/ 10 speed of light Christian Schmidt 140 89 3 41/ 43/ 17 Grendel S.Fernandes 139 104 4 26/ 17/ 57 2by4k P.Kline 136 26 5 32/ 28/ 41 HullabaTwo Roy 135 308 6 29/ 24/ 47 DanceOfFallenAngels Nenad Tomasev 135 92 7 27/ 19/ 54 Rust [v0.2] inversed 135 86 8 39/ 44/ 16 O_Fortuna5 Nenad Tomasev 134 1 9 30/ 26/ 44 Gods Of Destiny Nenad Tomasev 133 107 10 27/ 23/ 50 Mandragora Christian Schmidt 132 134 11 29/ 27/ 44 Eccentric Roy van Rijn 132 254 12 25/ 20/ 54 Last Judgement Christian Schmidt 130 163 13 37/ 43/ 20 float->double Nenad Tomasev 130 10 14 29/ 28/ 43 Aardvark Roy van Rijn 130 8 15 22/ 14/ 64 Hen-Thorir bvowk/fizmo 129 24 16 36/ 43/ 21 anything for a rich girl John Metcalf 129 126 17 26/ 23/ 50 Black Chamber Nenad Tomasev 129 5 18 22/ 17/ 61 IMPerishable Christian Schmidt 127 31 19 27/ 29/ 44 CrashAndBurn Nenad Tomasev 126 140 20 28/ 34/ 38 Monster_Alien_Grunt inversed 123 12 21 8/ 32/ 60 PrimePaper Lukasz Adamowski 83 0 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/09/06 Date: Mon, 9 Jan 2006 00:33:37 -0500 (EST) Message-ID: <200601090506.k09560Fa093579@asgard.t-b-o-h.net> Weekly Status on 01/09/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Wed Dec 21 14:36:47 EST 2005 # %W/ %L/ %T Name Author Score Age 1 45/ 36/ 19 Fatamorgana X Zul Nadzri 154 10 2 43/ 37/ 20 The X Machine Zul Nadzri 149 34 3 43/ 38/ 19 Ogre Christian Schmidt 147 171 4 35/ 23/ 42 xd100 test David Houston 146 20 5 42/ 40/ 18 Eliminator X Zul Nadzri 144 35 6 26/ 12/ 62 Evol Cap 4 X John Wilkinson 140 292 7 33/ 26/ 41 KAT v5 Dave Hillis 139 155 8 33/ 28/ 38 Glenstorm John Metcalf 139 85 9 39/ 40/ 20 Bewitching S.Fernandes 138 1 10 40/ 42/ 17 Black Moods Ian Oversby 138 219 11 37/ 38/ 24 Trefoil F 13 Steve Gunnell 136 106 12 40/ 44/ 16 Giant Hazy Test 13 Steve Gunnell 135 50 13 37/ 40/ 23 Trefoil Test F 14 Steve Gunnell 135 7 14 33/ 31/ 36 Olivia X Ben Ford 135 104 15 38/ 42/ 20 Simply Intelligent Zul Nadzri 134 16 16 20/ 6/ 74 Evolve X v4.0 John Wilkinson 134 240 17 36/ 38/ 26 test Some Redcoder 133 4 18 37/ 42/ 21 Controlled Aggression Ian Oversby 133 223 19 39/ 46/ 16 O_Fortuna3X Nenad Tomasev 132 6 20 39/ 47/ 14 Fatal Choice Some Redcoder 131 5 21 30/ 58/ 12 icy waters John Metcalf 103 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/09/06 Date: Mon, 9 Jan 2006 00:35:38 -0500 (EST) Message-ID: <200601090503.k09530lX093445@asgard.t-b-o-h.net> Weekly Status on 01/09/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sun Jan 8 19:30:29 EST 2006 # Name Author Score Age 1 JustADirtyClearTest Nenad Tomasev 32 51 2 Urgle Daniel Rivas 31 2 3 Diptera Nenad Tomasev 27 36 4 the price of hostility John Metcalf 27 9 5 nameless fragment S.Fernandes 23 21 6 kingdom of the grasshoppe simon wainwright 22 117 7 Gungnir John Metcalf 21 4 8 Fluffy Paper VI Jens Gutzeit 20 22 9 MidnightSun test Nenad Tomasev 14 1 10 Simon Gruber datagram 14 17 11 PrimePaper Lukasz Adamowski 2 0 From: KOTH Subject: KOTH.ORG: Status - Standard 01/09/06 Date: Mon, 9 Jan 2006 00:37:49 -0500 (EST) Message-ID: <200601090500.k09500lE093315@asgard.t-b-o-h.net> Weekly Status on 01/09/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Mon Dec 19 09:16:20 EST 2005 # %W/ %L/ %T Name Author Score Age 1 35/ 22/ 43 Test Alexander (Sasha) Wa 147 174 2 40/ 37/ 23 My 1st try Christian Schmidt 143 66 3 35/ 28/ 37 The Next Step '88 David Houston 142 50 4 32/ 23/ 45 The Hurricaner G.Labarga 140 21 5 40/ 40/ 20 July Nenad Tomasev 139 7 6 31/ 23/ 46 Guardian Ian Oversby 139 234 7 42/ 47/ 11 Scan Test C 6 Steve Gunnell 138 73 8 40/ 41/ 19 Scan the Can Christian Schmidt 138 15 9 30/ 22/ 48 test G.Labarga 138 17 10 39/ 40/ 21 Moonwipe Christian Schmidt 138 31 11 42/ 49/ 9 Replihater Some Redcoder 135 5 12 25/ 14/ 61 Utterer '88 Christian Schmidt 135 9 13 32/ 30/ 37 The Seed Roy van Rijn 135 52 14 41/ 47/ 12 Speeed 88mph Christian Schmidt 135 34 15 38/ 42/ 20 trick shot John Metcalf 135 11 16 31/ 29/ 40 A.I.P. Christian Schmidt 132 42 17 21/ 12/ 67 IMParable G.Labarga 129 22 18 26/ 23/ 52 Scopulos pluviae G.Labarga 128 1 19 28/ 29/ 43 SoundOfDarkness Nenad Tomasev 127 2 20 29/ 35/ 36 Something Simple Some Redcoder 123 4 21 7/ 41/ 53 test Jens Gutzeit 72 0 From: roy.van.rijn@gmail.com Subject: Re: Competitions Date: 9 Jan 2006 04:54:41 -0800 Message-ID: <1136811281.000414.294060@g14g2000cwa.googlegroups.com> Well, its not a matter of 'which is the best warrior', some warriors are better in multifight battles, and some in one-on-one. There are also a couple of multiplayer hills, also on KOTH.org, they load all warriors in a single fight. The problem is that the results are a little more random IMO, and you can't really point out where the weaknesses are etc. Thats probably why I like one-on-one fights more, its clear and also more predictable. Its just a matter of taste. I like to play one-on-one, then you know who you beat and what you need to improve. Just try both, then you can decide what you like best. Good luck with the programming Artem, and if you have any questions, just ask, or join us on IRC. From: "Nenad Tomasev" Subject: Re: Competitions Date: 9 Jan 2006 06:09:25 -0800 Message-ID: <1136815765.880885.237390@g14g2000cwa.googlegroups.com> There is no "best warrior", because there is always a warrior that can beat any warrior you make. Of course, that doesn't mean that all the warriors are equally good or bad, simply that your current success on the hill depends on many things. Even the greatest warriors known have fallen off the hill after certain time. btw, some of the most durable warriors have been on top of the hill on rare occassions, because their authors focused on making their warriors live to a certain age, not so much on being the king of the hill. You can find satisfaction in many things. But, along the way, try to have as much fun as possible. :) and, of course, make some successfull warriors. Regards, Nenad From: "Dr. Giovanni Squillero" Subject: White Noise Exposed [AGAIN] Date: 9 Jan 2006 06:27:39 -0800 Message-ID: <1136816859.147072.303690@g14g2000cwa.googlegroups.com> Dear All: Just in case someone is interested: IEEE Transactions on Evolutionary Computation published our paper detailing how White Noise was evolved. See details below. The paper also won the silver medal (and $1,000) at the Human-Competitive Awards in 2005 Regards gx --publication details-- Evolving Assembly Programs: How Games Help Microprocessor Validation F. Corno, E. Sanchez, G. Squillero IEEE Transactions on Evolutionary Computation, Vol 9, No 6, Dec 2005, pp. 695-706 DOI: http://dx.medra.org/10.1109/TEVC.2005.856207 Abstract: Core War is a game where two or more programs, called warriors, are executed in the same memory area by a time-sharing processor. The final goal of each warrior is to crash the others by overwriting them with illegal instructions. The game was popularized by A. K. Dewdney in his Scientific American column in the mid-1980s. In order to automatically devise strong warriors, uGP, a test program generation algorithm, was extended with the ability to assimilate existing code and to detect clones; furthermore, a new selection mechanism for promoting diversity independent from fitness calculations was added. The evolved warriors are the first machine-written programs ever able to become King of the Hill (champion) in all four main international Tiny Hills. This paper shows how playing Core War may help generate effective test programs for validation and test of microprocessors. Tackling a more mundane problem, the described techniques are currently being exploited for the automatic completion and refinement of existing test programs. Preliminary experimental results are reported. -- Giovanni Squillero, Ph.D. Politecnico di Torino - Dip. Automatica e Informatica C.so Duca degli Abruzzi 24 - 10129 Torino - ITALY Tel: +39-011564.7092 - Fax: +39-011564.7099 WWW: http://www.cad.polito.it/staff/squillero/ From: roy.van.rijn@gmail.com Subject: Re: White Noise Exposed [AGAIN] Date: 9 Jan 2006 06:31:53 -0800 Message-ID: <1136817113.483386.151100@g47g2000cwa.googlegroups.com> Very nice, and congratulations on the price! If I can find some more time I'll defenitly jump in and read it. Ciao From: "Neogryzor" Subject: LP paper/stone: Rottinger II Date: 9 Jan 2006 09:27:07 -0800 Message-ID: <1136827627.362867.309140@g44g2000cwa.googlegroups.com> Here is a highly optimized LP paper/stone that bombs from the copy loop, as muffiner does, but this one uses a different bombing pattern. It scores very well on its own, and also has shown to be useful in LP p-spacers. I'm using it inside some of my p-warriors. Enjoy. Neogryzor ;redcode-lp ;name Rottinger II ;author G.Labarga ;assert CORESIZE==8000 && MAXPROCESSES==8 ;strategy Qscan->paper/stone pdist equ 4215 pinit equ 5172 bstep1 equ 1171 bstep2 equ 826 decrem equ 2903 blank2 equ (6074 %33) zero equ qbomb qtab3 equ qbomb src: mov.ab #9,#9 v1: add.a #pdist,dst loop: mov.i decrem dst: jmz.b pinit,*0 dat }1,>1 for 85 dat 0,0 rof qbomb dat >qoff, {qc2 dat 0, 0 dat 0, decrem dst2: jmz.b pinit,*0 dat }1,>1 for 33-blank2 ;42 dat 0,0 rof qc2 equ ((1 + (qtab3-qptr)*qy) % CORESIZE) qb1 equ ((1 + (qtab2-1-qptr)*qy) % CORESIZE) qb2 equ ((1 + (qtab2-qptr)*qy) % CORESIZE) qb3 equ ((1 + (qtab2+1-qptr)*qy) % CORESIZE) qa1 equ ((1 + (qtab1-1-qptr)*qy) % CORESIZE) qa2 equ ((1 + (qtab1-qptr)*qy) % CORESIZE) qz equ 2108 qy equ 243 qgo: sne qptr + qz*qc2, qptr + qz*qc2 + qb2 seq qptr, qptr + qz + (qb2-1) jmp q2, Hi everybody, Sometime ago I started asking around what people thought about holding another International Corewar Convention (the ICC2006). Now its time I ask around a second time: - What kind of things would you like to see there? - What would you all like to do? - How much are you willing to pay per night to sleep+eat (I'll be your chef!) I might have a very cheap and very nice big place including beds for everybody and a kitchen, not first class, but not a straw bale either! But it depends a bit on the amount of people. And, the most important question(s): - Are you able to come to Holland this year? - If yes: When? (until now most people voted for August this year) Please mail me if intrested!! (roy dot van dot rijn located at gmail, subject 'ICC2006') btw, google found this for me: http://electrobooze.blogspot.com/ <- who's website is that? it mentions ICC2006 and more corewarstuff :-) From: "inversed" Subject: Re: Competitions Date: 9 Jan 2006 13:31:49 -0800 Message-ID: <1136842309.386540.251630@g44g2000cwa.googlegroups.com> >From what I read in the koth site I understood that a usual corewars >competition is of the type:"everybody against everybody". In this type >of competition it is very hard to determine wich warrior is the best. >In this competitions luck plays a big role. Consider the following >examle: >There are 5 warriors: 'a','b','c','d' and 'e'. In "one on one" battles >'a' beats all the other warriors. But if we put all of them in one in >one place to fight in "everybody against everybody" style 'a' may win 1 >time out of 3 and 'b' wins all the other times. So who is the best >warrior? In my opinion 'a'. So I think hills are very unfair way to >compete. Am I right? In a usual CW competition (KOTH 94nop and 94draft), "everybody against everybody" means that all possible ONE-ON-ONE matches are played; This DOESN'T means that all the warriors are loaded into the core in one battle (unless you play at multiwarrior hill). For typical hill with N warriors, N*N matches (including self-fights) will be performed. Just send something to SAL -b hill and you'll see. So in your example, 'a' will probably have good score (but not necessarily best). >Thank you, and sorry for my bad English >Artem These lines indicate that you're russian, am I right? From: "inversed" Subject: Re: LP paper/stone: Rottinger II Date: 9 Jan 2006 13:42:47 -0800 Message-ID: <1136842967.378440.291410@g44g2000cwa.googlegroups.com> Hey, it's VERY similar to my 'Digital Rain'! But DR uses some more tricks, now I'll publish it. Let's see if I can beat your KS position ;) From: Christoph Birk Subject: Re: LP paper/stone: Rottinger II Date: Mon, 9 Jan 2006 15:27:00 -0500 (EST) Message-ID: <200601092020.MAA09285@andromeda.ociw.edu> Congratulations to ' G.Labarga'. His program 'Rottinger II' is the new KotH of the LP-Koenigstuhl. Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: =?ISO-8859-2?Q?=A3ukasz_Adamowski?= Subject: Re: Competitions Date: Mon, 9 Jan 2006 21:00:51 -0500 (EST) Message-ID: <43c2e9c28962d@wp.pl> Dnia 9-01-2006 o godz. 15:14 Nenad Tomasev napisal: > There is no "best warrior", because there is always a warrior that can > beat any warrior you make. [...] I think the meaning of CoreWars is not to win, but to play. To have fun. :] As for hill kinds I use to call "one-on-one" ("robin-round" etc.) fights - "duels" - and "multiwarrior" - "battles". "Duels " I like to imagine as middle-age tournaments when every warrior fights with only one opponent at the moment with swords, axes, on foot or on horseback, and "battles"... Well, I think you know how do imagine a battle - dust, blood, sweat and tears, screaming, roaring, chaos in one word. It's obvious that not every knight in his shinging armour will "score" good with several of enemies attacking at once and that not every battle-beast will be able to defeat well-trained dragon-slayer in a single one-on-one fight. Is it fair? I don't know. All I know I like to watch movies with both perfectly made duels and great battles. ;] Greetings and welcome all newbies Lukasz Adamowski -= "War is a problem, never a solution" =- -= "Wojna jest problemem, a nie rozwiazaniem" =- ---------------------------------------------------- Podniebne akrobacje, ponadd�wi�kowa pr�dko��, zab�jcza intryga w najszybszym filmie akcji re�ysera "Taxi" - SKY FIGHTERS w kinach! http://klik.wp.pl/?adr=http%3A%2F%2Fadv.reklama.wp.pl%2Fas%2Fskyfighters.html&sid=633 From: sayembara@gmail.com Subject: Re: Competitions Date: 9 Jan 2006 23:55:44 -0800 Message-ID: <1136879744.064153.106550@o13g2000cwo.googlegroups.com> Best is subjective -- relative comparison with a set of warriors or conditions. Just don't confuse all-warriors-fight-all (duel) with all-warriors-fight-at-once (melee, or battles). Current hills with one to one battle will at least indicate a best warrior for that hill. From: sayembara@gmail.com Subject: Re: White Noise Exposed [AGAIN] Date: 10 Jan 2006 00:30:32 -0800 Message-ID: <1136881832.400305.187810@g47g2000cwa.googlegroups.com> Congratulations!. Does it require an account for full text? Anyway, I've read almost all microGP other publications.And I think I can predict the the flow and content of the semi-exposed paper :) Okay, a confession... I did use microGP during the last CSE2005 to some extend but my failure to generate warrior for 88-hill prevented me to declare this 'secret' not to dilute the glory microGP currently achieving. But it did work ! I remember the time I asked "microGP anyone?" but nobody answered yes (I guess). That was the time my interest started to shift towards evolving warriors. I look forward for more updates to genetic programming and may be further fine tuning to current evolvers because many sucesses have been proven in complex problems. Easy for me to say because I am not a programmer -- I give suggestions / comments, a lot ! :) From: "Alkhimey" Subject: Re: Competitions Date: 10 Jan 2006 05:59:40 -0800 Message-ID: <1136901580.185628.135770@g14g2000cwa.googlegroups.com> Yes I am Russian, but now I live in Israel. inversed wrote: > >From what I read in the koth site I understood that a usual corewars > >competition is of the type:"everybody against everybody". In this type > >of competition it is very hard to determine wich warrior is the best. > >In this competitions luck plays a big role. Consider the following > >examle: > >There are 5 warriors: 'a','b','c','d' and 'e'. In "one on one" battles > >'a' beats all the other warriors. But if we put all of them in one in > >one place to fight in "everybody against everybody" style 'a' may win 1 > >time out of 3 and 'b' wins all the other times. So who is the best > >warrior? In my opinion 'a'. So I think hills are very unfair way to > >compete. Am I right? > > In a usual CW competition (KOTH 94nop and 94draft), "everybody against > everybody" means that all possible ONE-ON-ONE matches are played; This > DOESN'T means that all the warriors are loaded into the core in one > battle (unless you play at multiwarrior hill). For typical hill with N > warriors, N*N matches (including self-fights) will be performed. Just > send something to SAL -b hill and you'll see. So in your example, 'a' > will probably have good score (but not necessarily best). > > >Thank you, and sorry for my bad English > >Artem > > These lines indicate that you're russian, am I right? From: "elkauka" Subject: Re: ICC2006 reminder! Date: 10 Jan 2006 10:34:25 -0800 Message-ID: <1136918065.188452.58690@z14g2000cwz.googlegroups.com> > btw, google found this for me: > http://electrobooze.blogspot.com/ <- who's website is that? it mentions > ICC2006 and more corewarstuff :-) just read the logs carefull: [19:14] http://electrobooze.blogspot.com/ <- talking about CW and the ICC2006 :-) [19:28] ooch, my old blog [19:28] try csstudent.blogspot.com <-- this one is in english [19:30] oow, discworld [19:31] gee there is even another typo [19:32] fixed [19:42] * elkauka waves From: roy.van.rijn@gmail.com Subject: Re: ICC2006 reminder! Date: 10 Jan 2006 11:08:08 -0800 Message-ID: <1136920088.471572.221190@g47g2000cwa.googlegroups.com> Hehe, I know! But I posted it on r.g.c before I asked about it on #corewars... But hey, more free advertisement for your blog now ;-) While where at it, comming soon: www.redcode.nl! From: "Neogryzor" Subject: Re: LP paper/stone: Rottinger II Date: 11 Jan 2006 07:46:31 -0800 Message-ID: <1136994390.946097.61620@g43g2000cwa.googlegroups.com> Christoph Birk ha escrito: > Congratulations to ' G.Labarga'. His program 'Rottinger II' is > the new KotH of the LP-Koenigstuhl. > > Christoph > http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html Yay! From: "elkauka" Subject: Re: ICC2006 reminder! Date: 11 Jan 2006 17:24:19 -0800 Message-ID: <1137029059.240016.246090@g14g2000cwa.googlegroups.com> hi finally decided to 'blog-on' in english :P so more of you guys can follow my strange thoughts/comments on cw issues : http://csstudent.blogspot.com/ elkauka From: "inversed" Subject: Paper Experiments Part 2 Date: 13 Jan 2006 04:49:07 -0800 Message-ID: <1137156547.058850.265890@g14g2000cwa.googlegroups.com> Paper Experiments Part 2 (!Part1_error_fix! my testset contains not only pure papers, but also p/s, all without qscans) My next step was trying LP paper. I've tried 2 LP papers with different length of copying loop. Here are the results of evolving: ;redcode-94nop ;author inversed ;strategy Evolved from LP paper ;score 188.4 ;assert (CORESIZE==8000) && (MAXPROCESSES==8000) len0 equ 10 l equ 19 k equ 7973 a1 equ 14 b1 equ 1975 b2 equ 2691 ofs0 equ 7973 djs equ 7974 from add.x #l, >len0 mul.f #k, to loop mov a1, {b1 jmn.b loop, from spl @from, }b2 to djn.f ofs0, {djs We can notice some interesting changes: add.x #l, >len0 : first time, 'len0' locations are copied. After next execution, paper copies 'l' locations. But 'l' is greater than actual paper length! It looks like this excessive copying gives some extra offensive potential. And first execution with 'len0' allows to quickly create one copy. Also note strange adressing mode and modifyer. This is a kind of self-checking: if b-field of first instruction is incremented or decremented when it's executed, replication will not work properly. mul.f #k, to: position for new copy is calculated with MUL instead typical ADD. Modifyer is .f, so it also changes djn's decrement position. In copy loop we can see one line changed to attack, and again unusual adressing mode in split for self-checking. All of these tricks are very usefull when designing real LP paper. One should optimize not only constants, but also copying length: smallest isn't the best one. ;redcode-94nop ;author inversed ;strategy Evolved from LP paper ;score 235.6 ;assert (CORESIZE==8000) && (MAXPROCESSES==8000) len equ 19 len0 equ 9 b1 equ 2026 a2 equ 1991 b2 equ 1985 dec equ 3975 zofs equ 3256 from add #len, len0 loop mov -1 mov }-1, >-1 ...bombing... ...bombing... mov {-4, <1 mov {-4, <1 djn @0, -1 ... At the moment of overwriting, djn is executed one time. This explains why it's weaker against other papers (last silk doesn't works, so replication process is similar to ccpapers), and why it bombs with such long strips (overlaping copy gets more processes from it's overlaped parent). inversed From: "inversed" Subject: 3 LP warriors Date: 13 Jan 2006 04:51:10 -0800 Message-ID: <1137156670.899573.273510@g14g2000cwa.googlegroups.com> Here are some LP warriors from the hill (yes no qS, exact copies of what I've sent to the hill). BioMech is partly evolved, MicroWarp and Digital Rain use some evolved tricks described in my 'Paper Experiments part 2'. All of them are doing very good against other LP papers. ---------------------------------------------------- ;redcode-lp ;author inversed ;name MicroWarp ;strategy Paper with disruptive mov {x, {x attack ;assert (CORESIZE==8000) && (MAXPROCESSES==8) len0 equ 7 len equ (32+7-4) inc equ (6997+70 -80) zofs equ (7303+112-80) dec equ (4757+28 -80) warp equ (7325+26 -80) from mov #len, >len0 add.a #inc, to loop mov len0 loop mov from, }color to jmz zofs, *0 ---------------------------------------------------- Message-ID: From: anton@paradise.net.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 13 Jan 2006 05:32:51 GMT Archive-name: games/corewar-faq Last-Modified: September 4, 1999 Version: 4.2 URL: http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html Copyright: (c) 1999 Anton Marsden Maintainer: Anton Marsden Posting-Frequency: once every 2 weeks Core War Frequently Asked Questions (rec.games.corewar FAQ) These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The latest hypertext version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html and the latest plain text version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.txt. This document is currently being maintained by Anton Marsden (anton@paradise.net.nz). Last modified: Sat Sep 4 00:22:22 NZST 1999 ------------------------------------------------------------------------ To Do * Add the new No-PSpace '94 hill location * Add online location of Dewdney's articles * Make question 17 easier to understand. Add a state diagram? * Add info about infinite hills, related games (C-Robots, Tierra?, ...) * New question: How do I know if my warrior is any good? Refer to beginners' benchmarks, etc. * Add a Who's Who list? * Would very much like someone to compile a collection of the "revolutionary" warriors so that beginners can see how the game has developed over the years. Mail me if interested. ------------------------------------------------------------------------ What's New * Changed primary location of FAQ (again!) * Changed Philip Kendall's home page address. * Updated list server information * Changed primary location of FAQ * Vector-launching code was fixed thanks to Ting Hsu. * Changed the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr ------------------------------------------------------------------------ Table of Contents 1. What is Core War 2. Is it "Core War" or "Core Wars"? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. Where can I find warrior code? 11. I do not have FTP. How do I get all this great stuff? 12. I do not have access to Usenet. How do I post and receive news? 13. Are there any Core War related WWW sites? 14. What is KotH? How do I enter? 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 16. How does SLT (Skip if Less Than) work? 17. What is the difference between in-register and in-memory evaluation? 18. What is P-space? 19. What does "Missing ;assert .." in my message from KotH mean? 20. How should I format my code? 21. Are there any other Core War related resources I should know about? 22. What does (expression or term of your choice) mean? 23. Other questions? ------------------------------------------------------------------------ 1. What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardised by the ICWS, and is therefore transportable between all standard Core War systems. The system in which the programs run is quite simple. The core (the memory of the simulated computer) is a continuous array of instructions, empty except for the competing programs. The core wraps around, so that after the last instruction comes the first one again. There are no absolute addresses in Core War. That is, the address 0 doesn't mean the first instruction in the memory, but the instruction that contains the address 0. The next instruction is 1, and the previous one obviously -1. However, all numbers are treated as positive, and are in the range 0 to CORESIZE-1 where CORESIZE is the amount of memory locations in the core - this means that -1 would be treated as CORESIZE-1 in any arithmetic operations, eg. 3218 + 7856 = (3218 + 7856) mod CORESIZE. Many people get confused by this, and it is particularly important when using the SLT instruction. Note that the source code of a program can still contain negative numbers, but if you start using instructions like DIV #-2, #5 it is important to know what effect they will have when executed. The basic unit of memory in Core War is one instruction. Each Redcode instruction contains three parts: * the opcode * the source address (a.k.a. the A-field) * the destination address (a.k.a. the B-field) The execution of the programs is equally simple. The MARS executes one instruction at a time, and then proceeds to the next one in the memory, unless the instruction explicitly tells it to jump to another address. If there is more than one program running, (as is usual) the programs execute alternately, one instruction at a time. The execution of each instruction takes the same time, one cycle, whether it is MOV, DIV or even DAT (which kills the process). Each program may have several processes running. These processes are stored in a task queue. When it is the program's turn to execute an instruction it dequeues a process and executes the corresponding instruction. Processes that are not killed during the execution of the instruction are put back into the task queue. Processes created by a SPL instruction are added to the task queue after the creating process is put back into the task queue. [ToC] ------------------------------------------------------------------------ 2. Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] ------------------------------------------------------------------------ 3. Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Library of Author Title Published ISBN Congress Call Number The Armchair Dewdney, Universe: An New York: W. QA76.6 .D517 A. K. Exploration of H. Freeman �0-7167-1939-8 1988 Computer Worlds 1988 The Magic 0-7167-2125-2 Dewdney, Machine: A New York: W.(Hardcover), QA76.6 A. K. Handbook of H. Freeman �0-7167-2144-9 .D5173 1990 Computer Sorcery 1990 (Paperback) A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. For those who are interested, Dewdney has a home page at http://www.csd.uwo.ca/faculty/akd/. [ToC] ------------------------------------------------------------------------ 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as ftp://www.koth.org/corewar/documents/standards/redcode-icws-88.Z. This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorials, ftp://www.koth.org/corewar/documents/tutorial.1.Z and ftp://www.koth.org/corewar/documents/tutorial.2.Z. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This and various other tutorials can be found at http://www.koth.org/papers.html. Even though ICWS'88 is still the "official" standard, you will find that most people are playing by ICWS'94 draft rules and extensions. [ToC] ------------------------------------------------------------------------ 5. What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a new addressing modes and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft at ftp://www.koth.org/corewar/documents/icws94.0202.Z for more information. There is a HTML version of this document available at http://www.koth.org/info/icws94.html. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp://www.koth.org/corewar. Note that Redcoder only supports a subset of ICWS'94. [ToC] ------------------------------------------------------------------------ 6. What is the ICWS? About one year after Core War first appeared in Scientific American, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). The ICWS is no longer active. [ToC] ------------------------------------------------------------------------ 7. What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in October 1995, back issues of Core Warrior (and the other newsletters) are available at http://para.inria.fr/~doligez/corewar/. There is also a Core Warrior index page at http://www.kendalls.demon.co.uk/pak21/corewar/warrior.html which has a summary of the contents of each issue of Core Warrior. Many of the earlier issues contain useful information for beginners. [ToC] ------------------------------------------------------------------------ 8. Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from ftp://ftp.csua.berkeley.edu/pub/corewar. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. This site is mirrored at: * http://www.koth.org/corewar/ * ftp://www.koth.org/corewar/ * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror The plain text version of this FAQ is automatically archived by news.answers (but this version is probably out-of-date). [ToC] ------------------------------------------------------------------------ 9. Where can I find a Core War system for . . . ? Core War systems are available via anonymous FTP from www.koth.org in the corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check ftp://www.koth.org/corewar/incoming for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than www.koth.org. Generally, the older the program - the less likely it will be ICWS compatible. If you are looking for an ICWS'94 simulator, get pMARS, which is available for many platforms and can be downloaded from: * ftp://ftp.csua.berkeley.edu/pub/corewar (original site) * ftp://www.koth.org/corewar (koth.org mirror) * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror (Planar mirror) * http://www.nc5.infi.net/~wtnewton/corewar/ (Terry Newton) * ftp://members.aol.com/ofechner/corewar (Fechter) Notes: * If you have trouble running pMARS with a graphical display under Win95 then check out http://www.koth.org/pmars.html which should have a pointer to the latest compilation of pMARS for this environment. * RPMs for the Alpha, PowerPC, Sparc and i386 can be found at ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars-rpm/ Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at www.koth.org: MADgic41.lzh corewar for the Amiga, v4.1 MAD4041.lzh older version? MAD50B.lha corewar for the Amiga, beta version 5.0 Redcoder-21.hqx corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx corewar for the Mac core-wars-simulator.hqx same as core-11.hqx? corewar_unix_x11.tar.Z corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z older version kothpc.zip port of older version of KotH to the PC deluxe20c.tar.Z corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z corewar for UNIX, likely not ICWS'88 compatible icons.zip corewar icons for MS-Windows macrored.zip a redcode macro-preprocessor (PC) c88v49.zip PC corewar, textmode display mars88.zip PC corewar, graphics mode display corwp302.zip PC corewar, textmode display, slowish mercury2.zip PC corewar written in assembly, fast! mtourn11.zip tournament scheduler for mercury (req. 4DOS) pmars08s.zip portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z same as above pmars08.zip PC executables with graphics display, req 386+ macpmars02.sit.hqx pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx C source (MPW, ThinkC) for Mac frontend pvms08.zip pMARS v0.8 for VMS build files/help (req. pmars08s.zip) ApMARS03.lha pMARS executable for Amiga (port of version 0.3.1) wincor11.zip MS-Windows system, shareware ($15) [ToC] ------------------------------------------------------------------------ 10. Where can I find warrior code? To learn the game, it is a good idea to study previously posted warrior code. The FTP archives have code in the ftp://www.koth.org/corewar/redcode directory. A clearly organized on-line warrior collection is available at the Core War web sites (see below). [ToC] ------------------------------------------------------------------------ 11. I do not have FTP. How do I get all this great stuff? There is an FTP email server at bitftp@pucc.princeton.edu. This address may no longer exist. I haven't tested it yet. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. Note that many FTP email gateways are shutting down due to abuse. To get a current list of FTP email servers, look at the Accessing the Internet by E-mail FAQ posted to news.answers. If you don't have access to Usenet, you can retrieve this FAQ one of the following ways: * Send mail to mail-server@rtfm.mit.edu with the body containing "send usenet/news.answers/internet-services/access-via-email". * Send mail to mailbase@mailbase.ac.uk with the body containing "send lis-iis e-access-inet.txt". [ToC] ------------------------------------------------------------------------ 12. I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Koth.Org list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@koth.org. You can send mail to corewar-l@koth.org to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (ttsg@ttsg.com). Servers that allow you to post (but not receive) articles are available. Refer to the Accessing the Internet by E-Mail FAQ for more information. [ToC] ------------------------------------------------------------------------ 13. Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is http://www.koth.org; pizza's is http://www.ecst.csuchico.edu/~pizza/koth . Damien Doligez (a.k.a. Planar) has a web page that features convenient access to regular newsletters (Push Off, The '94 Warrior, Core Warrior) and a well organized library of warriors: http://para.inria.fr/~doligez/corewar/. Convenient for U.S. users, this site is also mirrored at koth.org. [ToC] ------------------------------------------------------------------------ 14. What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: koth@koth.org is maintained by Scott J. Ellentuch (tuc@ttsg.com) and pizza@ecst.csuchico.edu by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry Rules for King of the Hill Corewar * Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. * Put a line starting with ";redcode" (or ";redcode-94", etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. Using ";name" is mandatory on the Pizza hills. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-94, ;redcode-b, ;redcode-lp, ;redcode-x, ;redcode, ;redcode-94x or ;redcode-94m. The former four run at "pizza", the latter three at "stormking". More information on these hills is listed below. * Mail this file to koth@koth.org or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). * Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. * In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. Sample Entry ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Duration Max. Hill Name Hill Core Max. Before Entry Min. Rounds Instr. Size Size Processes Distance Fought Set Tie Length Pizza's ICWS '94 Draft Hill Extended (Accessed with 25 8000 8000 80000 100 100 200 ICWS '94 ";redcode-94") Draft Pizza's Beginner's Extended Hill (Accessed 25 8000 8000 80000 100 100 200 ICWS '94 with ";redcode-b") Draft Pizza's Experimental Extended (Small) Hill 25 800 800 8000 20 20 200 ICWS '94 (Accessed with Draft ";redcode-x") Pizza's Limited Process (LP) Hill Extended (Accessed with 25 8000 8 80000 200 200 200 ICWS '94 ";redcode-lp") Draft Stormking's ICWS '88 Standard Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '88 ";redcode") Stormking's ICWS '94 No Pspace Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '94 ";redcode-94nop") Stormking's ICWS '94 Experimental Extended (Big) Hill 20 55440 55440 500000 200 200 250 ICWS '94 (Accessed with Draft ";redcode-94x") Stormking's ICWS '94 Multi-Warrior Extended Hill (Accessed 10 8000 8000 80000 100 100 200 ICWS '94 with Draft ";redcode-94m") Note: Warriors on the beginner's hill are retired at age 100. If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At "stormking", a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. At "pizza", you can use ";redcode[-??] test" to do a test challenge of the Hill without affecting the status of the Hill. These challenges can be used to see how well your warrior does against the current Hill warriors. All hills run portable MARS (pMARS) version 0.8, a platform-independent Core War system available at www.koth.org. The '94 and '94x hills allow five experimental opcodes and three experimental addressing modes currently not covered in the ICWS'94 draft document: * LDP - Load P-Space * STP - Store P-Space * SEQ - Skip if EQual (synonym for CMP) * SNE - Skip if Not Equal * NOP - (No OPeration) * * - indirect using A-field as pointer * { - predecrement indirect using A-field * } - postincrement indirect using A-field [ToC] ------------------------------------------------------------------------ 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an illegal instruction (in source code) under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you have a DAT 0, 0 instruction in your source code - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] ------------------------------------------------------------------------ 16. How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: -1 becomes M-1 where M is the memory size (core size). Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] ------------------------------------------------------------------------ 17. What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0, impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10, scan scan jmz example, 10 c Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step, scan scan cmp 10, 30 jmp attack jmp example step dat #20, #20 Colour Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear Code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down scanners. Typically, DATs with non-zero B-fields. Decrement Resistant Property of warriors making them functional (or at least partially functional) when overrun by a DJN-stream. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example, <4000 Dwarf The prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example mov 0, 1 or example mov 0, 2 mov 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... spl 0, mov.i #0,IMPSIZE Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at www.koth.org. Paper A Paper-like program is one which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. P-Warrior A warrior which uses the results of previous round(s) in order to determine which strategy it will use. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Q^2 Scan A modern version of the Quick Scan where anything found is attacked almost immediately. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example spl 0 loop add #10, example mov example, @example jmp loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov >-1, }-1 ;copy self to new location mov bomb, >2000 ;linear bombing mov bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a SPL-JMP bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also SPL/DAT Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: sz EQU 2667 spl 1 spl 1 jmp @vt, }0 vt dat #0, imp+0*sz ; start of vector table dat #0, imp+1*sz dat #0, imp+2*sz dat #0, imp+3*sz ; end of vector table imp mov.i #0, sz [ToC] ------------------------------------------------------------------------ 23. Other questions? Just ask in the rec.games.corewar newsgroup or contact me. If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] ------------------------------------------------------------------------ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: * Mark Durham (wrote the original version of the FAQ) * Paul Kline * Randy Graham * Stefan Strack (maintained a recent version of the FAQ) ------------------------------------------------------------------------ Copyright � 1999 Anton Marsden. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. ------------------------------------------------------------------------ From: "Neogryzor" Subject: nano-oneshot: Sniper VI Date: 17 Jan 2006 03:35:26 -0800 Message-ID: <1137497726.239675.128360@f14g2000cwb.googlegroups.com> Just a nice nano-oneshot, pushed off recently. ;redcode-nano ;name Sniper VI ;author G.Labarga ;assert CORESIZE==80 ;strategy Oneshot ptr: sub.ab #6,#-6 scan: jmz.f ptr,>ptr spl #0,<40 mov {35, Subject: KOTH.ORG: Status - Standard 01/16/06 Date: Tue, 17 Jan 2006 10:20:37 -0500 (EST) Message-ID: <200601160500.k0G501dC022722@asgard.t-b-o-h.net> Weekly Status on 01/16/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Mon Dec 19 09:16:20 EST 2005 # %W/ %L/ %T Name Author Score Age 1 35/ 22/ 43 Test Alexander (Sasha) Wa 147 174 2 40/ 37/ 23 My 1st try Christian Schmidt 143 66 3 35/ 28/ 37 The Next Step '88 David Houston 142 50 4 32/ 23/ 45 The Hurricaner G.Labarga 140 21 5 40/ 40/ 20 July Nenad Tomasev 139 7 6 31/ 23/ 46 Guardian Ian Oversby 139 234 7 42/ 47/ 11 Scan Test C 6 Steve Gunnell 138 73 8 40/ 41/ 19 Scan the Can Christian Schmidt 138 15 9 30/ 22/ 48 test G.Labarga 138 17 10 39/ 40/ 21 Moonwipe Christian Schmidt 138 31 11 42/ 49/ 9 Replihater Some Redcoder 135 5 12 25/ 14/ 61 Utterer '88 Christian Schmidt 135 9 13 32/ 30/ 37 The Seed Roy van Rijn 135 52 14 41/ 47/ 12 Speeed 88mph Christian Schmidt 135 34 15 38/ 42/ 20 trick shot John Metcalf 135 11 16 31/ 29/ 40 A.I.P. Christian Schmidt 132 42 17 21/ 12/ 67 IMParable G.Labarga 129 22 18 26/ 23/ 52 Scopulos pluviae G.Labarga 128 1 19 28/ 29/ 43 SoundOfDarkness Nenad Tomasev 127 2 20 29/ 35/ 36 Something Simple Some Redcoder 123 4 21 7/ 41/ 53 test Jens Gutzeit 72 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/16/06 Date: Tue, 17 Jan 2006 10:20:36 -0500 (EST) Message-ID: <200601160503.k0G531VC022817@asgard.t-b-o-h.net> Weekly Status on 01/16/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sun Jan 15 19:15:51 EST 2006 # Name Author Score Age 1 nameless fragment S.Fernandes 27 22 2 Lemuria Nenad Tomasev 23 1 3 Diptera Nenad Tomasev 21 37 4 JustADirtyClearTest Nenad Tomasev 21 52 5 kingdom of the grasshoppe simon wainwright 20 118 6 Fluffy Paper VI Jens Gutzeit 19 23 7 Gungnir John Metcalf 19 5 8 the price of hostility John Metcalf 19 10 9 Urgle Daniel Rivas 18 3 10 Simon Gruber datagram 14 18 11 GalaxyPaper Nenad Tomasev 4 0 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/16/06 Date: Tue, 17 Jan 2006 10:20:35 -0500 (EST) Message-ID: <200601160506.k0G5615g022979@asgard.t-b-o-h.net> Weekly Status on 01/16/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Jan 15 22:39:22 EST 2006 # %W/ %L/ %T Name Author Score Age 1 46/ 36/ 19 Fatamorgana X Zul Nadzri 156 10 2 45/ 36/ 19 Ogre Christian Schmidt 154 171 3 44/ 37/ 20 The X Machine Zul Nadzri 151 34 4 35/ 21/ 43 xd100 test David Houston 149 20 5 43/ 39/ 18 Eliminator X Zul Nadzri 147 35 6 28/ 11/ 61 Evol Cap 4 X John Wilkinson 146 292 7 33/ 25/ 42 KAT v5 Dave Hillis 142 155 8 39/ 37/ 24 Trefoil F 13 Steve Gunnell 141 106 9 23/ 6/ 71 Evolve X v4.0 John Wilkinson 141 240 10 39/ 38/ 23 Trefoil Test F 14 Steve Gunnell 139 7 11 39/ 40/ 21 Bewitching S.Fernandes 139 1 12 41/ 43/ 16 Giant Hazy Test 13 Steve Gunnell 139 50 13 41/ 44/ 15 O_Fortuna3X Nenad Tomasev 138 6 14 38/ 37/ 25 test Some Redcoder 138 4 15 39/ 41/ 20 Simply Intelligent Zul Nadzri 138 16 16 39/ 40/ 21 Controlled Aggression Ian Oversby 137 223 17 33/ 30/ 38 Olivia X Ben Ford 136 104 18 39/ 43/ 18 Black Moods Ian Oversby 136 219 19 32/ 28/ 40 Glenstorm John Metcalf 136 85 20 39/ 46/ 14 Fatal Choice Some Redcoder 132 5 21 6/ 76/ 18 : messybomber : Joshua Renfrey 37 0 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/16/06 Date: Tue, 17 Jan 2006 10:20:35 -0500 (EST) Message-ID: <200601160509.k0G591gj023259@asgard.t-b-o-h.net> Weekly Status on 01/16/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sun Jan 15 19:21:23 EST 2006 # %W/ %L/ %T Name Author Score Age 1 46/ 44/ 10 speed of light Christian Schmidt 148 99 2 44/ 41/ 15 Spy-Glass Christian Schmidt 147 9 3 40/ 38/ 22 Lemuria Nenad Tomasev 143 6 4 42/ 43/ 16 HazyLazy C 42 Steve Gunnell / Chri 140 47 5 41/ 43/ 16 Grendel S.Fernandes 139 114 6 31/ 23/ 46 Mandragora Christian Schmidt 139 144 7 29/ 21/ 50 Last Judgement Christian Schmidt 137 173 8 27/ 18/ 55 Rust [v0.2] inversed 137 96 9 32/ 26/ 42 Eccentric Roy van Rijn 137 264 10 32/ 27/ 42 HullabaTwo Roy 136 318 11 28/ 19/ 54 2by4k P.Kline 136 36 12 31/ 25/ 44 DanceOfFallenAngels Nenad Tomasev 136 102 13 31/ 27/ 42 Aardvark Roy van Rijn 136 18 14 26/ 15/ 59 Hen-Thorir bvowk/fizmo 136 34 15 31/ 27/ 42 Gods Of Destiny Nenad Tomasev 136 117 16 26/ 18/ 56 IMPerishable Christian Schmidt 135 41 17 40/ 44/ 16 O_Fortuna5 Nenad Tomasev 135 11 18 27/ 19/ 54 Magic Snap John Metcalf 134 7 19 26/ 19/ 55 GalaxyPaper Nenad Tomasev 133 1 20 28/ 24/ 48 ChaoticThought Nenad Tomasev 132 2 21 2/ 98/ 0 d Anonymous 7 0 From: roy.van.rijn@gmail.com Subject: New Imp Date: 17 Jan 2006 12:35:54 -0800 Message-ID: <1137530154.846077.48480@o13g2000cwo.googlegroups.com> Before this gets lost somewhere on my HD, a different kind of imp. Launches both a and b imps from one launcher (with boot) The idea is from: http://groups.google.com/group/rec.games.corewar/browse_frm/thread/c01d015c9d16f9b9/8acf60a25ee4b1dc?q=imp+double&rnum=1#8acf60a25ee4b1dc ;name Double Imp Boot ;author Roy van Rijn iStep equ 2667 pStep equ ((iStep/2)+1) bOff equ 341 mov iImp2 , iImp1+2*pStep-1 iImp1 mov.i #iStep , *0 ;a-imp iImp2 mov.i #0 , iStep ;b-imp end From: Christoph Birk Subject: Koenigstuhl News Date: Tue, 17 Jan 2006 14:21:39 -0500 (EST) Message-ID: <200601171912.LAA15620@andromeda.ociw.edu> Congratulations to 'inversed'. His program 'Digital Rain' is the new KotH of the LP-Koenigstuhl. Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: Christoph Birk Subject: Koenigstuhl Question Date: Wed, 18 Jan 2006 15:58:17 -0500 (EST) Message-ID: <200601181927.LAA26910@andromeda.ociw.edu> Hi, I am thinking about closing the OPEN-Koenigstuhl. >From some within the Corewar community I heard in the past that they consider the OPEN-Koenigstuhl useless since it compares apples with oranges ... Is there anybody out there who would like me to keep the OPEN-hill? Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: Steve Gunnell Subject: Re: Koenigstuhl Question Date: Wed, 18 Jan 2006 18:38:53 -0500 (EST) Message-ID: <1137626468.18615.60.camel@eldred.local> Well the mix between p-space and 94 looks fairly even. 88 doesn't enter into into it until around #450. I say keep it, this apples/oranges argument is spurious. If it seems like unnecessary duplication then keep it as an open top 100 hill. Steve Gunnell On Wed, 2006-01-18 at 15:56 -0500, Christoph Birk wrote: > hin the Corewar community I heard in the past that > they consider the OPEN-Koenigstuhl useless since it compares > apples with oranges ... > Is there anybo From: "iapdk@admin.drake.edu" Subject: uHSA Scanner Date: 19 Jan 2006 07:31:57 -0800 Message-ID: <1137684717.127617.213680@z14g2000cwz.googlegroups.com> A micro version of HSA. It works exactly like HSA, forward wiping when it finds something, and uses a single dat-wipe to finish. The main weakness is its .25c wipe speed which is not fast enough to get ahead of most djn streams. ;redcode-94nop ;name uHSA ;kill uHSA ;author P.Kline ;assert CORESIZE == 8000 ;strategy HSA-type scanner in 8 lines ;optimax scn tLoop add.ab #12 ,#115 tScan jmz.f -1 ,@tLoop slt.b tLoop ,#10 mov tSpl ,@tLoop jmz.f tScan ,>tLoop djn tLoop ,#10 tSpl spl #0 ,0 mov 1 ,<-2 end tScan Take and make! P. Kline From: "Neogryzor" Subject: Re: uHSA Scanner Date: 19 Jan 2006 09:17:20 -0800 Message-ID: <1137691040.552315.286000@g49g2000cwa.googlegroups.com> iapdk@admin.drake.edu ha escrito: > A micro version of HSA. It works exactly like HSA, forward wiping when > it finds something, and uses a single dat-wipe to finish. The main > weakness is its .25c wipe speed which is not fast enough to get ahead > of most djn streams. > > ;redcode-94nop > ;name uHSA > ;kill uHSA > ;author P.Kline > ;assert CORESIZE == 8000 > ;strategy HSA-type scanner in 8 lines > ;optimax scn > > tLoop add.ab #12 ,#115 > tScan jmz.f -1 ,@tLoop > slt.b tLoop ,#10 > mov tSpl ,@tLoop > jmz.f tScan ,>tLoop > djn tLoop ,#10 > tSpl spl #0 ,0 > mov 1 ,<-2 > end tScan > > Take and make! > > P. Kline Why not a dat bombing endgame?, something like: ... tLoop add.ab #12 ,#115 tScan jmz.f -1 ,@tLoop slt.b tLoop ,#10 mov tSpl ,@tLoop jmz.f tScan ,>tLoop djn tLoop ,#10 jmp tLoop,}-3 tSpl spl #0 ,{0 end tScan From: "fatalc" Subject: Re: Koenigstuhl Question Date: 19 Jan 2006 09:24:13 -0800 Message-ID: <1137691453.027050.24550@g47g2000cwa.googlegroups.com> I look at the OPEN hill every so often. I don't think its fair to describe it as useless. Its handy to have p-space warriors and standard '94 warriors on the same hill. If you decide to close the OPEN hill, please consider keeping it online with a note saying when it closed. FatalC From: "Nenad Tomasev" Subject: Re: Koenigstuhl Question Date: 19 Jan 2006 09:40:01 -0800 Message-ID: <1137692400.982996.305930@o13g2000cwo.googlegroups.com> I think that it's unfair to judge the performance of pspaced warriors only in fights against other pspacers. Sometimes it happens that they get or lose many points from nop warriors on the 94hill at koth.org (which always has some nop warriors on it). It is nice to see the proportion of strength of pspaced and "normal" warriors on the same hill. I give my vote to keeping the open hill open :). From: "inversed" Subject: Re: New Imp Date: 19 Jan 2006 10:29:47 -0800 Message-ID: <1137695387.607468.190840@g14g2000cwa.googlegroups.com> Cool, as small as standard launcher. I think it will be widely used. Here is my solution for vortex launcher: istep equ 2667 gap equ 10 istart spl 1, 0 spl 1, 0 inc spl #istep, istep loop add inc, ptr spl 2, 0 ptr jmp imp1-istep-3, imp2-istep-3 jmp @ptr for gap dat 0, 0 rof imp2 mov.i #1, istep for 50 dat 0, 0 rof imp1 mov.i #istep, *0 From: "inversed" Subject: Re: Koenigstuhl News Date: 19 Jan 2006 10:34:38 -0800 Message-ID: <1137695678.501935.312220@f14g2000cwb.googlegroups.com> Maintaining papery lab payed off ;) BioMech also scores good. From: "inversed" Subject: Re: Koenigstuhl Question Date: 19 Jan 2006 10:44:25 -0800 Message-ID: <1137696265.201539.291370@z14g2000cwz.googlegroups.com> Currently there are more nop warriors than pspacers on 94 standard hill. Maybe having 94 and 88 code in one hill really looks like comparing apples with oranges, but comparing 94 and 94nop is fair. And if you think that apples and oranges can't be compared, look at http://www.improbable.com/airchives/paperair/volume1/v1i3/air-1-3-apples.html From: Christoph Birk Subject: Re: Koenigstuhl Question Date: Thu, 19 Jan 2006 16:27:44 -0500 (EST) Message-ID: <200601191903.LAA02795@andromeda.ociw.edu> > Well the mix between p-space and 94 looks fairly even. 88 doesn't enter > into into it until around #450. The highest ranking 88-programms on the OPEN-Koenigstuhl are: 240 Quicksilver '88 Michal Janeczek 143.21 (88) 317 Freight Train v0.2 David Moore 138.86 (88) 320 '88 test IV John Metcalf 138.76 (88) > I say keep it, this apples/oranges argument is spurious. If it seems > like unnecessary duplication then keep it as an open top 100 hill. I got 3 opinions that speak for a 94nop/PSPACE mixed hill. Nobody seems to care about '88 (which are the real 'oranges' here :-) I would like to save some CPU-cycles but still keep a mixed hill, so I like Steve's suggestion of a TOP-100 hill. This is what I suggest: 1) take the top 200 programs of the current OPEN-hill 2) run a round robin and seed the new TOP-100 hill with the best 100. 3) everytime I receive a challanger for a "standard" hill it will also run on the TOP-100, but I will keep the size to 100 (like the hills on koth.org) FatalC and Nenad: would that be ok or do you still prefer a "full-size" OPEN-Koenigstuhl? Christoph From: =?ISO-8859-2?Q?=A3ukasz_Adamowski?= Subject: Re: New Imp Date: Thu, 19 Jan 2006 16:27:43 -0500 (EST) Message-ID: <43cffa5d7a8a2@wp.pl> Once I had an idea for multiple different imps launcher, but what I've made was only: ;redcode ;name Twisted Spiral ;author Lukasz Adamowski ;assert 1 off04 EQU 100 off03 EQU 200 off02 EQU 300 off01 EQU 400 start mov $imp04, $imp04+CORESIZE/3+off04 mov $imp04, $imp04+2*CORESIZE/3+off04 mov $imp04, $imp04+off04 mov $imp03, $imp03+CORESIZE/3+off03 mov $imp03, $imp03+2*CORESIZE/3+off03 mov $imp03, $imp03+off03 mov $imp02, $imp02+CORESIZE/3+off02 mov $imp02, $imp02+2*CORESIZE/3+off02 mov $imp02, $imp02+off02 mov $imp01, $imp01+off01 spl 16 spl 8 spl 4 spl 2 jmp $imp02+CORESIZE/3+off02 jmp $imp02+2*CORESIZE/3+off02 spl 2 jmp $imp02+off02 jmp $imp03+CORESIZE/3+off03 spl 4 spl 2 jmp $imp03+2*CORESIZE/3+off03 jmp $imp03+off03 spl 2 jmp $imp04+CORESIZE/3+off04 jmp $imp04+2*CORESIZE/3+off04 spl 8 spl 4 spl 2 jmp $imp04+off04 jmp $imp02+CORESIZE/3+off02 spl 2 jmp $imp02+2*CORESIZE/3+off02 jmp $imp02+off02 spl 4 spl 2 jmp $imp03+CORESIZE/3+off03 jmp $imp03+2*CORESIZE/3+off03 spl 2 jmp $imp03+off03 jmp $imp01+off01 imp04 mov.i #0, $2*CORESIZE/3+1 imp02 mov.i #CORESIZE/3+1, *0 imp03 mov.i #0, $CORESIZE/3+1 imp01 mov.i #0, $1 end start Pretty big, but not so slow, and very universal. Unfortunately I haven't tested it much and don't know if it's useful in anyway. Greetings! Lukasz Adamowski -= "Hurry to love people, they are leaving so fast. " =- -= "Spieszmy sie kochac ludzi, tak szybko odchodza." =- ---------------------------------------------------- Grypa? Damy rad�! Sprawd� jak jej zapobiega�, a je�li ju� za p�no ...jak leczy� - grypa.wp.pl http://klik.wp.pl/?adr=www.grypa.wp.pl&sid=636 From: "iapdk@admin.drake.edu" Subject: Re: uHSA Scanner Date: 20 Jan 2006 07:57:57 -0800 Message-ID: <1137772677.503692.248610@o13g2000cwo.googlegroups.com> > Why not a dat bombing endgame?, something like: > If uHSA used spl #0,}0 wiping and followed up with dat #0,0 clearing it never catches up with all the spl-wipes: spl #2,}0 < process here, executed spl #1,}0 < process here, executed spl #0,}0 < process here, not yet executed spl #0,}0 spl #0,}0 spl #0,}0 uHSA will see and bomb the first two but the third one is invisible until it is executed. When it executes the process moves on to the fourth spl. uHSA will bomb the third but not see the fourth. Time usually runs out before the opponent executes the last spl. P. Kline From: "fizmo" Subject: Re: Koenigstuhl Question Date: 20 Jan 2006 10:43:31 -0800 Message-ID: <1137782611.599508.322120@g44g2000cwa.googlegroups.com> Hi Christoph, > > 1) take the top 200 programs of the current OPEN-hill That sounds good to me because on 94draft hill usually you always have nop warriors and never a pure p-warrior hill. Every new challenge will run against them but keeping the size fixed at 200. > 2) run a round robin and seed the new TOP-100 hill with the best 100. > 3) everytime I receive a challanger for a "standard" hill > it will also run on the TOP-100, but I will keep the size to 100 > (like the hills on koth.org) > Christian From: "Neogryzor" Subject: Re: Koenigstuhl Question Date: 20 Jan 2006 17:09:44 -0800 Message-ID: <1137805784.634802.160160@g47g2000cwa.googlegroups.com> Christoph Birk ha escrito: > I got 3 opinions that speak for a 94nop/PSPACE mixed hill. > Nobody seems to care about '88 (which are the real 'oranges' here :-) Comparing '88 warriors with '94 or '94nop doesn't make sense i think, they could be removed from there. > I would like to save some CPU-cycles but still keep a mixed hill, > so I like Steve's suggestion of a TOP-100 hill. > > This is what I suggest: > > 1) take the top 200 programs of the current OPEN-hill > 2) run a round robin and seed the new TOP-100 hill with the best 100. > 3) everytime I receive a challanger for a "standard" hill > it will also run on the TOP-100, but I will keep the size to 100 > (like the hills on koth.org) That's a good idea, a mixed hill can be useful sometimes, and, in my opinion, a size of 100 is large enough. G.Labarga From: Christoph Birk Subject: Koenigstuhl News Date: Fri, 20 Jan 2006 18:15:51 -0500 (EST) Message-ID: <200601202251.OAA20297@andromeda.ociw.edu> There are new KotH(s) for some of the Koenigstuhl hills: 88: "Quicksilver '88" by Michal Janeczek 94: "The Human Machine" by bvowk/fiz I am applying a new 'recursive' algorithm to the Koenigstuhl hills. The old algorithm had a some 'fudge' factors (eg. weights) that I never liked and finally I found a way to get rid of them. The new algorithm (explained at the bottom of the Koenigsuhl page) produces (of course) similar, but slightly different results. I think it's an improvement since it directly weights stronger oppenents more without tweaking any (arbitrary) factors. This also makes the TOP-50 hill redundant as it is equivalent to the last iteration of the new recursive 94nop hill. I will also keep the OPEN-hill for the time beeing ... Please feel free to comment! Christoph http://www.ociw.edu/~birk/COREWAR/koenigstuhl.html From: =?ISO-8859-2?Q?=A3ukasz_Adamowski?= Subject: Re: Koenigstuhl Question Date: Sat, 21 Jan 2006 12:03:27 -0500 (EST) Message-ID: <43d2656ee9696@wp.pl> Dnia 21-01-2006 o godz. 2:15 Neogryzor napisal: > Christoph Birk ha escrito: > > > I got 3 opinions that speak for a 94nop/PSPACE mixed hill. > > Nobody seems to care about '88 (which are the real 'oranges' here :-) > Comparing '88 warriors with '94 or '94nop doesn't make sense i think, > they could be removed from there. > > > I would like to save some CPU-cycles but still keep a mixed hill, > > so I like Steve's suggestion of a TOP-100 hill. > > This is what I suggest: > > 1) take the top 200 programs of the current OPEN-hill > > 2) run a round robin and seed the new TOP-100 hill with the best 100. > > 3) everytime I receive a challanger for a "standard" hill > > it will also run on the TOP-100, but I will keep the size to 100 > That's a good idea, a mixed hill can be useful sometimes, and, in my > opinion, a size of 100 is large enough. Comparing '94 p-spacers with '94 nop may be comparing apples with oranges, but comparing them both with '88 warriors seem to be like comparing apples _and_ oranges with bananas. ;] However no one can tell if the hill balance will be the same when we remove all warriors after #200, which are mostly '88. You should check it before any changes. Greetings Lukasz Adamowski -= "Stop trying to hit me and hit me!" =- -= "Nie probuj uderzac, tylko mnie uderz!" =- ---------------------------------------------------- Grypa? Damy rad�! Sprawd� jak jej zapobiega�, a je�li ju� za p�no ...jak leczy� - grypa.wp.pl http://klik.wp.pl/?adr=www.grypa.wp.pl&sid=636 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/23/06 Date: Mon, 23 Jan 2006 07:50:40 -0500 (EST) Message-ID: <200601230503.k0N5307e041719@asgard.t-b-o-h.net> Weekly Status on 01/23/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Fri Jan 20 11:53:36 EST 2006 # Name Author Score Age 1 JustADirtyClearTest Nenad Tomasev 45 52 2 Fluffy Paper VI Jens Gutzeit 43 23 3 Diptera Nenad Tomasev 29 37 4 Lemuria Nenad Tomasev 26 1 5 the price of hostility John Metcalf 26 10 6 Urgle Daniel Rivas 25 3 7 nameless fragment S.Fernandes 21 22 8 Gungnir John Metcalf 20 5 9 kingdom of the grasshoppe simon wainwright 19 118 10 Simon Gruber datagram 18 18 11 don't disturb the dust! John Metcalf 1 0 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/23/06 Date: Mon, 23 Jan 2006 07:50:39 -0500 (EST) Message-ID: <200601230506.k0N5608G041866@asgard.t-b-o-h.net> Weekly Status on 01/23/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Jan 15 22:39:22 EST 2006 # %W/ %L/ %T Name Author Score Age 1 46/ 36/ 19 Fatamorgana X Zul Nadzri 156 10 2 45/ 36/ 19 Ogre Christian Schmidt 154 171 3 44/ 37/ 20 The X Machine Zul Nadzri 151 34 4 35/ 21/ 43 xd100 test David Houston 149 20 5 43/ 39/ 18 Eliminator X Zul Nadzri 147 35 6 28/ 11/ 61 Evol Cap 4 X John Wilkinson 146 292 7 33/ 25/ 42 KAT v5 Dave Hillis 142 155 8 39/ 37/ 24 Trefoil F 13 Steve Gunnell 141 106 9 23/ 6/ 71 Evolve X v4.0 John Wilkinson 141 240 10 39/ 38/ 23 Trefoil Test F 14 Steve Gunnell 139 7 11 39/ 40/ 21 Bewitching S.Fernandes 139 1 12 41/ 43/ 16 Giant Hazy Test 13 Steve Gunnell 139 50 13 41/ 44/ 15 O_Fortuna3X Nenad Tomasev 138 6 14 38/ 37/ 25 test Some Redcoder 138 4 15 39/ 41/ 20 Simply Intelligent Zul Nadzri 138 16 16 39/ 40/ 21 Controlled Aggression Ian Oversby 137 223 17 33/ 30/ 38 Olivia X Ben Ford 136 104 18 39/ 43/ 18 Black Moods Ian Oversby 136 219 19 32/ 28/ 40 Glenstorm John Metcalf 136 85 20 39/ 46/ 14 Fatal Choice Some Redcoder 132 5 21 6/ 76/ 18 : messybomber : Joshua Renfrey 37 0 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/23/06 Date: Mon, 23 Jan 2006 07:50:38 -0500 (EST) Message-ID: <200601230509.k0N590mT041981@asgard.t-b-o-h.net> Weekly Status on 01/23/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sun Jan 22 18:36:02 EST 2006 # %W/ %L/ %T Name Author Score Age 1 39/ 40/ 20 Lemuria Nenad Tomasev 138 17 2 32/ 26/ 42 DanceOfFallenAngels Nenad Tomasev 137 113 3 32/ 28/ 40 Gods Of Destiny Nenad Tomasev 137 128 4 29/ 22/ 49 Last Judgement Christian Schmidt 135 184 5 31/ 28/ 41 Battery Sascha Zapf 135 6 6 27/ 20/ 53 Rust [v0.2] inversed 135 107 7 40/ 45/ 15 Spy-Glass Christian Schmidt 135 20 8 31/ 29/ 40 HullabaTwo Roy 134 329 9 32/ 31/ 37 Halcyon Roy van Rijn 134 7 10 31/ 28/ 41 Eccentric Roy van Rijn 133 275 11 26/ 20/ 54 Sum Nenad Tomasev 133 8 12 31/ 29/ 41 Aardvark Roy van Rijn 133 29 13 24/ 17/ 59 Hen-Thorir bvowk/fizmo 132 45 14 26/ 21/ 53 2by4k P.Kline 132 47 15 39/ 46/ 15 HazyLazy C 42 Steve Gunnell / Chri 132 58 16 38/ 46/ 16 Grendel S.Fernandes 131 125 17 40/ 50/ 10 speed of light Christian Schmidt 130 110 18 41/ 53/ 6 don't disturb the dust! John Metcalf 130 2 19 25/ 20/ 56 IMPerishable Christian Schmidt 129 52 20 33/ 37/ 30 coffee beans John Metcalf 129 1 21 33/ 45/ 22 Spark2 inversed 121 0 From: KOTH Subject: KOTH.ORG: Status - Standard 01/23/06 Date: Mon, 23 Jan 2006 07:54:41 -0500 (EST) Message-ID: <200601230500.k0N500IB041418@asgard.t-b-o-h.net> Weekly Status on 01/23/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Mon Dec 19 09:16:20 EST 2005 # %W/ %L/ %T Name Author Score Age 1 35/ 22/ 43 Test Alexander (Sasha) Wa 147 174 2 40/ 37/ 23 My 1st try Christian Schmidt 143 66 3 35/ 28/ 37 The Next Step '88 David Houston 142 50 4 32/ 23/ 45 The Hurricaner G.Labarga 140 21 5 40/ 40/ 20 July Nenad Tomasev 139 7 6 31/ 23/ 46 Guardian Ian Oversby 139 234 7 42/ 47/ 11 Scan Test C 6 Steve Gunnell 138 73 8 40/ 41/ 19 Scan the Can Christian Schmidt 138 15 9 30/ 22/ 48 test G.Labarga 138 17 10 39/ 40/ 21 Moonwipe Christian Schmidt 138 31 11 42/ 49/ 9 Replihater Some Redcoder 135 5 12 25/ 14/ 61 Utterer '88 Christian Schmidt 135 9 13 32/ 30/ 37 The Seed Roy van Rijn 135 52 14 41/ 47/ 12 Speeed 88mph Christian Schmidt 135 34 15 38/ 42/ 20 trick shot John Metcalf 135 11 16 31/ 29/ 40 A.I.P. Christian Schmidt 132 42 17 21/ 12/ 67 IMParable G.Labarga 129 22 18 26/ 23/ 52 Scopulos pluviae G.Labarga 128 1 19 28/ 29/ 43 SoundOfDarkness Nenad Tomasev 127 2 20 29/ 35/ 36 Something Simple Some Redcoder 123 4 21 7/ 41/ 53 test Jens Gutzeit 72 0 From: roy.van.rijn@gmail.com Subject: Re-inventing a snippet Date: 24 Jan 2006 14:36:49 -0800 Message-ID: <1138142209.537006.282820@g14g2000cwa.googlegroups.com> I was saving this for the new Corewarrior, but after talking to Fizmo I realized it might not come soon... and he was very curious. So I'll just post it right away: The Mod-trick Since a while I have been dreaming about a new warrior, one that exists of two elements. The first element would be the bombing-imp-paper from Maelstrom, good against scanners and hard to kill. The second element would be a Moore style paper, which beats all kinds of papers. Both are papers, so we kill Stone/imps The stone+imp paper would kill Scanners And Moore's paper would kill Papers ----------------- + Perfect warrior? Well, to do this we have one big problem. Maelstroms paper works with 8 processes, and Moore's paper works with just 6. How do we boot them without losing too much time/space!? After a couple of tries with special jump instructions (djn/jmz/jmn) I asked Metcalf if he could remember something that could do this. John pointed me to a old rec.games.corewars article about killing processes with MOD.X. Here is how it works: The MOD.X instruction suicides when one (or both) fields are zero. But now we test this: (2p means 2 processes) 2p MOD.X #1 , #1 0p NOP >0 , 0 After the first step, one process has passed: 1p MOD.X #0 , #0 1p NOP >0 , 1 The second step kills the remaining process 0p MOD.X #0 , #0 1p NOP >0 , 1 So, a MOD.X #1 , #1 only lets one process go through. Maybe we can exploid this! Lets try 2,3: 1 MOD.X #2 , #3 2 MOD.X #2 , #1 3 MOD.X #0 , #1 < suicides So a MOD.X #2,#3 lets 2 processes go through! Now I could talk about math and stuff, a little bit more information is found here: http://groups.google.com/group/rec.games.corewar/browse_thread/thread/f6accd3610d19fc6/ef61269229c5705e?q=mod.x+processes&rnum=1#ef61269229c5705e To keep the story short, you can use the following formula to find the right mod-values for some numbers (until the values of the field become > coresize) For N processes use: MOD.X #fib(N+1) , #fib(N+2) fib() means Fibonacci numbers (1,1,2,3,5,8,13,21...etc, just add the last two numbers) This formula creates the following table Processes fib(N) Instruction: 1 1 MOD.X #1 ,#2 2 1 MOD.X #2 ,#3 3 2 MOD.X #3 ,#5 4 3 MOD.X #5 ,#8 5 5 MOD.X #8 ,#13 6 8 MOD.X #13 ,#21 7 13 MOD.X #21 ,#34 8 21 MOD.X #34 ,#55 9 34 MOD.X #55 ,#89 You can also use this recode program to calculate the right values you need: -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ;redcode-94odd ;name ModTrickCalculator ;author Roy van Rijn ;assert 1 ;This program works from 0-18 processes ;Fill this variable with the amount of processes needed amount equ 6 ;Here we calculate the ;mod.x #fib(n+1) , #fib(n+2) mov.x F , F S add.ab F , F djn.b -2 , #amount mov.i F , the_mod jmp test_it dat 0 , 0 dat 0 , 0 dat 0 , 0 F mod.x #1 , #1 dat 0 , 0 dat 0 , 0 dat 0 , 0 ;Now we test the mod we created ;First we create a lot of processes and ;let them loose on the mod: test_it spl 1 spl 1 spl 1 spl 1 spl 1 the_mod mod.x #1 , #1 see_it nop >0 , #0 ;The B-field records how many times it is executed end S -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= With the use of MOD.X #13,#21 I can make my perfect warrior! In the boot I can now use: SPL 1 SPL 1 SPL 1 MOV <1,{1 SPL somewhere, maelstrom_paper MOD.X #13,#21 ;<<--- MOV <1,{1 JMP somewhere, moore_paper This just takes one instruction! No significantly bigger fingerprint for scanners, and we only loose 8 steps (8x the mod is executed) The bad news? I put it all together, and it scored very bad... so its up to you all to make it work now! From: roy.van.rijn@gmail.com Subject: Paper ideas Date: 26 Jan 2006 10:29:27 -0800 Message-ID: <1138300167.458058.256250@o13g2000cwo.googlegroups.com> The (failed) improvement on Reepicheep's paper: You'll probebly know by now my favourite strategy is the paper. All kinds of papers, and I would like to understand every kind! One that struck me when I just started Corewars was Reepicheep's paper, it used some kind of trick, but I couldn't put my finger on it. So I'll analyze it with you, and try to make a improvement on it. This is the complete paper: pSilk0 spl @0 , >pDst0 mov }pSilk0 , >pSilk0 pSilk1 spl pDst1 , 0 mov >pSilk1 , }pSilk1 mov pBmb , >pHit0 mov pDst2 pBmb dat >5334 , >2667 The first copy of Reepicheep is very normal, almost all papers use this: pSilk0 spl @0 , >pDst0 mov }pSilk0 , >pSilk0 But this one is different: pSilk1 spl pDst1 , 0 mov >pSilk1 , }pSilk1 This second copy is a bit odd, it doesn't take advantage of the increment like the first, why would they do that? We'll probebly find that out later... Then there is the bombing instruction: mov pBmb , >pHit0 Now comes the special part about this paper: mov pDst2 The first line copies the paper again, it uses the pSilk1 line as pointer. When its fully copied using the move there is a slight problem with the stepsize, it is increased by 8! Now comes the djn line, while decrementing (and jumping) to the new paper, the B-field increments the targets B-field. This way the 0 stays 0, but the stepsize is the same as it was. So that is the secret of Reepicheep... Now my own variation on that paper, to keep the same stepsize we have to decrement is somewhere, but I want to use the normal advantages of the djn-stream. This is what I came up with: pSilk0 spl @0 , >pDst0 mov }pSilk0 , >pSilk0 pSilk1 spl @0 , >pDst1 mov }pSilk1 , >pSilk1 mov pBmb , >pHit0 mov {pSilk1 , 5334 , >2667 This time, the first two copies are made like most are done, and the bombing is also unchanged. The changes are in the last line: pSilk2 djn.f @0 , Subject: Re: Paper ideas Date: 27 Jan 2006 13:11:07 -0800 Message-ID: <1138396267.851221.9760@o13g2000cwo.googlegroups.com> > By pre-decrementing the b-field we get the same stepsize as we had > before, but we also decrement (djn.f) the location the new copy is > going to copy to! Yes, you decrement the same locations you are going to overwrite in the next generation, but that only works if none of them contain a "xxx 1,1" instruction. If there is one you will lose a process. P. Kline Message-ID: From: anton@paradise.net.nz (Anton Marsden) Subject: Core War Frequently Asked Questions (rec.games.corewar FAQ) Date: 28 Jan 2006 05:28:10 GMT Archive-name: games/corewar-faq Last-Modified: September 4, 1999 Version: 4.2 URL: http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html Copyright: (c) 1999 Anton Marsden Maintainer: Anton Marsden Posting-Frequency: once every 2 weeks Core War Frequently Asked Questions (rec.games.corewar FAQ) These are the Frequently Asked Questions (and answers) from the Usenet newsgroup rec.games.corewar. A plain text version of this document is posted every two weeks. The latest hypertext version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.html and the latest plain text version is available at http://homepages.paradise.net.nz/~anton/cw/corewar-faq.txt. This document is currently being maintained by Anton Marsden (anton@paradise.net.nz). Last modified: Sat Sep 4 00:22:22 NZST 1999 ------------------------------------------------------------------------ To Do * Add the new No-PSpace '94 hill location * Add online location of Dewdney's articles * Make question 17 easier to understand. Add a state diagram? * Add info about infinite hills, related games (C-Robots, Tierra?, ...) * New question: How do I know if my warrior is any good? Refer to beginners' benchmarks, etc. * Add a Who's Who list? * Would very much like someone to compile a collection of the "revolutionary" warriors so that beginners can see how the game has developed over the years. Mail me if interested. ------------------------------------------------------------------------ What's New * Changed primary location of FAQ (again!) * Changed Philip Kendall's home page address. * Updated list server information * Changed primary location of FAQ * Vector-launching code was fixed thanks to Ting Hsu. * Changed the location of Ryan Coleman's paper (LaunchPad -> Launchpad) * Changed pauillac.inria.fr to para.inria.fr ------------------------------------------------------------------------ Table of Contents 1. What is Core War 2. Is it "Core War" or "Core Wars"? 3. Where can I find more information about Core War? 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? 5. What is ICWS'94? Which simulators support ICWS'94? 6. What is the ICWS? 7. What is Core Warrior? 8. Where are the Core War archives? 9. Where can I find a Core War system for ...? 10. Where can I find warrior code? 11. I do not have FTP. How do I get all this great stuff? 12. I do not have access to Usenet. How do I post and receive news? 13. Are there any Core War related WWW sites? 14. What is KotH? How do I enter? 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? 16. How does SLT (Skip if Less Than) work? 17. What is the difference between in-register and in-memory evaluation? 18. What is P-space? 19. What does "Missing ;assert .." in my message from KotH mean? 20. How should I format my code? 21. Are there any other Core War related resources I should know about? 22. What does (expression or term of your choice) mean? 23. Other questions? ------------------------------------------------------------------------ 1. What is Core War? Core War is a game played by two or more programs (and vicariously by their authors) written in an assembly language called Redcode and run in a virtual computer called MARS (for Memory Array Redcode Simulator). The object of the game is to cause all processes of the opposing program to terminate, leaving your program in sole posession of the machine. There are Core War systems available for most computer platforms. Redcode has been standardised by the ICWS, and is therefore transportable between all standard Core War systems. The system in which the programs run is quite simple. The core (the memory of the simulated computer) is a continuous array of instructions, empty except for the competing programs. The core wraps around, so that after the last instruction comes the first one again. There are no absolute addresses in Core War. That is, the address 0 doesn't mean the first instruction in the memory, but the instruction that contains the address 0. The next instruction is 1, and the previous one obviously -1. However, all numbers are treated as positive, and are in the range 0 to CORESIZE-1 where CORESIZE is the amount of memory locations in the core - this means that -1 would be treated as CORESIZE-1 in any arithmetic operations, eg. 3218 + 7856 = (3218 + 7856) mod CORESIZE. Many people get confused by this, and it is particularly important when using the SLT instruction. Note that the source code of a program can still contain negative numbers, but if you start using instructions like DIV #-2, #5 it is important to know what effect they will have when executed. The basic unit of memory in Core War is one instruction. Each Redcode instruction contains three parts: * the opcode * the source address (a.k.a. the A-field) * the destination address (a.k.a. the B-field) The execution of the programs is equally simple. The MARS executes one instruction at a time, and then proceeds to the next one in the memory, unless the instruction explicitly tells it to jump to another address. If there is more than one program running, (as is usual) the programs execute alternately, one instruction at a time. The execution of each instruction takes the same time, one cycle, whether it is MOV, DIV or even DAT (which kills the process). Each program may have several processes running. These processes are stored in a task queue. When it is the program's turn to execute an instruction it dequeues a process and executes the corresponding instruction. Processes that are not killed during the execution of the instruction are put back into the task queue. Processes created by a SPL instruction are added to the task queue after the creating process is put back into the task queue. [ToC] ------------------------------------------------------------------------ 2. Is it "Core War" or "Core Wars"? Both terms are used. Early references were to Core War. Later references seem to use Core Wars. I prefer "Core War" to refer to the game in general, "core wars" to refer to more than one specific battle. [ToC] ------------------------------------------------------------------------ 3. Where can I find more information about Core War? Core War was first described in the Core War Guidelines of March, 1984 by D. G. Jones and A. K. Dewdney of the Department of Computer Science at The University of Western Ontario (Canada). Dewdney wrote several "Computer Recreations" articles in Scientific American which discussed Core War, starting with the May 1984 article. Those articles are contained in two anthologies: Library of Author Title Published ISBN Congress Call Number The Armchair Dewdney, Universe: An New York: W. QA76.6 .D517 A. K. Exploration of H. Freeman �0-7167-1939-8 1988 Computer Worlds 1988 The Magic 0-7167-2125-2 Dewdney, Machine: A New York: W.(Hardcover), QA76.6 A. K. Handbook of H. Freeman �0-7167-2144-9 .D5173 1990 Computer Sorcery 1990 (Paperback) A.K. Dewdney's articles are still the most readable introduction to Core War, even though the Redcode dialect described in there is no longer current. For those who are interested, Dewdney has a home page at http://www.csd.uwo.ca/faculty/akd/. [ToC] ------------------------------------------------------------------------ 4. Core War has changed since Dewdney's articles. Where do I get a copy of the current instruction set? A draft of the official standard (ICWS'88) is available as ftp://www.koth.org/corewar/documents/standards/redcode-icws-88.Z. This document is formatted awkwardly and contains ambiguous statements. For a more approachable intro to Redcode, take a look at Mark Durham's tutorials, ftp://www.koth.org/corewar/documents/tutorial.1.Z and ftp://www.koth.org/corewar/documents/tutorial.2.Z. Steven Morrell has prepared a more practically oriented Redcode tutorial that discusses different warrior classes with lots of example code. This and various other tutorials can be found at http://www.koth.org/papers.html. Even though ICWS'88 is still the "official" standard, you will find that most people are playing by ICWS'94 draft rules and extensions. [ToC] ------------------------------------------------------------------------ 5. What is ICWS'94? Which simulators support ICWS'94? There is an ongoing discussion about future enhancements to the Redcode language. A proposed new standard, dubbed ICWS'94, is currently being evaluated. A major change is the addition of "instruction modifiers" that allow instructions to modify A-field, B-field or both. Also new is a new addressing modes and unrestricted opcode and addressing mode combination ("no illegal instructions"). ICWS'94 is backwards compatible; i.e. ICWS'88 warriors will run correctly on an ICWS'94 system. Take a look at the ICWS'94 draft at ftp://www.koth.org/corewar/documents/icws94.0202.Z for more information. There is a HTML version of this document available at http://www.koth.org/info/icws94.html. You can try out the new standard by submitting warriors to the '94 hills of the KotH servers. Two corewar systems currently support ICWS'94, pMARS (many platforms) and Redcoder (Mac), both available at ftp://www.koth.org/corewar. Note that Redcoder only supports a subset of ICWS'94. [ToC] ------------------------------------------------------------------------ 6. What is the ICWS? About one year after Core War first appeared in Scientific American, the "International Core War Society" (ICWS) was established. Since that time, the ICWS has been responsible for the creation and maintenance of Core War standards and the running of Core War tournaments. There have been six annual tournaments and two standards (ICWS'86 and ICWS'88). The ICWS is no longer active. [ToC] ------------------------------------------------------------------------ 7. What is Core Warrior? Following in the tradition of the Core War News Letter, Push Off, and The 94 Warrior, Core Warrior is a newsletter about strategies and current standings in Core War. Started in October 1995, back issues of Core Warrior (and the other newsletters) are available at http://para.inria.fr/~doligez/corewar/. There is also a Core Warrior index page at http://www.kendalls.demon.co.uk/pak21/corewar/warrior.html which has a summary of the contents of each issue of Core Warrior. Many of the earlier issues contain useful information for beginners. [ToC] ------------------------------------------------------------------------ 8. Where are the Core War archives? Many documents such as the guidelines and the ICWS standards along with previous tournament Redcode entries and complete Core War systems are available via anonymous ftp from ftp://ftp.csua.berkeley.edu/pub/corewar. Also, most of past rec.games.corewar postings (including Redcode source listings) are archived there. Jon Blow (blojo@csua.berkeley.edu) is the archive administrator. When uploading to /pub/corewar/incoming, ask Jon to move your upload to the appropriate directory and announce it on the net. This site is mirrored at: * http://www.koth.org/corewar/ * ftp://www.koth.org/corewar/ * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror The plain text version of this FAQ is automatically archived by news.answers (but this version is probably out-of-date). [ToC] ------------------------------------------------------------------------ 9. Where can I find a Core War system for . . . ? Core War systems are available via anonymous FTP from www.koth.org in the corewar/systems directory. Currently, there are UNIX, IBM PC-compatible, Macintosh, and Amiga Core War systems available there. It is a good idea to check ftp://www.koth.org/corewar/incoming for program updates first. CAUTION! There are many, many Core War systems available which are NOT ICWS'88 (or even ICWS'86) compatible available at various archive sites other than www.koth.org. Generally, the older the program - the less likely it will be ICWS compatible. If you are looking for an ICWS'94 simulator, get pMARS, which is available for many platforms and can be downloaded from: * ftp://ftp.csua.berkeley.edu/pub/corewar (original site) * ftp://www.koth.org/corewar (koth.org mirror) * ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/mirror (Planar mirror) * http://www.nc5.infi.net/~wtnewton/corewar/ (Terry Newton) * ftp://members.aol.com/ofechner/corewar (Fechter) Notes: * If you have trouble running pMARS with a graphical display under Win95 then check out http://www.koth.org/pmars.html which should have a pointer to the latest compilation of pMARS for this environment. * RPMs for the Alpha, PowerPC, Sparc and i386 can be found at ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars-rpm/ Reviews of Core War systems would be greatly appreciated in the newsgroup and in the newsletter. Below is a not necessarily complete or up-to-date list of what's available at www.koth.org: MADgic41.lzh corewar for the Amiga, v4.1 MAD4041.lzh older version? MAD50B.lha corewar for the Amiga, beta version 5.0 Redcoder-21.hqx corewar for the Mac, supports ICWS'88 and '94 (without extensions) core-11.hqx corewar for the Mac core-wars-simulator.hqx same as core-11.hqx? corewar_unix_x11.tar.Z corewar for UNIX/X-windows, ICWS'86 but not ICWS'88 compatible koth31.tar.Z corewar for UNIX/X-windows. This program ran the former KotH server at intel.com koth.shar.Z older version kothpc.zip port of older version of KotH to the PC deluxe20c.tar.Z corewar for UNIX (broken X-windows or curses) and PC mars.tar.Z corewar for UNIX, likely not ICWS'88 compatible icons.zip corewar icons for MS-Windows macrored.zip a redcode macro-preprocessor (PC) c88v49.zip PC corewar, textmode display mars88.zip PC corewar, graphics mode display corwp302.zip PC corewar, textmode display, slowish mercury2.zip PC corewar written in assembly, fast! mtourn11.zip tournament scheduler for mercury (req. 4DOS) pmars08s.zip portable system, ICWS'88 and '94, runs on UNIX, PC, Mac, Amiga. C source archive pmars08s.tar.Z same as above pmars08.zip PC executables with graphics display, req 386+ macpmars02.sit.hqx pMARS executable for Mac (port of version 0.2) buggy, no display MacpMARS1.99a.cpt.hqx port of v0.8 for the Mac, with display and debugger MacpMARS1.0s.cpt.hqx C source (MPW, ThinkC) for Mac frontend pvms08.zip pMARS v0.8 for VMS build files/help (req. pmars08s.zip) ApMARS03.lha pMARS executable for Amiga (port of version 0.3.1) wincor11.zip MS-Windows system, shareware ($15) [ToC] ------------------------------------------------------------------------ 10. Where can I find warrior code? To learn the game, it is a good idea to study previously posted warrior code. The FTP archives have code in the ftp://www.koth.org/corewar/redcode directory. A clearly organized on-line warrior collection is available at the Core War web sites (see below). [ToC] ------------------------------------------------------------------------ 11. I do not have FTP. How do I get all this great stuff? There is an FTP email server at bitftp@pucc.princeton.edu. This address may no longer exist. I haven't tested it yet. Send email with a subject and body text of "help" (without the quotes) for more information on its usage. Note that many FTP email gateways are shutting down due to abuse. To get a current list of FTP email servers, look at the Accessing the Internet by E-mail FAQ posted to news.answers. If you don't have access to Usenet, you can retrieve this FAQ one of the following ways: * Send mail to mail-server@rtfm.mit.edu with the body containing "send usenet/news.answers/internet-services/access-via-email". * Send mail to mailbase@mailbase.ac.uk with the body containing "send lis-iis e-access-inet.txt". [ToC] ------------------------------------------------------------------------ 12. I do not have access to Usenet. How do I post and receive news? To receive rec.games.corewar articles by email, join the COREWAR-L list run on the Koth.Org list processor. To join, send the message SUB COREWAR-L FirstName LastName to listproc@koth.org. You can send mail to corewar-l@koth.org to post even if you are not a member of the list. Responsible for the listserver is Scott J. Ellentuch (ttsg@ttsg.com). Servers that allow you to post (but not receive) articles are available. Refer to the Accessing the Internet by E-Mail FAQ for more information. [ToC] ------------------------------------------------------------------------ 13. Are there any Core War related WWW sites? You bet. Each of the two KotH sites sport a world-wide web server. Stormking's Core War page is http://www.koth.org; pizza's is http://www.ecst.csuchico.edu/~pizza/koth . Damien Doligez (a.k.a. Planar) has a web page that features convenient access to regular newsletters (Push Off, The '94 Warrior, Core Warrior) and a well organized library of warriors: http://para.inria.fr/~doligez/corewar/. Convenient for U.S. users, this site is also mirrored at koth.org. [ToC] ------------------------------------------------------------------------ 14. What is KotH? How do I enter? King Of The Hill (KotH) is an ongoing Core War tournament available to anyone with email. You enter by submitting via email a Redcode program (warrior) with special comment lines. You will receive a reply indicating how well your program did against the current top programs "on the hill". There are two styles of KotH tournaments, "classical" and "multi-warrior". The "classical" KotH is a one-on-one tournament, that is your warrior will play 100 battles against each of the 20 other programs currently on the Hill. You receive 3 points for each win and 1 point for each tie. (The existing programs do not replay each other, but their previous battles are recalled.) All scores are updated to reflect your battles and all 21 programs are ranked from high to low. If you are number 21 you are pushed off the Hill, if you are higher than 21 someone else is pushed off. In "multi-warrior" KotH, all warriors on the hill fight each other at the same time. Score calculation is a bit more complex than for the one-on-one tournament. Briefly, points are awarded based on how many warriors survive until the end of a round. A warrior that survives by itself gets more points than a warrior that survives together with other warriors. Points are calculated from the formula (W*W-1)/S, where W is the total number of warriors and S the number of surviving warriors. The pMARS documentation has more information on multi-warrior scoring. The idea for an email-based Core War server came from David Lee. The original KotH was developed and run by William Shubert at Intel starting in 1991, and discontinued after almost three years of service. Currently, KotHs based on Bill's UNIX scripts but offering a wider variety of hills are are running at two sites: koth@koth.org is maintained by Scott J. Ellentuch (tuc@ttsg.com) and pizza@ecst.csuchico.edu by Thomas H. Davies (sd@ecst.csuchico.edu). Up until May '95, the two sites provided overlapping services, i.e. the some of the hill types were offered by both "pizza" and "stormking". To conserve resources, the different hill types are now divided up among the sites. The way you submit warriors to both KotHs is pretty much the same. Therefore, the entry rules described below apply to both "pizza" and "stormking" unless otherwise noted. Entry Rules for King of the Hill Corewar * Write a corewar program. KotH is fully ICWS '88 compatible, EXCEPT that a comma (",") is required between two arguments. * Put a line starting with ";redcode" (or ";redcode-94", etc., see below) at the top of your program. This MUST be the first line. Anything before it will be lost. If you wish to receive mail on every new entrant, use ";redcode verbose". Otherwise you will only receive mail if a challenger makes it onto the hill. Use ";redcode quiet" if you wish to receive mail only when you get shoved off the hill. Additionally, adding ";name " and ";author " will be helpful in the performance reports. Do NOT have a line beginning with ";address" in your code; this will confuse the mail daemon and you won't get mail back. Using ";name" is mandatory on the Pizza hills. In addition, it would be nice if you have lines beginning with ";strategy" that describe the algorithm you use. There are currently seven separate hills you can select by starting your program with ;redcode-94, ;redcode-b, ;redcode-lp, ;redcode-x, ;redcode, ;redcode-94x or ;redcode-94m. The former four run at "pizza", the latter three at "stormking". More information on these hills is listed below. * Mail this file to koth@koth.org or pizza@ecst.csuchico.edu. "Pizza" requires a subject of "koth" (use the -s flag on most mailers). * Within a few minutes you should get mail back telling you whether your program assembled correctly or not. If it did assemble correctly, sit back and wait; if not, make the change required and re-submit. * In an hour or so you should get more mail telling you how your program performed against the current top 20 (or 10) programs. If no news arrives during that time, don't worry; entries are put in a queue and run through the tournament one at a time. A backlog may develop. Be patient. If your program makes it onto the hill, you will get mail every time a new program makes it onto the hill. If this is too much mail, you can use ";redcode[-??] quiet" when you first mail in your program; then you will only get mail when you make it on the top 25 list or when you are knocked off. Using ";redcode[-??] verbose" will give you even more mail; here you get mail every time a new challenger arrives, even if they don't make it onto the top 25 list. Often programmers want to try out slight variations in their programs. If you already have a program named "foo V1.0" on the hill, adding the line ";kill foo" to a new program will automatically bump foo 1.0 off the hill. Just ";kill" will remove all of your programs when you submit the new one. The server kills programs by assigning an impossibly low score; it may therefore take another successful challenge before a killed program is actually removed from the hill. Sample Entry ;redcode ;name Dwarf ;author A. K. Dewdney ;strategy Throw DAT bombs around memory, hitting every 4th memory cell. ;strategy This program was presented in the first Corewar article. bomb DAT #0 dwarf ADD #4, bomb MOV bomb, @bomb JMP dwarf END dwarf ; Programs start at the first line unless ; an "END start" pseudo-op appears to indicate ; the first logical instruction. Also, nothing ; after the END instruction will be assembled. Duration Max. Hill Name Hill Core Max. Before Entry Min. Rounds Instr. Size Size Processes Distance Fought Set Tie Length Pizza's ICWS '94 Draft Hill Extended (Accessed with 25 8000 8000 80000 100 100 200 ICWS '94 ";redcode-94") Draft Pizza's Beginner's Extended Hill (Accessed 25 8000 8000 80000 100 100 200 ICWS '94 with ";redcode-b") Draft Pizza's Experimental Extended (Small) Hill 25 800 800 8000 20 20 200 ICWS '94 (Accessed with Draft ";redcode-x") Pizza's Limited Process (LP) Hill Extended (Accessed with 25 8000 8 80000 200 200 200 ICWS '94 ";redcode-lp") Draft Stormking's ICWS '88 Standard Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '88 ";redcode") Stormking's ICWS '94 No Pspace Hill (Accessed with 20 8000 8000 80000 100 100 250 ICWS '94 ";redcode-94nop") Stormking's ICWS '94 Experimental Extended (Big) Hill 20 55440 55440 500000 200 200 250 ICWS '94 (Accessed with Draft ";redcode-94x") Stormking's ICWS '94 Multi-Warrior Extended Hill (Accessed 10 8000 8000 80000 100 100 200 ICWS '94 with Draft ";redcode-94m") Note: Warriors on the beginner's hill are retired at age 100. If you just want to get a status report without actually challenging the hills, send email with ";status" as the message body (and don't forget "Subject: koth" for "pizza"). If you send mail to "pizza" with "Subject: koth help" you will receive instructions that may be more up to date than those contained in this document. At "stormking", a message body with ";help" will return brief instructions. If you submit code containing a ";test" line, your warrior will be assembled but not actually pitted against the warriors on the hill. At "pizza", you can use ";redcode[-??] test" to do a test challenge of the Hill without affecting the status of the Hill. These challenges can be used to see how well your warrior does against the current Hill warriors. All hills run portable MARS (pMARS) version 0.8, a platform-independent Core War system available at www.koth.org. The '94 and '94x hills allow five experimental opcodes and three experimental addressing modes currently not covered in the ICWS'94 draft document: * LDP - Load P-Space * STP - Store P-Space * SEQ - Skip if EQual (synonym for CMP) * SNE - Skip if Not Equal * NOP - (No OPeration) * * - indirect using A-field as pointer * { - predecrement indirect using A-field * } - postincrement indirect using A-field [ToC] ------------------------------------------------------------------------ 15. Is it DAT 0, 0 or DAT #0, #0? How do I compare to core? Core is initialized to DAT 0, 0. This is an illegal instruction (in source code) under ICWS'88 rules and strictly compliant assemblers (such as KotH or pmars -8) will not let you have a DAT 0, 0 instruction in your source code - only DAT #0, #0. So this begs the question, how to compare something to see if it is empty core. The answer is, most likely the instruction before your first instruction and the instruction after your last instruction are both DAT 0, 0. You can use them, or any other likely unmodified instructions, for comparison. Note that under ICWS'94, DAT 0, 0 is a legal instruction. [ToC] ------------------------------------------------------------------------ 16. How does SLT (Skip if Less Than) work? SLT gives some people trouble because of the way modular arithmetic works. It is important to note that all negative numbers are converted to positive numbers before a battles begins. Example: -1 becomes M-1 where M is the memory size (core size). Once you realize that all numbers are treated as positive, it is clear what is meant by "less than". It should also be clear that no number is less than zero. [ToC] ------------------------------------------------------------------------ 17. What is the difference between in-register and in-memory evaluation? These terms refer to the way instruction operands are evaluated. The '88 Redcode standard ICWS'88 is unclear about whether a simulator should "buffer" the result of A-operand evaluation before the B-operand is evaluated. Simulators that do buffer are said to use in-register evaluation, those that don't, in-memory evaluation. ICWS'94 clears this confusion by mandating in-register evaluation. Instructions that execute differently under these two forms of evaluation are MOV, ADD, SUB, MUL, DIV and MOD where the effective address of the A-operand is modified by evaluation of the B-operand. This is best illustrated by an example: L1 mov L2, mov.i #0, impsize Bootstrapping Strategy of copying the active portion of the program away from the initial location, leaving a decoy behind and making the relocated program as small as possible. B-Scanners Scanners which only recognize non-zero B-fields. example add #10, scan scan jmz example, 10 c Measure of speed, equal to one location per cycle. Speed of light. CMP-Scanner A Scanner which uses a CMP instruction to look for opponents. example add step, scan scan cmp 10, 30 jmp attack jmp example step dat #20, #20 Colour Property of bombs making them visible to scanners, causing them to attack useless locations, thus slowing them down. example dat #100 Core-Clear Code that sequentially overwrites core with DAT instructions; usually the last part of a program. Decoys Bogus or unused instructions meant to slow down scanners. Typically, DATs with non-zero B-fields. Decrement Resistant Property of warriors making them functional (or at least partially functional) when overrun by a DJN-stream. DJN-Stream (also DJN-Train) Using a DJN command to rapidly decrement core locations. example ... ... djn example, <4000 Dwarf The prototypical small bomber. Gate-busting (also gate-crashing) technique to "interweave" a decrement-resistant imp-spiral (e.g. MOV 0, 2668) with a standard one to overrun imp-gates. Hybrids warriors that combine two or more of the basic strategies, either in sequence (e.g. stone->paper) or in parallel (e.g. imp/stone). Imp Program which only uses the MOV instruction. example mov 0, 1 or example mov 0, 2 mov 0, 2 Imp-Gate A location in core which is bombed or decremented continuously so that an Imp can not pass. Also used to describe the program-code which maintains the gate. example ... ... spl 0, mov.i #0,IMPSIZE Mirror see reflection. On-axis/off-axis On-axis scanners compare two locations M/2 apart, where M is the memory size. Off-axis scanners use some other separation. Optimal Constants (also optima-type constants) Bomb or scan increments chosen to cover core most effectively, i.e. leaving gaps of uniform size. Programs to calculate optimal constants and lists of optimal numbers are available at www.koth.org. Paper A Paper-like program is one which replicates itself many times. Part of the Scissors (beats) Paper (beats) Stone (beats Scissors) analogy. P-Warrior A warrior which uses the results of previous round(s) in order to determine which strategy it will use. Pit-Trapper (also Slaver, Vampire). A program which enslaves another. Usually accomplished by bombing with JMPs to a SPL 0 pit with an optional core-clear routine. Q^2 Scan A modern version of the Quick Scan where anything found is attacked almost immediately. Quick Scan 2c scan of a set group of core locations with bombing if anything is found. Both of the following codes snips scan 16 locations and check for a find. If anything is found, it is attacked, otherwise 16 more locations are scanned. Example: start s1 for 8 ;'88 scan cmp start+100*s1, start+100*s1+4000 ;check two locations mov #start+100*s1-found, found ;they differ so set pointer rof jmn attack, found ;if we have something, get it s2 for 8 cmp start+100*(s2+6), start+100*(s2+6)+4000 mov #start+100*(s2+6)-found, found rof found jmz moveme, #0 ;skip attack if qscan found nothing attack cmp @found, start-1 ;does found points to empty space? add #4000, found ;no, so point to correct location mov start-1, @found ;move a bomb moveme jmp 0, 0 In ICWS'94, the quick scan code is more compact because of the SNE opcode: start ;'94 scan s1 for 4 sne start+400*s1, start+400*s1+100 ;check two locations seq start+400*s1+200, start+400*s1+300 ;check two locations mov #start+400*s1-found, found ;they differ so set pointer rof jmn which, found ;if we have something, get it s2 for 4 sne start+400*(s2+4), start+400*(s2+4)+100 seq start+400*(s2+4)+200, start+400*(s2+4)+300 mov #start+400*(s2+4)-found-100, found rof found jmz moveme, #0 ;skip attack if qscan found nothing add #100, -1 ;increment pointer till we get the which jmn -1, @found ;right place mov start-1, @found ;move a bomb moveme jmp 0, 0 Reflection Copy of a program or program part, positioned to make the active program invisible to a CMP-scanner. Replicator Generic for Paper. A program which makes many copies of itself, each copy also making copies. Self-Splitting Strategy of amplifying the number of processes executing a piece of code. example spl 0 loop add #10, example mov example, @example jmp loop Scanner A program which searches through core for an opponent rather than bombing blindly. Scissors A program designed to beat replicators, usually a (B-field scanning) vampire. Part of the Paper-Scissors-Stone analogy. Self-Repair Ability of a program to fix it's own code after attack. Silk A replicator which splits off a process to each new copy before actually copying the code. This allows it to replicate extremely quickly. This technique is only possible under the '94 draft, because it requires post-increment indirect addressing. Example: spl 1 mov -1, 0 spl 1 ;generate 6 consecutive processes silk spl 3620, #0 ;split to new copy mov >-1, }-1 ;copy self to new location mov bomb, >2000 ;linear bombing mov bomb, }2042 ;A-indirect bombing for anti-vamp jmp silk, {silk ;reset source pointer, make new copy bomb dat >2667, >5334 ;anti-imp bomb Slaver see Pit-Trapper. Stealth Property of programs, or program parts, which are invisible to scanners, accomplished by using zero B-fields and reflections. Stone A Stone-like program designed to be a small bomber. Part of the Paper-Scissors-Stone analogy. Stun A type of bomb which makes the opponent multiply useless processes, thus slowing it down. Example is referred to as a SPL-JMP bomb. example spl 0 jmp -1 Two-Pass Core-Clear (also SPL/DAT Core-Clear) core clear that fills core first with SPL instructions, then with DATs. This is very effective in killing paper and certain imp-spiral variations. Vampire see Pit-Trapper. Vector Launch one of several means to start an imp-spiral running. As fast as Binary Launch, but requiring much less code. See also JMP/ADD Launch and Binary Launch. This example is one form of a Vector Launch: sz EQU 2667 spl 1 spl 1 jmp @vt, }0 vt dat #0, imp+0*sz ; start of vector table dat #0, imp+1*sz dat #0, imp+2*sz dat #0, imp+3*sz ; end of vector table imp mov.i #0, sz [ToC] ------------------------------------------------------------------------ 23. Other questions? Just ask in the rec.games.corewar newsgroup or contact me. If you are shy, check out the Core War archives first to see if your question has been answered before. [ToC] ------------------------------------------------------------------------ Credits Additions, corrections, etc. to this document are solicited. Thanks in particular to the following people who have contributed major portions of this document: * Mark Durham (wrote the original version of the FAQ) * Paul Kline * Randy Graham * Stefan Strack (maintained a recent version of the FAQ) ------------------------------------------------------------------------ Copyright � 1999 Anton Marsden. Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved. ------------------------------------------------------------------------ From: =?ISO-8859-2?Q?=A3ukasz_Adamowski?= Subject: Odp: Re-inventing a snippet Date: Sat, 28 Jan 2006 14:55:13 -0500 (EST) Message-ID: <43dbb7f9a3068@wp.pl> Dnia 25-01-2006 o godz. 0:15 roy.van.rijn@gmail.com napisal: > I was saving this for the new Corewarrior, but after talking to Fizmo I > realized it might not come soon... and he was very curious. So I'll > just post it right away: > > The Mod-trick [...] > For N processes use: MOD.X #fib(N+1) , #fib(N+2) > > fib() means Fibonacci numbers (1,1,2,3,5,8,13,21...etc, just add the > last two numbers) > > This formula creates the following table > > Processes fib(N) Instruction: > > 1 1 MOD.X #1 ,#2 > 2 1 MOD.X #2 ,#3 > 3 2 MOD.X #3 ,#5 > 4 3 MOD.X #5 ,#8 > 5 5 MOD.X #8 ,#13 > 6 8 MOD.X #13 ,#21 > 7 13 MOD.X #21 ,#34 > 8 21 MOD.X #34 ,#55 > 9 34 MOD.X #55 ,#89 [...] Once I've tried to separate a single process from paper (it was a white warrior from one of RF rounds I think) and I thought about something like this: spl 2 jmp *1 mov.x #2, $0 dat 0 nop 0 etc. I don't remember for sure if it was in such order, but I know I used MOV.X. It works, but I must say I like the MOD.X trick much more. Thank you, Roy! :) Lukasz Adamowski -= You mean "A-imp" or "A-bomb"? =- ---------------------------------------------------- Cameron Diaz i Toni Collette w filmie SIOSTRY W kinach od 27 stycznia 2005 r. http://klik.wp.pl/?adr=http%3A%2F%2Fadv.reklama.wp.pl%2Fas%2Fsiostry.html&sid=641 From: "Robert Macrae" Subject: Re: Paper ideas Date: Sun, 29 Jan 2006 10:54:02 -0500 (EST) Message-ID: <020701c624e8$974916c0$2200a8c0@Mesh1> > This is what I came up with: > > pSilk0 spl @0 , >pDst0 > mov }pSilk0 , >pSilk0 > pSilk1 spl @0 , >pDst1 > mov }pSilk1 , >pSilk1 > mov pBmb , >pHit0 > mov {pSilk1 , pSilk2 djn.f @0 , pBmb dat >5334 , >2667 ... > More decrements could mean more points... but I'm shocked to find it > doesn't score better. Look at the scores against my benchmark: Not sure about that argument. My untested belief is that much of the superiority of lines like pSilk1 spl @0 , >pDst1 over pSilk1 spl @0 , pDst1 is that they make it harder for an overwritten enemy warrior to piggyback the paper. They don't do any damage when executed before the child starts to execute, but disrupt it's copying if they are executed by later processes. However, in Reepicheep this may already be handled by the line mov pDst1 is better than pSilk1 spl @0 , leaves gaps in the child whereas < should just insert extra SPLs and MOVs and should hurt piggybacks less. If Reepicheep's constants have been optimised ("If" 8-) then any modifications are likely to hurt because some second-order interraction has been disrupted. For a fair test you should either reoptimise the constants for your new scheme or (much easier but imperfect) test the idea with a sample of random constants. > Reepicheep: 150,16 > Improvement(?): 148,67 This is a small difference, not enough IMO to discredit the idea given that optimised constants will flatter the original. Something else you might like to try with this paper is whether something like: pSilk0 spl @0 , >pDst0 mov }pSilk0 , >pSilk0 mov }pSilk0 , >pSilk0 pSilk1 spl pDst1 , 0 mov >pSilk1 , }pSilk1 mov pBmb , >pHit0 mov pDst2 pBmb dat >5334 , >2667 executed with 6 processes worked better. One possible advantage is that the main engine splits faster. In effect you attack 4/3x as many places, with each attack 3/4x as long; with the right constants this can give better coverage. Robert Macrae From: KOTH Subject: KOTH.ORG: Status - Standard 01/30/06 Date: Mon, 30 Jan 2006 06:44:52 -0500 (EST) Message-ID: <200601300500.k0U500Am057355@asgard.t-b-o-h.net> Weekly Status on 01/30/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Standard KotH CoreWar Hill : Last battle concluded at : Sun Jan 29 15:00:52 EST 2006 # %W/ %L/ %T Name Author Score Age 1 35/ 24/ 42 Test Alexander (Sasha) Wa 145 177 2 41/ 41/ 18 Scan the Can Christian Schmidt 142 18 3 35/ 29/ 36 The Next Step '88 David Houston 141 53 4 40/ 39/ 22 My 1st try Christian Schmidt 140 69 5 42/ 46/ 11 Scan Test C 6 Steve Gunnell 139 76 6 39/ 41/ 19 July Nenad Tomasev 137 10 7 30/ 25/ 45 The Hurricaner G.Labarga 136 24 8 39/ 42/ 19 trick shot John Metcalf 135 14 9 30/ 26/ 44 Guardian Ian Oversby 135 237 10 38/ 42/ 20 Moonwipe Christian Schmidt 135 34 11 33/ 32/ 35 The Seed Roy van Rijn 134 55 12 41/ 48/ 11 Speeed 88mph Christian Schmidt 134 37 13 42/ 50/ 8 Replihater Some Redcoder 134 8 14 31/ 29/ 39 SoundOfDarkness Nenad Tomasev 134 1 15 29/ 25/ 46 test G.Labarga 132 20 16 23/ 16/ 61 Utterer '88 Christian Schmidt 131 12 17 30/ 33/ 38 A.I.P. Christian Schmidt 126 45 18 20/ 13/ 68 IMParable G.Labarga 126 25 19 25/ 24/ 52 Scopulos pluviae G.Labarga 126 4 20 28/ 30/ 42 Matreshka Rulez! inversed 126 3 21 32/ 43/ 25 ShootAndHideTheLoot Nenad Tomasev 122 0 From: KOTH Subject: KOTH.ORG: Status - ICWS Experimental 94 01/30/06 Date: Mon, 30 Jan 2006 06:44:51 -0500 (EST) Message-ID: <200601300506.k0U560VX057786@asgard.t-b-o-h.net> Weekly Status on 01/30/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG ICWS Experimental 94 CoreWar Hill: Last battle concluded at : Sun Jan 15 22:39:22 EST 2006 # %W/ %L/ %T Name Author Score Age 1 46/ 36/ 19 Fatamorgana X Zul Nadzri 156 10 2 45/ 36/ 19 Ogre Christian Schmidt 154 171 3 44/ 37/ 20 The X Machine Zul Nadzri 151 34 4 35/ 21/ 43 xd100 test David Houston 149 20 5 43/ 39/ 18 Eliminator X Zul Nadzri 147 35 6 28/ 11/ 61 Evol Cap 4 X John Wilkinson 146 292 7 33/ 25/ 42 KAT v5 Dave Hillis 142 155 8 39/ 37/ 24 Trefoil F 13 Steve Gunnell 141 106 9 23/ 6/ 71 Evolve X v4.0 John Wilkinson 141 240 10 39/ 38/ 23 Trefoil Test F 14 Steve Gunnell 139 7 11 39/ 40/ 21 Bewitching S.Fernandes 139 1 12 41/ 43/ 16 Giant Hazy Test 13 Steve Gunnell 139 50 13 41/ 44/ 15 O_Fortuna3X Nenad Tomasev 138 6 14 38/ 37/ 25 test Some Redcoder 138 4 15 39/ 41/ 20 Simply Intelligent Zul Nadzri 138 16 16 39/ 40/ 21 Controlled Aggression Ian Oversby 137 223 17 33/ 30/ 38 Olivia X Ben Ford 136 104 18 39/ 43/ 18 Black Moods Ian Oversby 136 219 19 32/ 28/ 40 Glenstorm John Metcalf 136 85 20 39/ 46/ 14 Fatal Choice Some Redcoder 132 5 21 6/ 76/ 18 : messybomber : Joshua Renfrey 37 0 From: KOTH Subject: KOTH.ORG: Status - MultiWarrior 94 01/30/06 Date: Mon, 30 Jan 2006 06:44:52 -0500 (EST) Message-ID: <200601300503.k0U530Eg057521@asgard.t-b-o-h.net> Weekly Status on 01/30/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG Multiwarrior 94 CoreWar Hill: Last battle concluded at : Sat Jan 28 13:32:14 EST 2006 # Name Author Score Age 1 JustADirtyClearTest Nenad Tomasev 41 53 2 Urgle Daniel Rivas 33 4 3 nameless fragment S.Fernandes 32 23 4 Fluffy Paper VI Jens Gutzeit 29 24 5 simply believe John Metcalf 29 1 6 Diptera Nenad Tomasev 26 38 7 kingdom of the grasshoppe simon wainwright 22 119 8 the price of hostility John Metcalf 22 11 9 Simon Gruber datagram 21 19 10 Gungnir John Metcalf 15 6 11 Razorgirl S.Fernandes 14 0 From: KOTH Subject: KOTH.ORG: Status - 94 No Pspace 01/30/06 Date: Mon, 30 Jan 2006 06:44:49 -0500 (EST) Message-ID: <200601300509.k0U590hm058041@asgard.t-b-o-h.net> Weekly Status on 01/30/06 -=- irc.KOTH.org is up! Meetings held in #corewars -=- Tons of new features on www.KOTH.org/koth.html pages -=- *FAQ* page located at: www.KOTH.org/corewar-faq.html Current Status of the KOTH.ORG 94 No Pspace CoreWar Hill: Last battle concluded at : Sat Jan 28 12:56:44 EST 2006 # %W/ %L/ %T Name Author Score Age 1 32/ 26/ 42 Monster_Human_Grunt inversed 137 26 2 37/ 40/ 23 Razorgirl S.Fernandes 135 1 3 38/ 42/ 20 Lemuria Nenad Tomasev 134 44 4 25/ 16/ 59 Guano Roy van Rijn 134 16 5 35/ 37/ 28 Codgeriffic P.Kline 133 3 6 39/ 47/ 14 Spy-Glass Christian Schmidt 132 47 7 39/ 46/ 14 HazyLazy C 42 Steve Gunnell / Chri 132 85 8 26/ 20/ 54 Last Judgement Christian Schmidt 132 211 9 30/ 28/ 42 Gods Of Destiny Nenad Tomasev 131 155 10 29/ 28/ 43 Battery Sascha Zapf 131 33 11 29/ 26/ 45 Monster_Alien_Grunt inversed 131 27 12 24/ 17/ 59 Tie Fast!!! Christian Schmidt 130 2 13 29/ 27/ 44 Eccentric Roy van Rijn 130 302 14 23/ 17/ 60 Sum Nenad Tomasev 130 35 15 28/ 27/ 45 DanceOfFallenAngels Nenad Tomasev 130 140 16 41/ 52/ 7 don't disturb the dust! John Metcalf 130 29 17 24/ 20/ 55 Rust [v0.2] inversed 128 134 18 28/ 30/ 41 HullabaTwo Roy 126 356 19 21/ 16/ 63 Hen-Thorir bvowk/fizmo 126 72 20 33/ 41/ 26 YANWS inversed 126 19 21 28/ 32/ 40 Halcyon Roy van Rijn 124 34 Subject: CHAIN-LETTER..Its LEGAL..$6 will make you A TON OF CASH ! ! ! From: "Rob Coppola" Date: Tue, 31 Jan 2006 17:45:31 -0600 Message-ID: <1138751130_11995@sp6iad.superfeed.net> CHAIN-LETTER..Its LEGAL..$6 will make you A TON OF CASH ! ! ! U.S. Post Office(1-800-725-2161) and they confirmed that it is indeed legal! Then I invested measly $6.00 ..... .......plus postage Well GUESS WHAT!!... within 7 days, I started getting money in the mail! I was shocked! I still figured it would end soon, and didn't give it another thought. But the money just kept coming in. In my first week, I made about $20.00 to $30.00 dollars. By the end of the second week I had made a total of over $1,000.00!!!!!! In the third week I had over $10,000.00 and it's still growing. This is now my fourth week and I have made a total of just over $42,000.00 and it's still coming in rapidly....... It's certainly worth $6.00, and 6 stamps, I spent more than that on the lottery!! Let me tell you how this works and most importantly, why it works.... also, make sure you print a copy of this article NOW, so you can get the information off of it as you need it. The process is very simple and consists of 3 easy steps: STEP 1: Get 6 separate pieces of paper and write the following on Each piece of paper "PLEASE PUT ME ON YOUR MAILING LIST." along with your name and address. Now get 6 - $1.00 bills (US CASH ONLY) and place ONE inside EACH of the 6 pieces of paper so the bill will not be seen through the envelope to prevent thievery. Next, place one paper in each of the 6 envelopes and seal them. You should now have 6 sealed envelopes, each with a piece of paper stating the above phrase, your name and address, and a $1.00 bill. What you are doing is creating a service by this. THIS IS ABSOLUTELY LEGAL! Mail the 6 envelopes to the following addresses: #1 B.J. Mauray 210 Herr St. Lebanon, PA 17042 #2 Antoine Lafontant P.O. Box 729444 Tallahassee,Florida 32307 #3 Shayla Price P. O. Box 5375 Thibodaux, LA 7 #4 William Madison 2555 Lexington Ave Apt 19 Salem, OH 44460 #5 Jenny Gariss 7119 196th st. S.W. Lynnwood, Wash. 98036 #6 Rob Coppola 21 Estates Dr. Port Jeff Station, NY 11776 STEP 2: Now take the #1 name off the list that you see above, move the other names up (6 becomes 5, 5 becomes 4, etc...) and add YOUR Name as number 6 on the list. (Use your delete" key to remove name #1 and move all other names up. Then change numbers and add your name as #6) STEP 3: Change anything you need to, but try to keep this article as close to original as possible. Now, post your amended article to at least 200 newsgroups. (I think there is close to 24,000 groups) All you need is 200, but remember, the more you post, the more money you make! -------------------------------- THATS IT! All you have to do is jump to different newsgroups and post away, after you get the hang of it, it will take about 30 seconds for each newsgroup! **REMEMBER, THE MORE NEWSGROUPS YOU POST IN, THE MORE MONEY YOU WILL MAKE!! ----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==---- http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups ----= East and West-Coast Server Farms - Total Privacy via Encryption =---- Subject: CHAIN-LETTER..Its LEGAL..$6 will make you A TON OF CASH ! ! ! From: "Rob Coppola" Date: Tue, 31 Jan 2006 17:52:03 -0600 Message-ID: <1138751523_12001@sp6iad.superfeed.net> CHAIN-LETTER..Its LEGAL..$6 will make you A TON OF CASH ! ! ! U.S. Post Office(1-800-725-2161) and they confirmed that it is indeed legal! Then I invested measly $6.00 ..... .......plus postage Well GUESS WHAT!!... within 7 days, I started getting money in the mail! I was shocked! I still figured it would end soon, and didn't give it another thought. But the money just kept coming in. In my first week, I made about $20.00 to $30.00 dollars. By the end of the second week I had made a total of over $1,000.00!!!!!! In the third week I had over $10,000.00 and it's still growing. This is now my fourth week and I have made a total of just over $42,000.00 and it's still coming in rapidly....... It's certainly worth $6.00, and 6 stamps, I spent more than that on the lottery!! Let me tell you how this works and most importantly, why it works.... also, make sure you print a copy of this article NOW, so you can get the information off of it as you need it. The process is very simple and consists of 3 easy steps: STEP 1: Get 6 separate pieces of paper and write the following on Each piece of paper "PLEASE PUT ME ON YOUR MAILING LIST." along with your name and address. Now get 6 - $1.00 bills (US CASH ONLY) and place ONE inside EACH of the 6 pieces of paper so the bill will not be seen through the envelope to prevent thievery. Next, place one paper in each of the 6 envelopes and seal them. You should now have 6 sealed envelopes, each with a piece of paper stating the above phrase, your name and address, and a $1.00 bill. What you are doing is creating a service by this. THIS IS ABSOLUTELY LEGAL! Mail the 6 envelopes to the following addresses: #1 B.J. Mauray 210 Herr St. Lebanon, PA 17042 #2 Antoine Lafontant P.O. Box 729444 Tallahassee,Florida 32307 #3 Shayla Price P. O. Box 5375 Thibodaux, LA 7 #4 William Madison 2555 Lexington Ave Apt 19 Salem, OH 44460 #5 Jenny Gariss 7119 196th st. S.W. Lynnwood, Wash. 98036 #6 Rob Coppola 21 Estates Dr. Port Jeff Station, NY 11776 STEP 2: Now take the #1 name off the list that you see above, move the other names up (6 becomes 5, 5 becomes 4, etc...) and add YOUR Name as number 6 on the list. (Use your delete" key to remove name #1 and move all other names up. Then change numbers and add your name as #6) STEP 3: Change anything you need to, but try to keep this article as close to original as possible. Now, post your amended article to at least 200 newsgroups. (I think there is close to 24,000 groups) All you need is 200, but remember, the more you post, the more money you make! -------------------------------- THATS IT! All you have to do is jump to different newsgroups and post away, after you get the hang of it, it will take about 30 seconds for each newsgroup! **REMEMBER, THE MORE NEWSGROUPS YOU POST IN, THE MORE MONEY YOU WILL MAKE!! ----== Posted via Newsfeeds.Com - Unlimited-Unrestricted-Secure Usenet News==---- http://www.newsfeeds.com The #1 Newsgroup Service in the World! 120,000+ Newsgroups ----= East and West-Coast Server Farms - Total Privacy via Encryption =----