From news-rocq.inria.fr!jussieu.fr!math.ohio-state.edu!howland.erols.net!EU.net!usenet2.news.uk.psi.net!uknet!usenet1.news.uk.psi.net!uknet!uknet!bcc.ac.uk!news Wed Dec 11 19:35:33 1996 Article: 6788 of rec.games.corewar Newsgroups: rec.games.corewar Path: news-rocq.inria.fr!jussieu.fr!math.ohio-state.edu!howland.erols.net!EU.net!usenet2.news.uk.psi.net!uknet!usenet1.news.uk.psi.net!uknet!uknet!bcc.ac.uk!news From: Bjoern Guenzel Subject: delay Sender: news@ucl.ac.uk (Usenet News System) Message-ID: <32AEB973.167E@ucl.ac.uk> Date: Wed, 11 Dec 1996 13:38:59 GMT Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 X-Mailer: Mozilla 2.02 (X11; I; AIX 2) Organization: University College London Lines: 85 Here is Delay, which was recently pushed of the hill. It was a simple idea, surprising that it worked (well, moderately that is): combining a bomber with an imp by launching the imp only when there are already enough processes in the bomber (I used my favourite, 'Justice'). It is remarkable (I think) that it works, given that the first complete imp (three processes) is created only after about 1600 cycles. That's with a delay of 50 (the imp launch begins when there are 50 processes in the bomber). I did no extensive tests, but significantly smaller or greater delays didn't work. Probably it only helps as protection against paper. However, it suggests that there might be a promising field in combining warriors sequentially, like first running a decoymaking stone, then switching to a scanner, or stuff like that. Bjoern ;redcode-94 test ;name delay 0.02b 50 ;author bjoern guenzel ;assert 1 ;kill delay ;strategy test delayed imp step equ (4*19) gate equ (steps-step) delay equ (50) istep equ 2667 dist1 equ (-1000) dist2 equ (2000) igate dat 0,imp+3 dat 0,0 ilaunch djn.b #0,#delay ;that's all... spl #0,jstart,#jbomb+2 jcb dat <-2668,#jbomb+2-jcptr dat 0,0 jstart spl #0,>jcptr-2 jptr mov.i jbomb,*(jhit+3*jstep) mov.i jbomb,@jptr ;this bomb hits jhit add.ab #2*jstep,jptr jmz.b jptr,#0 mov.i jcb,>jcptr djn.f -1,>jcptr jbsource dat 0,0 jsplit spl #0,<0 for 3 stp.ab >0,#0 rof jbomb mov.i jstep,1 jboot mov.i jsplit,@jbooptr ;move spl to jhit+jstep mov.i jbomb,*jbbooptr for 10 mov.i {jbsource,{jbooptr rof for 8 mov.i