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.
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)