Author Topic: Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)  (Read 4137 times)

Offline Trafalgar

  • Bot Destroyer
  • ***
  • Posts: 122
    • View Profile
Revised and updated nanite detonators for the current DBII version. These don't function the way the original nanite detonators did, since the instakill tie attack exploits have been fixed. They only inherit the same premise (well, half of it*) and the means of spreading out.

These normally don't shoot, but if they have above 500 energy, they will. They don't aim very well while moving or while their enemy is moving, though, and they pay little heed to targets being out of range, but it's enough to let them finish off Bacillus' recently posted Collosus v1.1 in a more reasonable amount of time than what they were doing without shots (those colossi are nigh-immune to ties).  

P.S. They only use one eye, and it's almost half the possible radius. That reduces their vision distance, but it seems to be sufficient for their needs.

* = The half about replicating in huge numbers and overwhelming opponents, but not the half about using instakill tie attacks which no longer work.

DNA length: 1112. Genes: 1.

Code: [Select]
'Nanite Detonators 2.2.txt compiled by PyBot V2 from Nanite Detonators 2.2.pyr.
' These updated Nanite Detonators now feed off veggies (non-mutated ones, anyways), and use their energy to pump out more nanite detonator bots. The normal nanites cease reproducing after the total number of nanites reaches 500, and the ones connected to a veggie (factory nanites) stop pumping out more tiny nanites at 600, but will produce larger ones whenever they exceed 1000 body, until the total number of nanites reaches 1000.
def lastTieNum 988
def lastTiePres 986
def mode 981
def myid 985
def reproducedLastCycle 962
def isVeggie 984
cond
true
start
0 dup *.fixpos != .fixpos store dropbool
.myid dup *.tmemloc != .tmemloc store dropbool
.myid dup *.memloc != .memloc store dropbool
9136 dup *.myid != .myid store dropbool
500 dup *.eye5width != .eye5width store dropbool
*.aim 630 add dup *.setaim != *.robage 1 = and .setaim store dropbool
*.nrg 150 > *.velscalar 100 > and *.body 10 > and *.totalmyspecies 500 < and
50 .repro store
*.robage .reproducedLastCycle store
dropbool *.nrg 500 >
dupbool dupbool *.eye5 0 > *.memval 9136 != and *.robage 2 > and *.refage 2 > and and
*.refxpos *.refypos angle .setaim store
dupbool dupbool *.timer 3 & 0 = and
-1 .shoot store
10 .shootval store
not and not dupbool not dupbool *.timer 3 & 1 = and
-6 .shoot store
-10 .shootval store
not and dupbool *.timer 3 & 2 = and
.mkslime .shoot store
-31999 .shootval store
not and not or not
.shootval .shoot store
31999 .shootval store
dropbool
0 .aimshoot store
dropbool dropbool
dropbool *.numties 0 =
0 .mode store
dupbool dupbool *.eye5 0 > *.memval 9136 != and *.robage 2 > and *.refage 2 > and and
dupbool dupbool *.lastTiePres 2354 = *.lastTieNum 2354 = and and
1 .fixpos store
not and
dropbool
2354 .tie store
*.tie .tienum dupbool *.tie 0 != and store dropbool
*.refxpos *.refypos angle .setaim store
not and
dupbool dupbool *.velscalar 50 > and
dupbool dupbool *.veldx 1 > and
*.veldx .aimdx store
not and not dupbool not dupbool *.velsx 1 > and
*.velsx .aimsx store
dropbool dropbool dropbool
dropbool dropbool
dropbool dupbool dupbool *.shoot 0 = and
0 .fixpos store
dupbool dupbool *.robage 0 > and
.up dupbool *.nrg 25 > and inc dropbool
.up dupbool *.nrg 50 > and inc dropbool
.up dupbool *.nrg 75 > and inc dropbool
.up dupbool *.nrg 100 > and inc dropbool
dropbool dropbool
dropbool dropbool
not
*.numties 0 sub sgn 0 floor *.trefshell 0 sub sgn abs - ++ & *.trefeye 0 sub sgn abs - ++ & *.trefshoot 0 sub sgn abs - ++ & *.trefup 0 sub sgn abs - ++ & *.trefdn 0 sub sgn abs - ++ & *.trefsx 0 sub sgn abs - ++ & *.trefdx 0 sub sgn abs - ++ & *.tmemval 0 sub sgn abs - ++ & *.reproducedLastCycle *.robage sub abs 2 sub sgn 0 floor & dupbool dup *.isVeggie != and .isVeggie store dropbool
dupbool dupbool *.lastTieNum 2354 = and
2354 dupbool dup *.tienum != and .tienum store dropbool
dupbool dupbool *.tiepres 2354 = and
dupbool dupbool *.isVeggie 0 != and
dupbool dupbool *.mode 0 = and
.mode inc
.fixpos .tieloc store
1 .tieval store
*.trefxpos *.trefypos angle 630 add .setaim store
1 .fixpos store
not and not dupbool not dupbool *.mode 1 = and
.mode inc
.setaim .tieloc store
*.trefxpos *.trefypos angle 630 add .tieval store
not and dupbool *.mode 3 & 2 = and
.mode inc
.tie .tieloc store
9753 .tieval store
not and dupbool *.mode 10 > and
1 dupbool dup *.tielen != and .tielen store dropbool
0 dupbool dup *.mode != and .mode store dropbool
not and not or not
.mode inc
*.tiepres .tienum store
-1 .tieloc store
-10000 .tieval store
dropbool
not and not dupbool not dupbool *.tmemval 9136 != *.robage 2 > and *.reproducedLastCycle *.robage sub abs 2 > and and
dupbool dupbool *.mode -1 = and
dupbool dupbool *.nrg *.body dup add < and
-1 .tieloc store
not and
-6 .tieloc store
dropbool
-31999 .tieval store
not and
.tie .tieloc store
9753 .tieval store
dropbool
-1 .mode store
not and not or not
*.tiepres .deltie store
dropbool
not and
*.tiepres .tienum store
.shootval .tieloc store
31999 .tieval store
100 dupbool dup *.stifftie != and .stifftie store dropbool
-1 dupbool dup *.mode != and .mode store dropbool
dropbool
not and not dupbool not dupbool *.reproducedLastCycle *.robage sub abs 2 <= and
dupbool dupbool *.tiepres 0 = and
4824 dupbool dup *.tie != and .tie store dropbool
4824 dupbool dup *.deltie != and .deltie store dropbool
dropbool dropbool
not and dupbool *.lastTieNum 0 > *.lastTieNum 5 < and *.trefnrg 0 > and and
dupbool dupbool *.tiepres *.lastTieNum != *.tiepres 0 != and and
dupbool dupbool *.mode -1 != and
*.tiepres .deltie store
not and
*.tiepres .tienum store
.mode inc
dropbool
not and
*.lastTieNum .tienum store
dropbool dupbool dupbool *.multi 0 != and
dupbool dupbool *.trefnrg 100 mult *.trefnrg *.nrg add div 10 >= and
.sharenrg .tieloc store
1 *.isVeggie 9 mult add .tieval store
not and not dupbool not dupbool *.waste 100 > and
.sharewaste .tieloc store
100 .tieval store
not and not or not
.fdbody .tieloc store
100 .tieval store
dropbool
not and
.shootval .tieloc store
31999 .tieval store
dropbool dupbool dupbool *.tieang 1256 < and
*.tieang 100 add .tieang store
not and
1 .tieang store
dropbool dupbool dupbool *.tielen 100 < and
100 .tielen store
dropbool dropbool
not and dupbool *.lastTieNum 0 = *.tiepres 0 > *.tiepres 5 < and *.tiepres 4824 = or and and
*.tiepres dupbool dup *.deltie != and .deltie store dropbool
not and dupbool *.robage 2 < and
*.tiepres dupbool dup *.deltie != and .deltie store dropbool
not and dupbool *.tiepres 0 != and
*.tiepres dupbool dup *.tienum != and .tienum store dropbool
dupbool dupbool *.multi 0 != *.trefnrg 100 mult *.trefnrg *.nrg add div 2 >= and and
.sharenrg dupbool dup *.tieloc != and .tieloc store dropbool
1 dupbool dup *.tieval != and .tieval store dropbool
not and
.fdbody dupbool dup *.tieloc != and .tieloc store dropbool
100 dupbool dup *.tieval != and .tieval store dropbool
dropbool dupbool dupbool *.tieang 1256 < and
*.tieang 20 add dupbool dup *.tieang != and .tieang store dropbool
not and
1 dupbool dup *.tieang != and .tieang store dropbool
dropbool dupbool dupbool *.tielen 100 < and
100 dupbool dup *.tielen != and .tielen store dropbool
dropbool dropbool
not and not or not
4824 dupbool dup *.tie != and .tie store dropbool
4824 dupbool dup *.deltie != and .deltie store dropbool
dropbool dupbool dupbool *.robage 2 > and
dupbool dupbool *.nrg 1000 > and
dupbool dupbool *.body 10 > *.totalmyspecies 600 < and *.body 1000 > *.totalmyspecies 1000 < and or and
50 dupbool dup *.repro != and .repro store dropbool
*.robage dupbool dup *.reproducedLastCycle != and .reproducedLastCycle store dropbool
*.aim 5 rnd add 2 sub dupbool dup *.setaim != and .setaim store dropbool
not and
100 dupbool dup *.strbody != and .strbody store dropbool
dropbool
dropbool dropbool
dropbool dropbool
dropbool
*.body 1 sub dup *.fdbody != *.body 1 > *.strbody 0 = and *.nrg 700 < and and .fdbody store dropbool
*.tienum dup *.lastTieNum != *.tienum 0 != and .lastTieNum store dropbool
*.tiepres dup *.lastTiePres != .lastTiePres store dropbool
stop
« Last Edit: May 11, 2008, 03:24:51 AM by Trafalgar »

Offline gymsum

  • Bot Destroyer
  • ***
  • Posts: 215
    • View Profile
Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)
« Reply #1 on: May 11, 2008, 03:43:25 PM »
Since my reproductive changes to the slim evo, you're bot kick its but. Nice bot.

It seems that without mutations, it owns on the swarmers by N/A? (v 2.43) which usually overruns the CB league bots.

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)
« Reply #2 on: May 12, 2008, 01:37:53 AM »
Very nice bot indeed. Still has a large improvement though. Have a look at my detonator and try draw some ideas out of it.
"They laughed at Columbus, they laughed at Fulton, they laughed at the Wright brothers. But they also laughed at Bozo the Clown."
- Carl Sagan

Offline SlyStalker

  • Bot Destroyer
  • ***
  • Posts: 132
  • nomnomnomnom
    • View Profile
Re: Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)
« Reply #3 on: March 05, 2013, 02:54:28 AM »
Sorry, I'm new, but my question is: What exactly IS a 'detonator'?
Knowledge is knowing that a tomato is a fruit; Wisdom is not putting it in a fruit salad.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Re: Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)
« Reply #4 on: March 08, 2013, 12:07:28 AM »
I think he's referring to this bot.  I'm not sure what they meant by 'detonator' exactly.

Offline Botsareus

  • Society makes it all backwards - there is a good reason for that
  • Moderator
  • Bot God
  • *****
  • Posts: 4483
    • View Profile
Re: Nanite Detonators v2.2 (SG, F1) (Trafalgar) - (05.11.2008)
« Reply #5 on: May 02, 2014, 02:18:44 PM »
Moving to short bots.