Author Topic: Why doesn't this bot work?  (Read 5003 times)

Offline Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Why doesn't this bot work?
« on: July 12, 2010, 01:58:53 PM »
This is my first conditionless bot, and I thought I was being very clever while I was making it as I followed no tutorials, but it doesn't do anything! Nothing at all! Please help. :(

Code: [Select]
def runaway 51

start
628 rnd 314 sub .aimdx *.eyef sgn mult store
30 .up *.eyef sgn mult store
*.refxpos *.refypos angle 628 add .setaim *.eyef sgn *.refeye sgn mult mult store
50 .runaway *.eyef sgn *.refeye sgn mult mult store
50 .up *.runaway sgn mult store
.runaway *.runaway sgn mult dec
-1 .shoot *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
50 .repro *.nrg 3000 sub sgn 0 floor mult store
*.refvelup 50 add .up *.eyef sgn mult store
*.refveldx .up *.eyef sgn mult store
*.refvelup .up *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
.deltie *.robage - 1 add 0 floor mult inc
*.genes .delgene store
.delgene *.thisgene *.genes sub abs - 1 add 0 floor mult dec
*.body -- -- .fdbody 0 *.body sub sgn 1 floor -- - mult store
0 .strbody store

'OCULUS II
-4 *.eye1 *.eye9 sub sgn 0 floor mult *.eye1 *.eye8 sub sgn 0 floor mult *.eye1 *.eye7 sub sgn 0 floor mult *.eye1 *.eye6 sub sgn 0 floor mult *.eye1 *.eye5 sub sgn 0

floor mult *.eye1 *.eye4 sub sgn 0 floor mult *.eye1 *.eye3 sub sgn 0 floor mult *.eye1 *.eye2 sub sgn 0 floor mult 4 *.eye9 *.eye8 sub sgn 0 floor mult *.eye9 *.eye7

sub sgn 0 floor mult *.eye9 *.eye6 sub sgn 0 floor mult
*.eye9 *.eye5 sub sgn 0 floor mult *.eye9 *.eye4 sub sgn 0 floor mult *.eye9 *.eye3 sub sgn 0 floor mult *.eye9 *.eye2 sub sgn 0 floor mult *.eye9 *.eye1 sub sgn ++

sgn mult add -3 *.eye2 *.eye9 sub sgn ++ sgn mult *.eye2 *.eye8 sub sgn 0 floor mult *.eye2 *.eye7 sub sgn 0 floor mult *.eye2 *.eye6 sub sgn 0 floor mult *.eye2

*.eye5 sub sgn 0 floor mult *.eye2 *.eye4 sub sgn 0 floor mult *.eye2 *.eye3 sub sgn 0 floor mult *.eye2 *.eye1 sub sgn ++ sgn mult add 3 *.eye8 *.eye9 sub sgn ++ sgn

mult *.eye8 *.eye7 sub sgn 0 floor mult *.eye8 *.eye6 sub sgn 0 floor mult *.eye8 *.eye5 sub sgn 0 floor mult *.eye8 *.eye4 sub sgn 0 floor mult *.eye8 *.eye3 sub sgn

0 floor mult *.eye8 *.eye2 sub sgn ++ sgn mult *.eye8 *.eye1 sub sgn ++ sgn mult add -2 *.eye3 *.eye9 sub sgn ++ sgn mult *.eye3 *.eye8 sub sgn ++ sgn mult *.eye3

*.eye7 sub sgn 0 floor mult *.eye3 *.eye6 sub sgn 0 floor mult
*.eye3 *.eye5 sub sgn 0 floor mult *.eye3 *.eye4 sub sgn 0 floor mult *.eye3 *.eye2 sub sgn ++ sgn mult *.eye3 *.eye1 sub sgn ++ sgn mult add 2 *.eye7 *.eye9 sub sgn

++ sgn mult *.eye7 *.eye8 sub sgn ++ sgn mult *.eye7 *.eye7 sub sgn 0 floor mult *.eye7 *.eye6 sub sgn 0 floor mult *.eye7 *.eye5 sub sgn 0 floor mult *.eye7 *.eye4

sub sgn ++ sgn mult *.eye7 *.eye2 sub sgn ++ sgn mult *.eye7 *.eye1 sub sgn ++ sgn mult add -1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult

*.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub sgn 0 floor mult *.eye4 *.eye5 sub sgn 0 floor mult *.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn

mult *.eye4 *.eye1 sub sgn ++ sgn mult add 1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult *.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub

sgn ++ sgn mult *.eye4 *.eye5 sub sgn 0 floor mult
*.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn mult *.eye4 *.eye1 sub sgn ++ sgn mult add 0 *.eye5 *.eye9 sub sgn ++ sgn mult *.eye5 *.eye8 sub sgn ++

sgn mult *.eye5 *.eye7 sub sgn ++ sgn mult *.eye5 *.eye6 sub sgn ++ sgn mult *.eye5 *.eye4 sub sgn ++ sgn mult *.eye5 *.eye3 sub sgn ++ sgn mult *.eye5 *.eye2 sub sgn

++ sgn mult *.eye5 *.eye1 sub sgn ++ sgn mult add .focuseye store

-436 .eye9dir store
-327 .eye8dir store
-218 .eye7dir store
-109 .eye6dir store
 109 .eye4dir store
 218 .eye3dir store
 327 .eye2dir store
 436 .eye1dir store
109 .eye1width store
109 .eye2width store
109 .eye3width store
109 .eye4width store
109 .eye5width store
109 .eye6width store
109 .eye7width store
109 .eye8width store
109 .eye9width store
stop
Thanks.
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Re: Why doesn't this bot work?
« Reply #1 on: July 12, 2010, 02:07:05 PM »
Oops, I think I forgot to add *.refxpos *.refypos .setaim *.eyef sgn mult store, but that doesn't explain anything!
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Re: Why doesn't this bot work?
« Reply #2 on: July 13, 2010, 04:40:04 PM »
Just to clarify, .aimdx *.eyef sgn mult will only trigger if eyef > 0. If you want it to be the other way round, which I suspect makes more sense,  try .aimdx *.eyef sgn -- abs mult instead. This way you are testing for <=0.
"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 Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Re: Why doesn't this bot work?
« Reply #3 on: July 13, 2010, 05:52:13 PM »
Aha, yeah, good point, thanks.
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Re: Why doesn't this bot work?
« Reply #4 on: July 13, 2010, 06:08:58 PM »
Okay, here is an updated version of the bot, this one also appears to do nothing but on closer inspection I think it slowly rotates clockwise. :S I used my own thing which activates when it's zero instead of the one you posted, because I'm very proud of t and I want to use it whenever I can.

Code: [Select]
def runaway 51

cond
start
628 rnd 314 sub .aimdx *.eyef - 1 add 0 floor mult mult store
30 .up *.eyef - 1 add 0 floor mult mult store
*.refxpos *.refypos angle 628 add .setaim *.eyef sgn *.refeye sgn mult mult store
50 .runaway *.eyef sgn *.refeye sgn mult mult store
50 .up *.runaway sgn mult store
.runaway *.runaway sgn mult dec
-1 .shoot *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
50 .repro *.nrg 3000 sub sgn 0 floor mult store
*.refvelup 50 add .up *.eyef sgn mult store
*.refveldx .up *.eyef sgn mult store
*.refvelup .up *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
.deltie *.robage - 1 add 0 floor mult inc
*.genes .delgene store
.delgene *.thisgene *.genes sub abs - 1 add 0 floor mult dec
*.body -- -- .fdbody 0 *.body sub sgn 1 floor -- - mult store
0 .strbody store
*.refxpos *.refypos .setaim *.eyef sgn mult store

'OCULUS II
-4 *.eye1 *.eye9 sub sgn 0 floor mult *.eye1 *.eye8 sub sgn 0 floor mult *.eye1 *.eye7 sub sgn 0 floor mult *.eye1 *.eye6 sub sgn 0 floor mult *.eye1 *.eye5 sub sgn 0

floor mult *.eye1 *.eye4 sub sgn 0 floor mult *.eye1 *.eye3 sub sgn 0 floor mult *.eye1 *.eye2 sub sgn 0 floor mult 4 *.eye9 *.eye8 sub sgn 0 floor mult *.eye9 *.eye7

sub sgn 0 floor mult *.eye9 *.eye6 sub sgn 0 floor mult
*.eye9 *.eye5 sub sgn 0 floor mult *.eye9 *.eye4 sub sgn 0 floor mult *.eye9 *.eye3 sub sgn 0 floor mult *.eye9 *.eye2 sub sgn 0 floor mult *.eye9 *.eye1 sub sgn ++

sgn mult add -3 *.eye2 *.eye9 sub sgn ++ sgn mult *.eye2 *.eye8 sub sgn 0 floor mult *.eye2 *.eye7 sub sgn 0 floor mult *.eye2 *.eye6 sub sgn 0 floor mult *.eye2

*.eye5 sub sgn 0 floor mult *.eye2 *.eye4 sub sgn 0 floor mult *.eye2 *.eye3 sub sgn 0 floor mult *.eye2 *.eye1 sub sgn ++ sgn mult add 3 *.eye8 *.eye9 sub sgn ++ sgn

mult *.eye8 *.eye7 sub sgn 0 floor mult *.eye8 *.eye6 sub sgn 0 floor mult *.eye8 *.eye5 sub sgn 0 floor mult *.eye8 *.eye4 sub sgn 0 floor mult *.eye8 *.eye3 sub sgn

0 floor mult *.eye8 *.eye2 sub sgn ++ sgn mult *.eye8 *.eye1 sub sgn ++ sgn mult add -2 *.eye3 *.eye9 sub sgn ++ sgn mult *.eye3 *.eye8 sub sgn ++ sgn mult *.eye3

*.eye7 sub sgn 0 floor mult *.eye3 *.eye6 sub sgn 0 floor mult
*.eye3 *.eye5 sub sgn 0 floor mult *.eye3 *.eye4 sub sgn 0 floor mult *.eye3 *.eye2 sub sgn ++ sgn mult *.eye3 *.eye1 sub sgn ++ sgn mult add 2 *.eye7 *.eye9 sub sgn

++ sgn mult *.eye7 *.eye8 sub sgn ++ sgn mult *.eye7 *.eye7 sub sgn 0 floor mult *.eye7 *.eye6 sub sgn 0 floor mult *.eye7 *.eye5 sub sgn 0 floor mult *.eye7 *.eye4

sub sgn ++ sgn mult *.eye7 *.eye2 sub sgn ++ sgn mult *.eye7 *.eye1 sub sgn ++ sgn mult add -1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult

*.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub sgn 0 floor mult *.eye4 *.eye5 sub sgn 0 floor mult *.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn

mult *.eye4 *.eye1 sub sgn ++ sgn mult add 1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult *.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub

sgn ++ sgn mult *.eye4 *.eye5 sub sgn 0 floor mult
*.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn mult *.eye4 *.eye1 sub sgn ++ sgn mult add 0 *.eye5 *.eye9 sub sgn ++ sgn mult *.eye5 *.eye8 sub sgn ++

sgn mult *.eye5 *.eye7 sub sgn ++ sgn mult *.eye5 *.eye6 sub sgn ++ sgn mult *.eye5 *.eye4 sub sgn ++ sgn mult *.eye5 *.eye3 sub sgn ++ sgn mult *.eye5 *.eye2 sub sgn

++ sgn mult *.eye5 *.eye1 sub sgn ++ sgn mult add .focuseye store

-436 .eye9dir store
-327 .eye8dir store
-218 .eye7dir store
-109 .eye6dir store
 109 .eye4dir store
 218 .eye3dir store
 327 .eye2dir store
 436 .eye1dir store
109 .eye1width store
109 .eye2width store
109 .eye3width store
109 .eye4width store
109 .eye5width store
109 .eye6width store
109 .eye7width store
109 .eye8width store
109 .eye9width store
stop
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Re: Why doesn't this bot work?
« Reply #5 on: July 13, 2010, 07:28:20 PM »
I see you use OCULUS II  :D
One thing that confuses me is that you only delete tie in cycle one - is this intentional? I always check my conditionless logic mentally by creating a 'flowchart' and checking each possible configuration every step of the way, to see if the intended result comes up.
"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 Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Re: Why doesn't this bot work?
« Reply #6 on: July 13, 2010, 08:16:44 PM »
Yes, it's intentional. It's just to delete the birth tie.
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline Billy

  • Bot Destroyer
  • ***
  • Posts: 175
    • View Profile
Re: Why doesn't this bot work?
« Reply #7 on: July 13, 2010, 08:27:43 PM »
Okay, the problem was the wrong amount of mults. It actually does something now, still needs some fixing though. That can wait till tomorrow.

Code: [Select]
def runaway 51

cond
start
628 rnd 314 sub .aimdx *.eyef - 1 add 0 floor mult store
30 .up *.eyef - 1 add 0 floor mult store
*.refxpos *.refypos angle 628 add .setaim *.eyef sgn *.refeye sgn mult mult store
50 .runaway *.eyef sgn *.refeye sgn mult mult store
50 .up *.runaway sgn mult store
.runaway *.runaway sgn mult dec
-1 .shoot *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
50 .repro *.nrg 3000 sub sgn 0 floor mult store
*.refvelup 50 add .up *.eyef sgn mult store
*.refveldx .up *.eyef sgn mult store
*.refvelup .up *.eyef 50 sub sgn 0 floor *.refeye - 1 add 0 floor mult mult store
.deltie *.robage - 1 add 0 floor mult inc
*.genes .delgene store
.delgene *.thisgene *.genes sub abs - 1 add 0 floor mult dec
*.body -- -- .fdbody 0 *.body sub sgn 1 floor -- - mult store
0 .strbody store
*.refxpos *.refypos .setaim *.eyef sgn mult store

'OCULUS II
-4 *.eye1 *.eye9 sub sgn 0 floor mult *.eye1 *.eye8 sub sgn 0 floor mult *.eye1 *.eye7 sub sgn 0 floor mult *.eye1 *.eye6 sub sgn 0 floor mult *.eye1 *.eye5 sub sgn 0

floor mult *.eye1 *.eye4 sub sgn 0 floor mult *.eye1 *.eye3 sub sgn 0 floor mult *.eye1 *.eye2 sub sgn 0 floor mult 4 *.eye9 *.eye8 sub sgn 0 floor mult *.eye9 *.eye7

sub sgn 0 floor mult *.eye9 *.eye6 sub sgn 0 floor mult
*.eye9 *.eye5 sub sgn 0 floor mult *.eye9 *.eye4 sub sgn 0 floor mult *.eye9 *.eye3 sub sgn 0 floor mult *.eye9 *.eye2 sub sgn 0 floor mult *.eye9 *.eye1 sub sgn ++

sgn mult add -3 *.eye2 *.eye9 sub sgn ++ sgn mult *.eye2 *.eye8 sub sgn 0 floor mult *.eye2 *.eye7 sub sgn 0 floor mult *.eye2 *.eye6 sub sgn 0 floor mult *.eye2

*.eye5 sub sgn 0 floor mult *.eye2 *.eye4 sub sgn 0 floor mult *.eye2 *.eye3 sub sgn 0 floor mult *.eye2 *.eye1 sub sgn ++ sgn mult add 3 *.eye8 *.eye9 sub sgn ++ sgn

mult *.eye8 *.eye7 sub sgn 0 floor mult *.eye8 *.eye6 sub sgn 0 floor mult *.eye8 *.eye5 sub sgn 0 floor mult *.eye8 *.eye4 sub sgn 0 floor mult *.eye8 *.eye3 sub sgn

0 floor mult *.eye8 *.eye2 sub sgn ++ sgn mult *.eye8 *.eye1 sub sgn ++ sgn mult add -2 *.eye3 *.eye9 sub sgn ++ sgn mult *.eye3 *.eye8 sub sgn ++ sgn mult *.eye3

*.eye7 sub sgn 0 floor mult *.eye3 *.eye6 sub sgn 0 floor mult
*.eye3 *.eye5 sub sgn 0 floor mult *.eye3 *.eye4 sub sgn 0 floor mult *.eye3 *.eye2 sub sgn ++ sgn mult *.eye3 *.eye1 sub sgn ++ sgn mult add 2 *.eye7 *.eye9 sub sgn

++ sgn mult *.eye7 *.eye8 sub sgn ++ sgn mult *.eye7 *.eye7 sub sgn 0 floor mult *.eye7 *.eye6 sub sgn 0 floor mult *.eye7 *.eye5 sub sgn 0 floor mult *.eye7 *.eye4

sub sgn ++ sgn mult *.eye7 *.eye2 sub sgn ++ sgn mult *.eye7 *.eye1 sub sgn ++ sgn mult add -1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult

*.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub sgn 0 floor mult *.eye4 *.eye5 sub sgn 0 floor mult *.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn

mult *.eye4 *.eye1 sub sgn ++ sgn mult add 1 *.eye4 *.eye9 sub sgn ++ sgn mult *.eye4 *.eye8 sub sgn ++ sgn mult *.eye4 *.eye7 sub sgn ++ sgn mult *.eye4 *.eye6 sub

sgn ++ sgn mult *.eye4 *.eye5 sub sgn 0 floor mult
*.eye4 *.eye3 sub sgn ++ sgn mult *.eye4 *.eye2 sub sgn ++ sgn mult *.eye4 *.eye1 sub sgn ++ sgn mult add 0 *.eye5 *.eye9 sub sgn ++ sgn mult *.eye5 *.eye8 sub sgn ++

sgn mult *.eye5 *.eye7 sub sgn ++ sgn mult *.eye5 *.eye6 sub sgn ++ sgn mult *.eye5 *.eye4 sub sgn ++ sgn mult *.eye5 *.eye3 sub sgn ++ sgn mult *.eye5 *.eye2 sub sgn

++ sgn mult *.eye5 *.eye1 sub sgn ++ sgn mult add .focuseye store

-436 .eye9dir store
-327 .eye8dir store
-218 .eye7dir store
-109 .eye6dir store
 109 .eye4dir store
 218 .eye3dir store
 327 .eye2dir store
 436 .eye1dir store
109 .eye1width store
109 .eye2width store
109 .eye3width store
109 .eye4width store
109 .eye5width store
109 .eye6width store
109 .eye7width store
109 .eye8width store
109 .eye9width store
stop
"I cannot persuade myself that a beneficent and omnipotent God would have designedly created parasitic wasps with the express intention of their feeding within the living bodies of Caterpillars."

-Charles Darwin

Offline bacillus

  • Bot Overlord
  • ****
  • Posts: 907
    • View Profile
Re: Why doesn't this bot work?
« Reply #8 on: July 13, 2010, 10:49:43 PM »
Why only the birth tie? If you don't use ties, then it's pretty much guaranteed that all ties are parasitic...
"They laughed at Columbus, they laughed at Fulton, they laughed at the Wright brothers. But they also laughed at Bozo the Clown."
- Carl Sagan