Open devolution79 opened 5 years ago
I agree. In my experience, by mid/late game, natives either offer small and annoying trades/gifts that are not worth the bother of transporting and utilizing since they're so irregular, or tend to dump on you huge amount of goods at once (I've seen offers of over 600 units on Marathon) that they create logistical issue.
I'd prefer the gifts and trades diminish and disappear by mid/late game and were replaced by some kind of trade post system that would allow more reliable regular trade with natives.
I think they should offer big stacks , not small quantities per time. And they should be like a trade offer, like we have with them... where we could haggle for prices...
I can't put a finger on it, but I think the natives start trading stuff when they are nearly overflowing their own stocks... So the algorithm could be changed to generate big stacks at a time, instead of small amounts.
And I totally agree that we should have a kind of agreement, where the natives agree to sell a specific amount of goods at a time... And then they would deliver it to us at regular intervals... These agreements would generate a diplomatic bonus with them... And would avoid the random flow to an extent...
I basically implemented this feature "Natives coming to your Villages to sell tiny amounts of Goods" just for adding a bit of flavour / atmosphere. It was never meant to replace selling big amouts of Goods by Wagon Trains or Ships to them.
The logic when they choose to send a Unit to you to trade is more or less dependend on some random and on Attitude.
I never thought about scaling it thoug in any way to Turns passed. :dunno: If there is a good suggestion, let me know. I could improve it.
Dealing with natives is kind of like a culture clash. The Europeans could buy expensive stuff for nearly nothing, but at the same time the natives viewing worthless stuff as important could very well be offended if the Europeans refused what the Europeans viewed as worthless gifts.
Being diplomatic and gaining a good relationship with the natives shouldn't come free. Filling up colonies with such gifts or trade results is something, which happens if you want a good relationship.
Also the annoying part of it could be fixed by implementing #144 as it would avoid the issue that 6 tobacco takes up an entire cargo slot and leave 70 cotton behind.
For now I will not work on it.
I currently just don't have a good idea what to do with it that would create a result I am happy with. (I don't want it to become too rare in endgame and I don't want it to become overpowered in endgame either.)
It is basically meant to be a "flavour / atmosphere" event mainly.
Indians should stop offering worthless trades late in the game (like 6 units of tobacco) If you refuse, there's a chance to anger the natives. Additionally, this features causes a slight lag and it's often annoying to have unnecessary popups at the start of the turn when there so much other stuff going on that is far more important.
From a recent forum post:
"The new feature that makes natives come to your colonies to offer trades can probably be good, but right now it is ruined by the severe relations penalty you suffer every time you decline an offer. Their offers generally aren't that good, but I find myself accepting everything without even looking at it, simply because the small sum of money isn't worth angering them like this. I think I would enjoy this feature much more if it felt more like a real choice, whether to accept or decline. Also, it seems unrealistic that natives would still be angry at me in 1700 because I didn't buy 3 tobacco leaves from them in 1500. I have tried to remove this penalty myself, but I couldn't find out how it worked. I thought I found it in the file CvPlayer.cpp, but removing the line specifying this effect didn't work."
REFERENCES
See:
CvPlayerAI::AI_nativeTrade(CvUnit* pUnit) where the yield is selected. DIPLOEVENT_NATIVE_TRADE where the choice made by the player is handled CvUnitAI::AI_defensiveBraveMove() .. if (AI_getUnitAIState() == UNITAI_STATE_BEARING_GIFTS).. where the native unit chooses the city to target for the trade. CvUnitAI::AI_defensiveBraveMove () .. that sets AI_setUnitAIState(UNITAI_STATE_BEARING_TRADE) This controls if a brave will be carrying goods for trade.
The latter is the real problem since in the late game due to the number of braves, it’s possible for this to happen too frequently. We could scale it with the game turn. The same could be done for gifts.