v1.61 bug - Reversed lists in trading with AI during war

lukes

Chieftain
Joined
Jun 12, 2006
Messages
15
Location
New Zealand
Hi,
through my personal gaming experience and reading posts in the forum, I've come to the conclusion that there might be some pointer swapping in the routines that builds Diplomacy/Trading screens.

I believe what I am seeing to be a bug, please correct me if I'm wrong.

My personal situation is the following: I have a game in which I am playing against some 10 AI characters (Noble, huge world map). One of them (Washington) declared war onto me (sneakingly using Isabella's state as a cushion-state, so she denied me open borders, but not to him. Very clever, and rather unfair :D). Anyhow, when I go and talk to him a popup window tells me that if you are at war with somebody you can give stuff, but not get stuff, except the peace treaty/cease fire. The counterintuitive thing is that not only I can see all (many, maybe?) of the opponent's resources/cities/tradable stuff, but also I can put those on the Trade table. As well I can offer nothing that is currently mine (as there is nothing on my side of the screen)

As I said, after thinking about what I read on this forum, I also realized that a number of times I had a pretty strong hunch that I should have seen way more stuff on my side of the trading screen (the screen right one) and that at least some more of the opponent's side (the screen left side) should be tradable (I have friendly and pleased opponents that won't trade anything (things are red), which seems odd)

On this basis I came to think that maybe when the program prepares the lists to build the UI some commands might have the character pointers swapped. (For example, in the Washington example above, in line with what the popup says, I would expect to be able to see all of my stuff/techs/resources/cities, and none of Washington's, or if they are displayed (which they shouldn't) at least they should be red).

I have been trying to figure a way to talk to the firaxis people about this, with no success, it seems that you guys maintain the bug lists, so here is my post. If this should be reported elsewhere, please tell.

I'd have no trouble in sending down any more information that might be useful.

Thank you
Lukes
 
If I understand you correctly, you are complaining about not being enabled to put things like ressources onto the table while you are in peace negotiations?

It is quite easy: During peace negotiations you can either demand or offer, yet you cannot trade.
Therefore, you may offer a tech, or gold or a city. The same things you can demand (if not redlined).
To put things on the table for both sides would constitute a trade, and this is not possible.
 
Not exactly: what I'm complaining about is that my stuff does not appear on my lists of tradable items at all!

Also, the other leader being upset at me (like -13) all his stuff should be red, instead of white as it is now (I can create a peace treaty with him offering two techs, peace and gold, or cities (offer which then he wouldn't accept, clearly)) but I can't put my stuff down, not because of the rule (which I understand) but because my stuff is not on the list (or better, Gold is there, and also gold per turn, is all the rest that is not...)

Also, all my cities are always red, all of them... Shouldn't it be my call whether I want to give them away or not? Why would I have a rule in which I can't give a couple of cities to Gandhi (or Isabella, for that matter) for free?


As I said, is this a bug or a rule? If it is a rule, how does this work precisely? Still looks to me as a bug...

L
 
Second thought, I'll put together a few cases and post them here, so we can shed a bit of light on this.

Also is this thing moddable at all? How would I go to find out if yes or not?

Thanks
Luca
 
Not exactly: what I'm complaining about is that my stuff does not appear on my lists of tradable items at all!

Can we get some specifics of what's missing, because over the course of the posts you seem to have listed everything that's guaranteed to be there.

Also, the other leader being upset at me (like -13) all his stuff should be red, instead of white as it is now (I can create a peace treaty with him offering two techs, peace and gold, or cities (offer which then he wouldn't accept, clearly)) but I can't put my stuff down, not because of the rule (which I understand) but because my stuff is not on the list (or better, Gold is there, and also gold per turn, is all the rest that is not...)

In peace negiotiations, nothing belonging to the AI is redded out. It's assumed that they should at least be willing to consider any offer, so you can put anything on the table, though they may well still reject it. I'm still a little baffled by what's missing from your list. You've made in clear that gold and cities are still present. You may not have any tech they don't, in which case nothing will be displayed there. I don't think you can even tie a resource trade to a peace deal, so that panel won't be there either.

Also, all my cities are always red, all of them... Shouldn't it be my call whether I want to give them away or not? Why would I have a rule in which I can't give a couple of cities to Gandhi (or Isabella, for that matter) for free?

You don't have the rule. They have the rule that they won't accept them. This is there to prevent exploits such as founding cities that cost more than they make, and giving them to the AI or giving them a city that you'll immediately take back by culture or warfare.

As I said, is this a bug or a rule? If it is a rule, how does this work precisely? Still looks to me as a bug...

Can't be certain without some specifics (with any bug report you MUST have screenshots or a save for us to be able to say much of use), but there is nothing in your above posts to suggest that the diplomacy screen is not working perfectly.
 
you should post a savefile to give people the chance to check with it. From the mere description it is hard to judge what really is happening there.
 
MrCynical and Commander Bello,
thank you very much for your help.

I will put together example files and post them in this thread during the week end (ehm... I am at work now...). I understand I can take screenshots using <Shift>-<PrintScreen>? Or should I use something different (maybe the game has a snapshot feature?)

Thanks again for now
Luca
 
Also,
is my impression correct that the Cy* classes do not have their source code available?

I was looking at the CvDiplomacy() source code and I see the constructor relies on an object of class CyDiplomacy(), for which I haven't been able to find sources...

Are those part of the SDK, or are they part of the game's core? Are there lists somewhere of all this?

Thanks
Luca
 
@lukes:
You can get the screenshot by simply pressing PRINT on your keyboard. With SHFT + PRINT you can give it a proper name from within the game. In both cases it will be saved as .jpg under the "screenshots" folder in "....my games\civ4"

About the definition of the Cy* classes, I don't get your question. Classes are a element of Python and are defined in the appropriate .py-files.
For more and better information, have a look here:http://modiki.apolyton.net/index.php?title=Guide_to_Python_in_CIV:_Classes_in_Python
 
@Commander Bello: thanks for the printscreen clarification :)

About the classes: line 23 of ...\Assets\Python\CvDiplomacy.py looks like this:

self.diploScreen = CyDiplomacy()

This runs the constructor of the class CyDiplomacy creating a new object whose pointer (refence? handle? go figure what the Python name for that is) goes into the diploScreen property of the current CvDiplomacy object.

Is the source code for the CyDiplomacy() class available to us somewhere? (You are slightly off in saying it has to be a .py file: it might very well be a .pyc file, or (I believe) it might come through the embedding as a built-in (i.e. the actual CyDiplomacy class corresponds to C++ code). In both cases you would not have access to the definition of the class, while still being able to intantiate objects from it)

Unofrtunately, while my programming is allright (it is my job, after all) I know almost nothign about Python, so some things I have to guess...

Thanks for your help
Luca
 
@TheGreatApple: thank you, that confirms what I thought (I hoped I could check the suspicious behaviour I was seeing by myself, but this makes it clear not to be the case) :)

So is it correct that everything in the opponent's side is red in this screen? (Picture 0001)

We are at peace, I can all the opponent's cities except his capital, and I see the Monarchy tech. Even if he is positive (+2) he is cautious, and he won't trade any of his possessions. Am I supposed to start giving away gifts? (I gave already one of my cows, of which btw I only have one, but the screen said two: I believe this came to be because it was a worked resource first, then I connected it with a road).

Also I would have thought the logic to be that he would mostly be inclined to swap border cities (Picture 0000): trading Machu Picthu for Boston might actually be a reasonable choice for him, yet all his cities are red... As per what I got from MrCynical's post, I should at least be able to propose the trade, and then have them refuse it.

I'm sorry I'm rather confused...

I'll get to a war time and then post some more pictures. If you think it is useful, I can post the savegame too.

Thanks for your help
Luca

PS: Why don't I see the attachments? Is this my browser or something I've done wrong? :confused:
 

Attachments

  • WashingtonDiplo0001.JPG
    WashingtonDiplo0001.JPG
    308.8 KB · Views: 93
  • WashingtonDiplo0000.JPG
    WashingtonDiplo0000.JPG
    183.1 KB · Views: 71
Yes, this is working correctly. "Cautious" really only translates as neutral/marginally in favor of, and that isn't enough for many civs to trade, especially not what is probably a monopoly tech.

Also I would have thought the logic to be that he would mostly be inclined to swap border cities (Picture 0000): trading Machu Picthu for Boston might actually be a reasonable choice for him, yet all his cities are red... As per what I got from MrCynical's post, I should at least be able to propose the trade, and then have them refuse it.

It is only possible to get cities off an AI through diplomacy when negotiating a peace treaty, which you aren't here, so everything is redded out. In wartime the cities would appear in white, and hence you could offer to trade for them. (Swapping cities is never going to be accepted, though they might accept a gift of one of your cities in peacetime).

There isn't a bug here, you just need to get the hang of how the diplomacy screen works.
 
Attachments are working fine for me.

Basically the AI is saying "I won't buy/sell this for any cost, so don't bother trying". It's a time-saving measure.

As for city swapping - it is very limited to prevent exploits. There are hundreds of exploits possible with city swapping, and to program the AI to cover all of them would be quite hard (you don't neccessarily know all of them).

If you mouse-over the red item it often tells you why they don't want to trade it. I think the tech is unavailable because the AI feels that you are getting too clever, and the civics because he's under better ones.
 
MrCynical said:
There isn't a bug here, you just need to get the hang of how the diplomacy screen works.

@MrCynical: Indeed, there are a lot of details of the game that I was not able to find in the paper manual nor in the Civilopedia... Where are the other standard sources for such informations? How do the guys who post articles in the other section of the forums gather all the knowledge? Is this all done through manymanymany games?

I'm sorry, I haven't played many games in my life, pretty much only Rairoad Tycoon, Civ, and Priates. I came back after various years for the reissues, and I feel a lot has changed since then... Still being a professional prgrammer, I'm used to a whole different way of finding informations about how to do what I'm doing, and I struggle a bit here... If any of you guys could spare five-ten lines about how do learn this stuff, it'd be great...

Also, about my way of playing civ: I'm a rather pacific and mild dude, I'm not that interested in busting other people nor winning the game at all costs, I like a lot to watch the simulation go while I make my reasonable moves... I try to keep everything balanced... I noticed that most strategies I found on this site are instead almost exploits of the few idiosyncracies of the system, which is a bit disappointing to me... They often sound like: if you want to get this result you can get there leveraging on the fact that the correspondance/tradeoffs between this feature and this other feature looks like it should be so, instead is such, so if you manage to exploit this difference a few times you can actually earn the difference. (Like earning on approximation errors of float to integer conversions...)

Anyhow, thanks for the help so far, I'll keep sendig more info while I find it
Luca
 
about the trade screen, obviously he just doesn't want to give away a city, nor a very powerful tech.
If you get somewhat higher in relations (which are complex in this game!), you could get to trade monarchy.
Cities are valued so high (even useless ones) that you just don't get the option.

About the cows, check again. I saw 2 on the screenshot ;)

About learning, well 2 options:
- play a lot
- read the forums : i advice reading through strategy articles and GoTM spoilers.
My biggest step was from trying to play GotM 2 and following Hendrickzoon's spoiler. Only could get 1/6 of his score, but it was my first prince win!
And now, having understood some global strategies (it is a strategy game)and some tricks (not that important) i win Prince without pain.
I can even choose my victory condition right from the start ;)

Now I struggle on monarch, with 2 wins / 1 loss in the 3 last games, but something like 4 or 5 lost before that.
I must try GotM 3 ;)
 
cabert said:
About the cows, check again. I saw 2 on the screenshot ;)

Yes I noticed there are cows under a city... I'm not sure how I managed to settle over cows without realizing it...

And yes I am trying to play some more and then go at rying to figure whether what I saw in that game was actually a bug or not, which I admit I am less and less inclined to believe now. I still think that the manual should be more detailed...

I have a question though: how are points representative of how the game is going? Is there a typical point ratio progression in this kind of game? I am currently in a situation in which when I start the game the AI has up to twice as many points as I do (say until around year 0) (huge map, epic speed, noble), and by that time I find it hard to settle and improve and grow at one time. I can barely manage to have 4-5 cities, about 2 to 5 in size by that time... And this sacrificing commerce a lot, which means I lag in research... Now I don't necessarily find this is a problem per se, but I noticed the AI (at least point-wise) performs much better... I'm confused...

Also, is it a rule that in Terra maps all civs are on one continent and the other only contains barbarians?

Anyhow, thanks for now
Luca
 
lukes said:
I have a question though: how are points representative of how the game is going? Is there a typical point ratio progression in this kind of game? I am currently in a situation in which when I start the game the AI has up to twice as many points as I do (say until around year 0) (huge map, epic speed, noble), and by that time I find it hard to settle and improve and grow at one time. I can barely manage to have 4-5 cities, about 2 to 5 in size by that time... And this sacrificing commerce a lot, which means I lag in research... Now I don't necessarily find this is a problem per se, but I noticed the AI (at least point-wise) performs much better... I'm confused...
Obviously you don't cottage enough (not enough commerce=not enough research) and don't expand fast enough.
you can still win, but you need to focus on war.

Also, is it a rule that in Terra maps all civs are on one continent and the other only contains barbarians?
yes!
It's the script of Terra.
 
Back
Top Bottom