SITREP Friday 11 Nov 2022
Hi all,
Made good progress with the attack overhaul this week. FYI the main function used to plan an attack in my code is DevelopAttack(). It's part of the plan doctrine. I have finished restructuring it. It now creates a swag of common tasks up front. These include the new assemble tasks - moveToAssembly, nearAssemblyDefend and assemble tasks. There is a similar set for the reserve. Plus, there are the independent tasks for things like the base and forces that may be too far away, out of fuel or static defenders etc. DevelopAttack, aka DA(), determines the best approaches and then calls DevelopBasicAttack() (aka DBA()) if the attack force has no more than one HQ or DevelopComnplexAttack() (aka DCA()) if there are two or more HQs.
These subordinate functions create the remaining tasks specific to their type. DBA creates moveToFUP, nearFUPDefend, FUPReorg, assault and finalReorg for a basic attack. While for a complex attack, DCA creates a set of sub attack tasks. Both functions allocate forces and determine the various force groups. They both tweak a plethora of attributes like location offsets, speed, timings etc. They they both return to the DA(). This then verifies the data, kills off unused tasks and tidies up.
I have been steadily working my way through all this code. My PlanAttack code file currently sits at 23,465 lines. That's a fair chunk of code and there is still a bit more to go. Today I was at the bottom of DCA() when I realised that the old methods for allocating and managing fire support units need to be revised to work with the new doctrine. I need to constrain the deployment of long range arty units to within a region that follows the approach route plus or minus a range of say one or two kms. That way they will stay close to the main route and khopefully out of harms way. I will do this next week. I also need to revise the handling or short range arty, like mortars. I'm going to ensure that if they have effective range from the reserveLoc, then they will stay with their Bn HQ, otherwise they will be assigned to the assault and use the code that drops them off once they get within range of the objective.
I'm hopeful I can sort these out early next week. I then need to implement some changes Pavlo has provided to the interface code that will enable our code to run under Win 11. With the demise of my old PC I have moved to Win 11 and that necessitated moving to Visual Studio 2022. But this caused our old interface code a swag of problems and I could not get the game to compile. With a bit of luck we should get the attack up and running by end of next week. It won't be perfect but at least we'll have a running game to test it.