Author Topic: Pacifist (5G) (Moonfisher) 19-02-08  (Read 7305 times)

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« on: February 19, 2008, 03:40:33 AM »
Heres my second bot, no stolen code this time.
It hasn't been fine tuned for either F1 or internet mode, it should work well in both.
You can adjust the nrg level to a higher value like 150 if you want to see it break 1000 units under F1 conditions.
This is what I call the rough tweek, theres room for a lot of improvement and finetuning, but this will have to do for now.
It's actualy overkill, some earlier versions where tecnicaly more effective and more true to the concept of being a pacifist, but some fights would last forever.
I guess it's a short bot, but it should do well in the F1 league aswell (If you have the patience for it).
I was originaly building it for internet mode, and I guess you could even call it an interesting behavior bot on some level.

But in the end I'm just labeling it (5G) and then you can run it in whatever leagues/internetmode you like.

It hibernates below 100 energy, and it won't make a big difference if storing into mem loc 0 has costs or not.

It's realy simple, but it works.

If you're having problems with it, make sure that none of the lines have been split up the wrong way (Missing spaces and such)

[div class=\'codetop\']CODE[div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']
Code: [Select]
'Pacifist v0.01
'Why can't we all just get along ?

 cond
 *.robage 2 <
 start
 124 .eye1width store
 490 .eye1dir store
 124 .eye2width store
 210 .eye2dir store
 124 .eye3width store
 402 .eye3dir store
 124 .eye4width store
 125 .eye4dir store
 124 .eye6width store
 979 .eye6dir store
 124 .eye7width store
 1170 .eye7dir store
 124 .eye8width store
 893 .eye8dir store
 124 .eye5width store
 1220 .eye9width store
 680 rnd .setaim store
 20 .sx store
 7 .vloc store
 -2 .venval store
 40 824 *.nrg 100 sub sqr dup div mult store
 40 822 *.nrg 100 sub sqr dup div mult store
 *.tiepres .deltie store
 43 754 store
 stop

 cond
 *.nrg 100 >
 *.shflav 0 !=
 or
 *.numties 0 >
 or
 start
 *.robage 9 mod 4 sub *.eyef 0 sub dup div 1 sub abs *.refbody 7 sub -1 mult sqr dup div add sgn *.vtimer 25 sub sqr dup div mult mult *.refxpos *.refypos angle *.eyef 0 sub sqr dup div *.refbody 10 sub sqr dup div mult *.aim *.refxpos *.refypos angle sub abs 1 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add *.tieang - *.aim add *.numties 0 sub sqr dup div *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add 511 *.eyef 0 sub dup div 1 sub abs *.refbody 10 sub -1 mult sqr dup div add sgn *.vtimer 25 sub sqr dup div mult mult 19 *.eyef 0 sub sqr dup div *.refbody 10 sub sqr dup div mult *.aim *.refxpos *.refypos angle sub abs 1 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add 19 *.numties 0 sub sqr dup div *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add store
 7 *.vtimer 25 sub sqr dup div *.numties 0 sub dup div 1 sub abs add sgn *.venom 5 sub sqr dup div mult *.eye9 20 sub sqr dup div *.focuseye 4 sub dup div 1 sub abs *.focuseye 0 sub dup div 1 sub abs add sgn mult mult *.refbody 7 sub sqr dup div mult *.refeye 0 sub dup div mult mult dec
 7 *.vtimer 25 sub sqr dup div *.numties 0 sub dup div 1 sub abs add sgn *.venom 5 sub sqr dup div mult *.eye9 20 sub sqr dup div *.focuseye 4 sub dup div 1 sub abs *.focuseye 0 sub dup div 1 sub abs add sgn mult mult *.refbody 7 sub sqr dup div mult *.refeye 0 sub dup div mult mult dec
 7 *.vtimer 25 sub sqr dup div *.numties 0 sub dup div 1 sub abs add sgn *.venom 5 sub sqr dup div mult *.eye9 20 sub sqr dup div *.focuseye 4 sub dup div 1 sub abs *.focuseye 0 sub dup div 1 sub abs add sgn mult mult *.refbody 7 sub sqr dup div mult *.refeye 0 sub dup div mult mult dec
 *.tiepres *751 1 sub dup div 1 sub abs *.trefbody 5 sub -1 mult sqr dup div add sgn *.nrg 1500 sub sqr dup div add sgn *.body 5 sub sqr dup div add sgn mult 99 *751 0 sub dup div 1 sub abs *.trefbody 5 sub sqr dup div mult *.nrg 1500 sub -1 mult sqr dup div mult *.body 5 sub -1 mult sqr dup div mult mult add 467 *751 1 sub dup div 1 sub abs *.trefbody 5 sub -1 mult sqr dup div add sgn *.nrg 1500 sub sqr dup div add sgn *.body 5 sub sqr dup div add sgn mult 830 *751 0 sub dup div 1 sub abs *.trefbody 5 sub sqr dup div mult *.nrg 1500 sub -1 mult sqr dup div mult *.body 5 sub -1 mult sqr dup div mult mult add store
 751 *751 sgn mult dec
 50 *.nrg 500 sub sqr dup div *.robage 3100 sub -1 mult sqr dup div mult mult 99 *.robage 3100 sub sqr dup div mult add 300 *.nrg 500 sub sqr dup div *.robage 3100 sub sqr dup div add sgn mult 511 *.robage 3000 sub -1 mult sqr dup div *.nrg 400 sub -1 mult sqr dup div mult *.eyef 0 sub sqr dup div mult *.refbody 10 sub sqr dup div mult *.aim *.refxpos *.refypos angle sub abs 1 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add store
 1 *.body 4 sub -1 mult sqr dup div *.body 4 sub dup div 1 sub abs add sgn *.body 2 sub sqr dup div mult *.nrg 500 sub -1 mult sqr dup div mult mult 30 *.body 21 sub -1 mult sqr dup div *.body 21 sub dup div 1 sub abs add sgn *.body 4 sub sqr dup div mult mult add 200 *.body 21 sub sqr dup div mult add 10 *.nrg 600 sub sqr dup div *.body 4 sub -1 mult sqr dup div mult *.robage 3100 sub sqr dup div add sgn mult add 312 *.body 4 sub -1 mult sqr dup div *.body 4 sub dup div 1 sub abs add sgn *.body 2 sub sqr dup div mult *.nrg 500 sub -1 mult sqr dup div mult mult 312 *.body 21 sub -1 mult sqr dup div *.body 21 sub dup div 1 sub abs add sgn *.body 4 sub sqr dup div mult mult add 312 *.body 21 sub sqr dup div mult add 313 *.nrg 600 sub sqr dup div *.body 4 sub -1 mult sqr dup div mult *.robage 3100 sub sqr dup div add sgn mult add store
 751 *.nrg 500 sub sqr dup div mult inc
 *.nrg 50 div *.vtimer 1 sub dup div 1 sub abs *.numties 0 sub dup div 1 sub abs mult mult *.nrg 10 div 10 floor *.vtimer 1 sub dup div 1 sub abs *.numties 0 sub sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add *.genes 1 sub *.vtimer 0 sub dup div 1 sub abs *.totalmyspecies 60 sub -1 mult sqr dup div mult mult add *.genes *.vtimer 0 sub dup div 1 sub abs *.totalmyspecies 59 sub sqr dup div mult mult add *.tiepres *.deltie *.tiepres sub dup div *.vtimer 1 sub sqr dup div mult mult add 338 *.vtimer 1 sub dup div 1 sub abs *.numties 0 sub dup div 1 sub abs mult mult 338 *.vtimer 1 sub dup div 1 sub abs *.numties 0 sub sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add 335 *.vtimer 0 sub dup div 1 sub abs mult add 455 *.deltie *.tiepres sub dup div *.vtimer 1 sub sqr dup div mult mult add store
 42 *.eyef 0 sub sqr dup div *.refbody 7 sub sqr dup div mult *.aim *.refxpos *.refypos angle sub abs 100 sub -1 mult sqr dup div mult *.numties 0 sub dup div 1 sub abs mult *.robage 20 sub sqr dup div mult mult 40 *751 0 sub dup div 1 sub abs *.numties 0 sub dup div mult mult add 330 *.eyef 0 sub sqr dup div *.refbody 7 sub sqr dup div mult *.aim *.refxpos *.refypos angle sub abs 100 sub -1 mult sqr dup div mult *.numties 0 sub dup div 1 sub abs mult *.robage 20 sub sqr dup div mult mult 331 *751 0 sub dup div 1 sub abs *.numties 0 sub dup div mult mult add store
 1 *.trefeye 0 sub dup div 1 sub abs *.vtimer 25 sub -1 mult sqr dup div mult *.numties 0 sub sqr dup div mult mult 100 *.trefeye 0 sub dup div 1 sub abs *.vtimer 25 sub sqr dup div mult *.numties 0 sub sqr dup div mult mult add 500 *.trefeye 0 sub dup div *.numties 0 sub sqr dup div mult mult add 469 *.numties 0 sub sqr dup div mult store
 453 *.robage 3 mod 0 sub dup div 1 sub abs *.tiepres 42 sub dup div add sgn *.vtimer 25 sub sqr dup div mult mult 822 *.robage 3 mod 1 sub dup div 1 sub abs *.tiepres 42 sub dup div 1 sub abs mult *.vtimer 25 sub sqr dup div mult mult add 300 *.robage 3 mod 2 sub dup div 1 sub abs *.tiepres 42 sub dup div 1 sub abs mult *.vtimer 25 sub sqr dup div mult mult add 216 *.vtimer 25 sub -1 mult sqr dup div mult add .tieloc store
 1000 *.robage 3 mod 0 sub dup div 1 sub abs *.tiepres 42 sub dup div add sgn *.vtimer 25 sub sqr dup div mult mult 50 *.robage 3 mod 1 sub dup div 1 sub abs *.tiepres 42 sub dup div 1 sub abs mult *.vtimer 25 sub sqr dup div mult mult add 0 *.robage 3 mod 2 sub dup div 1 sub abs *.tiepres 42 sub dup div 1 sub abs mult *.vtimer 25 sub sqr dup div mult mult add 1 *.vtimer 25 sub -1 mult sqr dup div mult add .tieval store
 80 rnd 20 floor *.robage 7 sub sqr dup div *.vtimer 25 sub sqr dup div mult *.shflav 0 sub dup div 1 sub abs mult *.totalmyspecies 400 sub -1 mult sqr dup div mult *.robage 8 sub sqr dup div mult *.nrg 100 sub sqr dup div mult *.eyef 0 sub sqr dup div mult *.refbody 5 sub -1 mult sqr dup div mult *.refxpos *.xpos sub *.refypos *.ypos sub pyth 100 sub -1 mult sqr dup div mult *.refvelscalar 1 sub -1 mult sqr dup div mult *.velscalar 1 sub -1 mult sqr dup div mult mult 80 rnd 20 floor *.shflav -1 sub dup div 1 sub abs *.shflav -3 sub dup div 1 sub abs add sgn *.shflav -6 sub dup div 1 sub abs add sgn *.robage 7 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add *.tielen 30 div 5 floor *.robage 7 sub sqr dup div *.numties 0 sub sqr dup div mult *.robage 20 sub sqr dup div mult *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add 50 *.robage 7 sub -1 mult sqr dup div *.numties 0 sub dup div 1 sub abs mult mult add 4 *.robage 7 sub sqr dup div *.vtimer 25 sub sqr dup div mult *.shflav 0 sub dup div 1 sub abs mult *.totalmyspecies 400 sub -1 mult sqr dup div mult *.robage 8 sub sqr dup div mult *.nrg 100 sub sqr dup div mult *.eyef 0 sub sqr dup div mult *.refbody 5 sub -1 mult sqr dup div mult *.refxpos *.xpos sub *.refypos *.ypos sub pyth 100 sub -1 mult sqr dup div mult *.refvelscalar 1 sub -1 mult sqr dup div mult *.velscalar 1 sub -1 mult sqr dup div mult mult 4 *.shflav -1 sub dup div 1 sub abs *.shflav -3 sub dup div 1 sub abs add sgn *.shflav -6 sub dup div 1 sub abs add sgn *.robage 7 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add 1 *.robage 7 sub sqr dup div *.numties 0 sub sqr dup div mult *.robage 20 sub sqr dup div mult *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add 1 *.robage 7 sub -1 mult sqr dup div *.numties 0 sub dup div 1 sub abs mult mult add store
 80 rnd 20 floor *.robage 7 sub sqr dup div *.vtimer 25 sub sqr dup div mult *.shflav 0 sub dup div 1 sub abs mult *.totalmyspecies 400 sub -1 mult sqr dup div mult *.robage 8 sub sqr dup div mult *.nrg 100 sub sqr dup div mult *.eyef 0 sub sqr dup div mult *.refbody 5 sub -1 mult sqr dup div mult *.refxpos *.xpos sub *.refypos *.ypos sub pyth 100 sub -1 mult sqr dup div mult *.refvelscalar 1 sub -1 mult sqr dup div mult *.velscalar 1 sub -1 mult sqr dup div mult mult 80 rnd 20 floor *.shflav -1 sub dup div 1 sub abs *.shflav -3 sub dup div 1 sub abs add sgn *.shflav -6 sub dup div 1 sub abs add sgn *.robage 7 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add *.veldx *.robage 7 sub sqr dup div *.numties 0 sub sqr dup div mult *.robage 20 sub sqr dup div mult *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add 2 *.robage 7 sub sqr dup div *.vtimer 25 sub sqr dup div mult *.shflav 0 sub dup div 1 sub abs mult *.totalmyspecies 400 sub -1 mult sqr dup div mult *.robage 8 sub sqr dup div mult *.nrg 100 sub sqr dup div mult *.eyef 0 sub sqr dup div mult *.refbody 5 sub -1 mult sqr dup div mult *.refxpos *.xpos sub *.refypos *.ypos sub pyth 100 sub -1 mult sqr dup div mult *.refvelscalar 1 sub -1 mult sqr dup div mult *.velscalar 1 sub -1 mult sqr dup div mult mult 2 *.shflav -1 sub dup div 1 sub abs *.shflav -3 sub dup div 1 sub abs add sgn *.shflav -6 sub dup div 1 sub abs add sgn *.robage 7 sub sqr dup div mult *.vtimer 25 sub sqr dup div mult mult add 3 *.robage 7 sub sqr dup div *.numties 0 sub sqr dup div mult *.robage 20 sub sqr dup div mult *.vtimer 25 sub -1 mult sqr dup div mult *.trefeye 0 sub dup div 1 sub abs mult mult add store
 202 *.shflav 0 sub sqr dup div mult dec
 202 *.shflav 0 sub -1 mult sqr dup div mult inc
 .fixpos dec
 stop

 cond
 *754 43 !=
 start
 .genes dec
 *.tiepres 467 *.trefbody 5 sub sqr dup div mult store
 50 .repro store
 35 .aimright store
 22 .tie store
 50 .sharenrg store
 *.mkvirus .delgene store
 1 .vshoot store
 7 .ploc store
 7 .mkpoison store
 stop

 cond
 *754 43 !=
 start
 .genes dec
 *.thisgene *.genes sgn add .mkvirus store
 *.genes 777 *777 1 sub -1 mult sqr dup div mult store
 *777 .genes store
 *.thisgene 1 sub *.thisgene 1 sub sgn mult *.thisgene 1 add *.thisgene 1 sub sgn 1 sub -1 mult mult add .delgene store
 *.nrg 30 div .vshoot store
 -6 7 *.eyef 1 sub sgn 0 floor mult *.refbody 7 sub sgn 0 floor mult store
 *.refxpos *.refypos angle - *.aim add .aimshoot store
 50 .repro store
 7 .dx store
 1220 .eye5width store
 7 .ploc store
 7 .mkpoison store
 20 .mkslime store
 3 .mkshell store
 *.tiepres 467 *.trefbody 5 sub sqr dup div mult store
 22 330 *.refbody 7 sub - sgn 0 floor 3000 *.refage sub sgn 0 floor mult *.refshoot 0 sub dup div 1 sub abs mult mult store
 50 .sharenrg store
 .fixpos dec
 .strbody inc
 stop
« Last Edit: May 13, 2014, 03:35:44 PM by Botsareus »

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #1 on: February 19, 2008, 03:50:04 AM »
By the way, I haven't been able to get internet mode to work propperly, so if you run it in internet mode I would love to hear the results.
I also read something about F1 internet mode somewhere, I would love to hear how it does in there aswell.

Remember to disable mutations.

Offline rsucoop

  • Bot Destroyer
  • ***
  • Posts: 166
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #2 on: February 19, 2008, 10:43:57 AM »
40 824 *.nrg 100 sub sqr dup div mult store

perhaps use soemthing involving pain to trigger it at different nrg levels.

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #3 on: February 19, 2008, 11:43:37 AM »
Quote from: rsucoop
40 824 *.nrg 100 sub sqr dup div mult store

perhaps use soemthing involving pain to trigger it at different nrg levels.

Initialy it did create more shell, but I kinda like to keep it as simple as possible. Also at the time I thought storing into mem loc 0 had costs, should have read the entire post, apparently they did add costs to storing in mem loc 0 and then removed them again.... (I only read the first part )
So theoreticaly there are no limits to the length your code can have with no costs.
But I kinda felt like that would be cheating...

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #4 on: February 23, 2008, 12:39:49 PM »
Lol, it just hit me... it's only 4 genes... not 5....
I was thinking of isolating the tie comands in a seperate gene, but then I read the rest of that post about storing in mem loc 0 and figured there was no point since there are no costs involved unless the command is executed...
Guess it's too late to change the name now...
I guess I'll have to make a version 0.02 and either label it 4G or add a gene
Won't have time for it for a while, and I may aswell wait for someone to beat it before making any hanges... if it ain't broke...
I'd rather play around trying to make an alge for IM then... although it seems like alge are realy overpowered, the only downside is the max to the pop count which inhibits evolution, but shrinking violet seems to manage just fine...
Still seems like whatever I'm doing with IM sin't working right, tryed deleting the pop files manualy and stuff like that.... still just got the exact same files back...
Everything is just standing still in there... sais there are 16 sims, but the only changes I can see are from my own species count or the one on computers on the same network as me... got no clue whats wrong at this point....

Offline rsucoop

  • Bot Destroyer
  • ***
  • Posts: 166
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #5 on: February 24, 2008, 11:20:46 PM »
Quote from: Moonfisher
Lol, it just hit me... it's only 4 genes... not 5....
I was thinking of isolating the tie comands in a seperate gene, but then I read the rest of that post about storing in mem loc 0 and figured there was no point since there are no costs involved unless the command is executed...
Guess it's too late to change the name now...
I guess I'll have to make a version 0.02 and either label it 4G or add a gene
Won't have time for it for a while, and I may aswell wait for someone to beat it before making any hanges... if it ain't broke...
I'd rather play around trying to make an alge for IM then... although it seems like alge are realy overpowered, the only downside is the max to the pop count which inhibits evolution, but shrinking violet seems to manage just fine...
Still seems like whatever I'm doing with IM sin't working right, tryed deleting the pop files manualy and stuff like that.... still just got the exact same files back...
Everything is just standing still in there... sais there are 16 sims, but the only changes I can see are from my own species count or the one on computers on the same network as me... got no clue whats wrong at this point....

Interesting Bot. I ran it against 4 other species, Slim Evo 3-2, Ant-5, Excalibur and I_Flammas. They ok until any predator came by, Excalibur is to tough to destroy without tactical genes, so I can see how it was destroyed by it, Ant-5 didn't really pay any attention to it, because my Slim Evos went cancerous on me and started hunting everything they didn't recognize; their memory genes had failed so they killed half the total population. Pacifist survived. Nicely done.

One nice thing noted, was that Slim Evo 3-2 and Pacifist sexualy reproduced, or My bot raped your bot. THe offspring had your three genes and the 360 Eye System.
« Last Edit: February 24, 2008, 11:28:16 PM by rsucoop »

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #6 on: February 25, 2008, 05:14:43 AM »
If you run it in F1 league mode against Excalibur, it should definately beat it...
If Excalibur is winning against Pacifist there must be something wrong, it can't be under normal F1 conditions with mutations disabled...
I've run about 100 fights with pacifist against Excalibur.... Pacifist has never lost.... in fact Pacifist has never lost against anything that I've seen... not even once...
I admit the fight can take ages against some of the less agressive oponents, but I've never seen it loose.

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #7 on: February 25, 2008, 05:33:29 AM »
Oh right, and it's good to hear the Pacifist is getting laid

I'll run more tests, but I'm almost positive you must have had mutations enabled or something (Pacifist completely falls appart if it mutates).
A good way to verify if it's working correct is to check that it reaches 159-160 units from the first 5 spawned pacifists.

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #8 on: February 25, 2008, 09:35:55 AM »
Hmmm, ran it against Excalibur a few times, doesn't realy seem like Excalibur has a chance.
I tryed activating mutations on Pacifist and it still managed to beat Excalibur even though it's code is broken down rather fast since each of the 5 starting bots reproduces into 32 specimens...
Either I've been running the wrong kind of environment all this time, or you did something different in your end...
I would think I have standard F1 conditions, since they should be set automaticaly when you enable the league.

I'm still curious to hear what kind of environment allows Excalibur to beat Pacifist though...
I know it completely falls appart from mutation, but if there's an environment it has problems with I would like to know so I can tweek it a litle...
And remember, just because it doesn't kill it's adversary it doesn't mean it can't win.
It may be a pacifist, but it knows Thay Chi and doesn't want to share it's food with anyone.
So... eventualy the oponent should die from starvation.

Offline rsucoop

  • Bot Destroyer
  • ***
  • Posts: 166
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #9 on: February 25, 2008, 12:16:26 PM »
Quote from: Moonfisher
Hmmm, ran it against Excalibur a few times, doesn't realy seem like Excalibur has a chance.
I tryed activating mutations on Pacifist and it still managed to beat Excalibur even though it's code is broken down rather fast since each of the 5 starting bots reproduces into 32 specimens...
Either I've been running the wrong kind of environment all this time, or you did something different in your end...
I would think I have standard F1 conditions, since they should be set automaticaly when you enable the league.

I'm still curious to hear what kind of environment allows Excalibur to beat Pacifist though...
I know it completely falls appart from mutation, but if there's an environment it has problems with I would like to know so I can tweek it a litle...
And remember, just because it doesn't kill it's adversary it doesn't mean it can't win.
It may be a pacifist, but it knows Thay Chi and doesn't want to share it's food with anyone.
So... eventualy the oponent should die from starvation.

Wll, Pacifist is a tie feeder, and so is SLim Evo, however Slim Evo is highly territorial; built with a swarm and a few stragglers looking for enemies or food. The Problem pacifist had to begin with, was any time it went towards another veg, a SLim Evo Swarm was already there; so it had to compete with the battery feeding protocol of Slim Evo. One thing I did notice, was that about half the population of Pacifist mutated into random shooters, and sometimes did not fire at excalibur, this meant Excaliburs' darn venom shots hit home most of the time, but your bot is insanely difficult to hit because it starts so small. F1 defaulted conditions, but I did disable all viruses for all species, because I kind of hate viruses; when I ran with viruses, everybot became so infected it was the only gene ative in most cases. I love its competitive edge for veggies, I'm going ot have to make SLim Evo 4 use more tie-related genes on veggies to make sure no one else grabs their food. I even ran without any mutations after this, Pacifist was stronger somewhat, but needs a few more defensive genes. Love the concept, iits like a little bug that goes around taking all your food, and when you go back for it it just shoots off out of sight. Problem encountered here was that SLim Evo was everywhere, darn swarming junkies for food. I had no edges, all sides were warped.

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #10 on: February 25, 2008, 02:36:28 PM »
Ah ok, well disabling viruses will definately stop it's advance... 2 of it's 4 genes are viruses
And having mutations enabled for it will have a harmfull effect 99% of the time I would think...
I can see how that would be a problem...

I don't think I can do much about the mutation, it's just not suited to evolve...
I did have an idea for making a virusless pacifist with 1 gene, but early tests sugest that just using a virus on the alge is a lot safer (And a whole lot easyer).
It is possible though, but I think I'd rather try to use the strat in a new bot.

And ofcourse releasing it in an environment full of enemies isn't realy it's strong side, it is after all a pacifist so it isn't suited for breaking down and established bot colony. It doesn't fight it's way through to the alge, and if it did it wouldn't realy be a pacifist

I guess it isn't very strong in internet mode, I can't get IM to work right so I can't realy test that part properly...
The point was to release it in an empty environment with some alge and hope for some infected alge to cross over and stay alive and spread in the next environment, but the infected alge can't compete with custom buildt evo alge. It's too dependant on the presence of simple alge to survive, it can feed on shrinking violet... ocasionaly...
So overall I guess it's a flop for IM, but it still beats F1 I think... haven't run the "released" version of pacifist through the league, it takes ages.

And there's room for a lot of improvement, this version does as litle as possible.
And BTW I'm sorry for the sloppy version I'm posting, but copying the code from inside the game was a very easy way to clean up wierd comments and old outcomented (Is that a word?) code.
If they ever run the leagues again, and my bot is still in there by then, I'll make a neat broken down version, with all the explanations asf...

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #11 on: March 10, 2008, 01:10:09 AM »
Have you run it against Guardian? That thing is fearsome, but I don't have the processing power to run an F1 match that includes it
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)

Offline fulizer

  • Bot Destroyer
  • ***
  • Posts: 198
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #12 on: March 11, 2008, 09:48:53 AM »
Quote from: Moonfisher
By the way, I haven't been able to get internet mode to work propperly, so if you run it in internet mode I would love to hear the results.
shame my computer has no internet anyway
"If this is coffee bring me tea, If this is tea, bring me coffee"

Offline Moonfisher

  • Bot Overlord
  • ****
  • Posts: 592
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #13 on: March 11, 2008, 06:52:50 PM »
Yeah I ran it against Guardian and the bots in the starting gate that seemed interesting...
But as mentioned I never ran the final version against all those bots, although I think it shouldn't have changed anything.
And this bot will also cause some serious lag because of the number of bots present.
The more agressive a bot is the faster it seems to die, so a few realy simple bots can take a long time to finish off

Offline abyaly

  • Bot Destroyer
  • ***
  • Posts: 363
    • View Profile
Pacifist (5G) (Moonfisher) 19-02-08
« Reply #14 on: March 12, 2008, 06:43:04 PM »
Quote from: Moonfisher
Yeah I ran it against Guardian
Who won?
Lancre operated on the feudal system, which was to say, everyone feuded all
the time and handed on the fight to their descendants.
        -- (Terry Pratchett, Carpe Jugulum)