Author Topic: Why aren't you using 2.42?  (Read 23758 times)

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #45 on: April 19, 2006, 05:04:23 PM »
Yeah, I agree Elite.

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #46 on: April 19, 2006, 05:21:19 PM »
OK, I've revamped everything. You can get a link to my new FTP from the main page and can link to the sources and previous versions from there.
« Last Edit: April 19, 2006, 05:21:52 PM by Elite »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #47 on: April 19, 2006, 05:27:36 PM »
I modified it a bit, but it's good.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #48 on: April 20, 2006, 11:37:45 AM »
Quote from: Elite
(3) .fixang, .fixlen and .tielen1-3 don't work
Sharing doesn't seem to work either

Here's an example to demstrate bug (3):
I've attached a simple SG batterybot that is supposed to grab a veggy that you put in front of it and drain it's energy using sharing. It doesn't move or fight etc. - all it does is grab veggies that come near to it's eye5, unfix them and put them behind it using fixang.

In practice, in 2.42.2, it grabs the veggie, unfixes it, but can't move it behind itself, change the length of the tie, or share with the veg.

I'm digging into this.  Here are some questions that would help me better understand how ties are supposed to work.

Q) Should tmemloc and tmemval be reset to zero if the bot attempts to read from a tie and there are either no ties at all or no value specifed in .tienum?  2.4 does this today.

Q) If there is only one tie, should the tref sysvars be automatically populated or should the bot have to set a tienum and explicitly read from the tie before the tref sysvars get populated?
Many beers....

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #49 on: April 20, 2006, 11:47:27 AM »
Quote from: EricL
Q) Should tmemloc and tmemval be reset to zero if the bot attempts to read from a tie and there are either no ties at all or no value specifed in .tienum?  2.4 does this today.
No, I think you should keep .tmemloc set until changed by the bot. That way you don't have to keep setting it if you accidently read from a nonexistant tie. Maybe that's one of the reasons why symbioticus has been playing up in 2.4

Quote from: EricL
Q) If there is only one tie, should the tref sysvars be automatically populated or should the bot have to set a tienum and explicitly read from the tie before the tref sysvars get populated?
Yes, populating the trefvars automatically with the first tie formed would be a very, very good idea as you could then use:

cond
*.trefeye *.myeye =
start
*.tiepres .deltie store
stop

With ease   Without loosing a cycle storing the tie phase into .readtie
« Last Edit: April 20, 2006, 11:48:32 AM by Elite »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #50 on: April 20, 2006, 11:49:31 AM »
I'm with Elite on this one.

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #51 on: April 20, 2006, 12:00:08 PM »
Okey Dokey.  2.4 exhibits the opposite of what you recommend in both cases, which is in part (but only in part) why the gene Elite posted is not behaving as expected.  But this is just the tip of the iceberg I fear....

Does anyone know what the 2.37.6 behaviour is?  Elite, if your gene works on 2.37.6 then I assume that version behaves as you both indicate in both cases.
Many beers....

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #52 on: April 20, 2006, 12:03:17 PM »
Yep, in 2.37.6, .tmemloc is set until set again by the bot

However, the trefvars aren't automatically populated in 2.37.6, but making them so will be an improvement

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #53 on: April 20, 2006, 07:19:49 PM »
Quote from: Elite
Yep, in 2.37.6, .tmemloc is set until set again by the bot

However, the trefvars aren't automatically populated in 2.37.6, but making them so will be an improvement

If the trefvars arn't populated automatically, then I don't understand how this gene works in that version.  Maybe I'm slow today, but .tienum won't ever get set unless *.treffixed has a non-zero value.  See this line in the gene
55 .tienum *.numties sgn mult *.treffixed mult store

Am I on drugs?
Many beers....

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #54 on: April 20, 2006, 07:50:06 PM »
Quote
Am I on drugs?

 If you're working on Darwinbots you have to be:
 
 Hehehe.  Hahaha.  

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #55 on: April 21, 2006, 12:06:38 AM »
Quote from: Numsgil
If you're working on Darwinbots you have to be:
Ain't that the truth.

Okay, the trefvars now get magically populated when a bot initiates a tie.  Exact specifics are here (#10 first post).
Many beers....

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #56 on: April 21, 2006, 11:01:56 AM »
In 2.37.6 you set .readtie to populate the trefvars, rather than using .tienum but if they got populated automatically the instant a tie is initiated it would be a minor improvement over 2.37.6, since you could then use this gene:

cond
*.trefeye *.myeye =
start
*.tiepres .deltie store
stop

To delete accidental ties to conspecs, without wasting a cycle setting *.readtie

It would just make it slightly easier to work out who you're tied to so you don't go sucking the energy out of your own species
« Last Edit: April 21, 2006, 11:03:00 AM by Elite »

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #57 on: April 21, 2006, 11:18:20 AM »
Quote from: Elite
In 2.37.6 you set .readtie to populate the trefvars,
Right.  Muddled brain.  Late night.  Not enough drugs...
Many beers....

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Why aren't you using 2.42?
« Reply #58 on: April 21, 2006, 11:20:20 AM »
How does this apply to the .tmemloc/.tmemval couplet?
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #59 on: April 21, 2006, 11:29:48 AM »
Quote from: EricL
Not enough drugs...
 

Quote from: PurpleYouko
How does this apply to the .tmemloc/.tmemval couplet?
That was a seperate question - whether .memloc/val should reset when there are no ties currently set or the bot attempts to read from a tie that doesn't exist.

I voted no - that .memloc should stay as it is until the bot changes it