I began a game just after updating to r685 and my thoughts were based on this rev. I noticed that sometimes, i can be high in scores but wayyyyyyyyy below in terms of techs (10 or 15 techs earlier). Maybe, i'm playing onto too high difficulties for my skills (monarch) but i suspect that the cheat in research the ai does is nearly instantaneously shared between them, so they have a too powerful advantage.
No, then it's not tech diffusion. It's difficulty level. I've scaled iAIResearchPercent a long time ago and it wasn't balanced at all, so AI is researching techs way too fast with difficulty higher than Prince. I'll need to scale it down. Moreover, that score near the minimap doesn't have any meaning that you can really trust. You can be far behind but that score is a sum of techs+culture+military power+population (IIRC), so probably while being behind in techs you had other advantages over AI.
For example, a tech that might need 25 turns to be completed will suddently need 1 or 2 turns. This is way too high. That mean you can catch up another civ which have up to 25x more gold into research. Isn't it a bit overpowered ?
No, it's not and you won't catch up that civ because once you get that tech, you won't do anymore 25x, you will make for example 3x; and if you get closer you will make 1x. Tech diffusion is scaled, so yes, it can help you get some techs that are already known by other civs; but if you select another tech that's not owned by other civs, you'll have to research it all by yourself. So you will always linger behind, no chance of overtaking AI. Say I cut that 25x to 6x; you will fall back even more because being ahead of you, AI will increase its advantage by building wonders or getting Great People. And for AI it's even worse, because if YOU are in the lead, AI has a far harder time catching up. That's why AI help is stronger.
If you mean that human have 1/3 of this capacity, that mean the AI can catch up another civ which have 75x the research income ?
Yes, but it will get such a huge help only for techs far behind, i.e. if AI could need 75 turns to discover Archery and you have Matchlock, it will discover Archery instantly. Doesn't look too strong an advantage to me. If AI is going to research Gunpowder while you research Matchlock, help will be much smaller (1/10 IIRC, or even less). It all depends on how far behind one is in comparison to the other player.
If you don't do it like this, some civs will fall behind very quickly; this in turns leads to many problems like smaller civs falling instantly to other larger civs and AI in general falling behind at an increased rate.
If you are that far behind that you're getting such a huge help for more than 1-2 turns, then probably you're playing at a level too hard for you. Or you were spawned in a very bad and isolated location, without access to other civs until late (Medieval/Renaissance era).
Looking further in the real world, USA have drones, satellites, and the Congo barely manage to launch a rocket, even if there is also a natural tech diffusion in the real world ! Differences are unavoidables and part of this game.
Exactly, they can launch rockets! They don't use muskets anymore. Problem before those changes with tech diffusion that I've introduced some months ago was exactly that AI was lagging behind of 2-3 eras! While I think there should be no more than 1 era difference between civs from Industrial onwards. And that's exactly what's happening now.
For balancing reason, tech diffusion should help everyone to stay some tech late. It might be nice to put a high diffusion if you are 15 techs earlier, a medium for 10 tech, low for 5 techs, and very low otherwise.
However, i might not be a reference for balancing problems as i'm not really skilled.
Number of techs you're behind can be tweaked via xml in Revolution.ini inside UserSettings folder
Code:
[TechDiffusion]
# Enables Debugging information and logging for Tech Diffusion functions
# Default: False
DebugMode = False
# Minimum number of techs a team must be behind before recieving Tech Diffusion bonuses
# Default: 2
MinTechsBehind = 2
# Number of techs a team must be behind before recieving full Tech Diffusion bonuses
# Default: 4
FullEffectTechsBehind = 4
# Offset number of techs behind used to give heavy Tech Diffusion bonuses to very behind civs
# Default: 6
BonusTechsBehind = 6
# Modifier used in Tech Diffusion calculations
# Default: 1.0
DiffusionMod = 1.0
Just be warned that code doesn't understand exactly how many techs you're behind or ahead. That's because you could have left behind a bunch of techs that another civilization possesses but that other civ might have a tech more advanced that you. IIRC tech diffusion is based more on the total number of beakers discovered than on actual number of techs.