Tom's Hardware > Forum > Games General > Games General Discussions > 94nop hill warrior: Shrink

94nop hill warrior: Shrink

Forum Games General : Games General Discussions - 94nop hill warrior: Shrink

Tom's Hardware: Over 1.4 million members in 6 different countries available to answer all your high-tech questions. Sign up now! Its free!
Word :    Username :           
 

Archived from groups: rec.games.corewar (More info?)

 

Hi all,

below is the code of my latest shrinking coreclear paper. It uses a nice
snippet which first appears in bvowk's evolved anti-imp clears.

Replacing the commonly used

djn.f -2, <value

by a

djn.b -2, #value

significantly improves the scores of the paper. Especially against
b-imp warriors a higher killing-rate is observed.

What could be the reason for this effect? Please give me your comments ;-)

Regards,

Christian


;redcode-94nop
;name Shrink
;author Christian Schmidt
;strategy qscanner, shrinking paper
;assert 1

zero equ qbomb
qtab3 equ qbomb

pStep1 EQU 6785
pStep2 EQU 2148
pStep3 EQU 627
bStep1 EQU 7585
pAwa1 EQU 4582
pAwa2 EQU 7267

qbomb dat >qoff, >qc2
paper spl 2, {6744
spl 2, <qb1
qtab2 spl 1, <qb2
mov.i -1, #qb3

mov {cc+2, {pBo1
pBo1 spl cc+pAwa1, {2220
mov <cc+2, {pBo2
pBo2 djn.f cc+pAwa2, <3742

spec spl pStep1, <pStep1-1
mov.i }-2, >-1
silk1 spl @0, <pStep2
mov.i }-1, >-1
silk2 spl @0, <pStep3
mov.i }-1, >-1
bomb mov.i #1, <1
cc djn.b -2, #bStep1

for 4
dat 0, 0
rof

dat zero - 1, qa1
qtab1 dat zero - 1, qa2

for 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 <qtab3, qptr + qz*(qc2-1) + qb2
jmp q0, }q0
sne qptr + qz*qa2, qptr + qz*qa2 + qb2
seq <qtab1, qptr + qz*(qa2-1) + qb2
jmp q0, {q0
sne qptr + qz*qa1, qptr + qz*qa1 + qb2
seq <(qtab1-1), qptr + qz*(qa1-1) + qb2
djn.a q0, {q0
sne qptr + qz*qb3, qptr + qz*qb3 + qb3
seq <(qtab2+1), qptr + qz*(qb3-1) + (qb3-1)
jmp q0, }q1
sne qptr + qz*qb1, qptr + qz*qb1 + qb1
seq <(qtab2-1), qptr + qz*(qb1-1) + (qb1-1)
jmp q0, {q1
sne qptr + qz*qb2, qptr + qz*qb2 + qb2
seq <qtab2, qptr + qz*(qb2-1) + (qb2-1)
jmp q0
seq >qptr, qptr + qz + (qb2-1)
jmp q2, <qptr
seq qptr+(qz+1)*(qc2-1),qptr+(qz+1)*(qc2-1)+(qb2-1)
jmp q0, }q0
seq qptr+(qz+1)*(qa2-1),qptr+(qz+1)*(qa2-1)+(qb2-1)
jmp q0, {q0
seq qptr+(qz+1)*(qa1-1),qptr+(qz+1)*(qa1-1)+(qb2-1)
djn.a q0, {q0
jmz.f paper, qptr + (qz+1)*(qb2-1) + (qb2-1)

qoff equ -87
qstep equ -7
qtime equ 14

q0 mul.b *2, qptr
q2 sne {qtab1, @qptr
q1 add.b qtab2, qptr
mov qtab3, @qptr
qptr mov qbomb, }qz
sub #qstep, qptr
djn -3, #qtime
jmp paper

end qgo

Sponsored Links
Register or log in to remove.
Tom's Hardware > Forum > Games General > Games General Discussions > 94nop hill warrior: Shrink
Go to:

There are 1164 identified and unidentified users. To see the list of identified users, Click here.

Please mind

You are about to answer a thread that has been inactive for more than 6 months.
If you still wish to proceed, please ensure that your posting is original and does not duplicate or overlap any prior responses to this thread.

Add a reply Cancel
Sponsored links
  • Ask the community now
  • Publish
Ad
They won a badge
Join us in greeting them