Author Topic: Version 2.42.7 Release  (Read 4785 times)

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Version 2.42.7 Release
« on: July 02, 2006, 04:19:55 PM »
Version 2.42.7 is now available!

Direct Download Link.

Major Changes / Features (in no particular order):
Quite a bit faster than 2.42.6
No Shot Decay mode only applies to nrg shots
Dynamic cost adjustment taget now excludes vegs, corpses and walls.
Shot impacts now displayed graphically
myeye and other such sysvars now properly initialized for explicitly added bots
.fixlen, .fixang and .stifftie now persist across cycles and can be set prior to being a multibot
Lots of minor bug fixes and fit and finish details
A few major crashing fixes
Shapes and Mazes

A detailed list of the changes from version 2.42.6 can be found here.

A few words about 2.42.7.
The big new feature in this release is Shapes.  This feature is intended to replace and to superset walls.  The old walls are still there in the code and enabled - I don't plan to take it out - but I don't know why you would still want to use them.  About the only thing shapes don't do that walls do is let the bots see them.  Next version.

Unlike the old walls, Shapes are implemented using it's own data structures and thus are much faster and more scalable.  You can have up to 1000 shapes and that does not eat into the bot total as walls did.  

I could write pages and pages here, there is a lot of work behind this feature, but I'll simply list the highlights for now.

Shapes should be thought of as semi-permeable solids.  I use two different kinds of repulsion forces, one for when the bot is completely inside the shape, the other for edge collision detection.  The result is that bots can be inside a shape, say as a result of a veggy repopulatiuon event, but in most cases, they will get pushed out the nearest wall pretty quick.  There are some complicated cases where shapes are against or overlap the field edge or when shapes overlap other shapes that I won't get into, but bascially, a bot being on a shape is a temporary thing - they are going to get pushed off one way or the other.

For performance reasons, I cut some corners on the algorthims regarding bot-shape and shot-shape collision detection and shape opacity (for bot vision).  This has some minor consequences, but keeps perf reasonable.  If someone wants the details, I will provde them separatly.

Small, fast moving bots can penetrate shapes to a point.  Begger, slower ones will be less able to do so.  If you want maze walls, etc. to be more difficult to penetrate, make them thicker.  If you want them to be porus, make them thin.

The shape dimension slides control the maximum shape dimensions for random shapes, but control the absolute dimensions for shapes created using the "make shape" buttom.  This lets you set and create exactly the dimensioned shapes you want if you are hand-building an environment.

Shape color and appearance are for the human observer.  These have no impact on how the bots, etc. interact with shapes.

Shapes can be selected and dragged around.  Resizing shapes and setting per-shape properties are coming, but are not in this version.

Shapes are also not saved to sim files in this version.

Shapes can drift.  You can set the drift rate and whether it is horizontal, vertical or both.  Locking it to just one axis can be usefull for creating certain environmental challenges when combined with a maze for example.  

Shapes can drift outside the field to the point where they are 100% out of the field, but no farther.  Think of them sort of like the rods of a fooseball table, able to slide in and out of the playing area.

By default, shapes (mostly - see the comments above about cutting corners) reflect shots (you can set the option to have shots absorbed) but if a bot sticks its nose into a shape and fires, the shot will travel inside the shape until it exits.  Again, there are complicated cases with overlapping shapes I won't go into here.

Bots can't see shapes (yet - that will take sysvar changes) but they can't see through them either (unless you elect to allow them to, which makes the sim run faster since I don't have to figure out what not to let the bot see, but you will find bots trying in vain to walk through walls to get to the other side ...).  By default, when looking at a shape, the bot thinks there is simply nothing that way, even if there is a whole army of bots just on the other side.  

Bots can sense shapes through touch, through the hit sysvars.  Shapes cause hit events.

Mazes are just fancy shape layouts, sometimes with velocities.  You can combine mazes together or delete parts or add your own additional shapes or allow a maze to drift or all of the above to create complex environments.  I like a veritcal maze with the trash compactor myself......

There is some performance impact from using shapes, they arn't free, but it certainly a whole lot better than walls.

Have fun.
« Last Edit: July 02, 2006, 04:25:26 PM by EricL »
Many beers....

Offline Griz

  • Bot Overlord
  • ****
  • Posts: 608
    • View Profile
Version 2.42.7 Release
« Reply #1 on: July 02, 2006, 05:22:39 PM »
ecellent!
looking forward to playing with shapes.

btw ...
http://www.darwinbots.com/FTP/Darwinsource2.42.7.zip
I get a 'page not found error'
or am I just too quick and beat you there?
不知
~griz~
[/color]
   "The selection of Random Numbers is too important to be left to Chance"
The Mooj  a friend to all humanity
[/color]

Offline EricL

  • Administrator
  • Bot God
  • *****
  • Posts: 2266
    • View Profile
Version 2.42.7 Release
« Reply #2 on: July 02, 2006, 05:39:19 PM »
Quote from: Griz
ecellent!
looking forward to playing with shapes.

btw ...
http://www.darwinbots.com/FTP/Darwinsource2.42.7.zip
I get a 'page not found error'
or am I just too quick and beat you there?
I capitalized the "s" in Source.  Try now.
Many beers....

Offline Griz

  • Bot Overlord
  • ****
  • Posts: 608
    • View Profile
Version 2.42.7 Release
« Reply #3 on: July 02, 2006, 07:34:13 PM »
ah ha!
that did it.
thanks
不知
~griz~
[/color]
   "The selection of Random Numbers is too important to be left to Chance"
The Mooj  a friend to all humanity
[/color]