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>
|