strategyonly
C2C Supreme Commander
v38.1 is now patched and ready for downloading . .
Thank you SO! This will help folks a lot. I'll update the player's guide with the new download link but I'm not sure where to find it... I'll look tomorrow.v38.1 is now patched and ready for downloading . .
My game is before anyone has got to tribalism, but i noticed I appeared to be the only one actively hunting and then discovered that bizarre scenario with the Ethiopians.Interesting. My games they've been doing anything but... they've been quite agressively building new cities. So this is rather curious. I'll look into it when I can.
This is not as odd as it may appear. The AI wants to be at whatever it takes to get the best benefit out of education that's available. They're reacting a little too strong to get there but they start at 0 with education and want to be at 100. I've gotta think of a way to get them to be more measured in their approach without under reacting to other properties. It's kinda buggy but its also kinda a valid strategy as well.I'm on SVN 9920 and I've discovered the Ethiopians are doing nothing but building Story Tellers, they have 9 of them! I have a feeling the Incans might be doing something similar just by the sheer disparity in combat strength shown in the UI in the bottom corner.
At around the ancient-classical era, there are (were?) periods where you can only build buildings with low ROI rate. The AI might notice that and decide to invest in research instead. It's quite possible that he made the correct call, if it didn't wish to go to war or expand due to upkeep.However, sitting there having every city building research when there's definitely other beneficial things they could be doing - that's a problem.
Since jatkinson was commenting on the AI building story tellers (not research), I assumed T-brd was answering to this part.in my game on the Vertical Solar Map all my opponents are just sitting there and are founding no new cities. Most of them produce Lesser Research. I am not at war with anyone and they have plenty of space to expand. I am somewhere in the middle of the Ancient Era.
The AI doesn't look at ROI for building determinations but it does arrange its priorities by the time cost to build so it kinda does. I think I erroneously enhanced their sensitivity to prop cntrl need in my set of fixes thinking it could help with a problem but it had nothing to do with it so just created a new problem. Easy fix when I get a minute.At around the ancient-classical era, there are (were?) periods where you can only build buildings with low ROI rate. The AI might notice that and decide to invest in research instead. It's quite possible that he made the correct call, if it didn't wish to go to war or expand due to upkeep.
The AI is not so clever. It only sends settlers with minimal but strong escorts then lets the newborn city cry for what it needs and responds to the strongest needs first. Its a fast way to spread at least.This discussion "could" tie into the Venus of Willendorf discussion. If the Ethiopians are building STs then perhaps they have the Wonder and are prepping for the next city, especially if the 1 City Tile Start is On.
@Raledon,
But jatkinson is playing on Eternity GS and is still in Preh Era. The AI is probably prepping for Tribalism and it's 2nd city as well as what T-rb mentioned of having it's Education Level above 100.
This is not as odd as it may appear. The AI wants to be at whatever it takes to get the best benefit out of education that's available. They're reacting a little too strong to get there but they start at 0 with education and want to be at 100. I've gotta think of a way to get them to be more measured in their approach without under reacting to other properties. It's kinda buggy but its also kinda a valid strategy as well.
However, sitting there having every city building research when there's definitely other beneficial things they could be doing - that's a problem.
They don't take into account the 'trend' at all, only where they are at now. Trying to create a mathematical structure that takes the overall drift to achieve a particular level would be a nightmare. However, when I adjusted their reaction sensitivity, which is a matter of how they prioritize their build selections, I made them much less tolerant of not being where they wanted to be and they aren't using a more gradual approach as they should be so they are just training these units until they get where they want to be. It's not the worst bug in the world because when they then start getting access to the buildings that these storytellers can build, they'll immediately start dumping them into those.Going out on a limb here..but it is possible the AI is miscalculating the situation and therefore overbuilds stuff?
If you mouse-over properties in the city screen, you get a few numbers that don't add up correctly.
View attachment 489079
The disease: minus 6 plus 11 is plus 5 but the trend is -4? And even if I add the missing 4% decay-towards-zero myself I still can't make head or tails of this calculation.
If the mouse-over calculation is wacky then perhaps the calculation the AI uses in the code is also wacky.
What I personally calculate, as a player, is the drift-towards value of a property. In the above example, disease is 57 (let's call this A) and the drift is -4 (let's call this B). Since there is a 4% drift towards zero, every 25 points higher disease gives +1 drift and every 25 points lower disease gives -1 drift. So this gets the formula:
Drift_Towards_Value = A + B * 25.
In the above example, the current disease will drop until they are close to 57 + (-4)*25 = 57 - 100 = minus 43. If nothing changes (i.e. no additional sources of disease), disease will drop turn after turn until it hits minus 43 and then is stable. It may stop a few points above that due to rounding.
Jatkinson's above post shows a level 2 city in prehistoric. To get to 100 you need a net +4 education/turn above the level needed to compensate for the education consumption. Even at deity/nightmare, 9 story tellers is excessive, especially with the buildup promotion.
Still, as a player I've been able to figure out how to make use of it and it would be far worse if it wasn't there. At least it's telling you where you are at right now and the (well coined term) 'trend'.@Noriad2 ,
That tooltip/mouseover is So misleading I wish it was not even there. All it does is add to confusion because the path the math takes is complicated. The AI has no problem with the numbers, it's the players that do.
Because you can not see the diffusion rate and it's back and forth workings the decay rate does not give you an accurate means of figuring it out. So all your formula's have missing data that changes the numbers multiple times.
If a math genius would like to work on that they are welcome to it. I've set up the method for the AI to adapt in another way. One problem is even figuring out how to draw those references AIAndy is using for that screen display. His programming is... very difficult to follow. This is because he tends to use one name for many functions and let the code determine from the parameter type being called for, which function to refer to and I get lost in his basic naming for things. He also pieces together the display codes in such an intricate maze of generic possibilities that it's very difficult to track down a particular variable.+Thunderbrd: perhaps the AI should learn to use this trend-towards-value. And if I can calculate it quickly from values on screen with a simple formula, so can the AI. Without it, it is very easy to overshoot with countermeasures.
I cannot confirm that.I thought the trend value on the screen display (B) is simply the difference between the current value and the value of the last turn before the current turn?
While this might be an advice which you already know about, it sounds like you might have missed it- VS default so that if you press f12 while selecting a function (or a variable), it will jump to its definition. This is a bit troublesome with interfaces, but might help you with quickly navigating to the correct function.use one name for many functions and let the code determine from the parameter type being called for,