Author Topic: Multibot Vegetable  (Read 19568 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Multibot Vegetable
« Reply #60 on: November 27, 2005, 11:28:36 PM »
Quote
btw ... Nums or whoever ...
even the lowest Y gravity setting of 0.1 is too much for some sims.
I'd like to have more subtle control of it.
would be great to be able to have a box to type in a lower value
rather than just the slider.  or a way to select a 'range'  * or / by a factor of 10, etc.
just an idea for some vernier control.
I'll see what I can do.  At a certain point I hate having too many controls as it just gets cluttered...

Maybe some little popup windows or something.

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Multibot Vegetable
« Reply #61 on: November 27, 2005, 11:30:43 PM »
To address the lack of ties and too many ties problem:

If you have too many:

cond
'some condition to check for not a stem
*.numtie 1 >
start
*.tiepres 'points to the most recent tie formed
.deltie store
stop

'to form a tie if you haven't:
cond
*.numtie 0 =
start
somenumber .tie store
stop
« Last Edit: November 27, 2005, 11:31:16 PM by Numsgil »

Offline Boris of Quirm

  • Bot Neophyte
  • *
  • Posts: 45
    • View Profile
Multibot Vegetable
« Reply #62 on: November 28, 2005, 08:42:26 AM »
I have now remedied most of the tie problems and a new version of the plant is now posted in the bestiary.  For those of you testing this, I have been using version 2.37.6.  The bot is set as a veggie and blocked. Mutations are disabled and no other bots are present.  This has not been tested in pond mode yet.

Still on the subject of ties though, I am still stuggling to make the .tielen work properly.  I have tried adding the code into Gene 6 which increments the tie counter.  I figured that each cycle I could increase the tie length from within here but it doesn't seem to work.

Can someone else please have a look at this and let me know if they have any success.    If you do, if you can post up the code that would be great.

The next version of the plant will hopefully move towards the bottom of the screen where it will then start to grow once it has hit the edge.  All being well, it should then grow up the screen towards the sun.

Again, if anyone has had anyone joy with checking for these sort of conditions in the past, please feel free to write the gene yourself.  

Numsgil, I have had a quick look at the .tielen, .tielen1, .edge, .sun commands but have had no success so far.  I suspect I may need to change the environment settings, but as I am still new to this, so I am not sure.

You never know, if we have several versions of the plant we can then see which is the most successful when growing alongside predators, or in different environments.
Why do computer programmers celebrate Christmas at Halloween?

Because Dec 25 is equal to Oct 31!!

Offline Boris of Quirm

  • Bot Neophyte
  • *
  • Posts: 45
    • View Profile
Multibot Vegetable
« Reply #63 on: November 28, 2005, 08:59:56 AM »
Just tried using tielen, tielen1 and robage to try and increase the length of tie between cells but no joy.

The lines I've tried are shown below:-

where robage 0 = or robage 1 =

100 .tielen store
100 .tielen1 store

Is this the correct syntax or is my value to low/high?
Does anyone have any examples of code that increases tie length that have worked including the condition?

Thanks.
Why do computer programmers celebrate Christmas at Halloween?

Because Dec 25 is equal to Oct 31!!

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Multibot Vegetable
« Reply #64 on: November 28, 2005, 10:10:27 AM »
If you use "100 tielen store" you first have to set the tie that you are addressing with .tienum

If all your ties have an ID of 1 (from "1 .tie store" or ".tie inc") then setting .tienum to 1 will address ALL tie that are attached to a bot.

That was why I introduced tielen1 so that you no longer have to do that.

Tielen1 automatically addresses the tie that occupies slot #1 in the robot's internal tie array without the need for any external identifier. The first tie that attaches to the robot, either by its own doing or from another robot, is always #1. Then the array fills up tie by tie.

As to the length?

Tie length is determined as the distance from center to center of the robots tied together.

An average robot has a diameter of 120 so a tie length of 100 would attempt to make the tie shorter than the available distance. This should result in extremely short ties.

The Maximum length of a tie (before snapping) is 1000.

Try using some value between 120 and 1000 to get a longer tie.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Boris of Quirm

  • Bot Neophyte
  • *
  • Posts: 45
    • View Profile
Multibot Vegetable
« Reply #65 on: November 28, 2005, 11:29:43 AM »
I have tried the following gene:-

Code: [Select]
'Gene 9 - Grow away from the plant
'
'At birth increase the length of the tie
'between me and my parent

cond
.robage 10 <
start
500 .tielen1 store
stop

'End of Gene

But I am still not seeing the tie grow at all.
I have tested this in 2.37.6 and 2.4.A but no joy in either.

Am I still doing something wrong?
Why do computer programmers celebrate Christmas at Halloween?

Because Dec 25 is equal to Oct 31!!

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Multibot Vegetable
« Reply #66 on: November 28, 2005, 12:47:27 PM »
Tie controls such as tielen and tieang DO NOT work until the tie hardens at age 20

Energy and information transfer are possible prior to that but angle and length controls require stiff ties.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Boris of Quirm

  • Bot Neophyte
  • *
  • Posts: 45
    • View Profile
Multibot Vegetable
« Reply #67 on: November 28, 2005, 01:17:11 PM »
Modified the code to the following:-

Code: [Select]
'Gene 9 - Grow away from the plant
'
'When I am old enough increase the length of the tie
'between me and my parent

cond
*.robage 25 =
start
500 .tielen1 store
stop

'End of Gene

And it still isn't working.  The value for .tielen1 is being set to 500 but the tie isn't growing on the screen.

Am I still missing something?  Is there a way I can check to see if the tie has hardened before I try to increase it's length?
Why do computer programmers celebrate Christmas at Halloween?

Because Dec 25 is equal to Oct 31!!

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Multibot Vegetable
« Reply #68 on: November 28, 2005, 03:03:57 PM »
Works perfectly for me  :blink:

I just added the gene that you just posted, to the end of the genome of your plant and the tie lengths set perfectly.

Set them at 200 and they stay short.

Set them at 900 and they get real long.

You sure you put the gene before the END statement?
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Boris of Quirm

  • Bot Neophyte
  • *
  • Posts: 45
    • View Profile
Multibot Vegetable
« Reply #69 on: November 28, 2005, 03:55:27 PM »
:redface:   Just realised I had the plant set as blocked, hence why it wasn't moving apart.

*Bows head in shame and stands in the corner*
Why do computer programmers celebrate Christmas at Halloween?

Because Dec 25 is equal to Oct 31!!

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Multibot Vegetable
« Reply #70 on: November 28, 2005, 05:03:46 PM »
Well, I guess we'll forgive you this time.   :D