Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Battlefield All-In-One package/folder (version 0.05) now available ! :)

0 views
Skip to first unread message

Skybuck Flying

unread,
Sep 10, 2009, 12:17:11 PM9/10/09
to
Hello,

Today I did my first successfull evolving with the new
BattlefieldEvolver.exe, BattlefieldExecutor.exe, Sleep.exe, Evolve.bat and
Battlefield.dat

To make it easy for you guys to see it in action and evolve yourself, I have
placed all the necessary software, manuals, batch file and data file into
one folder.

So then only thing you need to do to start evolving is:

Run evolve.bat !

The rest goes automatic !

I cannot be held responsible to any damage to your system. (For example
overheat is not my problem ! Make sure your PC is in good condition and well
ventilated !)

A short manual is included as well. (You could for example change the number
of simulators, 1 in case you wanna take it easy, or 4 if you on a quad core
or so... see batch file and change the number 2 to whatever you want... but
optimal is the number of cores you have on the cpu !;)).

Color-adjusting of warriors has not yet been implemented... so all warriors
start with a random color... and as the conquer the battlefield... only
those colors that survive will remain... maybe in the future I might
implement some color adjustments... but don't worry... even if all warriors
have same color then they are still evolving ! ;) So you can keep running it
if you want...

Last thing for me to do is port code to free basic and then publish the
latest evolver of mine... just as an example.. so you guys have no excuses
anymore lol... well ok, maybe missing linux software... I will see what I
can do for that.

The latest binary of my BattlefieldEvolver.exe is available in the all in
one folder... (the source is not yet released but you can play with the
binary for now ! ;))

Get the software here:

http://members.home.nl/hbthouppermans/Corewars/

Or here:

http://cid-aedd0ea32d61bc86.skydrive.live.com/browse.aspx/Corewars

The BattlefieldEvolver is configured as follows:

// setup simulators/mars core executors settings
mSimulatorSettings.mPSpaceEnabled := true;
mSimulatorSettings.mCoreSize := 8000;
mSimulatorSettings.mPSpaceSize := 500;
mSimulatorSettings.mMaxWarriorSize := 100;
mSimulatorSettings.mMaxWarriorCount := 9;
mSimulatorSettings.mMaxProcesses := 8000;
mSimulatorSettings.mMaxCycles := 80000;
mSimulatorSettings.mMaxRounds := 100;
mSimulatorSettings.mMinDistance := 100;
mSimulatorSettings.mBattleType := sbt_multi;
mSimulatorSettings.mScoringType := sst_survivors;

Maybe I try smaller settings sometime... give me some links to nano or small
hills ?

Bye,
Skybuck ! =D


Skybuck Flying

unread,
Nov 5, 2009, 12:12:31 PM11/5/09
to
Just for the record:

The source code for version 0.05 has not yet been released... I might do
that in the future.

The source code for version 0.04 that was released still contains some bugs
in the free basic loader... depending on your usage it may crash while
resizing. (These bugs are fixed in version 0.05)

The delphi battlefieldevolver.exe is also pretty easily portable to free
pascal which means it can at least work on linux/ubuntu/mac or whatever.

However porting the executor itself will probably be more difficult.

For now I am trying to get a gpu executor done... it requires lot's of
work... right now I am working on my own GPGPU IDE ;) :)

When it's done it should be able to develop and test the gpu corewar
executor code/idea's... hopefully it will be possible/work out... because I
am not yet sure if it will... but if it does the gains will be big... so for
me that's a good incensitive to keep trying ;)

I also wanna be the first programmer in the world that implemented a corewar
executor on a gpu ?!

That would be a nice "title/achievement" to add to my name ! ;)

And ofcourse the increased performance will allow me to realize my "earth
evolver" without waiting to long for results ! ;) :)

And later everything I learned from this project can be applied to other
projects ! ;) :)

Bye,
Skybuck =D


pauld...@aol.com

unread,
Nov 9, 2009, 4:32:00 PM11/9/09
to
On Nov 5, 11:12 am, "Skybuck Flying" <BloodySh...@hotmail.com> wrote:
>...

> And ofcourse the increased performance will allow me to realize my "earth
> evolver" without waiting to long for results ! ;) :)
>

My "earth evolver" is up and running - two generations already with 5
grandsons :-)

P. Kline

Skybuck Flying

unread,
Jan 3, 2010, 4:55:52 PM1/3/10
to
Ok,

I think it's time I show you people the correct code... however I have no
time to port the Delphi code to Free Basic...

Also the correct Delphi code (in full) is not yet released.

However it is possible for anybody out there that is interested in a fix to
fix yourself by following the following instructions:

The bug is in

procedure TBattlefield.Resize( ParaHeight : Tinteger; ParaWidth :
Tinteger );

Find these two lines below:

// now delete the old warriors
mWarrior := nil;

// now assign the new warriors to mWarrior
mWarrior := vNewWarrior;

Then add this new code below it:

// *** new code ***:

// generate new warriors in case the array size grew.
for vY := 0 to ParaHeight-1 do
begin
for vX := 0 to ParaWidth-1 do
begin
if (vX >= vMinimumWidth) or (vY >= vMinimumHeight) then
begin
// the copy operator (let) will take care of proper/correct copieing
:)
mWarrior[ vY * ParaWidth + vX].Generate( mSimulatorSettings^ );
end;
end;
end;

// update the mHeight and mWidth with the new ParaHeight and new
ParaWidth
mHeight := ParaHeight;
mWidth := ParaWidth;

This solves the potential resize bug ! ;)

Port the code to free basic and you all done ! ;)

Bye,
For now
Skybuck ;) :)


0 new messages