RFC Europe playtesting feedback thread

I tried the WB option before posting... :lol: it said every city had 308g. Every city of every Civ, even mine. :rolleyes: Maybe i will try this later again.
However the diplomacy screen is a smooth option! Thx for the advice.

It is confuding, but this is how they made it work: the money that you see when you click on a city is not the money of the owner of the city. The money that you see is the money for the selected leader (from the top right menu).

Select a leader and then click on any city anywhere and you will see the right amount for that leader.
 
Why? Like there was no wars before the Reformation?

We don't stop wars for the Catholics, they are just slightly less likely. It takes a while to accumulate the faith points anyway, so by the time the bonus gets significant you get the Reformation. After the Reformation, the Catholic players would be friendly towards each other and unfriendly towards other religions.
 
We don't stop wars for the Catholics, they are just slightly less likely. It takes a while to accumulate the faith points anyway, so by the time the bonus gets significant you get the Reformation. After the Reformation, the Catholic players would be friendly towards each other and unfriendly towards other religions.

This discussion goes in the wrong direction because i think the faith point bonus is only a minor piece why there isn't much war going on. It's only the top of the iceberg.
My thesis is that there are too many diplomatic bonuses between AI nations and too less penalties in general.


I will try to explain what i think so far how this AI stuff works.

1. Attidudes
Civilization IV knows five attitudes: Friendly, Pleased, Cautious, Annoyed and Angry. The attitude depends on your diplo modifier (the diplomatic bonuses and penalties you get for trade relations, sharing the same religion, open borders and so on). There are treshholds at which your attitude goes up on level. As far as i know the treshholds are as follows (it would be great if someone could approve those numbers. Edit: I found it myself, its hardcoded in the dll (CvPlayerAI.cpp))
  • 10 -> friendly
  • 3 -> pleased
  • -2 -> cautious
  • -9 ->annoyed
  • -10 and less -> angry
Most (if not all) AI decisions are based on the attitude and the attidude only. The exact number doesn't matter. The only question is: Is my diplo modifier at least 3 or at least 10?
The diplo modifiers that all nations have with each other can be seen on one of the F4 screen. But they seem to be not always correct. There are some hidden modifiers from Firaxis you never see and there are some modifers from RFCE that are implemented via python. What matters is the attitude anyway.

2.Civ4LeaderHeadInfos.xml
A lot of AI behavior is configured in the Civ4LeaderHeadInfos.xml. If you want to behave Suleiman differently from Isabella, this is the place you look for.
I think (or at least i hope) that most of our problems can be solved with this xml file. The Problem is none of us understands this file. But the Civ modiki can give us some hints.

3.NoWarAttitudeProbs:
NoWarAttitudeProbs is a tag in the Civ4LeaderHeadInfos.xml. This is what the modiki says about it:
Specifies the chance an AI leader will reconsider a war plan, based on his attitude toward the potential victim. (0 will never reconsider; 100 will always reconsider and never declare war)
And this is what such an entry typically looks like:
Code:
<NoWarAttitudeProbs>
	<NoWarAttitudeProb>
		<AttitudeType>ATTITUDE_ANNOYED</AttitudeType>
		<iNoWarProb>10</iNoWarProb>
	</NoWarAttitudeProb>
	<NoWarAttitudeProb>
		<AttitudeType>ATTITUDE_CAUTIOUS</AttitudeType>
		<iNoWarProb>60</iNoWarProb>
	</NoWarAttitudeProb>
	<NoWarAttitudeProb>
		<AttitudeType>[COLOR="Red"]ATTITUDE_PLEASED[/COLOR]</AttitudeType>
		<iNoWarProb>[COLOR="Red"]90[/COLOR]</iNoWarProb>
	</NoWarAttitudeProb>
	<NoWarAttitudeProb>
		<AttitudeType>[COLOR="Red"]ATTITUDE_FRIENDLY[/COLOR]</AttitudeType>
		<iNoWarProb>[COLOR="Red"]100[/COLOR]</iNoWarProb>
	</NoWarAttitudeProb>
</NoWarAttitudeProbs>
So what does that mean?
When the AI has a diplomodifier of 10 with another nation it will never declare war. 10 is very high, so this will seldom happen. But at a modifier of 3 (and that means almost alyways) there is a 90% chance that an otherwise succesfull declaration of war will not happen.

I don't know how often such an "otherwise succesfull declaration of war" would happen. Maybe every turn. Than 90% would mean that the declaration of war would only be delayed by some turns. But i doubt that.

The problem is that it is hard to interprete those numbers correctly. It will require a lot of try and error and a lot of playtesting to optimize these numbers. But i think its worth the try.


So what can be done?
  • adjust the diplo midifiers so that the AI nations are more often Cautious or Annoyed towards each other.
  • adjust the war probability tags so that AI more often declares war regardless of attitude.
  • adjust the memory decay tags (that means how long it takes until a diplo modifier wears of) so that the attitudes change more often over time.
 
Well, there is another problem. Once war is declared:

- Other nation is so far away you never make contact anyway
- There is no fighting. Just turtling up enormous amounts of troops in certain cities
- The troops in the important city seldoms moves, just attack another city till they collapse
- AI never asks for peace unless you suggest it

Another suggestion is to make the settler maps more overlapping. Most civs settle their historic territory and stay put.
 
Other than regular BtS diplomacy and war, RFC and RFCE have a Python module that guides AI wars. If things are overall peaceful, then the AI will declare war and it will do so entirely based upon the War Maps. The AI can be completely in love with you, but still decide to attack you if you have cities on the wrong spot.

Those AI wars are somewhat artificial and often times the AI is not ready, i.e. it declares war, but doesn't attack. I have not figured out how to fix this yet.
 
@3Miro -- It's unfortunate you (as far as I can tell) decided not to respond to my last post, in which I suggested that Calais wasn't a good choice for a city to flip over when Normand England comes into play. Perhaps an answer like "Although not disagreeing, we have neither the time nor the inclination to alter the game mechanics at the moment" would have been more truthful than the pointless one-liner. I've been monitoring this thread for a long time, since I enjoy the mod. Obviously, I'm not the first to allude to Calais as a problem, and by no means will I be the last. Until then, whenever that may be, wish your team all my best.
 
Well, if you did this mod in your spare time I would be exhausted from being obliged to answer every post on the board (even if he does a good job)...
 
@3Miro -- It's unfortunate you (as far as I can tell) decided not to respond to my last post, in which I suggested that Calais wasn't a good choice for a city to flip over when Normand England comes into play. Perhaps an answer like "Although not disagreeing, we have neither the time nor the inclination to alter the game mechanics at the moment" would have been more truthful than the pointless one-liner. I've been monitoring this thread for a long time, since I enjoy the mod. Obviously, I'm not the first to allude to Calais as a problem, and by no means will I be the last. Until then, whenever that may be, wish your team all my best.

I read and consider ALL posts!

If I were to respond in details to all the posts, nothing would ever be done.
 
Even with a "LOL!", that's not really considerate of the work 3Miro is doing on the mod.

His response to my question was rather less, not to mention the fact that I have praised this mod multiple times since it came out.
 
Well, it's my first time posting on this forum (or I did it so long ago that I don't remember), and I must say that this mod is really awesome, it is consuming a lot of my spare time since I first played it.

What i'm bringing here can be just an unusual Bug, or something deeper, but when I saw it I got crazy.

As you guys were talking earlier on this topic about knowing how much money a civ has, I did exactly this to understand why a 13 thousand gold Byzantine could lose it's UHV 3 in 1453. I started by France, discovering it had 93 gold. I laughed. Just after that I was checking the Arabs, and you know what I discovered?

The Arabs had: 1 078 579 gold

This is in Beta 10. In 500 turns you need an average of 2157.158g /turn to get to this value. The Arabs collapsed in 978 and were reborn with Tarabulus and Dimashq in 1092. They had only the following cities:
Az Zarqa (lost in 936 to the Byzantine)
Rodos (gained in 1122 by revolt from independent, lost in 1389 from lack of stability)

Dimashq (lost in 978 by collapse, regained in 1092 by reborn)
Tarabulus (capital, gained in 1092 by reborn)
Marrakesh (conquered from barbarians in 1209)
Girba (founded in 1266)
Tunis (conquered from independents in 1422)


With five cities they could gather a million gold in 1453? That's really funny. I don't know if this was just an ocasional bug because of something that went wrong in my game, or something deeper that should be analysed.

As for now i'm going to load an autosave and crush the arabs to see if I win, I think I deserve it for my 13 thousand gold.
 
Embryo discovered a bug that had to do with the mercenaries in vanilla RFC. If RFC Europe took the same code then that could be the cause.
 
When does Burgundy get it's respawn exactly? And when it does, does it happen regardless of the occupying civ's stability?

It's 1208 in my habitual France run, and I've just bulldozed Nevers, Dijon, Lyon, and simply walked into Berne. I stopped my game for now because I don't want to go any further before I learn if it's safe or not to start resettling that area (the burgundian AI is bass-ackwards when it comes to city founding)

Oh, and Germany built Basel 1w, in Burgundy :mad: I don't want to raze it and fuxor my stability anymore than raze-a-thon 1200 did. That and germany will keep building it :rolleyes:
 
in my France game where i was very stable (45+, through nearly the whole game) Burgundy still hadn't respawned in late 1500s
 
Is this a bug, or a gameplay mechanic I've overlooked? The great Sea Walls of Constantiople kicking in?

Spoiler :
attachment.php


Plus, what's the deal with Hadrianople? No matter who holds the city (Byz, Bulgaria, Ottos), they often turn it into a massive citadel. Knowing this, I had to plan from the very beginning as Russia to beseige the city, building up a force of 40+ Boyars, 40+ pistoliers, 10 bombards, 10 musketmen, and 10 spies (to bring down the start fort and create revolts to stip city defenses) while building forces for my Lithuanian, Polish and Finno-Swedish campaigns. Fortunately I took Bulgaria, and they were kind enough to build Kalmar Castle for me, and Bulgaria, Rus' and Lithuania had settled several Great Generals in their key cities, so after settling my own GGs, I could produce several Combat 2 + Flanking 2 pistoliers (Flanking 2 is so awesome - 70% withdrawal chance CANNOT be underestimated & combined with combat = one badassed seige unit). I built several longbows in cities with ranges so I could upgrate to strong muskets to protect my Bulgarian cities, and then built muskets with Hillsmen 3 to fortify on the north Thracian hils to protect my cavalry stacks as they beseiged Edirne.

The other issue with AI turtling is lack of offense against a seige - with 40+ pistoliers in the city, the Ottos could have given me a true heartbreak by attacking my stacks with high withdrawal odds (since turn one invoved moving units to the hills outside town, and not being able to attack), but the AI never sends out more than 2 or 3 units from a turtled city like this (unless you occupy one of the 8 tiles bordering the city).

THe plan worked out for me, as I managed to bring down a city with 70+ units garrisoned inside within 3 turns, but it only worked because I knew this would happen - this one city always winds up a massive citadel. Is this behaviour something the AI is hard-coded to to, or is it just a quirk of the AI to garrison certian cities to ludicrous levels (I also see France/Burgundy/Dutch do this with Anvers/Antwerpen often, as well)? I probably shouldn't complain, though, as the alternative is seeing the military spread out to 10 + units per city instead of 50+ in one city.
 

Attachments

  • 2011-06-11_00007.jpg
    2011-06-11_00007.jpg
    380.1 KB · Views: 238
Other than regular BtS diplomacy and war, RFC and RFCE have a Python module that guides AI wars. If things are overall peaceful, then the AI will declare war and it will do so entirely based upon the War Maps. The AI can be completely in love with you, but still decide to attack you if you have cities on the wrong spot.

Those AI wars are somewhat artificial and often times the AI is not ready, i.e. it declares war, but doesn't attack. I have not figured out how to fix this yet.

I always wondered how the warmaps are implemented. Are they only used in AIWars.py ?
The GlobalContext also has an attribute WarMaps that gets initialized in RFCEBAlance.py preMapsNSizes, is this ever used?
Code:
def preMapsNSizes( self ):
   [..]
   gc.setWarsMap( i, y, x, rfcemaps.tWarsMaps[i][y][x] )

It would be cool to merge the warmaps into the mechanics Firaxis uses to set up wars.
I don't know how much work it is to make the warmaps visible in the dll, but if this could be achieved then i think it is relatively easy to use them. By looking over CvTeamAI.cpp two functions catched my eye:
  • CvTeamAI::AI_startWarVal (TeamTypes eTeam) - It is called on every team our team would go to war with, to decide which one is the most valuable target for us.
    Before this function gets called certain criterias are checked first. Some random number rolls if our team wants to go to war in general(iLimitedWarRand, iDogpileWarRand), our team power vs. target team power, our attitude for target team, etc..
  • CvTeamAI::AI_declareWarTradeVal - It is called when the human player asks an AI civ to declare war on another civ.

The difficulty would be to find adequat values for the warmaps in relation to the other factors. The benefit would be that the AI has time to prepare for a war and that it would not start a war that it thinks it can't win.


For the time now there are two other options you could try with the python code.
  • the function declareWar accepts a WarPlanType as argument. This is currently not used when wars are declared between Major players. But it is used for MinorWars. It is also not used for the Crusades.
    Code:
    AIWars.py
    def initWar(..)
       gc.getTeam(gc.getPlayer(iCiv).getTeam()).declareWar(iTargetCiv, True, [COLOR="Red"]-1[/COLOR]) ##False?
    Code:
    RFCUtil.py
    def minorWars(...)
       [...]
       teamMinor.declareWar(iActiveCiv, False, [COLOR="Red"]WarPlanTypes.WARPLAN_LIMITED[/COLOR])

  • As an alternativ the function AI_setWarPlan(int eTargetTeam, int eWarPlanType) could be used. This gives the AI time to prepare for a war, but it risks that the plan gets cancelled before the actual declaration of war is made.


I am still of the opinion that in RFCE almost all declarations of war happen due to set ups in the python code.
Was it intended to prefer the scripted and therefor more historical way over the more dynamic way through the means Firaxis already provided us?
 
Well, it's my first time posting on this forum (or I did it so long ago that I don't remember), and I must say that this mod is really awesome, it is consuming a lot of my spare time since I first played it.

What i'm bringing here can be just an unusual Bug, or something deeper, but when I saw it I got crazy.

As you guys were talking earlier on this topic about knowing how much money a civ has, I did exactly this to understand why a 13 thousand gold Byzantine could lose it's UHV 3 in 1453. I started by France, discovering it had 93 gold. I laughed. Just after that I was checking the Arabs, and you know what I discovered?

The Arabs had: 1 078 579 gold

This is in Beta 10. In 500 turns you need an average of 2157.158g /turn to get to this value. The Arabs collapsed in 978 and were reborn with Tarabulus and Dimashq in 1092. They had only the following cities:
Az Zarqa (lost in 936 to the Byzantine)
Rodos (gained in 1122 by revolt from independent, lost in 1389 from lack of stability)

Dimashq (lost in 978 by collapse, regained in 1092 by reborn)
Tarabulus (capital, gained in 1092 by reborn)
Marrakesh (conquered from barbarians in 1209)
Girba (founded in 1266)
Tunis (conquered from independents in 1422)


With five cities they could gather a million gold in 1453? That's really funny. I don't know if this was just an ocasional bug because of something that went wrong in my game, or something deeper that should be analysed.

As for now i'm going to load an autosave and crush the arabs to see if I win, I think I deserve it for my 13 thousand gold.

It is hard to know what happened here. One million gold should be impossible for the AI even with corporations.

Do you have a savegame, it if very hard to guess the problem without one.

You should also try to play on the latest Beta, depending on where the problem is, it may be impossible to find it now (things change from one beta to the next).
 
Embryo discovered a bug that had to do with the mercenaries in vanilla RFC. If RFC Europe took the same code then that could be the cause.

If the Mercenaries are bugged in RFC, then they are here. We have made almost no changes to the merc code. Do you know where the bug was or do you have a link to edead's explanations?
 
When does Burgundy get it's respawn exactly? And when it does, does it happen regardless of the occupying civ's stability?

It's 1208 in my habitual France run, and I've just bulldozed Nevers, Dijon, Lyon, and simply walked into Berne. I stopped my game for now because I don't want to go any further before I learn if it's safe or not to start resettling that area (the burgundian AI is bass-ackwards when it comes to city founding)

Oh, and Germany built Basel 1w, in Burgundy :mad: I don't want to raze it and fuxor my stability anymore than raze-a-thon 1200 did. That and germany will keep building it :rolleyes:

Burgundy respawns in 1335. It is a special respawn and it cannot be blocked regardless of your stability. At any other time, Burgundy will only respawn if you have low stability (or part of their territory is controlled by someone with low stability).
 
Back
Top Bottom