So, I'm a little behind.
What I have done however, is implemented A* - which will be useful for Tree navigation, and I've started researching heuristics for specifically trying to take into account how likely it is for a research to lead to other research paths down the track.
So, if a political goal was researching C, and further down the line they wanted to also research D - they might take research A, which leads to both - rather than B which reaches C quicker, but now not lead to D.
I am programming this task in C# - because it is extremely quick to get off the ground. I already have a simple GUI going, with inputs.
The only issue is that it is slower than C++ - so, my efficiency calculations will have to consider this. It is possible that as C# and C++ are pretty similar, I could try to quickly port the code over, and test it on C++ as well.
I am using XML for the research trees - and loading in of other data items, for example, "Area" templates which define temperature ranges, local materials and such which define the initial products that a civilisation can create (such as rice, fruits, and metals).
While, again, XML is slow, it only really needs to be loaded in at the start of the application for skill trees, and, depending on whether I allow the saving and loading of past simulations, they can be accessed on the menu screen when selected.
On the plus side, XML is very quick and comprehensive to edit.
To make up for the time I've lost, I'm going to implement a very basic skill tree, and expand it as I go.
No comments:
Post a Comment