Last Week:
Due to the move I previously mentioned, this past week was not a productive one for Google Summer of Code. My computer spent much of the week boxed up, but I am now moved in and ready to devote myself to Thousand Parsec. Before I left I mentioned my plan to clean up the mtsec.cpp file and it was mentioned that moving the components to XML would be a good strategy here. I’ve created the following XML schema, shown with an example component of MTSec:
<?xml version="1.0" ?>
<Components>
<comp>
<name>AntiparticleExplosives</name>
<description>An extremely expensive but hugely explosive particle and anit-particle explosive</description>
<tpclRequirementsFunction>"(lambda (design) "
"(if (= (designType.num-ammo design) 1) "
"(cons #t \"\") "
"(cons #f \"This is a complete component, nothing else can be included\")))"
</tpclRequirementsFunction>
<propertyList>
<Speed>(lambda (design) 0)</Speed>
<BuildTime>(lambda (design) 1)</BuildTime>
<Colonise>(lambda (design) 0)</Colonise>
<Armor>(lambda (design) 0)</Armor>
<AmmoSize>(lambda (design) 0.8)</AmmoSize>
<AmmoExplosiveness>(lambda (design) 16)</AmmoExplosiveness>
<AmmoCose>(lambda (design) 64)</AmmoCost>
<StartingHitPoints> (lambda (design) 0)</StartingHitPoints>
<num-ammo>(lambda (design) 1)</num-ammo>
</propertyList>
</comp>
llnz mentioned that he saw no problem with this design so it is the one that I am planning to use for the Components. Moving the Props may also be a good idea. I will be using tinyxml to input the components from the XML file.
Next Week:
My goal for this week is to continue what I briefly started in this past week. This will include cleaning up the mtsec.cpp file and integrating tinyxml. Once this has been completed I also plan to implement the various components of a ship that are currently not included.
This weeks work will build toward my first milestone: the creation of ships that include all of the components outlined in the specification.
Tags: GSoC, thousand parsec