Author Topic: Sim hanging  (Read 4768 times)

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« on: December 17, 2006, 12:47:29 PM »
Hey, This sim is hanging and I can't figure out why. Its got two bots, Alga_Sporula (mine) and Devious_Eraticatorus

it hangs after a thousand cycles or so.

I was at first thinking that the energy was just overflowing, but I reduced the energy input to the veggies, and then the energy started falling, but it still hung.

Try running this and see if there's anything egregiously wrong with it.

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« Reply #1 on: December 17, 2006, 12:50:45 PM »
Here's the devious eraticatorous I'm using.


Code: [Select]
'Devious eraticatorus - by irishguy

'extremely effective tie-feeder, kills tie-destroyers with relative ease, and
'eraticates alot of other bots in about 100-300 cycles


'uses MB ties to leach nrg like no other. consequently, he "shares" with his
'conspecs, but this is by accident, as you will notice sometimes he will reproduce
'and his children will either die, or he will die. if alga is fixed, growth seems
'to be much more linear in the first 500 cycles. however, if alga roams free,
'he'll have a much more exponential growth. this is easy to see if the enemy
'is very aggressive. if not, he'll flourish too quickly.

'much of his super effectiveness was discovered on accident. I.e. his Antivirus.
'his AV simply prevents extra genes from forming. that was a problem I had when
'he would infect his friends, creating bots with over 80 genes sometimes. later
'I realized this stops all viruses that get appended.

'his ability to uber-leech make it possible to kill tie-destroyers, with ties.
'he'll superleech them and then kill them with the standard tie-feeding.

'his virus is also more efficent than those that randomly delete genes. it takes
'less time to create a virus, thus because my bots able to propagate quickly, the
'virus does not spread, easily dodging Antivirus genes looking for "mkvirus" to have
'been altered.

'start gene
cond
*.robage 0 =
start
256 41 store
*.genes .mkvirus store
stop

'virus launcher
cond
*.eye5 50 >
*.refeye 8 !=
*.refeye 0 !=
*.eye5 77 !=
*.vtimer 1 =
start
100 .vshoot store

stop

'tie-maker
cond
*.eye5 50 >
*.refeye 0 =
*.eye5 77 !=
start
1 .tie store
stop

'virus production
cond
*.vtimer 0 =
start
*.genes .mkvirus store
stop

'tie-bots eye system
cond
*.eye4 *.eye6 !=
start
*.eye4 *.eye6 sub .aimsx store
stop

'speed control
cond
*.vel 30 <
start
30 *.vel sub .up store
stop

'actual feeding routine
cond
*.numties 0 >
start
-1 .tieloc store
-1000 .tieval store
*.tiepres .tienum store
stop

'birth-tie kill
cond
*.robage 1 >
*.robage 50 <
start
0 .deltie store
stop

'never get fixed
cond
*.fixed 0 !=
start
.fixpos dec
stop

'reproduction - I don't know what "mult 250" does. I saw it in some bot. I think it may just be
'there to slow reproduction. also because he needs 4000 to make kids, but only 2000 to add to
'his body, he'll rarely reproduce if he has no veggies.
cond
*.nrg 4000 >
start
20 .repro store
mult 250
stop

'slime, so I can minimize viral infection
cond
*.slime 100 <
start
1000 .mkslime store
stop

'waste release, alot of times he just happens to hit his veggies
cond
*.waste 10 >
start
*.waste .shootval store
-4 .shoot store
stop

'the superleech, I don't know if trefage actually helps
cond
*.robage 30 >
*.trefage 30 >
*.multi 1 =
start
99 .sharenrg store
.sharewaste inc
stop

'nrg storage
cond
*.nrg 2000 >
start
100 .strbody store
stop

'nrg replenish
cond
*.nrg 500 <
start
100 .fdbody store
stop

'gene check
'this simple AV stops almost every infection I've seen. im so mad that I found this
'because it means other people will be able to easily stop viral attacks.
cond
*.genes 17 >
start
*.genes .delgene store
stop

'my virus - a.k.a. the down syndrome virus (lol)
'he doesn't replicate, because of the AVs that kill replicators.
'but his payload does 2 great things
'1. he make a extremely small child, which is is easy pickings for my other bots!!
'2. he deletes the first gene, over and over until all the genes, including the
' the virus are gone. now the infected bot is free food for his attacker.
' because he is reproducing, each child he makes, will be more retarded than the last!
cond
*41 256 !=
start
1 .repro store
1 .delgene store
stop

end

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Sim hanging
« Reply #2 on: December 17, 2006, 01:50:31 PM »
Could you try it using DBv2.42.9o? If it still does the same thing post your veg, (Devious Eraticatorus is already in the bestiary unless this is a modded version) and I'll have a go at reproducing the error tomorrow when the league rerun I'm doing is finished.
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« Reply #3 on: December 17, 2006, 02:42:36 PM »
I have tried it with 2.42.9o with the same results.

The hang does not seem dependent on the veg. I can put any veg in and it does the same.

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Sim hanging
« Reply #4 on: December 17, 2006, 04:36:14 PM »
kk will try as soon as I have a chance.
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Sim hanging
« Reply #5 on: December 18, 2006, 04:49:16 AM »
Yeah, does the same for me, I had to change the alga when it asked to alga minimalis but that sim sure kills the program.
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« Reply #6 on: December 18, 2006, 10:41:36 AM »
I'm thinking the hang may be due to the massive number of ties devious eradicatorus makes. That's just a guess though, as I don't have VB and can't debug.

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Sim hanging
« Reply #7 on: December 18, 2006, 10:57:59 AM »
I have run Devious previously under league settings for matches and it has never caused this problem before.

btw I'm sure someone will give you a (legal) link to download VB if you are interested in helping debug DB, pretty sure I have seen it given before.
« Last Edit: December 18, 2006, 11:01:00 AM by Jez »
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« Reply #8 on: December 18, 2006, 12:00:53 PM »
Yeah, I'd certainly be willing to help debug.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Sim hanging
« Reply #9 on: December 18, 2006, 05:13:56 PM »
This hang is a semi-tight loop in the point mutation routine.  A point mutation is being attempted on a bot of age 0 with a DNA length of 1.  The code will tight loop in such a cases.  

The single base pair bot is a result of the virus gene in Devious eraticatorus.  A bot with only a single gene  left (the virus gene) reproduced and then deleted the gene, leaving the child with none and triggering the bug and the hang.  

Fixed in 2.42.9p.
Many beers....

Offline frankle

  • Bot Neophyte
  • *
  • Posts: 21
    • View Profile
Sim hanging
« Reply #10 on: December 18, 2006, 06:54:53 PM »

Offline Jez

  • Bot Overlord
  • ****
  • Posts: 788
    • View Profile
Sim hanging
« Reply #11 on: December 18, 2006, 07:10:17 PM »
I think this is the post with the link to Visual Basic 6.0

And this is the link to the topic if you wish to help Help program
If you try and take a cat apart to see how it works, the first thing you have in your hands is a non-working cat.
Douglas Adams

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Sim hanging
« Reply #12 on: December 18, 2006, 10:48:21 PM »
That first link will give you a stripped down VB version without help files, etc.  It will have problems trying to install, but if you just ignore the errors it should work fine.