New Version of Framework In The Works
This is the thread's initial revision.
Assuming I can really carve out enough time for this, I am planning a new version of my Xander robot framework. This will be a new major version, as it will make a few fundamental changes to how it works. The primary purpose of this overhaul is to add melee support.
Originally, I had developed a small amount of multi-opponent support, but it was rather limited. For instance, the snapshot history can save histories for multiple robots by storing them in a map with robot names as key values, and their snapshots as values. However, I will not be finishing out this approach for all parts of the framework. There are a lot of framework components that contain information for both self (my robot) and the opponent. I would need to expand these in a way similar to the snapshot history, and be able to store info for all opponents. But I'm not going to do this.
Instead, I think I am going to divorce storing information for self and opponent in the various framework components, and just store information for a single robot. Doing this for self might be a special case for this, but I still think it will work. Thus, there will not be a single snapshot history, and a single wave history, etc. Instead, there will be one of each of the components for every robot in the battle. Then I will add some higher level management that dishes out information for each robot to the correct components for that robot. I believe this approach will ultimately be more elegant, simplify the individual components a bit, and provide more flexibility.
I may also provide a few other tweaks, but the melee support will the primary focus.
This will be Xander framework 3.0.