Author Topic: Working on 2.37.7  (Read 6846 times)

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
Working on 2.37.7
« on: April 26, 2006, 04:29:12 AM »
Finally got VB working, and so I've been able to start coding for myself.   For once I can act on my own suggestions without having to bug everyone and their brother  

Been using 2.37.6 as my basis, but I'm planning on a more evolution oriented program eventually coming from it.

The thing I'm most happy about is the expanded feeding options available to the bots. I managed to modify the code for strvenom/strpoison/mkshell/mkslime to allow bots to regain energy from the resource. I haven't fully checked every single one, but for mkshell it works great with no mysterious nrg creation. Created a shell-sharefeeder, that gains nrg from feeding on shell taken from plants.   Very cool to see. I'm planning to start a sim up with only slime-sharefeeders and shell-sharefeeders. Since the two species won't be able to eat one another, I'd imagine they'll grow to form a decent ecosystem.

Another change is that bots can now store into the -999 to -1 sysvars. Relativly simple change with Abs used to make the storage location positive. This increases the odds of a bot affecting mutation by about double.

(999/64001) normal; 1.5%

(999/32001) Endy's; 3%

(64001 = All possible storage locations = all possible negative numbers + all possible positive numbers + zero)

Still not the greatest odds, but I can't do much until I learn more about VB.  

The last fix has to do with a bug in strvenom/strpoison. It would cause free waste to be created for the bot, without sacrificing previously made venom or poison, that could later be transfered to a Veggie for a free meal. The new code uses a modified mix of the old code and the code for mkshell/mkslime to ensure there are no free lunches for the bots.

After some more testing I'll see about having the download posted.

Offline Welwordion

  • Bot Destroyer
  • ***
  • Posts: 325
    • View Profile
Working on 2.37.7
« Reply #1 on: April 26, 2006, 04:39:51 AM »
huh shell and slime feeder , good idea should become implemented in 2.5 and 3 to I think
« Last Edit: April 26, 2006, 04:40:15 AM by Welwordion »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Working on 2.37.7
« Reply #2 on: April 26, 2006, 12:28:16 PM »
I think I mentioned it once and shvarz or PY (or both) poo-pooed the idea.  I'm not against it personally.

I have considered making the sysvars circular for positive numbers, ie: 1001 = 1 = 32001.  What's people's take on this?  I definately agree that bots needing to "find" the right range of 1-1000 is too hard, to hit and miss.
« Last Edit: April 26, 2006, 12:28:40 PM by Numsgil »

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
Working on 2.37.7
« Reply #3 on: April 27, 2006, 03:30:47 AM »
Quote
I have considered making the sysvars circular for positive numbers, ie: 1001 = 1 = 32001. What's people's take on this? I definately agree that bots needing to "find" the right range of 1-1000 is too hard, to hit and miss.

I'm all for it all we should have to change is the storage locations and inc/dec. Basically when a number is stored to it'll automatically remove any digits above the first 3. This'll place any number within the right range.

Quote
I think I mentioned it once and shvarz or PY (or both) poo-pooed the idea. I'm not against it personally.

Originally we were planning on having enzymes/metabolism. Maybe they'll come out in one of the next versions, but in the mean time its ncie to have three new feeding methods.

Managed to run a shell feeder sim for 12 hours. Very stable population of bots, no glitches observed in terms of population levels, waste or nrg creation.

The slime feeder wasn't such a good idea...the bots were having tons of trouble trying to tie to them. Mixing Venom and Shell feeders worked okay though. The bots weren't able to fight each other and so just kind of hung out together.   Shell feeders were the most dominant. They were easily able to share the shell with one another. The venom's managed to colonize some stuck alga(tons of shell not being eaten). Seems kind of lopsided, I'm planning to add some tactics to balance it out.  

I'm going to try and fix-up the help section next. We can now give people a direct link to the wiki for the more complex info. A basic help file could also exist, but in notepad instead of the program.

The icons and color scheme are also going to receive a make over. They're so bland compared to almost any other program out there. We have a chevy with a ferrai engine  it'd be nice if DB's power under the hood matched her appearence better.
« Last Edit: April 27, 2006, 03:54:59 AM by Endy »

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Working on 2.37.7
« Reply #4 on: April 27, 2006, 12:03:41 PM »
Quote
I think I mentioned it once and shvarz or PY (or both) poo-pooed the idea. I'm not against it personally.
I don't remember doing that.
It seems to me that feeding off another bot's shell or slime should be a viable method of getting sustenence. It happens in real life.
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
Working on 2.37.7
« Reply #5 on: April 27, 2006, 12:10:40 PM »
It was quite a while ago, I don't remember the specifics of the conversation.  Don't want to put words in your mouth

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Working on 2.37.7
« Reply #6 on: April 27, 2006, 12:27:04 PM »
The question is are these bots making ties then using shareshell and then converting their own shell into energy? or are they using some kind of modified feeding technique that directly strips shell from the enemy.

A modified shot type could be set to do this for slime and shell.
There are 10 kinds of people in the world
Those who understand binary.
and those who don't

:D PY :D

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
Working on 2.37.7
« Reply #7 on: April 28, 2006, 01:06:07 AM »
Quote
The question is are these bots making ties then using shareshell and then converting their own shell into energy? or are they using some kind of modified feeding technique that directly strips shell from the enemy.

They use shareshell, and then convert the shell they steal back into nrg.  Currently they function as a sort of battery bot. The Venom feeders are similar since they don't/can't kill their prey from feeding. I do want the bots to have to metabolism at least somewhat.

The coding for the bots to store only to 0-999 was some of the easiest ever   what I used was basically:

Right((Abs(), 3)

Any store value is now absoluted, with only the last 3 digits used.  

Alright I'll keep on it. Hopeing to have a decent product out this weekend.

Offline Testlund

  • Bot God
  • *****
  • Posts: 1574
    • View Profile
Working on 2.37.7
« Reply #8 on: April 28, 2006, 06:18:07 AM »
Quote from: PurpleYouko
It seems to me that feeding off another bot's shell or slime should be a viable method of getting sustenence. It happens in real life.

I think if they feed off shell and slime they should use that to build their own shell and slime. It should help them to build it up faster. To just use energy to build it it should take much longer. Also converting it into energy seems realistic too. A cool idea.
« Last Edit: April 28, 2006, 06:18:44 AM by Testlund »
The internet is corrupt and controlled by criminally minded people.

Offline PurpleYouko

  • Bot God
  • *****
  • Posts: 2556
    • View Profile
Working on 2.37.7
« Reply #9 on: April 28, 2006, 09:09:43 AM »
Shell should definitely take time and resources to build (back to the egrid again). Slime is a bit different. It can be secreted pretty quickly by most organisms.

One of my favourite examples would be the Parrot fish (you aught to know this Testlund).
The Parrot fish makes a kind of slime cocoon every night then sleeps in it.
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
Working on 2.37.7
« Reply #10 on: April 28, 2006, 11:12:40 AM »
What a coincidence, I totally do that too!  Especially during alergy season

Offline Endy

  • Bot Overlord
  • ****
  • Posts: 852
    • View Profile
Working on 2.37.7
« Reply #11 on: April 30, 2006, 03:29:45 AM »
Horray 2.37.7 is ready. Sent it to Num's E-mail.

For .7 From Endy

1. Fixed a bug involving limitless waste creation caused by storing negative values into .strvenom and .strpoison
2. Modified code to allow slime/shell/venom/poison to be unmade for an energy gain
4. Negative stores/inc/dec are now absoluted
5. Stores/inc/dec to values greater than 999 are now modified to be within 1-999 range; ie. 31330 would be stored to as 330

Um... my walls are working properly again. I honestly hadn't tried using these much lately so hadn't noticed. They appear to work properly in 2.36.6, some sort of shot based bug in 2.36.4. Moded the code to protect against sides being zero, seemed to be caused by shp mutations. May want to check this in 2.4 plus versions also.

Mutations seem to go much smoother in this incarnation of DB.    I'm happy, mutations are more likely to be bot affecting cutting down on excess non-coding code and speed up evolution.

The shell and venom feeders work the best, mainly I just moded alga_minimalis to start. For future runs I want to try and set them up feeding off of each other also.

Still want to add internet conectivity to DB. I think I've found some code that'll allow me to load pages, I have to work some more on it.

Alright I'm going to focus on beautification for now. All that code give me a headache.

Offline Griz

  • Bot Overlord
  • ****
  • Posts: 608
    • View Profile
Working on 2.37.7
« Reply #12 on: April 30, 2006, 07:42:56 AM »
don't see a link to it or the source code on the wiki ...
must be Nums is still sleeping inside his slimeball.
« Last Edit: April 30, 2006, 07:43:56 AM by Griz »
不知
~griz~
[/color]
   "The selection of Random Numbers is too important to be left to Chance"
The Mooj  a friend to all humanity
[/color]

Offline Elite

  • Bot Overlord
  • ****
  • Posts: 532
    • View Profile
Working on 2.37.7
« Reply #13 on: April 30, 2006, 08:00:20 AM »
Hey Endy, storing into 0 is still free isn't it?

Some of my conditionless bots might be storing into negative memlocs when they don't want to do anything but I think I can fix that using floor to cut off the stores at 0

I mainly use 1s and 0s for conditionless bots but sometimes I will use code like:
*.eye5 40 sub sgn

When eye5 < 40
= -1

When eye5 = 40
= 0

When eye5 > 40
= 1

I will have to add:
0 floor
« Last Edit: April 30, 2006, 08:00:44 AM by Elite »

Offline Numsgil

  • Administrator
  • Bot God
  • *****
  • Posts: 7742
    • View Profile
Working on 2.37.7
« Reply #14 on: April 30, 2006, 12:06:04 PM »
Quote from: Griz
don't see a link to it or the source code on the wiki ...
must be Nums is still sleeping inside his slimeball.

 Yup, I need at least 8 hours of slime ball rejuvination every day