Revolutions

Great work, Gedemon!
I have idea of revolutions mod too but have no time for it.
So I wish you'll have enough time to carry out this great project.
I'm about to try you mod.

Few questions on mechanics:
If i have 10 happiness, separatist relation wont spoil?
If i have a road, no separatist culture will be produced?
How is it determined what portion of my culture is turned into a separatist culture?

thanks
Yes, 10 happiness is the threshold for separatist relation.
A road allows city to be further away from your capital without producing separatist.
The base distance depend of the Era you're in.
Distance and the type of route (none, land, road, coastal, ocean) determine the amount of separatist converted from your culture. I may add river to the equation.

i also have some another policy effects suggestions:
Commerce - small positive RP change for all groups in cities connected to the trade network.

and mechanic suggestions:
unrest can lower city's hit points so it would much easier for rebels (or possibly itnervents) to take it.

also, we could combine your mod with my emigration 4 mod thats in testing phase now. in the new version citizens migrate to more happy and wealthy counries even if their country is happy too.

emigrants could bring their culture to the new place, watering down other groups. say we have 2 cultures in source city, 24% and 76% - this percentage can be used to determine the culture of emigrant. then, move this emigrant citizen to a new place.
source city get new culture ratio. lets say the emigrant's culture was of the major group (76%) and there were 9 citizens in the city.
new percentage for the major group will be (9*0.76-1)/8=73%,
for the minor group = 100 - 73 = 27%.
if there were more than 2 groups, say 76%, 10% and 14%,
new values for the latter two will be 27 / 24 * 10 = 11.25 and 27 / 24 * 14 = 15.75
for the destination city calculations will be pretty the same but reversed.
if you use absolute values for culture representation, things are even easier.
1. determine what culture group does an emigrant belong to
2. substract x = Max(1/citySize*totalCityCulture, maxCulturePerEmigrant) from that culture value in the source city, and add this x value to a destination city.
lets say there is 48 cultureA and 152 cultureB in the source city (24:76%), population size is 9. determine culture affinity of the emigrant: 24% its cultureA, 76% its cultureB. let it be cultureB.
determine x = Max(1/9*(48+152), 100) = 22.
Substract it from home cultureB, its value now is 130, and presentation is 130/(48+130) = 73%
Then add cultureB CG with 22 culture points to a destination city.
Commerce, good idea, I see something to do with Foreign Trade Routes.

Lowering city HP during revolt is planned yes, but not implemented.

And of course you're Emigration mod is something that must be part of the big picture somehow, I think I've mentioned it here or in the cultural diffusion thread, can't remember...

I a suppose adding a lua event, something like LuaEvents.EmigrationFromTo(fromCity, toCity) in your code will allow Cultural Diffusion to be aware of emigration using the event and do the calculations.

For the calculation, Cultural Diffusion have absolute value (and use percent in the UI), but I will need to mix this with percent, has a new city can have a very low absolute value compared to an ancient city.

I'll be happy to work with you on this :D
 
Yes, 10 happiness is the threshold for separatist relation.
A road allows city to be further away from your capital without producing separatist.
The base distance depend of the Era you're in.
Distance and the type of route (none, land, road, coastal, ocean) determine the amount of separatist converted from your culture. I may add river to the equation.
it seems you determine distance by some path-finding algorithm, why not to score path cost value instead of distance and route type? say there's 2 road tiles, 1 plains and 1 hill. so, path cost is 2*1/2(or 1/3 with machinery)+1+2=4. water path cost can be denermined by 1 divided by embarked unit speed * distance. also, its cost can also be divided by some value (e.g. 4) as water transport is the cheepest one. in roman times, transportation from egypt by sea was equal in price to transportation over ~200 km by land, that is many many times cheaper.

If route crosses sea or ocean, revolt probability can be risen instead of fraction of separatists, as those georgaphical obstacles make dealing with uprising harder. During rebellion, in addition to spawning new units, existing units could also switch their ownership, or disappear - i think it would be interesting.

Why to make eras factor? routes become cheaper with progression of techs and ifrastructure already..

I a suppose adding a lua event, something like LuaEvents.EmigrationFromTo(fromCity, toCity) in your code will allow Cultural Diffusion to be aware of emigration using the event and do the calculations.
ok, i'll add an event to ver 4.
could you tell me where to find an example of implementing a lua event?
 
it seems you determine distance by some path-finding algorithm, why not to score path cost value instead of distance and route type? say there's 2 road tiles, 1 plains and 1 hill. so, path cost is 2*1/2(or 1/3 with machinery)+1+2=4. water path cost can be denermined by 1 divided by embarked unit speed * distance. also, its cost can also be divided by some value (e.g. 4) as water transport is the cheepest one. in roman times, transportation from egypt by sea was equal in price to transportation over ~200 km by land, that is many many times cheaper.
I think time cost is more appropriate than gold cost for path in this case, that's why the sea routes have the biggest penalty here.

If route crosses sea or ocean, revolt probability can be risen instead of fraction of separatists, as those georgaphical obstacles make dealing with uprising harder. During rebellion, in addition to spawning new units, existing units could also switch their ownership, or disappear - i think it would be interesting.
but fraction of separatist (and other CG influence) is already a factor of distance, and the ratio of separatist (or other CG) is the factor for revolt probability combined with CG happiness.

I plan to add unit switching side when attacking separatist units, depending of current Policy.

Why to make eras factor? routes become cheaper with progression of techs and ifrastructure already..
To reflect the fastest travel time on road or sea from era.

ok, i'll add an event to ver 4.
could you tell me where to find an example of implementing a lua event?
I've not tried that yet, but from CiVUP/VEM or NIGHTS I would say that just adding one line after the check for destination city in the function MovePopulation() would be enough :

Code:
LuaEvents.EmigrationFromTo(fromCity, toCity)

I'm deep in R.E.D. WWII coding right now, but I'll try it later in your V.3 if you can't.
 
I think time cost is more appropriate than gold cost for path in this case, that's why the sea routes have the biggest penalty here.
sea routes were fastest on same distances as well.. though its not reflected in the game.
you can get path cost alone without any additional coefficients. for sea it would be 1 at start, then 0.75 with astronomy and 1/2 with steam power. min cost is 1/3 with merchant navy and sun never sets.

but fraction of separatist (and other CG influence) is already a factor of distance.
i suggested to replace plot distance + route type + era factors by only move points distance factor, maybe with addition of fixed penalties for sea/ocean crossing. it will be more clear (and easy to remember) for a player imo, encapsulating all the three original components at the same time.

Code:
LuaEvents.EmigrationFromTo(fromCity, toCity)
ok it wont be hard, nevermind that
 
One of the best mod idea in Civ5 I've seen so far. I'll definitely try it! Before I play it, Gedemon, could you tell me that whether conquered city states will get independence once they win a rebelling war?

xxhe
 
Thank you for pulling this mod together. I just played one of the most enjoyable games I have in a long time.

If I can make one suggestion, instead of revolting to a city state, have the rebels be one of the culturally similar civilizations. So for example, if England has a revolt, they spawn America, or another European Civ that is not in play. If all culturally similar civs are in play, then city state civs would spawn.

Anyway, nice work and again thank you. I look forward to many an hour spent with this mod -- something I've been wanting since Civ5 came out!

~S
 
Great idea. I hope that they will allow mods in MP. I want to play MP game with your mod.
Maybe after expansion we can start MPmod project to introduce all your great ideas to MP.
If they don't allow mods in MP we can hack core game files.
 
i've done the emigration 4
http://forums.civfanatics.com/showpost.php?p=11516686&postcount=207

you can subscribe to emigration event by calling EmigrationCompleted.Add(f) where f is a function with (fromCity, toCity) args.
Thank you, I'll try it.

Great idea. I hope that they will allow mods in MP. I want to play MP game with your mod.
Maybe after expansion we can start MPmod project to introduce all your great ideas to MP.
If they don't allow mods in MP we can hack core game files.
Yes, I've wanted to try to create a fake DLC since the beginning, but never found the time for that...
Have you tried to add a complete new DLC content folder, or can we only "hook" on an existing DLC like you've done with Mongol ?

There's a v3 on the steam workshop for those trying the beta, I can't remember if there's a lot of difference since v.2, I should really start to maintain a change log for this mod :D

Working on alpha v.4 ATM, will add a specific rebel unit.
 
Thank you, I'll try it.


Yes, I've wanted to try to create a fake DLC since the beginning, but never found the time for that...
Have you tried to add a complete new DLC content folder, or can we only "hook" on an existing DLC like you've done with Mongol ?

There's a v3 on the steam workshop for those trying the beta, I can't remember if there's a lot of difference since v.2, I should really start to maintain a change log for this mod :D

Working on alpha v.4 ATM, will add a specific rebel unit.

I have try to find a way to and fake DLC but it is not easy. I have tried to add row in DLC table but it didn't work. Every DLC has own unique ID which is checked by STEAM. I think that it is waste of time now because core file hacking is very easy, additionally I believe that firaxis is preparing to enable mods in MP. I'm waiting for GAK and patch notes to decide what to do. I have also an idea how to add pitboss functionality but I hope that firaxis will do it himself.
 
Uploaded a new version on the workshop. Just a very small update to make it compatible with Golds and Kings.
 
Uploaded a new version on the workshop. Just a very small update to make it compatible with Golds and Kings.

Could you put it on Civfanatics, because after putting on Gods and Kings and clicking update, I haven't been able to see or install your mod since.
 
The lower case first letters of all words that appear on the top bar, like "stable" really bug me. Doesn't look good to me. I went into the lua file and changed them myself, for example "Stable".
 
@Gedemon

Could you upload the latest mod files on civfanatics? Mac can not install mods from the workshop :( and I've already upgraded to G&K

Thanks ;)
 
Yes I will do that for most of my mods, not right now (some updates to do), sorry, but during next week I hope.
 
Yes I will do that for most of my mods, not right now (some updates to do), sorry, but during next week I hope.

Hello, i'm new here, but I know you've done some great mods for civ5, i've just had an idea about one and like to chat about it, if you can. I tried to find a privat messeges here but that wasn't succesfull. So write me back if it is possible.
Thanx
 
You need to reach a certain number of posts on the forum before you can send PM I think.

If it's related to Revolution/Culture Diffusion, you can post here, I prefer to have everything in one place anyway.

If it's a totally new project, I'm sadly completely out of free times, I've not even finished validating all my current mods to G&K yet.
 
I've been dabbling in an independence idea, could send you what I've got thus far?

Cultural Diffusion was something I'd tried to tap into, it being particularly important for wartime opinion especially, but not knowledgeable enough with Lua to pick out the right info (had focused on ethnic breakdown of cities). Started on war weariness, but couldn't manage to apply the same save/load principles to get it to work.
 
Top Bottom