Path: ibmpcug!gwen.pcug.co.uk!pipex!howland.reston.ans.net!swrinde!emory!nntp.msstate.edu!nntp.memphis.edu!nntp.rhodes.edu!harlie.mathcs.rhodes.edu!graham Newsgroups: rec.games.corewar Subject: Non Plussed Message-ID: <1995Jun12.210647.2782@rhodes> From: graham@harlie.mathcs.rhodes.edu (Randy Graham) Date: 12 Jun 95 21:06:46 -0500 Nntp-Posting-Host: harlie.mathcs.rhodes.edu X-Newsreader: TIN [version 1.2 PL2] Lines: 95 Well, here is the first successful warrior from me since Comp-Hunter and Strahd fell off the '94 hill. I played with a stone for a while, came up with something good enough to sit in the middle of the beginner's hill, added Blue Funk's imp launch to jump to the top five, then tweaked offsets and added a single-pass core-clear to jump on top of the beginner's hill. Still couldn't make it on the '94 hill though. At this point, I had Unimpspired (when you see the stone, you'll see why I say the stone is uninspired - it is pretty simple, and actaully I didn't think it would be too effective). Well, I didn't feel I could take it any further as is, so I twiddled more, changed the core clear to run forward and add as it goes. Thus, each core location gets dat-bombed and then added to, just in case. In addition, the djn-stream was running backward, trying to unbalance anything that figured its way past the core-clear. The djn-stream actually ended up running almost twice through core by the time it was finished. After the clear hit its djn spot, it ran again, and enough processes had built up to almost finish off core before it completely died (did I mention it was a self-destruct core-clear - thanks to Aeka for that idea - its done its job, now get out of the way). So, since the imp couldn't live through the forward core clear, I had to go to something else to keep myself alive after the stone started dying - obviously a job silk paper (thanks to J. Pohlsdrihjs-something ;-) for the silk paper idea). So, here he is so far - Non Plussed. Note that if you run him, you will find he actually dies if a round runs long enough. He actully has about 100 processes left when time runs out in an 80000 cycle, single test run. I need to tweak some more to get a good stone step size. And of course, the whole point of adding the paper was to be alive after the core clear, so I have to work on keeping that alive. However, I think he is good learning material for a new person. In fact, one of the things I like about Non Plussed is how he can keep throwing memory around and keep up with the rabbit-like paper. Two spl in front of the stone explain the basic method - I first saw it in Blue Funk I believe. However, I found that the stone didn't quite live long enough to go into its core-clear. So, notice what he does after launching his first paper child. He splits to the stone, thus giving an extra round of stoning in the middle of canvassing the area. Anyway, sorry this took so long to get here, but I wanted to explain my thought process. So, here he is, as on the current hills, but with room for improvement.............. ------------------------------------------------------------ ;redcode-94 ;name Non Plussed ;kill Non Plussed ;author Randy Graham ;assert 1 ;strategy A moderate stone with self-destruct forward dat and ;strategy addition core-clear and djn stream twice through core. ;strategy Added paper since imp-ring gets blasted by forward clear. STONE equ (begin+1472) ;where to move the stone SSTEP equ 28 ;step size for stone PAPEROFF equ 1495 ;paper step size - still needs tweaking begin mov.i stopp, }STONE-SSTEP+1 ;extra guys into the stone stopp dat.f >paper, STONE keepup spl.a #0, <-SSTEP-1 sbegin spl.a #SSTEP, <-SSTEP stoner mov.i <-1-SSTEP, >1+SSTEP sub.f sbegin, -1 djn.f stoner, <-381 mover mov.i 3, >1 paper spl.a @0, PAPEROFF movpapr mov.i }paper, >paper getimp mov.i nonimp, >-550 novamp mov.i static, }400 again spl.a paper, {paper incr dat.f >getimp+(3*PAPEROFF),>novamp+(2*PAPEROFF) ;increment correct childrens imp bombs and vamp bombs nonimp dat.f <2667, <5334 static dat.f >1, >1 ;add blank lines to make me look long in a combat report for MAXLENGTH-CURLINE dat.f 0, 0 rof