Dave 'Arjuna' O'Connor
Panther Games Designer
- Joined
- Jul 31, 2014
- Messages
- 3,415
- Points
- 113
- Location
- Canberra, Australia
- Website
- www.panthergames.com
SITREP Fri 6 Sep 2019
Hi All,
I have been working solidly on the HQ Basing Issue. I now create a basing task for senior HQs for Move and Defend plans. I've modified the scheduling code to allow for them, which includes modifying the ObjectiveAchieved()s in the various doctrines. I've been working through the reassessment code these last two weeks. My focus so far has been limited to Secure missions. But these bring in Move, Defend, Delay and Attack. So it's a big chunk of the pie.
In the course of this I have had to revise the force allocation code to ensure that senior HQs that are already based remain so. The AllocateForcesToSecureTasks() now worked for the full plan development and when it just does a partial plan to launch a peripheral attack. It was quite pleasing to see it in action.
But one thing that concerns me as I stepped through the reassessment code was just how frequent it was being called. There is code that asks if enough time has elapsed since the last reassessment. The function that handles this can use generic changes like Minor, Major and Replan or specific changes like change formation, reorg etc. Trouble is it references a vector of previous times. But when a scenario starts these are all initialised to zero, which is sometime in 1904. Hence there's always enough time until we actually process a reassessment of the specific type. So that probably explains why at the start of the scenario there is a lot of reassessments that would otherwise have been filtered out.
I'm going to automatically set the timeLastActioned to the scenario start, which should preclude a lot of unnecessary early reassessments.
Before this HQ Basing feature is complete, I need to do more testing and tweaking of the reassessment code. I also have to write some code to reassess if the senior HQ should move its base. This will factor in progress of the main force if it's a Move and the effective command range of the HQ. If it needs to do so, it will redetermine the basing loc and modify the existing task location. We may also need to re-base if the HQ is threatened.
With a bit of luck I hope to wrap this up next week. I'll then put out a new beta build for testing. We're getting there. Thanks for your patience.
Hi All,
I have been working solidly on the HQ Basing Issue. I now create a basing task for senior HQs for Move and Defend plans. I've modified the scheduling code to allow for them, which includes modifying the ObjectiveAchieved()s in the various doctrines. I've been working through the reassessment code these last two weeks. My focus so far has been limited to Secure missions. But these bring in Move, Defend, Delay and Attack. So it's a big chunk of the pie.
In the course of this I have had to revise the force allocation code to ensure that senior HQs that are already based remain so. The AllocateForcesToSecureTasks() now worked for the full plan development and when it just does a partial plan to launch a peripheral attack. It was quite pleasing to see it in action.
But one thing that concerns me as I stepped through the reassessment code was just how frequent it was being called. There is code that asks if enough time has elapsed since the last reassessment. The function that handles this can use generic changes like Minor, Major and Replan or specific changes like change formation, reorg etc. Trouble is it references a vector of previous times. But when a scenario starts these are all initialised to zero, which is sometime in 1904. Hence there's always enough time until we actually process a reassessment of the specific type. So that probably explains why at the start of the scenario there is a lot of reassessments that would otherwise have been filtered out.
I'm going to automatically set the timeLastActioned to the scenario start, which should preclude a lot of unnecessary early reassessments.
Before this HQ Basing feature is complete, I need to do more testing and tweaking of the reassessment code. I also have to write some code to reassess if the senior HQ should move its base. This will factor in progress of the main force if it's a Move and the effective command range of the HQ. If it needs to do so, it will redetermine the basing loc and modify the existing task location. We may also need to re-base if the HQ is threatened.
With a bit of luck I hope to wrap this up next week. I'll then put out a new beta build for testing. We're getting there. Thanks for your patience.