From news-rocq.inria.fr!jussieu.fr!math.ohio-state.edu!howland.erols.net!ix.netcom.com!tor-nn1.netcom.ca!torfree!bx880 Thu Mar 20 20:04:34 1997 Article: 7349 of rec.games.corewar Newsgroups: rec.games.corewar Path: news-rocq.inria.fr!jussieu.fr!math.ohio-state.edu!howland.erols.net!ix.netcom.com!tor-nn1.netcom.ca!torfree!bx880 From: bx880@torfree.net (Ian Sutton) Subject: A few LP programs Message-ID: Organization: Toronto Free-Net X-Newsreader: TIN [version 1.2 PL2] Date: Thu, 20 Mar 1997 15:19:28 GMT Lines: 124 The LP hill is was a good idea, but I don't have any code to test against! In the hope that others will post their code, I am posting some of mine. Hopefully Indestructable ------------------------ I think its an old idea: boot away clears round core, and hopefully we will kill the enemy before our last clear is done for. An added twist to this is a control mechanism which can boot away another clear if one dies. "Hopefully" we should be able to last indefinitely, but usually the booter bites it fairly quickly. Each clear is fast because it skips every other instruction and it does fairly well against other similar types. ;redcode-lp ;name Hopefully Indestructible v1.0 ;author Ian Sutton ;strategy When we have less than 8 processes, ;strategy boot away another fast core clear/imp gate. ;assert CORESIZE == 8000 step equ 810 org boot boot add.a #step, bptr mov clear+2, {bptr mov clear+1, {bptr mov clear+0, {bptr bptr spl -step+100, <1 jmp boot, >-200 for 20 dat 0, 0 rof clear mov dbomb, >gate jmp -1, >gate dbomb dat <1, 19 Completely Indestructable ------------------------- Turned out to be pretty damn well destructable, unfortunately. The first paper I've ever written, so I wasn't expecting much. It copies itself all over core, but only splits to it if we have less than 8 processes. Perhaps I should insert some bombing? ;redcode-lp ;name Completely Indestructible v1.0 ;author Ian Sutton ;strategy Paper which is hard to kill. ;assert CORESIZE == 8000 step equ 3337 org boot boot mov #7, #0 mov <-1, {bptr jmn.b -1, @boot bptr spl -step+100, 1 ; only split to a new copy if we can add.a #step, bptr ; pseudo random step since it adds even if we ; don't split jmp boot, 1 dat 1, 1 One Man Army ------------ Dunno why I tried this on the LP hill, since bombers don't really stand much chance without qscan considering all the papers on there. It bombs 2 locations every 4 cycles, but if we scan something else then we can add another Damage style MOV bomb. Probably isn't much interest but what the hell. ;redcode-94 ;name One Man Army v1.0 ;author Ian Sutton ;strategy lightning fast large bomber ;assert CORESIZE == 8000 gate equ (stcode-3) step equ -6503 stbomb equ (ecode+1489) org strt stcode drop2 mov bomb2, *drop loop strt mov bomb, @drop drop mov stbomb+step*2, *stbomb add incr, drop nxt jmz.f loop, *drop jmn.f drop2, @drop2 ; gets bombed with spl to start clear bomb spl #step, >step*2+1 ; yes 2 spls in a row mov cbomb, >gate ecode djn.f -1, >gate dat 0,0 dat 0,0 cbomb dat >5335, 20 incr spl #step*3, #step*3 bomb2 mov -step*2, >-step*2 Imp Chucka ---------- I'm not posting Imp Chucka 'cos its a real turkey. 'Nuff said. Get posting!! Ian Sutton bx880@torfree.net