Dave 'Arjuna' O'Connor
Panther Games Designer
- Joined
- Jul 31, 2014
- Messages
- 3,416
- Points
- 113
- Location
- Canberra, Australia
- Website
- www.panthergames.com
I received a support ticket from unrealdemand re a CTD while playing the Beda Fromm scenarios from the Cauldron module. He says:
This is an interesting issue. It is generic and not directly related to the Beda Fromm scenario. What is happening is that it's ten minutes before the end of the scenario. The player had ordered an attack by the 7th Armoured Div, who in turn gave the task to one of its brigades. They inturn created a Bn level attack task and an independent attack task for its armoured car squadron. The Bn got held up but the AC Sqn dashed to the objective and managed to reach it ten minutes before the end of the scenario.
What then happened was the 7th AD, decided to replan during its regular ScheduleNextEvent function which occurs every minute for every unit. In doing so though it got into an infinite loop of developing an attack and then calling it off again. Eventually the memory all gets used up and the computer spits the dummy and crashes.
What is interesting is that I have code in there to handle end of scenario attacks. The problem as I understand it is that we have two slightly different tests being employed when we should be using the same one. In the Plan development code we test for both whether the objective is already reached and whether it has been achieved. You can reach an objective but still not dominate enough to achieve it. And that is what is happening in this case. We have a lone AC Sqn with three enemy units all around it.
So at this stage I need to adjust the WillReschedule() inside the regular scheduling code. It tests for reachability but not achievability. This should ensure we don' get in a loop again. It will also mean that attacks won't get called off as often as they do now. But I think that is a good thing. We will need to monitor this.
No problems with the 3 core scenarios, they worked fine. Started with beda fromm and it crashed at 1949 game time. I restarted and it keeps crashing. A loud alarm sounds and then a CTD. I have attached a save game from 1946.
I tried to start Beda Fromm over but it crashes after I give an order. No loud sound this time just a window and then the CTD.
This is an interesting issue. It is generic and not directly related to the Beda Fromm scenario. What is happening is that it's ten minutes before the end of the scenario. The player had ordered an attack by the 7th Armoured Div, who in turn gave the task to one of its brigades. They inturn created a Bn level attack task and an independent attack task for its armoured car squadron. The Bn got held up but the AC Sqn dashed to the objective and managed to reach it ten minutes before the end of the scenario.
What then happened was the 7th AD, decided to replan during its regular ScheduleNextEvent function which occurs every minute for every unit. In doing so though it got into an infinite loop of developing an attack and then calling it off again. Eventually the memory all gets used up and the computer spits the dummy and crashes.
What is interesting is that I have code in there to handle end of scenario attacks. The problem as I understand it is that we have two slightly different tests being employed when we should be using the same one. In the Plan development code we test for both whether the objective is already reached and whether it has been achieved. You can reach an objective but still not dominate enough to achieve it. And that is what is happening in this case. We have a lone AC Sqn with three enemy units all around it.
So at this stage I need to adjust the WillReschedule() inside the regular scheduling code. It tests for reachability but not achievability. This should ensure we don' get in a loop again. It will also mean that attacks won't get called off as often as they do now. But I think that is a good thing. We will need to monitor this.