Author Topic: LoveBot (F2) (Moonfisher) - 30-03-08  (Read 1634 times)

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
LoveBot (F2) (Moonfisher) - 30-03-08
« on: March 30, 2008, 11:28:48 AM »
It's not realy polished off and it doesn't realy do that much, but had to get a rape bot out before Abyaly makes some sick F2 rape bot
I think it might actualy do well in F2, it beats Multiply4 and Excalibur.
It sometimes crashes in 2.43.1e, I'll get around to making a propper bu report, think it's caused by the sexrepro thing.

It's a vegan, and like most of my other bots it hogs the food in it's own unique way. (In this case by raping it)
It also rapes anyone it isn't related to.
But thats about it, it doesn't realy do anything else, eat/rape alge and rape strangers and distant cousins.

I can't download the F2 league file, and the crash is bound to happen before running the entire F2 league, so I have no idea how far it would get in F2...
I also don't know if another bot has the same amount of shoots, that would mess with the conspec, but one of the last genes has a lot of useless shoots that can be used to adjust the conspec.

Code: [Select]
'Lovebot (F2) : 30-03-08
'Make love not war !
'By Moonfisher, v0.01
'First draft for a rape bot
'Would probably be more effective SG'fied with a propper conspec
'But this way is more fun.
'Sometimes causes a crash in 2.43.1e though

def repspin 122
def original 971
def birthx 972
def birthy 973

def origkey 1234

cond
*.robage 0 =
start
*.tiepres .deltie store
.sexrepro .vloc store
99 .venval store
100 .eye5width store
.shoot .memloc store
stop

cond
*.robage 2 <
*.nrg 3000 %=
*.body 1000 %=
*.totalmyspecies 6 <
*.totalbots 21 <
start
.origkey .original store
stop

cond
*.fixpos 0 !=
start
0 .fixpos store
stop

cond
*.body 100 <
*.nrg 500 >
start
100 .strbody store
stop

cond
*.body 50 >
*.nrg 100 <
start
100 .fdbody store
stop

cond
*.venom 50 <
*.nrg 100 >
start
10 .strvenom store
stop

cond
*.shell 200 <
*.nrg 100 >
start
10 .mkshell store
stop

cond
*.shell 50 <
*.nrg 300 >
start
100 *.shell sub .mkshell store
stop

cond
*.eyef 0 =
*.robage 20 mod 10 <
start
20 .up store
stop

cond
*.eyef 0 =
*.robage 20 mod 10 >=
start
*.aim 70 add .setaim store
stop

cond
*.refshoot *.myshoot =
*.robage 20 mod 10 <
start
10 .dx store
stop

cond
*.refshoot *.myshoot =
*.robage 20 mod 10 >=
start
*.aim 70 add .setaim store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
start
*.refxpos *.refypos angle .setaim store
*.refxpos *.xpos sub abs *.refypos *.ypos sub abs pyth 10 div 20 sub 0 floor *.refvelup add .up store
*.refveldx .dx store
*.refxpos .birthx store
*.refypos .birthy store
stop

cond
*.shoot -2 =
start
*.refveldx 30 add .dx store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
*.refshoot 0 =
*.refeye 0 =
*.refshell 0 =
*.refpoison 0 =
*.refvenom 0 =
*.memval 0 =
*.original .origkey !=
start
0 .up store
30 .dn store
*.aim 682 add .setaim store
stop

cond
*.poisoned 0 !=
start
0 .up store
*.refvelup 50 add .dn store
stop

cond
*.pain 50 >
*.shflav -2 !=
*.shflav 0 !=
start
*.pain .dx store
stop

cond
*.body 100 >=
*.nrg 500 >=
*.repspin 0 =
start
1 .repspin store
stop

cond
*.body 100 >=
*.nrg 500 >=
*.repspin 0 >
*.repspin 6 <
start
*.aim 341 add .setaim store
50 .repro store
.repspin inc
stop

cond
*.repspin 5 >
*.robage 20 mod 0 =
start
0 .repspin store
stop

cond
*.robage 1 =
start
*.birthx *.birthy angle .setaim store
stop

cond
*.robage 6 <
*.robage 1 >
*.refshoot *.myshoot =
*.eyef 0 = or
start
*.aim 341 add .setaim store
stop

cond
*.shflav -2 =
*.original .origkey =
start
1 .fixpos store
stop

cond
*.shflav -2 =
*.original .origkey !=
start
100 .up store
stop

cond
*.shflav 0 !=
start
0 .shflav store
stop

cond
*.body 300 >
start
3000 .fdbody store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
*.robage 3 mod 0 =
start
-3 .shoot store
0 .shootval store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
*.robage 3 mod 1 =
start
-8 .shoot store
0 .shootval store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
*.robage 3 mod 2 =
*.refbody 100 >
*.refnrg 300 >
start
.sexrepro .shoot store
99 .shootval store
stop

cond
*.refshoot *.myshoot !=
*.eyef 0 >
*.refshoot 0 =
*.refeye 0 =
*.refshell 0 =
*.refpoison 0 =
*.refvenom 0 =
*.memval 0 =
*.original .origkey =
*.robage 5 >
start
-1 .shoot store
*.nrg 20 div 10 ceil .shootval store
stop

cond
*.original .origkey !=
*.shoot -1 =
*.shoot -6 = or
start
0 .shoot store
0 .shoot store 'Remove or add shoots if another bot has the same amount
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shoot store
0 .shootval store
stop

cond
*.refshoot *.myshoot =
*.eyef 0 >
start
0 .shoot store
0 .shootval store
stop

cond
*.robage 20 >
*.refshoot *.myshoot =
*.eyef 0 >
*.nrg 1000 >
*.refnrg 1000 <
start
*.refxpos *.refypos angle .setaim store
*.refxpos *.xpos sub abs *.refypos *.ypos sub abs pyth 10 div 20 sub 0 floor *.refvelup add .up store
*.refveldx .dx store
0 .dn store
-2 .shoot store
*.eyef 50 sub 0 floor 50 ceil .shootval store
stop

end
« Last Edit: December 22, 2011, 11:53:33 AM by Shasta »

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
LoveBot (F2) (Moonfisher) - 30-03-08
« Reply #1 on: March 30, 2008, 01:26:18 PM »
Per the bug report, crashing issue is fixed in 2.43.1f.
Many beers....

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
LoveBot (F2) (Moonfisher) - 30-03-08
« Reply #2 on: March 31, 2008, 05:08:28 PM »
I think this may actualy make it possible to have a conspec that doesn't devolve on an evo bot. Since you no longer need to have mutations enabled to evolve, you can just steal genes from other mutating bots and make sure your conpec genes is always last and also prevent the bot from shooting it's own. This way if a bot has the right conspec it will also be safe to be around it.

Currently working on a more elaborate conspec for the lovebot, I want to try and make an mutationless evolver out of it, for IM...
The idea is to do more or less what it does now, but also occasionaly force the infected bots to mate with the originals to create changes in the original bot.
I would also try to think of a way not to comletely overide the infected bots genes, only take controll when the bot is doing nothing and only using the rape shots occasionaly.
Try to set it up so theres a high chance to have some degree of controll, but then try not to intefere too often.

I think this might work, going to SG'fy certain genes at the end and have lots of small genes in the first part, maybe even genes that get overiden.
The last genes would be an elaborate conspec gene, still working on it, trying to think of all the details... but I think a realy cool rape/slut bot could come from this.

Looking forward to DB 2.43.1f !!!