Issue 35 June 24, 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 unreachable, you can download pMARS at:
Terry's web page--http://www.infi.net/~wtnewton/corewar/
Planar fpt site--ftp://ftp.inria.fr/INRIA/Projects/para/doligez/cw/pmars
Fechter ftp site--ftp://members.aol.com/ofechner/corewar
______________________________________________________________________________
Greetings.
Pizza hill changes are going to be implemented, Thos is at work and new
feature will soon be available, mail your comments, proposals and bug finds
to <sd@ecst.csuchico.edu>
J.K. Lewis and Andrew Fabbro have opened a new hill on their server.
Presently they run a limited process hill with all other stats like 94 hill,
you can play and help them testing sending your warriors to:
<koth@wastedyouth.us.itd.umich.edu> with a ;redcode-94lp header. The hill
implements many features, to get more info send a mail with a subject of
'help' (no quotation marks) to the above address.
I hope the hill masters will agree for a common syntax of commands, having a
different one in every server is sure confusing.
--Beppe Bezzi
______________________________________________________________________________
New Pizza features
o Remove self fights on all hills that use pspace.
o Add the "test" command to decrease artificial aging of the hill.
I think the best (and easiest) way to do this would be as an
argument to the ";redcode" command like "quiet" and "verbose" are
now. ";redcode test" would challenge all the warriors on the hill
(only 100 times?), but the results would be discarded. This way
you could see how your changes affect your performance against all
the warriors on the hill, but you get the results back twice as
fast.
o Add the ";password" command, to make it harder to forge ";kill"
commands.
o Make ";name" commands mandatory, and make blank ";kill" commands
illegal.
o Add the ";url" and ";show" commands for web access. ";url" is
pretty much self explanatory, but ";show" will be used to customize
how much info on your warrior you want to make public. "[no]source"
and "[no]score" are two possible arguments to add.
o Add the ";change [warrior name]" command to allow you to change info
in your warrior without having to kill it and resubmit it. If you
wanted to make it "quiet" while you go on vacation, or change the
";url", just send one piece of mail with ";change" in it. This would
do a substring match like ";kill", and any other commands in the mail
would be changed in the warrior. Does this make sense?
Any other ideas, or comments on the above proposals?
Thos
______________________________________________________________________________
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 41/ 41/ 14 Goldfinch P.Kline 137 1
2 37/ 36/ 23 Yogi Bear P.Kline 134 3
3 31/ 26/ 39 Jack in the box II Beppe Bezzi 133 156
4 35/ 35/ 26 Jo Clark II Ian Oversby 132 157
5 20/ 5/ 71 The Avalanche John Wilkinson 131 22
6 35/ 36/ 25 Twister Beppe Bezzi 131 253
7 27/ 20/ 50 Rosebud Beppe 130 472
8 30/ 28/ 38 test jb21 Beppe Bezzi 129 4
9 21/ 10/ 65 ompega Steven Morrell 129 150
10 35/ 39/ 22 Blur 2 Anton Marsden 128 5
11 37/ 42/ 17 myVamp5.1 Paulsson 128 49
12 25/ 18/ 53 rhodium v1.3 Martin M. Pedersen 128 24
13 34/ 37/ 26 T.N.T. pro Maurizio Vittuari 127 517
14 37/ 44/ 15 HopScotch 1.6 Robert Macrae 126 266
15 26/ 23/ 48 blue candle bjoern guenzel 126 386
16 32/ 35/ 29 Thermite II Robert Macrae 125 2138
17 36/ 44/ 16 Stepping Stone Kurt Franke 124 951
18 31/ 35/ 30 Scotch Broth 1.2 Robert Macrae 124 48
19 27/ 27/ 42 the historian bjoern guenzel 124 272
20 30/ 33/ 34 Thalamus mod Edgar 123 200
21 32/ 37/ 27 Goliath David van Dam 123 19
22 30/ 35/ 31 test Maurizio 123 197
23 22/ 17/ 58 Hazy Shade II John K W 123 1097
24 30/ 34/ 32 * Satura * bjoern guenzel 122 10
25 31/ 37/ 29 test E P.Kline 121 7
Weekly age: 108 ( 67 last week, 47 the week before )
New warriors: 11 Turnover/age rate 10%
Average age: 296 ( 269 last week, 306 the week before )
Average score: 127 ( 133 last week, 140 the week before )
The top 25 warriors are represented by 14 authors: Bezzi with 4, guenzel,
Macrae and Kline with 3, Vittuari and JKW with 2.
A burst of activity on the hill, after some quiet weeks this one we had more
than 100 challenges.
King Report: Jack in the box held king position for the first days, then
come some rumble, with many warriors alternating at the top, until Paul
Kline set thing in his favourite manner, placing strongly his new pspacer
Goldfinch with a good lead over the second, his other pspacer Yogi bear.
Blur was pushed off but a new version toke its place, in a very good
position, adding to the number of 'versions number two'; presently there are
five plus TNT pro that can be considered a version two itself too. All but
Jo Clark are childrens of successful warriors.
Replicator are back and holding the hill in fifth and twelfth position, with
JKW Avalanche and rhodium by the newcomer Petersen. The coming of paper
caused the fall of some bombers holding top positions last weeks.
______________________________________________________________________________
94 - What's New
# %W/ %L/ %T Name Author Score Age
1 41/ 41/ 14 Goldfinch P.Kline 137 1
2 37/ 36/ 23 Yogi Bear P.Kline 134 3
5 20/ 5/ 71 The Avalanche John Wilkinson 131 22
8 30/ 28/ 38 test jb21 Beppe Bezzi 129 4
10 35/ 39/ 22 Blur 2 Anton Marsden 128 5
11 37/ 42/ 17 myVamp5.1 Paulsson 128 49
12 25/ 18/ 53 rhodium v1.3 Martin M. Pedersen 128 24
18 31/ 35/ 30 Scotch Broth 1.2 Robert Macrae 124 48
21 32/ 37/ 27 Goliath David van Dam 123 19
24 30/ 34/ 32 * Satura * bjoern guenzel 122 10
25 31/ 37/ 29 test E P.Kline 121 7
Many new interesting warriors did the hill this week, half of the top ten
scorers are new.
______________________________________________________________________________
94 - What's No More
# %W/ %L/ %T Name Author Score Age
26 1/ 1/ 2 Armory II John K W 5 55
26 1/ 1/ 2 test 1 bjoern guenzel 5 28
26 2/ 1/ 1 Versatility 1.0 Ross Morgan-Linial 7 18
26 32/ 38/ 31 stoninc Maurizio 126 301
26 2/ 1/ 0 Scimitar 2 P.Kline 7 35
26 2/ 1/ 1 jupiter crash bjoern guenzel 6 30
26 34/ 43/ 23 Blur Anton Marsden 124 463
26 1/ 1/ 1 myVamp5.0 Paulsson 5 108
26 1/ 1/ 1 Test bb v1.41 David van Dam 5 106
26 21/ 23/ 56 Atom Smasher Anton Marsden 120 172
26 32/ 41/ 27 Versatility 1.2 Ross Morgan-Linial 123 105
Marsden's Blur is the the oldest warrior pushed off; it has been quickly
replaced by a new, more effective, version.
______________________________________________________________________________
94 - What's Old
# %W/ %L/ %T Name Author Score Age
16 32/ 35/ 29 Thermite II Robert Macrae 125 2138
22 22/ 17/ 58 Hazy Shade II John K W 123 1097
17 36/ 44/ 16 Stepping Stone Kurt Franke 124 951
13 34/ 37/ 26 T.N.T. pro Maurizio Vittuari 127 517
8 27/ 20/ 50 Rosebud Beppe 130 472
15 26/ 23/ 48 blue candle bjoern guenzel 126 386
Blur is no more, blue candle enters. Hazy shade II enters the over 1000 group.
_____________________________________________________________________________
HALL OF FAME
* means the warrior is still active.
Pos Name Author Age Strategy
1 Thermite II Robert Macrae 2138 * Qscan -> bomber
2 Impfinity v4g1 Planar 1993 Stone/ imp
3 Jack in the box Beppe Bezzi 1620 P-warrior
4 Tornado 3.0 Beppe Bezzi 1567 Bomber
5 Torch t18 P.Kline 1539 Bomber
6 Chameleon Myer R Bremer 1437 P-warrior
7 Frontwards v2 Steven Morrell 1420 One shot scanner
8 Evol Cap 6.6 John Wilkinson 1299 Imp / stone
9 quiz Schitzo 1262 Scanner/ bomber
10 T.N.T. Maurizio Vittuari 1204 Bomber
11 Grilled Octopus v0.5 David Boeren 1154 P-warrior
12 Hazy Shade II John Wilkinson 1097 * P-warrior
13 Stepping Stone Kurt Franke 951 * Qscan -> Vampire
14 Iron Gate 1.5 Wayne Sheppard 926 CMP scanner
15 Agony II Stefan Strack 912 CMP scanner
16 Barrage Anton Marsden 876 Qscan -> replicator
17 Blue Funk Steven Morrell 869 Stone/ imp
18 Flurry Anton Marsden 835 Qscan -> pwarrior
19 Thermite 1.0 Robert Macrae 802 Qscan -> bomber
20 Blue Funk 3 Steven Morrell 766 Stone/ imp
21 Night Train Karl Lewin 755 Replicator
22 Mirage 1.5 Anton Marsden 736 Scanner/ bomber
23 Blizzard Anton Marsden 713 Qscan -> replicator
24 HeremScimitar A.Ivner,P.Kline 666 Bomber
25 La Bomba Beppe Bezzi 650 Qscan -> replicator
Thermite passes the 2100 and is still in good health even if dropping a bit,
Hazy shade resists and passes the 1000 milestone. Stepping stone gains some
positions and is now near 1000 age.
But three living warriors are in the hall, compared to the seven of last
month; perhaps scores are setting, after the increment for the introduction
of five more spots, and making the hall is getting harder.
______________________________________________________________________________
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 45/ 28/ 23 Versatility 1.2 Ross Morgan-Linial 158 14
2 48/ 36/ 12 Thalamus Edgar 156 71
3 46/ 37/ 13 Saboteur v0.3p shar 152 21
4 43/ 31/ 23 Mace Edgar 151 91
5 43/ 41/ 12 Thalamus Edgar 141 47
6 28/ 14/ 55 test-paper Martin M. Pedersen 138 10
7 40/ 41/ 15 hyper 1.0 Ross 135 19
8 41/ 42/ 13 Sapper Andrew Fabbro 135 97
9 26/ 13/ 57 rhodium v1.3 Martin M. Pedersen 135 6
10 31/ 24/ 41 Fork v0.1-13p (i) Christoph C. Birk 135 78
11 40/ 43/ 13 3-clear 0.6 Ilmari Karonen 133 22
12 28/ 22/ 46 Cannon Fodder I. Karonen 130 1
13 40/ 46/ 11 Not Very Pretty 2.0 Ross Morgan-Linial 130 45
14 28/ 24/ 43 Hunter V 0.9 O.Fechner 129 72
15 16/ 4/ 76 Nematode v1.2b Jonathan Stott 125 2
16 33/ 38/ 24 test Justin Kao 124 11
17 25/ 22/ 49 Avenger I Oliver Fechner 124 18
18 31/ 40/ 25 3-clear 0.5 I. Karonen 118 36
19 28/ 37/ 30 Yet Another Try 1i Justin Kao 116 43
20 33/ 49/ 14 Switch Hitter 0.3t Ross Morgan-Linial 114 26
21 24/ 30/ 43 Hunter V 0.8 O.Fechner 114 93
22 29/ 41/ 26 Yet Another Try 1.0b Justin Kao 114 56
23 30/ 43/ 23 Extremely Prejudiced Scott Manley 112 98
24 27/ 41/ 28 1,000lb weight Ross Morgan-Linial 109 66
25 25/ 37/ 34 rhodium Martin M. Pedersen 108 8
But 12 challenges, little is changed. The top authors are the same even if
they exchanged the king position
______________________________________________________________________________
The hint
A new p-switcher
by Paul Kline
A colorful variety of p-switching mechanisms are sprouting this Spring, and
it would be nice if someone would round them all up for comparison. Also
nice if people would POST a few :-)
A simple, fast switch-on-loss routine for two p-components might
look like this:
pflag equ (somenumber.lt.500)
pGold ldp.ab #0,#0 ; get results of last battle
ldp.a #pflag ,pGold ; retrieve attempted strategy
add.a #1 ,@pGold ; if a loss, increment strategy
mod.a #2 ,pGold ; safeguard against brainwashing
stp.ab pGold ,#pflag ; store current strategy
jmz.a select1 ,pGold ; select strategy 1
jmp select2 ; select strategy 2
(The last jmp is unnecessary if strategy 2 immediately follows)
A powerful adaptation of the routine can be made with no extra
instructions. By increasing the MOD number we have an assymetric
switcher, by which the second strategy is selected more often than
the first. This can be very helpful in pairing up a strong
all-purpose warrior like Torch, with a special-purpose warrior
like Clisson. Like many fast programs with spl-dat clears, Torch
is vulnerable to a stone, which is in turn highly vulnerable to Clisson.
Using an assymetric switcher to select Torch most frequently gives
the best results against a variety of opponents, and the infrequent
Clission strategy breaks up a protracted series of stone attacks.
This is the switcher used by Goldfinch which pairs a one-shot
scanner w/multipass clear, with Clisson's dodger.
Paul Kline
pk6811s@acad.drake.edu
______________________________________________________________________________
Extra Extra
Twister
by Beppe Bezzi
Tornado is, beetween my warriors,one my favourites and, being a very
flexible bombing engine, I like a lot to tweak and improve it, testing new
bombs and variations. When Tornado 3.0, that had a success beyond my
expectations, was near the bottom of the hill, a long time indeed :-), I
tried to fix some problems that caused its fall and I coded v 3.3 that's the
one included in Twister. Jack uses a slightly different version but you can
fit this one in the old Jack, using but one paper module, and results won't
differ too much from those on the hill (let me something to publish next
week :-)
The bombs are common dat <1,{1 deadly against clears and slowing djn stream
users, intermixed with one spl #xx to allow self bombing to enter the core
clear.
Worth noting are the pattern, not exacly mod 5 but slightly translated, such
way it's more difficult for a one shot scanner to slip through my bombs
without noticing them, and the djn protection, jmz.b start,#0 stolen from Torch.
The qscan is rather similar to the one in Stepping Stone, being only a bit
slower overall even if with a better bomb distribution. I coded it from the
warrior I sent to J K Lewis tournament, a thing that proved deadly, I won 13
rounds alone, but too weak. It's a 50%c vamp engine dropping one far jump to
the pit and two near jumps through and to the far jump in a six instructions
loop, something like that:
jn jmp *qqstep, qqstep ;jump near
jf jmp -bombn+pit-(3*qqstep)-qdisp,-qqstep ;jump far
jn ..[qqstep cells].. jn .. [qqstep cells] .. jf
The first jn jumps to jf using a-field of the second jn, the other jumps go
to the pit.
The pit is a standard self destructing, brainwashing pit.
;redcode-94
;name Twister
;author Beppe Bezzi
;strategy qscan -> Tornado bomber
;assert CORESIZE == 8000
;kill Twister
step equ -45
away equ 4000+2 ;mod 5 +2
gate1 equ (gate-4)
org startq
qstep equ 6
qrounds equ 8
qdisp equ -qstep*(qrounds*3/2-1)-60
qqstep equ qstep*qrounds
bigst equ 100 ;or something more :-)
qstart equ startq+145
qst equ qstart -(4*bigst)
pstep equ 40
spacer equ 4
cldst equ (bclr-bgate+spacer+5)
pit spl 4
pit1 mov -3, <1300
spl pit1
spl pit1
stp.b #0, @pit1
jmp pit1
;----Qscan
;don't ever think it's the right qscan pattern :-)
startq
s3 for 4
sne.i qst+4*bigst*(s3+0), qst+4*bigst*(s3+0)+bigst*1
seq.i qst+4*bigst*(s3+0)+bigst*2, qst+4*bigst*(s3+0)+bigst*3
mov.ab #qst+4*bigst*(s3+0)-found, found
rof
jmn.b which, found
s2 for 4
sne.i qst+4*bigst*(s2+5), qst+4*bigst*(s2+5)+bigst*1
seq.i 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.b which, found
s1 for 4
sne.i qst+4*bigst*(s1+10), qst+4*bigst*(s1+10)+bigst*1
seq.i qst+4*bigst*(s1+10)+bigst*2, qst+4*bigst*(s1+10)+bigst*3
mov.ab #qst+4*bigst*(s1+10)-found, found
rof
jmn which, found
which
found jmz.b boot, #0 ;Pyramid decoding
add.b found, pt2
sne.i @found, @pt2
add.ab #(bigst*2),found
sne.i -100, @found
add.ab #bigst, found
qattack ;found.b punta il bersaglio
mov bombm, @found ;dat bomb found position
add.ba found, qstone ;\
add.b found, qstone ; >setup vamp pointers
sub.ba found, bombf ;/
;---vamp attack ---
qb1 mov bombn, *qstone
qb2 mov bombf, @qstone
qstone mov (1*qqstep)+bombn+qdisp,@(3*qqstep)+bombn+qdisp
qstart1 sub qincr, @qb1
add.a qincr, bombf
qjump djn.b qb1, #qrounds
jmp boot
bombn jmp *qqstep, qqstep
qincr dat >-1*qstep,>-1*qstep
bombf jmp -bombn+pit-(3*qqstep)-qdisp,-qqstep
for 5
dat 0,0
rof
;--- Tornado
start
boot
mov gate, }pt2
mov gate, *pt2
mov last, <pt1
spl 1, 1
mov {pt1, <pt1
mov {pt1, <pt1
mov {pt1, <pt1
mov {pt1, <pt1
mov {pt1, <pt1
go djn.b @pt1, #2 ;start Tornado
mov gate, <pt1
pt1 div.f #last,#last+1+away
pt2 div.f #gate+away-5,#bigst+found
dat -25, last-gate1+5
warr
gate
dat -25, last-gate1+15
bombs spl #(step+1), -step ;hit spl
start1 sub incr, @b1
stone mov (0*step)+jump,*(1*step)+jump
b2 mov bombs, @stone
b1 mov bombm, *stone
jump jmz.b start1, #0 ;hit by spl
clr mov @djmp, >gate1
mov @djmp, >gate1
djmp djn.b clr, {bombs
incr dat >-3*step,>-3*step
last
bombm dat <1, {1
shift dat #40, #40
______________________________________________________________________________
Questions? Concerns? Comments? Complaints? Mail them to people who care.
authors: Beppe Bezzi <bezzi@nemo.it> or Myer Bremer <bremermr@ecn.purdue.edu>
|