A few months ago, Harlan and I worked together on creating an improved version of the Alexander the Great Scenario that came with CtP2 (actually, we already started doing this even before CtP2 was released). Due to time contraints and technical difficulties we gave up on this after a while. Now, with most of the MedMod work done and with Harlan once again motivated to work on this, we decided to continue our work (actually, this was already a few weeks ago but school and other stuff kept me rather busy). Our plans are not nearly as ambitious this time as they were last time, mainly because Harlan plans on having this finished before Civ3 comes out but we still have some technical difficulties to work out and could use all the help we can get, esp. from SLIC coders. If anyone wants to help out with the project, please let us know, we would be very grateful.
Failing that, I'm would also be very happy if some of you could take a moment to look at the main problem we're currently dealing with and let us know what you think. Stray thoughts, suggestions, complete solutions, anything is welcome, 'cause quite frankly I'm bummed Here it is:
The problem has to do with large stacks. If in CtP2 an army is moving from A to B and it along the way encounters another of the same civ, one of two things can happen. If the size of both armies combined is smaller or equal to 12, the moving army continues along its way without disruptions (no problems here). However, if both armies combined are larger than 12, the moving army stops right in front of the second army and does nothing. It will fortify and wait until the blocking army moves out of the way. However, if this other army is standing in that position because it's defending a city or some other defensive point, the army that was moving to a target will be stuck behind this defensive army forever (unless the goal it was trying to achieve no longer exists). The moving army never decides to deviate from the shortest path and continue via a detour or split up and send the army through in parts, it simply sits there and does nothing. In the Alexander the Great Scenario this is quite a problem because there are a lot of road chokepoints surrounded by desert or mountains and a defensive army in or near FE Tarsus can block any Persian reinforcements from reaching the Ionian cities when the Macedonians are conquering these. This is not the only case though and overall it really decreases AI performance (it's not unusual to have 3 or more stacks stuck behind a defensive chokepoint), in Harlan's eyes it even makes the scenario unplayable. Problems in solving this is 1) there is, as far as I can see, no proper way of detecting when units are stuck like this and 2) actually getting the units passed the blocking stack. I have no idea how to deal with the first problem and as far as the second problem goes, I can come up with some radical things such as teleporting the stack or destroying the blocking stack, but it's still difficult to detect where the stack was going in the first place and working out the details.
Any help anyone could give us would be very much appriciated...
Failing that, I'm would also be very happy if some of you could take a moment to look at the main problem we're currently dealing with and let us know what you think. Stray thoughts, suggestions, complete solutions, anything is welcome, 'cause quite frankly I'm bummed Here it is:
The problem has to do with large stacks. If in CtP2 an army is moving from A to B and it along the way encounters another of the same civ, one of two things can happen. If the size of both armies combined is smaller or equal to 12, the moving army continues along its way without disruptions (no problems here). However, if both armies combined are larger than 12, the moving army stops right in front of the second army and does nothing. It will fortify and wait until the blocking army moves out of the way. However, if this other army is standing in that position because it's defending a city or some other defensive point, the army that was moving to a target will be stuck behind this defensive army forever (unless the goal it was trying to achieve no longer exists). The moving army never decides to deviate from the shortest path and continue via a detour or split up and send the army through in parts, it simply sits there and does nothing. In the Alexander the Great Scenario this is quite a problem because there are a lot of road chokepoints surrounded by desert or mountains and a defensive army in or near FE Tarsus can block any Persian reinforcements from reaching the Ionian cities when the Macedonians are conquering these. This is not the only case though and overall it really decreases AI performance (it's not unusual to have 3 or more stacks stuck behind a defensive chokepoint), in Harlan's eyes it even makes the scenario unplayable. Problems in solving this is 1) there is, as far as I can see, no proper way of detecting when units are stuck like this and 2) actually getting the units passed the blocking stack. I have no idea how to deal with the first problem and as far as the second problem goes, I can come up with some radical things such as teleporting the stack or destroying the blocking stack, but it's still difficult to detect where the stack was going in the first place and working out the details.
Any help anyone could give us would be very much appriciated...
Comment