Diplomacy

Thalassicus

Bytes and Nibblers
Joined
Nov 9, 2005
Messages
11,057
Location
Texas
I've created a new menu at the top of the website, and all details of the mod components have been consolidated into that one place for easy reference.

Website: civmodding.wordpress.com

This thread is now just for feedback on the Diplomacy component.

================================

Here's my thoughts on city-states. I intend to do this if/when we have access to the c++ part of the code.
  • CS quests are not interesting.
  • Distance should be a strategic factor (as done in Gazebo's CSD mod).
Let's say we have a diplomacy unit, the Agent. It's basically like a trainable Great Merchant that can only perform the citystate trade mission. When we activate the Agent in citystate territory, a Civ4-style event box pops up which a choice of performing a diplomacy or espionage quest:

  • The diplomatic quest requires little investment, gives influence, and major-civ AIs are more likely to have a "friendly" attitude to the player.
  • Picking a covert mission gives much more influence, requires a significant investment from the player (such as gold or gifted units), and increases major-civ "deceptive" likelihood.
The quests we receive are randomized, but influenced by the personality of the citystate. The missions could also involve performing secondary actions like building a road (diplomatic) or disrupting the wedding plans of a rival citystate's royal family (covert).

The Agent itself is a non-combat unit stackable with military, and has an experience bar. Completing missions gives experience to pick promotions like sight range and movement speed. Some buildings could also give Agents experience when trained.
 
Where is the file?
 
Is there any way to limit the units that a CS gives you? I hate it when it gives me Unique Units. I just had a war against Russia, and I charged them with Cossacks given to me by Sidon.
Also, what about the cultured CS? Are they completely ok, or did you just not touch them yet? I consider their bonus extremely situational, relative to your own culture rate and your empire size. It could be great for a small empire to get some culture with their cheap policies, but it is pretty worthless for anyone with more than 8 cities.
 
Hey Thalassicus, I love the work you've been doing here-kudos.

In regards to City-States, I was wondering if the following would be possible:

1) Have culture from Cultural CS's only go to cities with a Monument or Temple in them. Have Food from Maritime CS's only go to Cities with Granaries or Water Wheels in them.

2) Have friendly Militaristic CS's only give you bonus XP, not units. Allying with a Militaristic CS will grant you greater XP bonuses (if you have a barracks or an Armory) & the free unit every X turns.

Obviously the idea with (2) is that if you build a unit in a city with a barracks, then you'll get the free promotion plus be 1 or 2 XP closer to your next promotion. Befriending several militaristic CS's might even get you *two* free promotions when you build a unit ;). I'm guessing, though, that this might be an SDK only thing.

Also on the topic of Balance, it would be nice to see a far more mission-based approach to friendship. At the moment, the whole thing seems far too focused on Gold. I'm not opposed to using gold to keep CS's friendly, I just think the missions should be more important!

Aussie.
 
@The_Boz
I left Cultural alone as the general consensus seems to be that maritime is too powerful in the default game, and militaristic not enough. Cultural is still very valuable in early game when you have few cities, and is nearly required for most cultural win strategies.

I haven't yet looked into the Militaristic unit-giving mechanism. The tradeoff of Militaristic being able to give you unique units is it could also give you a worthless Scout in the modern age. It's really a roll of the dice, and I've been considering looking at it to see if it could avoid "outlier" units such as your most and least powerful, and only selection options from the middle range, reducing the (potentially game-breaking) randomness. It's like ancient ruins in that respect. I'm not certain yet if this unit-giving behavior is in the lua or core c++ however, so I'm leaving that until later and focusing on XML edits for now.

@Aussie_Lurker
Thanks, glad you like it!

The ideas you have sound very interesting, and would be fun to play around with and see how it changes things. Like you said though, I'm uncertain yet which layer of the game the unit-giving is located in, so it's on my 'todo' list. I'll definitely look into that when the opportunity arises.

I agree that the missions seem rather underwhelming right now. That's actually a fantastic idea, I'm very interested in looking into how the missions work now... will be a top priority for me. It'd be nice to have more variety, as the vast majority of missions seem to be 'kill barbarians' or 'kill another city-state', the latter of which can actually be detrimental to you in the long run if you're not already on a CS-murdering rampage.
 
Thanks, now I found the mod download site.

Could you please post the source code?
 
Certainly! You can also see it by opening the Balance - City States.xml file within the mod folder, where it might be a little easier to read (with syntax highlighting).

PHP:
<?xml version="1.0" encoding="utf-8"?>
<!-- Created by ModBuddy on 9/28/2010 11:11:02 PM -->
<GameData>
	<Defines>
		<Update>
			<Where Name="FRIENDS_CAPITAL_FOOD_BONUS_AMOUNT_PRE_RENAISSANCE"/>
			<Set Value="0"/>
		</Update>
		<Update>
			<Where Name="FRIENDS_CAPITAL_FOOD_BONUS_AMOUNT_POST_RENAISSANCE"/>
			<Set Value="0"/>
		</Update>
		<Update>
			<Where Name="ALLIES_CAPITAL_FOOD_BONUS_AMOUNT"/>
			<Set Value="0"/>
		</Update>
		<Update>
			<Where Name="FRIENDS_BASE_TURNS_UNIT_SPAWN"/>
			<Set Value="14"/>
		</Update>
		<Update>
			<Where Name="FRIENDS_RAND_TURNS_UNIT_SPAWN"/>
			<Set Value="2"/>
		</Update>
	</Defines>
</GameData>
 
What I have noticed with the city state missions is:

They eventually ask you to destroy another city state, usually out of your reach or allied with someone already. In last games I checked the city states and all but one had this quest, makes the rest of the game regarding city states pretty boring if they can't ever again give you another mission.

few options here I think:
- make them ask for less "destroy another CS"
- make it able to change mission "city state X no longer wants city state Y to be destroyed"
- can have more than 1 mission available.
- time limit for missions depending on mission and chosen time speed
 
I've also thought about introducing a time limit. All the other missions expire in a relatively short span since they're minor and get fulfilled. This is the only one that can stick around for the whole game -- unless you actually want to complete it, in which case you'll eventually be getting double-triple influence loss rates and hurt yourself in the end.

One thing that surprised me was the "friendly" and "neutral" city states can ask for bloodthirsty genocide. That in particular seemed sort of odd. I can understand it for irrational or hostile... but the description of a neutral city state specifically says they mind their own business.
 
Any way to have the maritime bonus only apply on a per-city basis?

For instance, the first maritime city you find provides food to your capital and your next-biggest city. The second maritime city provides food to your third- and fourth-biggest cities. And so on.

Or is that hard-coded?
 
I have an idea for the militaristic CS, what about they pay for some of your units upkeep, let's say 10% on standart, and the value is updated on different dificulties/map sizes. This way by conquering an enemy allied CS you can affect the number of units it has.
 
@Pragmatic
I think that would take c++ edits, it's not something available in the xml and doesn't seem like the realm of lua changes (lua mods seem mostly focused on the UI).

@ShodanPT
Same as above, it does sound interesting and I'll keep it in mind for when the C++ part of the sdk is released. It wouldn't be balancing so much as simply a straightforward mod to make city-states more interesting.
 
I think that maybe maritime city states should have their food bonus for non-capitals reduced as well; maybe by 1/3 or even 1/2 (like capitals; making the maritime food bonus half as much in every city).

Even with this mod, maritime city states are still very powerful.

by the way: where are the XML files for city state bonuses? I can't seem to find them. Thanks in advance
 
I found a bunch of stuff in GlobalDefines.xml oddly enough (root assets\xml\ folder). Seems like a strange place to put it honestly.

There's unfortunately no way to reduce the food bonuses further with the xml tools we have available, without significantly changing the Maritime mechanic. The food bonuses are already at 1, so reducing it further would make it 0:

+1:food: at Friendly.
+1:food: at Allied.
+1:food: at Renaissance era.

This pattern of 3 buffs (friendly, allied, late game) is similar to what the other city-states follow. I tried eliminating one or another of these 3 bonuses for Maritime, but it felt like too much of the change.

Due to this I've been approaching the problem from a different perspective. For example, I've been trying out ways to make granaries and farms slightly better in the Terrain Improvements mod, hitting two birds with one stone by reducing both Maritime and improvement-spam concerns. I've also been adjusting a few social policies in the Policies mod to make alternatives to Patronage more interesting. I think it's a combination of these that lead to Maritime being so powerful: weak alternatives to several improvements, buildings, policies, and city states.
 
I found a bunch of stuff in GlobalDefines.xml oddly enough (root assets\xml\ folder). Seems like a strange place to put it honestly.

There's unfortunately no way to reduce the food bonuses further with the xml tools we have available, without significantly changing the Maritime mechanic. The food bonuses are already at 1, so reducing it further would make it 0:

+1:food: at Friendly.
+1:food: at Allied.
+1:food: at Renaissance era.

This pattern of 3 buffs (friendly, allied, late game) is similar to what the other city-states follow. I tried eliminating one or another of these bonuses for Maritime, but it felt like too much of the change. Instead, I've been approaching it from a different perspective by buffing the non-Patronage policy trees in the Policies mod.
Is it possible to mod maritime city states so that they don't give you their luxury resource? This would probably do too much to weaken maritime states, but I was just wondering. Thanks in advance; and thank you for all of your balance mods!
 
Is it possible to mod maritime city states so that they don't give you their luxury resource? This would probably do too much to weaken maritime states, but I was just wondering. Thanks in advance; and thank you for all of your balance mods!
If you did that, it's possible that some resources may only be inside those maritime City States, and the only way to get them would be war. Does the AI really need another reason to wipe out the City States?
 
Do you know where can I edit the effectiveness of gold been gifted to city states? Is it any of these? Thanks:

Code:
        <Row Name="MINOR_CIV_GOLD_GIFT_GAME_MULTIPLIER">
            <Value>2</Value>
        </Row>
        <Row Name="MINOR_CIV_GOLD_GIFT_GAME_DIVISOR">
            <Value>3</Value>
        </Row>
        <Row Name="MINOR_CIV_GOLD_GIFT_VISIBLE_DIVISOR">
            <Value>5</Value>
        </Row>
 
Top Bottom