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

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Why aren't you using 2.42?
« Reply #15 on: April 19, 2006, 02:26:43 AM »
Wow.  This is so... disillusioning.  I suppose I should have done my homework before investing time and energy on something people are so strongly divided on.   As a newbie, I assumed that there had been consensus (or at least tremendous community input) on the direction taken in 2.4 and that people lingered on 2.37 today only because 2.4 functionality was buggy or incomplete.  That given sufficient stability, functionality and active, technical investment in bug fixing and feature parity by an enthusastic and technicaly capable party, the community would converge on a 2.4 derritive.  I assumed there was a plan.  I now stand corrected.

I had likewise assumed that there had been considerable community input into the feature set of the C++ version and that it was a no brainer that people would similarly move to that once it also acheived an acceptable level of feature parity and robustness.  But given this thread, how can I not but question whether that is indeed the case?

Hmmm....  

I have no interest in spending time on something people care nothing about.  Yet, there are features I have strong personal interest in implementing, if only for my own enjoyment.  Doing that off the 2.37 code base seems silly (to me) given the investment I have made in 2.42.X.  I, for one, certainly do not consider 2.4 'abandoned' having spent the better part of the past month working on it.  Those who do are welcome to continue to live in the past on a stagnent code base.  

Similarly, while I assume Nums is a brilliant individual with tremendous vision, until it has gained significant community support (or someone can demonstrate to me that it has a high probability of doing so) I find my motivation for investment on the C++ code base at the present time highly diminished.

So for my part, I plan to continue to work on the 2.4 code base if for no other reason than my own edification until such time I get bored or the C++ fork is far enough along to attract my attention.  If there is interest, I will continue to post releases and source code.  I will also entertain and solicit bug reports and feature requests, including feature parity with 2.37.6.  Any substative input people wish to give me towards this goal is of course, welcome.

-E
Many beers....

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Why aren't you using 2.42?
« Reply #16 on: April 19, 2006, 07:43:22 AM »
Well... I had expected more people to be interested in 2.42 now when so many bugs have been fixed. 2.42 has more features like costs for instance. I like that. I don't see why anyone whould like to use 2.37 where you can't load a saved sim. I know some of you have more than one computer where you can use one to run a sim endlessly. I only have one computer and I need to quit the program from time to time to do other stuff. It's not fun to run a long sim and then it will be gone just because you had to quit the program. PY said he didn't think that was important to fix.  
I'm glad that you want to continue to work on 2.42, Eric. I'm also interested in trying out 2.5. I'm happy with the  features that have been put into DB over time. Seems like most of us agrees with what should be in DB and not. I have allways thought that DB should assemble real cells living in a water as much as possible. I think DB behaves like that more than any other a-life program I've seen.
The internet is corrupt and controlled by criminally minded people.

Offline Griz

  • Bot Overlord
  • ****
  • Posts: 608
    • View Profile
Why aren't you using 2.42?
« Reply #17 on: April 19, 2006, 10:57:12 AM »
Quote
So for my part, I plan to continue to work on the 2.4 code base if for no other reason than my own edification
hi eric.'

I would have liked to see 2.37.6 be the program that continued to evolve ...
rather than the 2.4X ...
but ... I got no say and gotta play with what is dealt.
PY did a lot of work on 2.37.6 ... cleaning up many bugs. great.
and I appreciate all your work on 2.42.2 as well ...
so I continue to use both ... as tools to assist me in learing VB
programming more than anything else.

so I hope you do continue to evolve 2.42.X ...
and continue to allow me and others to benefit from your work.
great stuff you are doing. imo. thanks.

IF you are going to tweak it ...
how about taking a look at the King Bot feature ...
and how it determines King Bot.
Form1  function fittest and Function score  Line 1241
Nums had a InvestedEnergy thing in there but had problems with it
and ended up setting InvestedEnergy to 1, elsewhere.
Form1 Function InvestedEnergy  line 1300.
 
had some discussion with Nums in this thread:

Survival-of-the-fittest

messages  # 18,  27, 28, 30, 34, 36,
I put it back in and it seemed to work for me.
see messages #41, 43, 45
and I was hoping to end up with a User Defined Selection Criteria window.
messages #47, 48, 49

in case you're interested.

thanks again for all the work ...
I for one do ineed appreciate the effort ...
and it is due to this that my interest in DB has been revived ...
as it seemed to have become rather stalled in place.
I had pretty much lost interest.

still great potential here.

thanks again eric.
不知
~griz~
[/color]
   "The selection of Random Numbers is too important to be left to Chance"
The Mooj  a friend to all humanity
[/color]

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Why aren't you using 2.42?
« Reply #18 on: April 19, 2006, 11:09:13 AM »
Quote
PY said he didn't think that was important to fix.

Not exactly Testlund. I think you may be misremembering our conversations a little.
As I recall the problem was that I could never manage to reproduce your problem. 2.37.6 saves and loads absolutely perfectly for me. I do it all the time with absolutely no problems.

For some reason I have had a lot of trouble reproducing the errors that you reported while we were debugging 2.37.6. In general I couldn't make any of them fail and still haven't to this day.

As it stands right now I am unaware of any issues with 2.37.6 that would cause it to malfunction in any way. I understood that it was working for everybody now. (with the possible exception of Testlund)
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #19 on: April 19, 2006, 11:28:00 AM »
Testlund is a magic bug finder.  It's his gift

As I understand it the major issue with 2.4 is older bots not working because of the dynamic sizes.  In reality, that was such a minor, one day effort it boggles my mind at the number of issues it raised.  Sorry, I thought it would be neat

The fix I posted in the Bugs and Fixes forum for making bots see better in 2.4 should actually fix it so older bots work like they always did.  Really and for truly.

The only other thing is ties, which are apparently broken because too much had been stashed in the tie physics routines which were discarded.  That's not a simple fix but it's definately doable.

The only other issue I can think of is psychological barriers.  Having so many buggy versions of 2.4 makes people subconciously assume any 2.4 derivative is buggy.  That's part of the reason I stopped working on 2.4.
« Last Edit: April 19, 2006, 11:29:45 AM by Numsgil »

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #20 on: April 19, 2006, 11:29:40 AM »
My thoughts:

What I like about 2.4:
 - New mutations code. It is orders of magnitude less buggy than the mutations in 2.37.6 (which were the only slightly dodgy area of 2.37.6), and gives more options. Love the new 'point mutations'.
 - New cost options
 - New DNA features, commands and structure
 - The bit that EricL added that shows how much shell/slime/body your bot has when you click on it to bring up the 'bot stats' window

What I dislike about 2.4:
 - Some of the physics seems rather odd/different
 - Ties are dead buggy
 - Viruses don't work at all
 - The new bot sizes are annoying. All my bots end up tiny and don't work well
 - The 'bot sight' feature that shows you what the eyes see is annoying, but at the same time useful. If only you could turn it on and off ...
 - Many of the bots I programmed in 2.37.6 die in 2.5, or don't seem to work as well (especially the ones that use ties)

At the moment, when testing combat bots, or bots I have programmed, I use 2.37.6. When doing evosims, I will usually use the latest 2.4, because I can't load saved evosims in 2.37.6 or else I loose all my mutations and the sim gets buggy, and also because I love the new mutations options, structure etc.

For programmed bots: designing them in theory is fine - the crunch is in testing them, and seen as 2.37.6 makes my bots act more like they're supposed to act than 2.4 does, I use that.

******

How long until the C++ version Num?

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Why aren't you using 2.42?
« Reply #21 on: April 19, 2006, 11:34:43 AM »
See, EricL, you fell the victim of the 2.4 name - just like I said some people would.  Let me explain a bit more the situation with 2.4.  When the program reached the level of 2.3something it was quite buggy.  So at that point everyone got sick of bugs, but still wanted to get some new features.  Which was not possible as you understand - new features always cause new bugs to appear.  So the consensus was more or less to stop adding new features to 2.36 and concentrate on fixing bugs first.  

Meanwhile Nums decided that he got sick of old code written by many different people and carrying tons of useless and un-understandable luggage from previous versions.  So he decided to re-write the whole program from scratch, add major new features and at the same time switch to C.  While he was doing some basics of coding the backbone of the program, he decided to make a test version based on 2.36 containing some of these newly proposed features, the idea being that some people would use it and give feedback and he'd learn from that and code these features into the C version.  Why he decided to call it 2.4 I'll never understand.  From the very beginning that version was meant to be just a testing playground with no future.  And at first things were fine and most people knew about the status of 2.4.  But then a bunch of new people showed up (you and some others) and they assumed that 2.4 is the version where things were headed.  I tried to warn them, but I can only do so much.  Besides, some people did not listen (I'm sure I warned testlund at some point).

So, here we are.  

Now, almost everyone is for the new C version.  But I see it not as an upgrade, but as a new product.  So it will not cancel the existence or meant to replace the 2.36 version.  Think of it in this way:  I used to play Half-Life a lot, but some time ago Half-Life 2 came out.  I play it, but I still keep the original Half-Life, because I still like that game and many mods that were made for it.  So these two games co-exist quite happily on my hard-drive and in my heart.  I see the same thing for 2.36, at least for some time.
"Never underestimate the power of stupid things in big numbers" - Serious Sam

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #22 on: April 19, 2006, 12:08:21 PM »
2.4 I still argue is in the same class as 2.X, but it is quite different from 2.3X.  That's what you get when it's several months between upgrades.

The C++ version at the moment is not in the same class at all, but it's nomenclature is misleading.  It's not 2.5 as much as it's:

Darwinbots Extreme 0.5

Obviously I don't want to call it Darwinbots Extreme, hence the problem.

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Why aren't you using 2.42?
« Reply #23 on: April 19, 2006, 12:16:28 PM »
Quote
The only other thing is ties, which are apparently broken because too much had been stashed in the tie physics routines which were discarded. That's not a simple fix but it's definately doable.

I'm sure it is doable.
When it gets done to the point where my complex MBs can run in 2.4 then I might consider moving over.

Ties are a highly complex subject in DB. I have spent the vast majority of my time in programming DB, working with these pesky things in some form or other. Do you remember how the worked (or didn't work) in 2.11?

To Eric L
Quote
Wow. This is so... disillusioning. I suppose I should have done my homework before investing time and energy on something people are so strongly divided on. As a newbie, I assumed that there had been consensus (or at least tremendous community input) on the direction taken in 2.4 and that people lingered on 2.37 today only because 2.4 functionality was buggy or incomplete. That given sufficient stability, functionality and active, technical investment in bug fixing and feature parity by an enthusastic and technicaly capable party, the community would converge on a 2.4 derritive. I assumed there was a plan. I now stand corrected.

Yes there was a plan that was generally accepted. It was primarily to make 2.37.6 the default platform until the C++ version was completed. 2.4 was considered to be too buggy to make it a viable competitor for the default platform.
That doesn't mean that your efforts have been wasted on debugging 2.4. If you can manage to incorporate all the fixes and improvements that have been made to 2.37.6 since the inception of 2.4 along with the new stuff that 2.4 brought along. of course some of that new stuff is what is actually causing the problems  
Don't get disillusioned by the whole thing. Your work on 2.4 is greatly appreciated. Believe me, I would have advised you to drop it much sooner if I believed that you weren't going anywhere useful with it.

Quote
Similarly, while I assume Nums is a brilliant individual with tremendous vision, until it has gained significant community support (or someone can demonstrate to me that it has a high probability of doing so) I find my motivation for investment on the C++ code base at the present time highly diminished.
Since Nums joined the programming team about a year ago (previously the team consisted of me only), he has injected a whole new level of enthusiasm to the project. Frankly it has been a bit hard to keep up with all his little projects within the DB framework during that time.

One of the unfortunate side effects of this explosion of new ideas is that DarwinBots has splintered somewhat over the last few months. 2.4 was his first shot at giving the existing program a major overhaul and during his involvement with that project, 2.3 progressed through several more stages of development in parallel with it such that 2.37.6 is most definitely NOT a platform from which 2.4 was created. The two programs have diverged in several areas which is going to make your job of integrating 2.4 into the DB stable of "accepted" releases, a little difficult. Not impossible but tricky.

The C++ version of DarwinBots is a MAJOR overhaul of DB and is most likely going to produce a program that is only marginally compatible with old robots.
That is not to say that it won't be a massive improvement over 2.36.7 in many areas. I fully support the development of the C++ version even though I do see it as possibly a whole new sim with only loose ties to earlier versions. What it will offer (probably) is such a big performance increase that it will be worthwhile to redesign older bots to take advantage of it. 2.4 does NOT offer such a quantum leap forward in technology to make it worthwhile IMO.
I view 2.4 as part of the process that Nums had to go through in order to get the inspiration and confidence to launch the C++ conversion. It was a stepping stone but never quite made it as a complete and stand-alone version.
If you can bring it up to scratch then great. If it still doesn't get to replace 2.37.x then no great loss. At least you have developed an intimate familiarity with DB which is going to be useful at some point.

As I said before, I intend to keep developing and supporting the VB versions of DB which will run alongside the C++ version. At present my chosen platform is 2.37.6. If you think it should be 2.4.x then convince me sufficiently to make me switch.

It will have to either be 100% backward and sideways compatible with all 2.37 versions.
OR
It will have to be so much better than 2.37.x that it will be worthwhile to assign 3 + years of complex robot developments to the garbage can and start over from nothing.


Keep up the good work and good luck.



Quote from: Numsgil
2.4 I still argue is in the same class as 2.X, but it is quite different from 2.3X.  That's what you get when it's several months between upgrades.

The C++ version at the moment is not in the same class at all, but it's nomenclature is misleading.  It's not 2.5 as much as it's:

Darwinbots Extreme 0.5

Obviously I don't want to call it Darwinbots Extreme, hence the problem.
So call it DarwinBots C V0.5
or how about DarwinBots(The Next Generation)
or DarwinBots TNG V0.5 if you prefer.
I think DarwinBots 3.0 really won't do it justice.  
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #24 on: April 19, 2006, 12:29:47 PM »
Darwinbots: Electric Boogaloo

Darwinbots: The Motion Picture
DB3: Darwinbots United
Darwinbots: The Return of the Darwinbot
Darwinbots: The Revenge of the Darwinbots
Darwinbots: Judgement Day

Darwinbots: Return to Oz

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Why aren't you using 2.42?
« Reply #25 on: April 19, 2006, 12:46:33 PM »
 

Seriously though, it might not be a bad idea to think about a new type of nomenclature for the C++ version rather than just continuing on with the present number system.

Anyone else have any thoughts?
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Why aren't you using 2.42?
« Reply #26 on: April 19, 2006, 12:49:12 PM »
I'm open for a new title, but heck if I can think of one.

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Why aren't you using 2.42?
« Reply #27 on: April 19, 2006, 12:52:08 PM »
How about:

Darwinbots II 0.5
Darwinbots vC.1.0
Darwinbots C++ v0.5

Or even:

Darwinbots: Now with extra monkey
« Last Edit: April 19, 2006, 12:52:39 PM by Elite »

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Why aren't you using 2.42?
« Reply #28 on: April 19, 2006, 12:53:37 PM »
Quote from: PurpleYouko
Not exactly Testlund. I think you may be misremembering our conversations a little.
As I recall the problem was that I could never manage to reproduce your problem. 2.37.6 saves and loads absolutely perfectly for me. I do it all the time with absolutely no problems.

For some reason I have had a lot of trouble reproducing the errors that you reported while we were debugging 2.37.6. In general I couldn't make any of them fail and still haven't to this day.

As it stands right now I am unaware of any issues with 2.37.6 that would cause it to malfunction in any way. I understood that it was working for everybody now. (with the possible exception of Testlund)

Yeah, I remember that now. My memory had gotten a little rusty. But because of this problem it felt hopeless to use 2.37 and 2.4 was too buggy at that time, so I gave up on darwinbots. Then Eric came along starting to fixing the bugs in 2.42 wich got me interested again. So IMO DB 2.42 has surpassed 2.37. If I understand it correctly those fixes will be implemented in the C++ version PLUS new features.

As Shvarz mensioned it was confusing with the difference between these two versions. It took a little while before I understood they were very different from each other. Now I have learned to master my sims a little better in 2.42 and it works fine.  
The internet is corrupt and controlled by criminally minded people.

Offline shvarz

  • Bot God
  • *****
  • Posts: 1341
    • View Profile
Why aren't you using 2.42?
« Reply #29 on: April 19, 2006, 12:54:53 PM »
My favorite neo-darwinist is probably Theodore Dobzhansky.  How about calling the program DobzhanskyBots?
"Never underestimate the power of stupid things in big numbers" - Serious Sam