(Updated!)
wxBots is my personal (re)implementation of Darwinbots in C++. It uses wxWidgets for its GUI, so it looks native on Windows and GTK+-based systems and Box2D for physics. (It also uses AGG as an optional, anti-aliased renderer, and the Boost C++ libraries.) It's at a pretty early state, but it's mostly usable and doesn't crash very much I licensed it under the very liberal 2-clause BSD license.
It depends on the SVN version of Box2D (revision 172 right now), Boost 1.35.0 or 1.36.0, AGG 2.4 (2.5 works too but it's licensed under the GPL), and wxWidgets 2.8.8 (earlier versions might or might not work). It also needs zlib for loading/saving (XML-based save files are huge, and compression helps a lot).
Attached is the source code and a UPX-compressed Windows binary.
Things which work:
- Loading most bots
- Movement (but is calibrated somewhat differently from Darwinbots, I need to fix that)
- Veggies with either nrg/cycle or nrg/kilobody feeding
- Shots (with poison, venom, but shell is currently not handled correctly, and viruses don't work because I don't have a gene splitter)
- Ordinary reproduction (.repro only)
- Eyes (along with some refvars, eyeXwidth/dir work)
- Rendering with either native (non-antialiased through wxWidgets) or AGG (anti-aliased, much slower) rendering
- Dragging bots around and panning with the mouse (note: double clicking on a bot results in a bot properties dialog which shows basic statistics as well as code and memory)
- Tie shooting, display and (sort of working) physics. No bot interaction yet though other than .tie for shooting, and having a lot of ties messes up the physics - any help on that?
- Loading and saving in a gzip-compressed XML format
[attachment=980:src.zip]
[attachment=981:wxBots.exe]