I have a question about unavailable options in random events.

Wheem

Chieftain
Joined
Sep 28, 2007
Messages
34
Location
Alabama, USA
I've noticed that there are a number of random events I get in the game that have grayed out options. Sometimes, there's a reason given for this in the mouse-over, and that makes perfect sense (ie, the "Heartrending Ballad" has an option that requires you to have the Radio technology).

However, there are other events that have unavailable options for reasons that I can't discern. For instance:
I just had an event pop up in my current game, stating "A Babylonian spy is operating on a high level in our government! What should we do?" There are three available options;
1) Release the spy after questioning (gain +2 relations and some espionage points vs Babylon)
2) Bribe the spy (costs gold, get fewer espionage points vs Babylon than option 1, gain Great Spy).
3) Consider it an act of war (gain happiness in some cities, some free unit upkeep, gain 9 free tanks, and enter a state of war). However, this third option has the button grayed out, and I can't choose it.

Babylon is a colonial vassal of Gilgamesh, and I was at war with both nations in the not-so-distant past; though the 10 turn peace treaty has expired multiple turns ago. (As a somewhat interesting side note, Babylon was actually created as a colony in the original homeland of Gilgamesh, with Uruk as their capital).

Is there some reason that I can't choose the third option? It sounds as though it counts as them declaring war on me. Since they're still a colonial vassal, is that impossible for them to do, thus rendering the option unavailable?
 
I would not think so, seeing as you can declare war on nations that are vassals, would be strange if you could not trigger a war with a random event that way. Maybe you needed to be police state or some other form of Gov to declare war, but the programmers forgot to show that option?

Sry, no idea, but I would not assume them being vassals being the problem...
 
The third option has a line in the mouse-over that says "Take the Babylonian actions as a war declaration against you." To me, it sounds as though they might be the ones that declare war if I were able to choose the option (for purposes of relations, perhaps?). If they're a colonial vassal, can they declare war on someone?

I figure it's either that, or some government/civic requirement not listed in the mouse-over, like you mention.

There's a website with a list of events and their requirements that I have saved to my favorites, but I couldn't find this particular event there. The link is: http://www.gamerstemple.com/games11/001384/001384g103.asp
I'm not sure if the event is newer than that list, or what, but I couldn't find it when I word-searched the list(s).
 
Did Babylon have less than 4 cities?

Edit: Not Bablyon, but did you have less than 4 cities?
Edit2: No, you probably had more than 36 cities... IDK. This option uses Python canDoSpyDiscovered3(argsList)
 
Did Babylon have less than 4 cities?

Edit: Not Bablyon, but did you have less than 4 cities?
We both have more than 4 cities.

If its a war declaration against you, Vassals can't declare war...
I quoted the wording exactly. It sounds to me like it counts as them declaring war, but I can't say whether or not that's actually how it works. I'm not even sure which file(s) contain the events.
 
CIV4EventInfos.xml = Events
CIV4EventTriggerInfos.xml = Triggers
CvRandomEventInterface.py = Python
 
If its a war declaration against you, Vassals can't declare war...

I can see where you are coming from, vassals not being able to pull the Master into a war due to a random event, BUT....

this doesnt make sence then. If that action of espionage, even though it was a random event, should allow the player to declare war on the AI and the AI should still get the relation penalty...imho
 
If I recall, events are an annoyance to sift thru code-wise, they're spread out over 1-3 XML files; at least one or two python files, AND have code that runs thru the C++ DLL files. Last time I looked at them was trying to figure out how the unGodly Barb events were triggered. The triggering odds/chances is kinda obfuscated too.

[EDIT] Guess Dan already got it. Though I do believe theres DLL code too!

Of course, I hate C++, reading it makes me want to claw my eyes out and run into the comforting clean arms of C :D

I do believe C++ stands for C plus-more-unreadablecrap plus-structures-that-any-sane-coder-doesn'tNeed :-)
 
oh yeah, lots of code in CvPlayer.cpp...
PythonCanDo only seems to check if player has a capital and more than 3 cities.
 
Back
Top Bottom