Darwinbots Forum
Code center => Darwinbots Program Source Code => Topic started by: Numsgil on April 21, 2006, 01:24:37 AM
-
I've posted the details here (http://www.darwinbots.com/WikiManual/index.php?title=C_plus_plus_version) in the news section. It basically gives you a directory and sets everything up so you can compile the code (assuming you have the dependancies of course).
It also includes an executable for people curious to see how the program is progressing thus far. Note that I wouldn't even consider it pre Alpha (though it's very close).
I would like people who haven't installed the dependancies or even have an interest in the code to try running the program so I can see if I need to include certain DLLs or not.
-
Ok, I've checked it out. This is not supposed to be a working program just yet, right? Just a picture of it, so to speak? I'm not sure what to say about it at the moment. Looks like some new stuff has been made while other stuff is missing, like the mutation settings for instance.
Looks a little weird when you start the program. There's this big square wich can be moved around and some strange bot frozen down in the left corner. That black thing...Is it it's vision radius?
-
Yeah, the big black semi circle is the vision radius. If bots are stuck down in the left corner it means the settings file doesn't have them distributed right for some reason. Until I code a bot placement control you'll need to edit the settings file manually. Lucky for you it's in ascii and well labeled, so you might be able to figure it out.
The mutations GUI just hasn't been programmed yet. The code is in place.
I'm mostly interested if it runs at all. If it is it means I probably don't have to include any additional DLLs, which is nice.
Oh, can you see if the Total Cycles counter is increasing?
If it's not it means the engine performed an illegal operation. I haven't coded any error handling so it basically just stops and terminates the engine while still displaying the bots and letting you play with the GUI.
-
So it's supposed to run now?? The reason why I asked is that the program appear complete dead. Nothing happens. No bots or anything. It's just that little frozen bot down in the left corner right when I start the program.
Well... Actually it runs. Numbers are counting at the bottom of the screen, but the bots appear frozen in the lower left and upper right corners. I don't know enough about ascii to mess with the settings file.
-
Ascii just means plain text. Like I'm typing right now.
Did you try "load settings" button? There are two sets of settings I've included, one that loads when you start the program and another that loads when you go to the options menu and click load settings. Are you getting the options menu to open?
When I run the program I see a bunch of green veggies distributed across the screen with some blue animal minimalis floating around eating them. When you click load settings you should see a bunch of enitor comesum that are rather quite lame at the moment.
I need to figure out why you're getting different results, so please be patient with me
-
I know what ascii means, it's just that I don't know what to do with it. If you're just asking me to load the file, then that's ok. I see all the bots appear in the list, but when I click start nothing happens. Earlier I got a few bots/veggies in the corners as I mensioned above, but now I don't even get that. Just pointing it out so you can look into it.
-
Open "lastexit.set" and check each bot where it says
0 0 1 ;PosLowRight z y x
0 1 0 ;PosTopLeft z y x
If there are other numbers, such as
0 0 0 ;PosLowRight z y x
0 0 0 ;PosTopLeft z y x
try changing it to the above. That should get bots out of the corners.
I'll try dling the snapshot and running it on another machine so I can see if I can get the same problems as you.
I think I figured it out. Open lastexit.set and change:
C:\DarwinC\Darinwbots2.5\Robots
to whatever the directory is you installed the snapshot. Alternatively you can just replace it with .\Robots
-
In that case the reason why they appear in the corners must be another one, because the coordinates for both Alga Minimalis and Animal Minimalis are these:
0 0 1 ;PosLowRight z y x
0 1 0 ;PosTopLeft z y x
No coordinates for Enitor Comesum though, just the above species.
-
Did you try this:
Each species' path looks like C:\DarwinC\Darinwbots2.5\Robots, you need to change it to whatever the directory is you installed the snapshot. Or you can just replace it with .\Robots
-
Ok, I figured it out. It looks like the settings file that is loaded is chosen automatically; I can't chose my own settings file. The way to get it to run was to edit the 'savesett.set' file and change the paths to .\robot as you said. It runs, though it looks kind of lame as you said. Hehe. Also there is one bot that displays its black vision radius wether I like it or not. Can't unselect that. It also runs too fast, over 100 cycles/sec.
-
But it is running? Can you play with the settings through the new simulation (F1)?
I used to hav the vision radius always displayed for the first bot in the array becuase I didn't have any robot selection controls (you couldn't click on a bot to select it). I fixed both relatively recently (like in the last several hours).
-
yeah, it runs, but I think it's some what unstable. A few times when I started the sim the bots quickly got sucked to lower left and upper right corner. Other times they don't, with the same settings.
-
I'm still tinkering with various physics functions. Ties in particular are a little screwy at the moment (I may change them from springs to rigid rods).
If it runs that means I won't have to include any DLLs with the main install.
-
Ok, you might want to check out why bots sometimes get pulled towards the corners when starting a new sim and sometimes not, nomatter what settings are used. Also when I right clicked on a few bots I ended up with 3 windows showing bots DNA, wich I couldn't find a way to close. I guess you need to do some tinkering for awhile.
-
You can close them with escape. They're the first part of the eventual bot debuging console I'm working on.
Thanks for your help.
-
The looks have definitely improved, but so far I've been unable to run a simulation. (nothing relating to missing DLL's though)
I'll try on another computer and see if it works there.
-
Have you tried what Testlund needed to do? Edit the settings file so the paths point to things correctly?
-
You wrote regarding trefs
"Functionality has been replaced with the readtie command"
What do I have to imagine this means? How does readtie work ?
-
readtie is covered on the wiki under the new tie paradigm. http://www.darwinbots.com/WikiManual/index...ew_tie_paradigm (http://www.darwinbots.com/WikiManual/index.php?title=New_tie_paradigm)
The sysvar changes are mostly to help remind me to write something more detailed when I create a release. Unfortunately, I'm not certain it contains all changes I've made to the program. There were a few months where I don't think I wrote anything into it (December-January).
The tie commands may or may not work at present. I got about half way through working on ties when I decided I needed a break and moved on to other issues.
-
You might have noticed allready that when a bot gets an offspring it spins around like it's trying to throw it away and the tie gets VERY long before it snaps. That might be one of the tie issues not finished yet.
-
Have you tried what Testlund needed to do? Edit the settings file so the paths point to things correctly?
Aye, that works
- The first thing I noticed is the increase in speed, great job
- But it doesn't restart when everything on screen is dead, so I get like 307133 cycles/sec on an empty screen
I'll play with it a bit more. Are ties functioning yet? Ah well, I guess I'll find out
EDIT: Setting the alga_minimalis starting energy to 30 000 really messes it up
-
You might have noticed allready that when a bot gets an offspring it spins around like it's trying to throw it away and the tie gets VERY long before it snaps. That might be one of the tie issues not finished yet.
Yeah I noticed this. It has to do with the tie acting as an unintentional sling. It's a similar effect to how space craft use planets to sling themselves faster across the solar system. I'm going to have to rethink basic tie physics I think. Probably replace it with rigid rod dynamcis.
EDIT: Setting the alga_minimalis starting energy to 30 000 really messes it up blink.gif
When a bot wants to reproduce, the program won't stop it if there isn't room. The baby will just clear a small path for itself through collision detection and response.
This wasn't intentional, it's actully an emergent property of how physics works. I could implement collision detection for reproduction, I just never got that far, and I sort of like it how it is now. The result is that veggies really do multiply at an epontential rate if they aren't being eaten. Physical space is no longer a limiting factor.
In some ways I prefer it like this, except when a cancerous veggy develops. The simulation will slow to a crawl. I mean a real crawl. Like 10 seconds per cycle. I'm not sure what to do to be honest. I'm hoping as I redesign the physics it will run faster.
-
Yeah I noticed this. It has to do with the tie acting as an unintentional sling. It's a similar effect to how space craft use planets to sling themselves faster across the solar system.
Yeah, I've seen it on TV. They just throw a lasso around the planet and spins faster and faster before they release themselves. Hehe
I'm going to kill myself with my humor.