Yes, I mean graphs. They are called charts in the source some places and something spanish in others. One of these days I'll have to ask who Carlo is (or was). :)
I'm not really adding much new functionality to graphing, besides the update interval and update now button. I'm really just making them look pretty and work correctly though it would be trivial to add new graph types. If anyone has something specific they want graphed that the program is already maintaining, I could easily add it. But custom graphs, well, that will have to wait. Perhaps one day I'll write a perfmon plugin and export tons of counters. That would give us some cool capabilities on Windows at least. Custom graphs, graph logging to file, alerts (including email) on thresholds, etc.
Another thing I may do dig in and speed up the data point calculations. They look to be always performed whether there are graphs up or not and the calculation for every data point is at least O(nm) where n is the number of bots and M is the number of data points in the (oldest) graph! The number of decendents chart actually calculates this recursivly for every bot for every datapoint for every cycle insetad of just keeping counters! All this is done even when no graph is up, every 200 cycles by default. Do this stuff every time the graph gets updated and its at least O(n^3) to draw a full graph! Update the graph every 10 cycles and the speed imapct is noticable. Gack!
Yea, having graphs use the bot color has been bugging me too and I've changed it so graph colors match bot colors. A little more involved then it seems, but not hard. Another idea I've toyed with is persisting a bot's color and skin in the DNA file... That way when you load a bot, it always uses a specific color/skin unless you change it. Could be the beginnig of more sophsicated persistant visual stuff on day... (I won't do this without seeking input on file formats, etc.)
Griz, some of the things I'm doing have several changes in multiple places in the code. Somr are form tweaks, some property tweaks, some brand new code and routines. Everything is commented in the source and I'll try my best, but I probably won't take the time to write up every detail line by line of everything I've done in a readme.
FYI, one good way to teach yourself is just to find a piece of code your interested in and then just step through it. Set a break point at the top of the routine and then just F8 through it line by line watching what it does.
Cheers,
-E