Single Player bugs and crashes v38 plus (SVN) - After the 20th of February 2018

Wouldn't this be the map script by the map maker? How is the Main mod somehow responsible for Barbs in Space?
This is premade map.
Also barbarian spawning assume there is no such thing as space, but just another Earth terrain.
Basically lack of compability between city spawning and fresh space stuff.
 
I think the problem is in general how space terrain is handled. What else could a map maker do than using the the terrain that is available from the game? And then, even when a village spawns where it shouldn´t the game shouldn´t freeze.

Btw, after a few turns a new village appeared on the same tile and the game froze again. I have changed that tile to polar ocean (didn´t know what would be better to choose) and hope that I don´t get the problem again. At least not on this tile.
 
I think the problem is in general how space terrain is handled. What else could a map maker do than using the the terrain that is available from the game? And then, even when a village spawns where it shouldn´t the game shouldn´t freeze.

Btw, after a few turns a new village appeared on the same tile and the game froze again. I have changed that tile to polar ocean (didn´t know what would be better to choose) and hope that I don´t get the problem again. At least not on this tile.
Where and why do you think the Main game even has Space terrain? Have you seen it in the xml Terrain file? Just looked and there is Space Terrain. But it lacks all the FootstepAudioScript sections. Not sure it has enough data in it to work right though.

EDIT: And looking into the TerrainSchema file there is MapCategory but nowhere is Space Terrain identified specifically.
 
Last edited:
I simply don´t know whether the issue should be handled by the map maker or the C2C mod team (or both). All I can do is describe a problem I see as good as I can.
I understand. Just posing questions is all. Imho the Mod is not ready for these "Space Maps" right now. Too much other major areas to be cleaned up before diving into this area. Again just mho.
 
After my game froze a few days ago I really tried a lot to get it running again. In the end I was successful (for now)! I went into worldbuilder and found that there was a barbarian village in the space (playing on the Alien Solar Map by Kation). I deleted that city and the game is not freezing anymore! Unfortunately I don´t know how to find out which kind of space tile that is but I have attached the savegame and a screenshot of worldbuilder. The village is in the space north of the extra earthlike planet, not yet discovered by me (I´m still in Ancient era).
I think it would be important that barbarian villages are not allowed on space terrain, especially if they create such big problems like in this game (reproducibly freezing after end of turn).

That specific tile is a Transtellar Space or more technically a TERRAIN_TRANSTELLAR.
 
@Thunderbrd and @Toffer90

You guys should check all the numbers and formulas which where changed during the last months. Because it seems that things got harder for the Ai and I seem to recall there where changes to the Ai handicap modifiers and how they are used as well.
Sure, I've only thrown a couple of suggestion at TB without checking much what he actually changed afterwards. I'll spend some hours scrutinizing them.
Someone used Construct Percent for research cost for AI.....
No wonder Noriad never noticed change when he set ai tech cost to 44....
Nice, an obvious mistake, but that would actually make it easier for the AI than intended as the AIConstructPercent modifier reduce more than the AIResearchPercent modifier.
@Toffer90
Is it possible to make same resources not spawn at each other?
It is possible, the tag iUnique in BonusInfo.xml is a minimum range that define how far apart a certain type of resource should be placed apart from other resources of the same type.
So if the iUnique tag is used for a resource of the BonusClassType BONUSCLASS_GRAIN then it will decide the minimum range to a different bonus of the same class, meaning e.g. that rice and barley cannot be close together if rice and barley use the iUnique tag..

The tag is used very little in C2C, I guess I could increase the usage a bit when I have more time for such.
 
Last edited:
Nice, an obvious mistake, but that would actually make it easier for the AI than intended as the AIConstructPercent modifier reduce more than the AIResearchPercent modifier.

This value is set to 58 in Nightmare mode (svn 10011)
<iAIConstructPercent>58</iAIConstructPercent>

I have changed <iAIResearchPercent>79</iAIResearchPercent> to 44. Obviously without effect, given Raxo2222's discovery.

My game is currently around Classical Lifestyle, and I'm crushing the AI. I have almost twice as much points as the number 2 in the score list. And although the AI (notably Mansa Musa) raced ahead in tech during the Ancient Era, I've almost caught up.

So I don't mind setting <iAIResearchPercent> to 44 instead of the currently wrong 58 from <iAIConstructPercent> . Together with AI repairs (notably hunting) this should make Nightmare decently challenging again.

(did I mention I'm still getting better at C2C with every game I play?)
 
@Noriad,
We should fix the currently paralyzed AI first, then adjust the handicap modifiers, the other way around is pointless as we could currently set the AI to have <iAIConstructPercent>1</iAIConstructPercent> and they would still be easy to crush for the human player.

Currently the AI is incapable of using settlers, hunters, and other coordinated unit specific stuff because supporting units will almost never join the settler stack, hunter stack, or other stack.
So hunters, settlers and other units will wait around (often within a city) indefinitely for supporting units to heed the call to duty, while no one even hears the call.
 
Last edited:
If I remember correctly iUnique is about the bonus only occurring on a limited number of map regions eg only on one continent.

The main problem is that if you make each of the drugs unique to one region you may get one per continent but you may get them all on the same continent. This makes if very hard to balance. I think corn was iUnique=1 on normal maps but there is no guarantee that it wont be on the same region as wheat


Remembered wrongly. I was thinking of bArea. It is the minimum number of plots between the same resource. It appears that no one knows what iUnique on the BONUS_CLASS does. Care needs to be taken to make sure you don't make any Cultures impossible.
 
Last edited:
If I remember correctly iUnique is about the bonus only occurring on a limited number of map regions eg only on one continent.

The main problem is that if you make each of the drugs unique to one region you may get one per continent but you may get them all on the same continent. This makes if very hard to balance. I think corn was iUnique=1 on normal maps but there is no guarantee that it wont be on the same region as wheat


Remembered wrongly. I was thinking of bArea. It is the minimum number of plots between the same resource. It appears that no one knows what iUnique on the BONUS_CLASS does. Care needs to be taken to make sure you don't make any Cultures impossible.
Well I was asking if it possible to not have two same resources next to each other.
For example resources can't be placed like this: RR, but can be placed like this: RTR, R - Resource of same kind, T - Tile.

That is for example two mushroom resources never should be each other, but have at least one tile space between them.
 
Last edited:
Well I was asking if it possible to not have two same resources next to each other.
For example resources can't be placed like this: RR, but can be placed like this: RTR, R - Resource of same kind, T - Tile.

That is for example two mushroom resources never should be each other, but have at least one tile space between them.
Disagree Raxo. This proposal is just more busy work. To many instances in the world were similar adjacent terrain produces the same type "resource". Your checker board design idea would really complicate the placement of resources. Don't we have enough going on already?
 
@Noriad,
We should fix the currently paralyzed AI first, then adjust the handicap modifiers, the other way around is pointless as we could currently set the AI to have <iAIConstructPercent>1</iAIConstructPercent> and they would still be easy to crush for the human player.

Currently the AI is incapable of using settlers, hunters, and other coordinated unit specific stuff because supporting units will almost never join the settler stack, hunter stack, or other stack.
So hunters, settlers and other units will wait around (often within a city) indefinitely for supporting units to heed the call to duty, while no one even hears the call.
So it's that bad is it? Seems like even play testing a game is then just a waste of time right now. Right?

But before I quit all my games I will pass this on. The Pop rate/t (good rate) for all Properties is currently ~1/2 the Pop Decay rate( bad rate). The Decay rate (bad rate) is 2 x stronger or more. You can currently in the 1st couple of Eras run out of buildings that build up the Good Rate to offset the Decay rate. So you will build up to get a Good rate going, Only to run out of Good rate giving Bldgs. And also hit a wall on Good rate giving units because of Unit cost draining your treasury. This becomes cyclical in nature.

Been recording this Good rate vs Decay Rate ratio periodically and randomly thru out a new SVN 10034 Deity game, 24 recordings out of 211 turns played. Current game turn is in the Ancient Era, Normal GS, large C2C_World map.
Current levels @ turn 211 in Capitol City of Mohawk:
Education; constant building sources: +22/t, Pop Decay rate: -68/t. (Decay rate triple the "good" rate)
Disease; -7/t, P.D. rate: +16 (more than double)
Crime; -40/t, P.D. rate: +85/t (more than double)

Current levels and change of level for these 3 are:
Ed: +187 (+3) (good right now)(turn 164 it was a -5(+1)) Is almost cyclical in it's pattern, not quite but close to a sinewave pattern.
D: +8(+1)
C: +12(+6)

Currently 9 Story Tellers built/ cost of 9 :gold:/t, 5 Enforcers ( 10 :gold:/t), and 1 Healer (+2:gold:/t) = 21;:gold:/t. Not that costly it's point in time but when Town Watch, Medicine man, and Bard becomes necessary the cost will almost triple.

Just some data to chew on and logged here.
 
So it's that bad is it? Seems like even play testing a game is then just a waste of time right now. Right?
That's the conclusion I've reached at least.

Thanks for the data.
I didn't experience the properties as that bad in my last deity test game which I played up until Iron Working tech, but I didn't have to deal with AI at all since I was on an isolated island and the AI is currently completely broken.
We do want them to be pretty hard to deal with on deity difficulty, but it may be as you say too hard currently.
It should be noted that the only property related things I've changed for deity difficulty has been to remove the -20 crime from palace and increase education from grammaticus building from +5 to +8

I'm thinking we may want to change the tech prereq for the second education build up promotion from Literature to Community; because the huge population growth enabled by agriculture makes it necessary to boost the "story teller" education strength a bit at that point.
 
Last edited:
Giving the Palace alot of gold per turn doesn't make the AI build more units. The city puts out high priority requests for units but they don't get built. This strongly suggest there is something wrong with the contract brokerage system.
 
This is why I wan't testing AI stuff, as I knew it was broken.
Instead I was testing hunting, properties and city development.
Conclusion is that techs are bit too fast and buildings are bit too slow.

On blitz you won't enjoy wanderers and chasers for too long.
As for trackers you can't go too far as soon after you get hunters.

I was testing Blitz/Standard/Noble.
I have 6 AIs in game.
 

Attachments

Last edited:
I noticed this little bug in tech cost calculator.
if (!isHuman() && !isNPC())
{
iModifier = GC.getHandicapInfo(GC.getGameINLINE().getHandicapType()).getAIConstructPercent();
iCost *= iModifier;
iCost /= 100;
}
Thank you. Yes, that's a typo and needs to be corrected. I suspected something like that was wrong too but hadn't looked at it yet because I'm not getting much time to mod right now.
So how does the AI differentiate which Wanderer is escort and which is Hunter? I think this would be hard to code right? Why not make the Brute or Stone Thrower the Escort instead? And simplify the code? Especially at game start. A bit later the Chaser/tracker could have the Scout as escort.

Maybe some of the problem is giving units multiple AI, even moreso when there are few to chose from.
When the AI Player orders up a unit to be trained, it usually orders it by AI type. When it is trained, the type is assigned. It's first concern is to fulfill the role the AI type defines. It's second concern is which unit type that is, and it then evaluates, from all the possible units it can train that can have that type, which is the best. Sometimes also by further varying criteria as well such as (example from City Attack AI selections) 'right now I also want the unit to be skilled at breakdown or bombardment' or 'I already have enough breakdown and bombardment for my stack size so far so let's get the strongest type at attacking a city'. Or counter AI - my potential opponents have x amount of mounted units, x amount of melee, x amount of archers and so on, so which type is the largest amassed type I should be wanting to counteract, now how many of the type that best counters those types do I have vs the others and which am I most deficient at responding to? The best at responding to that... that's what I want for a counter unit, from among the list of counter type units I can train.

Look at the LE units. If the AI is having a crime problem, an LE unit should be trained for Crime Control. That AI type LE unit will pick up as many Crime Countering promotions as it can and will have the behavior associated with such units, to stay hunkered down in cities that need them until, potentially, other cities need them and this one doesn't and not enough have answered the call to go to the other sites yet and enough are staying here. However, an Investigator AI is called up by the AI player's city when criminals start showing up in the city needing arrest. That AI will focus mostly on investigation and investigation buildups. Either can make arrests and so as a secondary, they will also prefer combat vs criminals and stealth combat promos mostly. The investigator will go to other cities when this one doesn't have anymore criminals and the broker call goes out for an investigator due to there being criminals in another city. If there are still criminals in the city he's in, he'll stay put and the player's cities will be asked which is the best one to produce another investigator for the city that now needs one due to the newly emergent criminals there.
Anyways that hunting code used to work as well as the settler getting his escorts. But in C2C everything gets broken over and over.
Broken in the process of trying to fix a major flaw in it that was allowing any unit of any AI to respond, not necessarily to join, but to be trained for the response. I'm in the process of filtering through the changes in the brokerage that were intended to fix this to find what is going wrong. There were a few unnecessary changes that were for the purpose of streamlining and OOS avoidance that I've reverted but they weren't apparently to blame it seems... either than or it's just that the AI is very reluctant to train much at all. I just need time to find the issue. And since I'm in the process of moving, that's in short supply.

I've also confirmed that one shot workers are far too restrained. They will act but I don't know why it takes them so long to decide to get off their butts and do something. Might be related, in that they are asking for an escort and never getting one. But it also could be an entirely different issue.
 
Sure, I've only thrown a couple of suggestion at TB without checking much what he actually changed afterwards. I'll spend some hours scrutinizing them.
I've looked over all the code related to handicaps that has recently been changed, couldn't find anything wrong with it other than the one thing Raxo pointed out.
 
This is why I wan't testing AI stuff, as I knew it was broken.
Instead I was testing hunting, properties and city development.
Conclusion is that techs are bit too fast and buildings are bit too slow.

On blitz you won't enjoy wanderers and chasers for too long.
As for trackers you can't go too far as soon after you get hunters.

I was testing Blitz/Standard/Noble.
I have 6 AIs in game.

Buildings should be a bit slower than tech; it means that you will have to make hard choices on what to build and what not.
Chasers I also skip because trackers come quickly after and are much stronger; the higher base strength (2) means they benefit much more from promotions, and chasers have no chance at all when attacked by non-animals.
 
Back
Top Bottom