;Slow ;by PiGuy ;a simple yet effective robot #config scanner=3 #config weapon=2 #config armor=2 #config engine=0 #config heatsinks=1 #config shield=4 #config mines=0 #msg You can't find me! #def scanarc #def scanarcs #def cdir #def noturn #def sdir #def son ;opo 19,314 ;change transponder ID to 314 opo 11,100 ;go fast mov ax,1 int 3 ;keepshift on opo 22,10 opo 22,10 mov scanarc,64 ;set scan-arc to 64 opo 17,scanarc mov scanarcs,5 mov cdir,64 mov sdir,40 !loop ipo 2,ax ;check heat cmp son,1 jgr !decson cmp ax,80 jls !fchk cmp son,0 jeq !fchk opo 24,0 mov son,0 jne !fchk !decson dec son !fchk int 11 cmp ex,30 jgr !chkhit cmp son,0 jgr !chkhit cmp bx,200 jae !chkhit opo 24,1 mov son,5 !chkhit cmp @8,0 jeq !chknt int 13 cmp noturn,0 jgr !decnt cmp cx,1500 jgr !turnsome opo 14,128 mov noturn,5 jbe !negcdir !turnsome opo 14,48 !negcdir neg cdir jbe !chkscan !chknt cmp noturn,0 jbe !chkscan !decnt dec noturn !chkscan opo 11,100 ipo 7,cx ;check scanner cmp cx,1500 ;if not in range, then increase range jgr !bigarc cmp noturn,0 jgr !loop2 mov ax,@2 sub ax,cdir opo 14,ax ;circle around !loop2 mov ax,@3 ;get accuracy cmp scanarcs,0 ;adjust for scanner size jeq !track shl ax,scanarcs dec scanarcs ;shrink scanner size shr scanarc,1 opo 17,scanarc !track opo 12,ax ;follow enemy ;ipo 6,ax ;if almost dead, then don't worry about heat ;cmp ax,25 ;jbe !fire ipo 2,ax shl ax,scanarcs cmp ax,280 ;if cool, then fire jae !loop !fire ;mov ax,1 ;int 4 opo 15,0 ;mov ax,0 ;int 4 jls !loop !bigarc cmp scanarcs,5 jeq !aimstr inc scanarcs shl scanarc,1 opo 17,scanarc jne !loop !aimstr opo 12,128 jeq !loop