Sections
Home
Hills
Infinite Hills
Tournaments
Software
Evolving
Optimizer
Community
Newsletter
Discussion
History
Sections
 
For Beginners
First Steps
FAQ
Guides
Lexicon
Benchmarks
For Beginners
> Home > The Corewar Newsletters > Core Warrior > Issue #1

Issue 24                                                       April  8, 1996
______________________________________________________________________________
Core Warrior is a weekly newsletter promoting the game of corewar.  Emphasis
is placed on the most active hills--currently the '94 draft hill and the
beginner hill.  Coverage will follow where ever the action is.  If you have
no clue what I'm talking about then check out these five-star internet locals
for more information:

FAQs are available by anonymous FTP from rtfm.mit.edu as
pub/usenet/news.answers/games/corewar-faq.Z
FTP site is: ftp.csua.berkeley.edu /pub/corewar
Web pages are at:
http://www.stormking.com/~koth                  ;Stormking
http://www.ecst.csuchico.edu/~pizza/koth        ;Pizza
http://pauillac.inria.fr/~doligez/corewar/      ;Planar

Newbies should check the stormking page for the FAQ, language specification,
guides, and tutorials.  Post questions to rec.games.corewar.  All new players
are infinitely welcome!

If ftp.csua.berkeley.edu is still out of service, you can download Pmars at
Terry's web page--http://www.infi.net/~wtnewton/corewar/
______________________________________________________________________________
Greetings.

Some of you may have received april fool's warrior reports in the mail last
week showing your prize warrior getting killed off the hill, courtesy of the
staff here at Core Warrior.  We can't take all the credit as Thos was a quite
willing participant and essential to the little deception.  No hard feelings
and all in good fun, right?  Hope you enjoyed it.

Not quite an average week for the corewar scene.  The biggest news:  in the
tradition of Jippo's Silk Warrior and Boeren's Gilled Octopus, a new name
straight from the beginner's hill lands on top of the '94 draft hill.  And
quite a bit of age fell off the hill in the process.

Also in this issue, a Core Warrior exclusive, source code to Thermite II by
Robert Macrae.

--M R Bremer
______________________________________________________________________________
Current Status of the Internet Pizza Server ICWS '94 Draft Hill:

Hill Specs:
         coresize: 8000
   max. processes: 8000
         duration: after 80,000 cycles, a tie is declared.
max. entry length: 100
 minimum distance: 100
    rounds fought: 200
  instruction set: ICWS '94 Draft

 #  %W/ %L/ %T                      Name               Author   Score     Age
 1  46/ 38/ 16                Scanny Boy        David van Dam     155      73
 2  42/ 34/ 23      Grilled Octopus v0.5         David Boeren     150     459
 3  42/ 37/ 21          Gem of the Ocean              P.Kline     148     112
 4  43/ 38/ 19                  Mirage 2        Anton Marsden     147       9
 5  44/ 43/ 13            Stepping Stone          Kurt Franke     146      56
 6  39/ 34/ 27                     prova    Maurizio Vittuari     144     219
 7  27/ 13/ 60             Hazy Shade II             John K W     142     202
 8  36/ 31/ 33                   Lithium     John K Wilkinson     141     250
 9  39/ 36/ 25               Thermite II        Robert Macrae     141    1243
10  44/ 47/  9                  Memories          Beppe Bezzi     141      96
11  29/ 18/ 53            Impfinity v4g1               Planar     140    1442
12  35/ 31/ 34        A Hard Day's Night    Maurizio Vittuari     140     205
13  39/ 38/ 23                 Chameleon           M R Bremer     139     714
14  39/ 40/ 21              No Prisoners             John K W     138       3
15  37/ 36/ 27                    T.N.T.    Maurizio Vittuari     138     968
16  34/ 30/ 36               Blue Funk 5       Steven Morrell     138     387
17  35/ 34/ 31               Tornado 3.0                Beppe     136    1044
18  22/  9/ 69              Evol Cap 6.6       John Wilkinson     135    1257
19  31/ 26/ 44                   Barrage        Anton Marsden     135     716
20  39/ 43/ 18                     C I A         Anders Ivner     135      94
21  31/ 26/ 43          Marcia Trionfale          Beppe Bezzi     135      16
22  32/ 30/ 38                    Flurry        Anton Marsden     135     204
23  35/ 36/ 29             Eternal Flame             John K W     134     103
24  34/ 33/ 33                      test              P.Kline     134      40
25  31/ 31/ 38                  Hector 4          Kurt Franke     132       1

Weekly age: 138
New warriors 11  Turnover/age rate 8%
Average age: 397 ( 401 last week, 350 the week before )
Average score: 140 ( 141 last week, 142 the week before )
The top 25 warriors are represented by 13 authors, JKW with 5, Bezzi,
Marsden, Vittuari, each with 3.

In a move that's not totally new, but even still surprising none the less, a
b-hill author lands a warrior on top of the '94 hill.  David van Dam's GPT
series was scattered throughout the beginners' hill, doing quite well but not
spectacularly.  However, Scanny Boy has all the right stuff to dominate the
'pro' hill.  In case you haven't noticed, Scanny Boy is a .5c scanner with
a spl/spl/dat coreclear and djn stream.  Good job.

Before van Dam burst onto the scene, Gem of the Ocean reigned supreme with
scores up to 166 points.  Naked Dancer and Grilled Octopus led for a short
while, along with venerable Impfinity.  However, near the end of the week, it
was reigning Scanny Boy with brief outbreaks of Octopus.

Kurt Franke decided to kill Stepping Stone at an age of 529, remove the hand-
shake and then resubmit it.  Stepping Stone was in 10th place and doing well,
but the new version jumped on in 4th place.  Anticipating the removal of self
fights?  Coincidentally, Memories also left the hill at an age of 529.
Frontwards v2 also took the off ramp and left the hill at exit 1420.
However, it occupies a very prestigious spot in the corewar hall of fame.

Replicators are getting the snot beat out of them.  Evol Cap, Barrage, Marcia
Trionfale, and Hector 4 are all lurking on the bottom rungs of the hill.
Most likely due to the effects of Scanny Boy and Mirage 2.
______________________________________________________________________________
94 - What's New

 #  %W/ %L/ %T                      Name               Author   Score     Age
25   8/ 39/ 53          Gem of the Ocean              P.Kline      76       1
16  34/ 36/ 30             Eternal Flame             John K W     133       1
 8  43/ 48/  9                  Memories          Beppe Bezzi     138       1
22  39/ 44/ 17                     C I A         Anders Ivner     134       1
 9  44/ 46/ 10              Naked dancer          Beppe Bezzi     141       1
 1  44/ 40/ 16                Scanny Boy        David van Dam     148       1
 4  43/ 43/ 14            Stepping Stone          Kurt Franke     143       1
12  30/ 25/ 45          Marcia Trionfale          Beppe Bezzi     134       1
 4  40/ 39/ 20                  Mirage 2        Anton Marsden     141       1
16  36/ 43/ 21              No Prisoners             John K W     130       1
25  31/ 31/ 38                  Hector 4          Kurt Franke     132       1

New versions of Gem of the Ocean, Memories, Naked Dancer, and Stepping Stone.
CIA is back after a week long absence.  
______________________________________________________________________________
94 - What's No More.

 #  %W/ %L/ %T                      Name               Author   Score     Age
26   3/  1/  0              Naked dancer          Beppe Bezzi       9      56
26   4/  3/  1                   Error 0               Planar      14      40
26   2/  2/  0          Gem of the Ocean              P.Kline       6       7
26  25/ 34/ 40               tripod v1.3         Brian Haskin     117      16
26  39/ 52/  9                  Memories          Beppe Bezzi     125     529
26  35/ 43/ 21                Sloth v0.4          Ian Oversby     127     127
26  26/ 25/ 49                  Hector 3          Kurt Franke     127     151
26  37/ 46/ 17          Wind-up Toy v0.4          Ian Oversby     128      64
26  36/ 44/ 20             myConfuser2.1             Paulsson     127      63
26  38/ 51/ 12             Frontwards v2       Steven Morrell     125    1420
26   2/  2/  0            Stepping Stone          Kurt Franke       5     529

Over 3,000 challenges of age disappered from the hill this week.
______________________________________________________________________________
94 - What's Old

 #  %W/ %L/ %T                      Name               Author   Score     Age
19  27/ 18/ 54            Impfinity v4g1               Planar     137    1442
16  23/  9/ 68              Evol Cap 6.6       John Wilkinson     138    1257
 3  41/ 34/ 25               Thermite II        Robert Macrae     147    1243
12  37/ 32/ 31               Tornado 3.0                Beppe     142    1044
10  39/ 35/ 26                    T.N.T.    Maurizio Vittuari     143     968
 7  34/ 25/ 41                   Barrage        Anton Marsden     144     716
 5  41/ 35/ 24                 Chameleon           M R Bremer     147     714
 6  41/ 37/ 22      Grilled Octopus v0.5         David Boeren     146     459
24  32/ 31/ 37               Blue Funk 5       Steven Morrell     134     387

No one new.  Interesting.
______________________________________________________________________________
HALL OF FAME
* means the warrior is still active.

Pos    Name                  Author          Age     Strategy
 1  Jack in the box        Beppe Bezzi       1620    P-warrior
 2  Torch t18              P.Kline           1539    Bomber
 3  Impfinity v4g1         Planar            1442 *  Stone/ imp
 4  Frontwards v2          Steven Morrell    1420    One shot scanner
 5  quiz                   Schitzo           1262    Scanner/ bomber
 6  Evol Cap 6.6           John Wilkinson    1257 *  Imp / stone
 7  Thermite II            Robert Macrae     1243 *  Qscan -> bomber
 8  Tornado 3.0            Beppe Bezzi       1044 *  Bomber
 9  T.N.T.                 Maurizio Vittuari  968 *  Bomber
10  Iron Gate 1.5          Wayne Sheppard     926    CMP scanner
11  Agony II               Stefan Strack      912    CMP scanner
12  Blue Funk              Steven Morrell     869    Stone/ imp
13  Thermite 1.0           Robert Macrae      802    Qscan -> bomber
14  Blue Funk 3            Steven Morrell     766    Stone/ imp
15  Night Train            Karl Lewin         755    Replicator
16  Mirage 1.5             Anton Marsden      736    Scanner/ bomber
17  Barrage                Anton Marsden      716 *  Qscan -> replicator
18  Chameleon              Myer R Bremer      714 *  P-warrior
19  Blizzard               Anton Marsden      713    Qscan -> replicator
20  HeremScimitar          A.Ivner,P.Kline    666    Bomber
21  La Bomba               Beppe Bezzi        650    Qscan -> replicator
22  myVamp v3.7            Paulsson           643    Vampire
23  Hazy Shade Of Winter   John Wilkinson     616    P-warrior
24  Armory - A5            John Wilkinson     609    P-warrior
25  juliet and paper       Bremer & Bezzi     607    P-warrior

Frontwards v2 ends its run up the hall of fame ranks at number 4 clearing
the way for Impfinity, the current active age leader.  Phq is pushed off by
newcomer Chameleon, now in 18th place.  Minimum price of admission to the
hall rises from 578 to 607.  Grilled Octopus would be the next warrior to
join the elite, perhaps next week, maybe a bit longer depending on the volume
of challenges.
______________________________________________________________________________
Current Status of the Internet Pizza Server Beginner's Hill:

Hill Specs:
         coresize: 8000
   max. processes: 8000
         duration: after 80,000 cycles, a tie is declared.
max. entry length: 100
 minimum distance: 100
      maximum age: At age 100, warriors are retired.
    rounds fought: 200
  instruction set: ICWS '94 Draft

 #  %W/ %L/ %T                      Name               Author   Score     Age
 1  58/ 28/ 14        Violent Micro v0.3             basehead     189       2
 2  50/ 17/ 33          Fork v0.2-9p/51b    Christoph C. Birk     182      17
 3  45/ 12/ 43        Vectorfantasy v0.3             basehead     177      14
 4  49/ 36/ 15        Living Let Die III               Julian     162      71
 5  50/ 38/ 12                  Anti Imp       bjoern guenzel     161       5
 6  44/ 27/ 30          Bag of Tricks II       Andy Nevermind     161      98
 7  50/ 42/  8                   GPT 21a        David van Dam     158      39
 8  38/ 19/ 43               Toxin v0.6a                Edgar     158      65
 9  39/ 24/ 37      Hyakutake Perihelion         Scott Manley     154      54
10  41/ 29/ 30              Rabbit v0.2a    Christoph C. Birk     152      20
11  46/ 41/ 14                  look-see            Anonymous     150      47
12  38/ 36/ 26               Ineffectual          Ian Oversby     141      73
13  43/ 45/ 11          Optma Dwarf v5.1              Phoenix     141      87
14  43/ 47/ 11           bloodstone V2.0       bjoern guenzel     139      83
15  40/ 42/ 17            MegaSnail v1.1                Edgar     138      66
16  26/ 22/ 53         The Wild Thirteen       bjoern guenzel     129      38
17  40/ 52/  8          Optma Dwarf v5.0              Phoenix     128      89
18  35/ 43/ 22             Badhead V1.0p       bjoern guenzel     127      53
19  36/ 48/ 17          Antibodies Mk II        Andrew Fabbro     123      24
20  38/ 56/  6           beta tiny twist       bjoern guenzel     119       9
21  31/ 46/ 23            small incident       bjoern guenzel     116      22
22  24/ 34/ 43            The Wild Mover       bjoern guenzel     114      35
23   9/ 55/ 37                  doofworm       bjoern guenzel      62       3
24   7/  2/  2               test Anti 6       bjoern guenzel      24       7
25   2/ 98/  0                   Unknown            Anonymous       6       1

basehead has new versions of Violent Micro and Vectorfantasy out.  They're
not number one and number two this time, but one, three isn't so bad.  It's
difficult to tell exactly what's on the beginner's hill due to lack of
strategy lines.  Hello Anonymous.  I know who you are.  What do you think
about having a beginners' hill without any age limits?  Maybe some sort of
intermediate hill?  
______________________________________________________________________________
The Hint
--------
The entire collection of Core Warrior hints written so far are now are
available at ftp.csua.berkeley.edu/pub/corewar/documents/bbhints.zip
--------
Sorry.  None this week.  These things are becoming difficult to think of.
______________________________________________________________________________
Extra Extra

Paul Kline recently published Gem of the Ocean, with a plea for more
open-ness. Considering he was king at the time I consider that a royal
command :) 

I hadn't published Thermite II because it is really very similar to Thermite
1.0 in concept, and any published QS may suffer from other QS's which have
scans tuned to defeat it. To ameliorate this problem I have changed the QS
order for this version, but there should be no impact on performance except
against other QS. Here are the big changes over Thermite 1.0.

-- Scans Only 60 Locations

The code is slimmer than before, since I only scan 60 locations instead of
the 78 required to cover the whole of core. Why? Well... If you are fighting
a non-quickscanner, you give up a few wins, but not too many as, by the time
the last 20 locations have been scanned, the enemy has had ample time to boot.

If you are fighting a QS, a similar argument applies; the missed wins are
minimal because the enemy should already have hit you! OTOH you gain
*substantially* from the occasions on which he scans one of the locations
left vacant by slimming your code, hence missing you, because you have a 75%
chance of a free attack on him while he scans on.

-- Tornado Incendiary Bombing

My old version used a 0.33c vampire to attack once the enemy had been
scanned. Using a 0.6c incendiary bomber gives almost as thorough a kill,
delivered much faster. The indirect bombing also permits attacking 3
widely-spaced locations with each cycle of the bombing loop. This goes well
with my prefered wide coverage of the target area. No matter whether I scan
the warrior, a decoy before or a decoy after, there will be bombs landing
near the warrior soon.

I use SPL/MOV/JMP incendiary bombs to obtain maximum effect against Silks,
to which Brand tends to lose. This does cost me some losses against other
QS's armed with DAT bombs in the cases when we find each other at roughly
the same time, and I land a stun while he lands a kill. La Bomba, against
which I did most of my development, was particularly frustrating to deal
with but the 60-location scan helped.

-- Tweaked Brand

Not much different from the other variants. Re-ordering of the main loop
gave a small gain against my test suite (as I remember I needed 4000 battles
to be sure; I _mean_ small) and the constants have been optimised against
Silks, to give maximum run length. Spacing is somewhat compromised, which
will hurt against bombers, but (by good fortune) this property helps against
anti-bombers which rely on mod-4 patterns. I rather like succeeding because
I'm *less* efficient than my opponent's strategy assumes :)

-- Launched Bomber

Why? The version without the launch hit #1 on it's first hill test (hard to
beat:) and anyway, after a QS you have removed the most urgent incentive to
launch, because any QS has already hit you or been hit; either way,
launching won't matter. But... I had a vague feeling that it might not be
safe to hang around. One-Shots, perhaps? When I wrote Thermite II Silk/Imps
were strong and numerous, and a resurgence of carpet-bombing scanners seemed
like one possible future. I decided that, even though I lost some points
through the extra length and time taken to start bombing, it would pay in
terms of life-expectancy to launch, so the second version is the one I left
on the hill. 

BTW I'm not overly keen on exhaustive testing of incremental variants on the
hill; the benefit is that you develop a good feel for the character of each
constituent but (for me) at the cost of losing some of the charm which lies
in new ideas or at least new uses for old ones. In any case, if I choose to
leave the lesser of two versions on the hill, whats the point >:-?

-- Bug?

John K.W. mailed me with a tiny, suicidal warrior which managed to beat
Thermite once in two hundred times. All I can imagine is that, that one
time, I somehow scanned his code within its few cycles of life, and that
then I crashed as a result. But how?

>Program "Thermite II" (length 100) by "Robert Macrae"
>(contact address "ff95@dial.pipex.com"):
>;strategy Same old strategy, but nastier...
>Killing Hazy Shade Of Winter III wins: 1
>Thermite II wins: 199
>Ties: 0
>
>How did I get a win against Thermite?!?!
>Here is an EXACT copy of what I sent to Pizza...
>Thermite would've had to die within 3 cycles! ... :/
>
>;redcode-94
>;name Killing Hazy Shade Of Winter III
>;kill Hazy Shade Of Winter III
>;author John K W
>
>p: ldp.b #0, #0
>jmp <-1

Any ideas, anyone :-?


			        THERMITE  II

------------------------------------------------------------------------------

;redcode-94
;name Thermite II
;kill Thermite II
;author Robert Macrae
;assert CORESIZE == 8000
;strategy Same old strategy, but nastier...

; Therm 3.7 had everything I wanted for scan and bomber (Brand 3.3).
; Now check for any surplus cells, clean up logic, shuffle scan
;  -- the tedious stuff.
; *****  REMEMBER  *****  not to publish scan in this order!

; Therm 4.1 tries launching bomber, against oneshots!

org     start

qstep   equ     6                  ; gap between bombs
qrounds equ     8                  ; number of bombing runs
qgap    equ     (qrounds * qstep)  ; Space covered by each bomb-type
qspread equ     (qgap*3)           ; Total coverage

bigst   equ     113
qstart  equ     start+1000
qst     equ     qstart -(4*bigst)

; ------------------------------------------------------

qspb    spl     -1,      #qgap+1      ; 3 bombs for QS
qmvb    mov     -qgap,   >-qgap
qjmb    jmp     -qgap,   -2*qgap+qstep
qincr   dat     #qstep,  #qstep       ; step for QS

which   add.b   found,  found2    ; (From Pyramid)
	sne.i   @found, @found2   ; Is it in first two?
	  add.ab  #2*bigst, found
	sne.i   qspb-1, @found    ; Is it first or third?
	  add.ab  #bigst,found

	mov     qjmb,   @found
found   seq     qspb-1, *0        ; look qgap back from hit     
	 sub.ab #qgap/2, found    ; and sub qgap/2 if found.
	
qplace  add.b   found,  #-qgap/2+qstep+found
	mov.i   qspb,   @qplace   ; Preposition first SPL
	add.ba  found,  qstone
	add.b   found,  qstone    ; Initialise Tornado pointers

qst1    mov     qjmb,    *qstone       ; Tornado bombing engine
	mov     qmvb,    @qstone       ; "to fill enemy with hot
qstone  mov     @3*qgap/2+found, *qgap/2+found
	sub.f   qincr,   qstone        ; Adapted to SPL/MOV/JMP
	djn.b   qst1,    #qrounds      ; and to cover wider range.

launch  mov     cp,      cp+4000       
lloop   mov     {launch, <launch
	mov     {launch, <launch
	mov     {launch, <launch
	djn     lloop,   #2
	mov     wipe,    wipe+4000-1
	mov     {-1,     <-1
	mov     sm,      sm+4000+3
found2  jmp     @launch, #bigst+found  ; pointer to second hit  

;r edcode-94
;n ame Brand 3.3
;a uthor Robert Macrae
;s trategy Rebadged Torch :) 
;s trategy New constants, anti-paper profile.

; 3.2 tried new constants with no trailing MOV and a 2603 runlength;
; 3.3 moves in gate and mvb for extra paper-resistance.

step1    equ   899    
step2    equ   902
 
gate     dat   -100, 200                
wipe     dat   -2, #cp-gate+2
; 1 DAT
sp       spl   #step2, step2+1   
msm      mov   sm+3, *tgt+2*step1+step2    
msp      mov   sp, @msm           
in       add   #step1+step2, @msp  
tgt      djn.f msm, <4502           ; bombed with spl to start clear
clr      mov   wipe-1, >gate-1
cp       djn.f clr, {gate-1
; 3 DATs
sm       mov   -step2, >-step2      ; mov half of the incendiary

	 FOR 11
	   dat 0, 0
	 ROF

start
s1 for 5
	sne.x   qst+4*bigst*s1, qst+4*bigst*s1+bigst*1
	seq.x   qst+4*bigst*s1+bigst*2, qst+4*bigst*s1+bigst*3
	mov.ab  #qst+4*bigst*s1-found, found  
     rof
	jmn  which,   found
s2 for 5
	sne.x   qst+4*bigst*(s2+5), qst+4*bigst*(s2+5)+bigst*1
	seq.x   qst+4*bigst*(s2+5)+bigst*2, qst+4*bigst*(s2+5)+bigst*3
	mov.ab  #qst+4*bigst*(s2+5)-found, found
     rof
	jmn  which,   found
s3 for 5
	sne.x qst+4*bigst*(s3+10), qst+4*bigst*(s3+10)+bigst*1
	seq.x qst+4*bigst*(s3+10)+bigst*2, qst+4*bigst*(s3+10)+bigst*3
	mov.ab  #qst+4*bigst*(s3+10)-found, found
     rof
	jmn.b   which, found
	jmp     launch, {-500
     
	end 

------------------------------------------------------------------------------

All in all it surprises me that such modest changes lead to such an increase
in effectiveness, but then Thermite 1.0 was never intended as more than a
first version. It was left on the hill only because I ran out of coding time.

For further explanation of the QS concept, see Corewarrior 5 for the code of
Thermite 1.0. Note that Michael Constant and Beppe Bezzi (at least) have
strong and somewhat different views on the subject :) So far, Thermite II
seems to beat Beppe's "qtest" warriors handily ;]

Guess I'll have to write something new now...
______________________________________________________________________________
Questions?  Concerns?  Comments?  Complaints?  Mail them to people who care.
authors: Beppe Bezzi <bezzi@nemo.it> or Myer Bremer <bremermr@ecn.purdue.edu>
2002-2005 corewar.info. Logo C. Schmidt