Maybe we should bring back old Siege system and rams should be used like Catapults and Trebuchets? Seems that work in BTS and should work in C2C.
If we dont know how to do fix then why we cant bring back BTS siege system?
I dont think that players will be sad if they need to use Rams as catapults or trebuchets. It's only a game and some simplifications are normal. And AI know (more or less) how to use catapults
The problem exists regardless of the manner in which they attack. The changes made that introduced these problems go far back to Koshling's work on the AI and while it may seem like it took place around the time that rams were adjusted, this is due to the fact that adjustments to get the AI to build more than one siege unit at all (which was a major initial flaw in Koshling's unfinished AI work there) revealed underlying problems.
The FIX will be a few months of solid AI work. No quick fixes can really help here. The problem is the whole manner in which the AI works its stacks now. If Koshling had finished what he'd started it would probably be much better and he has, himself, advised that Siege units now be handled as a separate AI rather than a city attack AI (which ultimately is the source of the problem.)
Truly sorting this out is going to require overhaul level work on the most complex programming in the dll. Forgive me if I'm addressing other AI problems first ... one reason for holding off on that is due to working into such massive AI adjustments by focusing on simpler cases first. This will give me the opportunity to build the 'building blocks' of an improved system that can then make the needed overhaul MUCH easier to implement.
Stack limits is another of those "seems like a good idea" things that were added but no ai was written to support so it only confuses the ai. It is quite possible that the ai has decided to build an attack stack much larger than the limit you have set. It then only gets to build the ram part of the stack but finds it can't add any more units to the stack so tries to make another! The AI has no idea about using multiple stacks to do something so doesn't consider those it has already built.
You are absolutely correct. Those playing with stack limits are most likely causing massive (and I mean MASSIVE) overbuilding of units. Reason:
The way it currently works is this:
1) The initial seed unit for an attack stack is built.
2) When it is, a random number (that ranges in the thousands) is given to this stack seed unit (it's birthmark.)
3) How many units are called for by the stack to feel 'ready for attack' is determined as a random percentage of that birthmark.
4) This means that, from birth, the stack's destined 'target' number of units is defined.
5) Every round the unit that is seeding the stack is called to take its turn it evaluates its stack size and composition and places orders through the contract brokerage system for more units.
6) If the ordered units cannot join the stack that ordered them, the stack will NEVER be considered READY for any use beyond some limited reactionary commands it may make before deciding to wait for the ordered units to arrive.
In short, stack limits are paralyzing the stack from ever doing anything and causing an infinite cycle of round after round ordering.
To make matters worse, when the units that cannot join the stack discover they cannot move to the stack to do so, they disengage from the command to get to that tile to join the stack and start being considered a whole new city attack stack seed, AND START ORDERING UP A NEW STACK! It's POSSIBLE for the stack readiness size to vary due to the leading unit's birthmark being the defining factor in how powerful the stack should be, and therefore it's possible for some stacks to form that actually do something within the limits of a tile count limitation. But the smaller you set the limit, the more you are inspiring the AI to grow an infinite tree of never to be used city attackers.
I have to wonder if this is really the ultimate problem with many of the games reporting such a big flaw here differentiating from the games that never do seem to struggle with it.
Perhaps from this explanation alone you can begin to see the depth to which the system must be altered and redesigned to truly address the numerous problems that exist here. I've attempted limited fix tweaks but without diving in and basically rewriting much of the stack formation AI entirely, this is just going to be a major mess for a bit.
CTD.
Open save enter Minneapolis city screen. Deselected engineer, then select Great Doctor, immediate CTD, repeatable.
This game was started with 9070 build updated to 9074 this morning. This game is also using CIVPLAYER8's new Civic set Modmod that DH made Modular (zzNewCivics) and was placed in My_Mods Folder.
Save and mini below.
EDIT: After posting realized that I had Not put the new Civic set in after Updating to 9074 this morning! Went back and put zzNewCivics back into My_Mods folder and No CTD now.
Does make you wonder why the Mod would CTD by reverting Back to the original Civics set though.
JosEPh
I can take a look at the mini at least. Could be interesting to see what 'kind' of problem it was. Might not be quite as related to the obvious likely causes as may be assumed without taking a look.
EDIT: The crash is taking place in the exe so is suggestive that something reporting to the exe fouled up core level processing. This could mean it was a graphics issue. Could also mean there was a mathematical flaw or inconsistency it didn't expect due to changing assets - SOMETIMES this can happen when backing out of a change.