Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Moonfisher

Pages: 1 [2] 3 4 ... 40
16
Bot Tavern / Re: Lets make another wikibot!
« on: April 17, 2014, 12:34:10 AM »
.shoot dec

Felt that was missing :)

17
Bot Tavern / Re: Lets make another wikibot!
« on: April 13, 2014, 05:52:50 AM »
Wish there was more people throwing line in here.
I always think wikibots make such great evo bases.

Code: [Select]
start
.tie inc
*.focuseye .eye5 add * 0 >
*.nrg 1000 sub sgn 0 floor 49 *.venom sub sgn 0 floor mult 5 mult .strvenom store
7 .venloc store
-2 .venval store
59 << *.robage 192 ceil >> rnd << << ++ store
*.eyef 0 sub sgn abs -- abs .focuseye mult inc
clearbool
*.refbody << *.timer rnd 3 ceil mult ++ .up store
59 << *.robage 192 ceil >> rnd << << ++ store
stop

18
Bot Tavern / Re: Lets make another wikibot!
« on: April 11, 2014, 02:40:37 AM »
Yeah, but the condition for the eyes right now takes the value in the focuseye and adds the memory location of eye5 (Not the value in it). So it's a bit of a confusing condition I think.

Anyway realized won't matter what lines I add until I clear the boolean stack.
Not sure if this counts as a line.
If not then I'd just add the line from before again after the clearbool :D

Code: [Select]
start
.tie inc
*.focuseye .eye5 add * 0 >
*.nrg 1000 sub sgn 0 floor 49 *.venom sub sgn 0 floor mult 5 mult .strvenom store
7 .venloc store
-2 .venval store
59 << *.robage 192 ceil >> rnd << << ++ store
*.eyef 0 sub sgn abs -- abs .focuseye mult inc
clearbool
stop

19
Tips and Tricks / Re: Virus shot flavor is -7
« on: April 11, 2014, 02:28:30 AM »
Depends if you use slime though. I'm guessing it'll still show the show flavor even if you didn't get infected, but not sure.
But if you check *.thisgene then you'll always know if it's no longer at the right spot. Shot flavor is not as reliable, you could get hit by 2 shots at the same time, and even when you catch it, you need to store it somewhere since shot flavor will change next time you get hit.
Just find a wide range of empty memory locations, and have each gene increment the location offset by it's gene nr, then when the last gene is no longer at the right spot you can check which memory location is no longer being incremented and delete that gene and reset all your counters.
Or if it's an IM/Evo bot you could just have a strong anti virus gene at the end and keep track of foreign viruses and use them as your own instead.

20
Bot Tavern / Re: Lets make another wikibot!
« on: April 09, 2014, 10:58:48 PM »
Code: [Select]
start
.tie inc
*.focuseye .eye5 add * 0 >
*.nrg 1000 sub sgn 0 floor 49 *.venom sub sgn 0 floor mult 5 mult .strvenom store
7 .venloc store
-2 .venval store
59 << *.robage 192 ceil >> rnd << << ++ store
stop

Got one more line I'd love to add, would make it able to actually survive in F1 settings I think. But will have to wait :P
Also I'm assuming it's one store, inc, dec or logical operator per line.

21
Newbie / Re: Setting up a Darwinbots Aquarium
« on: April 09, 2014, 08:39:19 AM »
If you want to generate some starter bots fast, here's a quick and dirty perl script that'll make a random bot.
You may want to insert some gene at the end to make sure it can reproduce/grow, and maybe create chloroplast and such. Or you can just create hundreds of them and see if any of them gets lucky. (Or you can just have low or no costs on (Maybe just age costs), small sim, tons of alge, medium to high mutations, and repop on your bot maybe)
Default as you can see it just 5 bots generated with 500 values each.

Code: [Select]
use strict;
use warnings;

my $amount = 5;
my $size = 500;

my @opps = (">","<",">=","<=","=","!=","%=","!%=","~=","!~=","add","sub","mult","div","ceil","floor","mod","sgn","abs","angle","dist","sqr","pow","pyth","anglecmp","root","logx","sin","cos","~","&","|","^","++","--","-","<<",">>","clear","clearbool","drop","dropbool","dup","dupbool","swap","swapbool","over","overbool","true","false","and","or","not","xor");
my @comm = ("store", "inc", "dec");

for(my $a = 1; $a <= $amount; $a++)
{
open (MYFILE, '>>TestBot' . $a . '.txt');
print MYFILE "start\n";
for(my $i = 0; $i < $size; $i++)
{
my $randomType = rand(100);
if($randomType < 69)
{
my $randomVal = rand(1000);
my $randVal = int($randomVal);
if($randomType < 15)
{
print MYFILE "*$randVal ";
}
else
{
print MYFILE "$randVal ";
}
}
elsif($randomType < 79)
{
my $randComm = int(rand(3));
if($randComm != 3)
{
print MYFILE $comm[$randComm] . " ";
}
}
elsif($randomType < 98)
{
my $arraySize = scalar (@opps);
my $randOpp = int(rand($arraySize));
if($randOpp != $arraySize)
{
print MYFILE $opps[$randOpp] . " ";
}
}
else
{
print MYFILE "\nstop\n\nstart\n";
}
}
print MYFILE "\nstop\n";
close (MYFILE);
}

print "Done\n";
my $line2 = <STDIN>;

And normally you would start with little or no costs and then slowly increase costs towards F1 or more, and generally make it tougher to survive (Fluid thickness, env size, lack of food, obstacles, less light, maybe switch the food source to something harder to eat, stuff like that)

22
Newbie / Re: Setting up a Darwinbots Aquarium
« on: April 09, 2014, 03:53:24 AM »
One interesting thing you could do is continue an existing ZBot, since you would be following up on the evolution of a bot that started with nothing but zeros.

I dug up this old thing I had:
Code: [Select]
326 stop
 store
 store

''''''''''''''''''''''''  Gene:  1 Begins at position  5  '''''''''''''''''''''''
 start
 sqr .tie dec
 59 << *.robage 192
''''''''''''''''''''''''  Gene:  1 Ends at position  12  '''''''''''''''''''''''
''''''''''''''''''''''''  Gene:  2 Begins at position  13  '''''''''''''''''''''''
 start
 overbool
 .shoot dec
 ceil >> rnd << << ++ store
 store
 stop
''''''''''''''''''''''''  Gene:  2 Ends at position  25  '''''''''''''''''''''''

The issue with using this one would be that all the bots tie to each other, which makes the sim rather slow. It handles mutations well though, since it was evolved with mutations at a high setting.

Another thing you could do if you want to start from scratch and get some faster results is start with a bot where you just toss in random command and values all over the place, and put some store and inc/dec commands at the very end of the gene. Then maybe use medium or few mutations.
That should quickly try to make the best of the mess you made. (You may want to make sure it can survive and reproduce from the beginning though, or at least just reproduce, thats often the first hurdle for a zero bot.)

And of course a Zbot is also an option, but that requires some tinkering with the environment usually, unless you're very patient.

As for sim settings, I recommend larger sims, with a population as high as your computer can handle. I would usually try to regulate sim settings to keep around 800-1000 bots. It's slow, but far more stable. You don't want to go bellow 200, unless you have virtually no mutations enabled.
High mutations tend to do more harm than good, then can quickly produce some results, and then quickly unravel them again with more mutations.
Remember your dna in DB is rather short and explicit, and therefor not nearly as robust against mutations as real dna.

But part of the fun is tinkering with this. When you check in on your bots try to change the environment a bit. Maybe make the sim bigger with less veggies, to encourage bots to horde the veggies rather than consume them immediately. Or add some shapes.
In my experience bigger sims with less alge get more interesting results. You may need to start with a small sim with lots of veggies, then slowly increase the size of the sim and reduce the veggy count.
That's what I used to do anyway.

23
F2 bots / Re: LoveBot v1.1 (F2) (Moonfisher) - 03-04-08
« on: April 07, 2014, 01:36:31 AM »
I don't always have time to check in. During the week I'm pretty busy and in the weekend I tend to just not go near a computer.
I come here when I have spare time, but don't have a lot of that lately. (Not even sure some of the details of that are appropriate for this forum.)

24
RANT / Re: DB looks like it is slowly dying
« on: April 07, 2014, 01:32:18 AM »
Ok, if I have time I'll check out the code and run from source.
But will try the other things mentioned first.

Concerning Chloroplast I think sooner or later there will be the issue of 2 bots who are fairly evenly matched and also use Chloroplast.
Normally starvation and general luck with alge spawn will tend to determine a winner.
But of course I only know the chloroplast settings for 2.47.00, so not sure how much it'll be lowered.
The ones I tried went up to 16K chloroplast, but smaller bots started getting heavy around 2-300
However if your energy consumption is very low, then 100 chloroplast is actually enough to sustain you.

In either case off the top of my head, a  bot that produces chloroplast and a lot of slime would likely be able to survive against Fruit Flies, but it would never be able to kill them all. The energy gain from Chloroplast would have to be very low to avoid this.

25
Formula 1 / Re: Running Leagues Yourself
« on: April 07, 2014, 01:03:32 AM »
I tried following your instructions, but couldn't get it to work.
Program restarted but stepladder didn't start.
Haven't really been going at it hard though, haven't tried running as admin or messing with folder permission and stuff like that.
Also wasn't sure if I was supposed to add a bot first, and if I should add an alge.

When it restarts it sais it'll need to remove a bot, then I klick ok and it restarts, but then complains there is no bot.

I'll have a look at this later (Maybe today if I have time) and get you the exact description of what I did and what messages I got.

26
RANT / Re: DB looks like it is slowly dying
« on: April 04, 2014, 07:31:49 AM »
I actually couldn't get the stepladder tournament to work... not sure what I did wrong. Followed the instructions. It restarts, but doesn't start the stepladder league.
I don't have the source checked out, and not gonna go there at this time. No time for it, and remember how much the global variables in VB6 bugged me last time I had a look at it.

On that other subject, we wouldn't need to keep updating bots all the time, but would be cool there was a default path set, pointing at a folder with the top 30 F1 bots from some date (Wouldn't need to be updated all the time, should just have something).

Basically the first thing I did when I downloaded DB the first time was to start working on an F1 league bot, and I kept running the F1 league in stepladder mode to see how far it would get. When it got beat I would be running it against the bot who beat it, and once I could beat that bot I would go back to running the stepladder, eager to see how far it would make it now.

Like an old school Van Dam movie or something.

For me this had a lot of appeal and I really enjoyed that part. And I think there may be a lot of people who are into programming games who would enjoy this part as well, so would be cool if it was just ready to go. Basically just add your bot and hit some button to run it against the F1 league. (Could be a button bellow the 3 buttons who adjust the settings that simply launches the stepladder league with the bot you have added as the contender.)

Btw, will chloroplast be enabled for the competing bots in F1 mode?
Seems like there would be some endless battles. Basically any bots that amass chloroplast and aren't able to kill the opponent will end up fighting forever. Some fights can take ages already, with endless nrg supply it'll just be endless for some fights. You could enter bots that only run away and defend themselves but never attack, and any bot that can't keep up with it would have an endless match right there already...
(But gonna see how my new version of Fruit Flies does on IM though)

27
Formula 1 / Re: Running Leagues Yourself
« on: March 31, 2014, 08:46:52 AM »
I rejoiced when I saw there was a version 2.47.00 of DB, which mentioned that leagues where now working.
So I downloaded DB 2.1, installed it, then 2.47 and installed it.
Tried running the league. (Was a bit confused about the new menu in the restart and league. Basically just a button for each league, but doesn't clearly show anywhere that you are about to run a league though.
Then remembered there was something about some folders I had to add.
So came in here and read the instructions.
Added a folder called "leagues"
Added a folder called "F1league" inside it
Inside that folder i then added a text file called "F1leaguetable.txt"
And in that file I just put the text in the first post in this topic: http://forum.darwinbots.com/index.php/topic,3058.0.html
I also put all the bots from the zip file attached to the same post.
Then I tried again, but kept getting the error that I had only added one bot. If I added 2 it would just be a single match between the two. (Same with 3 or more)

So basically would like to ask:
How do you run the leagues yourself with 2.47.00 ?
Also is there any way it could be made easy to launch a league. Was thinking of trying to do some PR to get people who are into programming games to come here and push some life back into the forum. But would help if people could just dive right into it the leagues, preferably without it being too complicated. (Think it may already be a bit confusing that people need to install 2.1 and then 2.47 afterwards, we could probably easily make a bundle with a self extracting installer that runs a bat file or something which installs both. Would also be nice to include the latest leagues in the installer, so the folders and leaguetable files are there to begin with.)
Basically the closer we could get to just: download, install, run the league with some bot; the better.
Not saying I can be much use. But could make a self extracting installer if there are no better options on the table atm. Bit hacky though.

28
RANT / Re: DB looks like it is slowly dying
« on: March 31, 2014, 05:55:48 AM »
I'm not completely AWOL.
But wasn't that much happening in the leagues, IM went down at some point, my evo sims stagnated...
Figured I would wait for DB3.

One thing though.
I originally found DB because I had tried gun tactix, where you write some code for little robots shooting each-other, and I was wondering if there was other good programming games out there.
I found a listing that mentioned DB and said it was actually a programming game but an A life simulator, however the leagues allowed for programming battles.
And I was very surprised to find this lost gem. The programming game part of DB is way more interesting than the other games I've tried. The way poison, venom, viruses and replication and all that works. It makes for endless possibilities, whereas robot fighting games are very basic and straight forward.

Basically, what I say is, look at these listings out there:
(Taken from wikipedia: http://en.wikipedia.org/wiki/Programming_game)

- This is the first link on wikipedia to a place listing programming games, and DB is not on the list. (There is a button allowing you to add it to the list though. I could add it, but maybe someone else can write a better description, but keep in mind this is with programming games in mind, so focus on the leagues and how DB is so different from the regular (booring) programming games.)
http://programminggames.org/AllPages.aspx

- This is the second link on wikipedia, but the site is very hard to navigate. Also could not find DB in there anywhere, but then again could hardly find my way anywhere.
http://www.dmoz.org/Games/Video_Games/Simulation/Programming_Games/

- The third link on wikipedia actually has DB, but it's pointing to an old page (http://digilander.libero.it/darwinbots/dwienglish.html):
http://www.aiforge.net/game-links.htm (Just ctrl+F and type darwin)

- We are actually listed on wikipedia here:
http://en.wikipedia.org/wiki/List_of_digital_organism_simulators#Notable_simulators
(However there is no link to the new site or the forum, and not even a description (Red link))

- Also one more list, not as extensive, but may be possible to submit DB:
http://www.pouet.net/topic.php?which=6653


So basically if we want some more trafic I would start by adding a description with a link to the forum instead of the red link on wikipedia.
(And make sure to tag it as a Programming Game as well as an ALife, to make sure it'll show up here: http://en.wikipedia.org/wiki/Category:Programming_games)
Then I would submit DB as a programming game on the listings where we're not mentioned (If possible with a description of why DB is such a great programming game)
And for the ones with old or broken links it may be possible to submit a request to update it.

That might help start things up a bit. I mean currently it's like we don't exist.

Another thing could be just adding a blog about alternative programming games, and mention DB among them (As the best one of course), and maybe encourage others to list their favorite programming games. And then add a reference to that blog from the main wiki page on programming games.
Maybe even add a part directly in the wiki page, mentioning that sometimes even ALife simulation games can serve as great programming games, such as the leagues in Darwin Bots (Linking to the description of DrawinBots on wikipedia).

Basically there's a LOT we could do to increase traffic here. Can't guarantee it'll work, but won't know unless we try. (Who knows, we may even get more people who want to help with DB3)

I suspect someone more "official" and with better writing skills may want to do these things. But if not then I'll volunteer to do the things listed above. (Let me know)

Also while on the topic, might be worth checking out this other post concerning ease of getting started with the leagues:
(Currently I can't get them to work actually, but may be doing something wrong)
http://forum.darwinbots.com/index.php/topic,1755.0.html

29
F2 bots / Re: LoveBot v1.1 (F2) (Moonfisher) - 03-04-08
« on: March 31, 2014, 12:50:06 AM »
I think sexrepro is broken. Have you checked if you get the same problem with Quickdraw and Saber?

30
Darwinbots3 / Re: About Darwinbots3
« on: March 29, 2014, 09:12:31 AM »
Is there an approximate release date for DB3 yet?  :D
(Can't help out, sorry, no time at all lately)

Pages: 1 [2] 3 4 ... 40