A civ supermod based on Colonization economics

http://en.wikipedia.org/wiki/Patrician_3One thing that struck me as I read through this thread was that several of you should check out Patrician 3.

It has a very complex economy that uses buildings and citizens to generate goods but the citizens that work for you also buy your goods. It has shipping between ports and as you empire grows your own decisions determine if the world ecomony grows like crazy or spirals out of control.
 
You know, back when Colonization was announced, and before I found out it was a stand alone game and not an expansion. I dreamed that it would add to the "core game"

1) Add a more advanced Economic Model (as mentioned in this thread), as the "core' adjustment (like Espionage was in BTS)
2) New LH Trait (something trade related)
3) Add a few more civs that are were big "colonizers" (Phoenicia) or the product of a colony (Brazil, Mexico)
4) New Trade based units/buildings/wonders. Caravans, Inns, Silk Road
5) A Mod/Scenario that is what the Colonization ended up being.

Anyway, To make it work, the basic function of Colonzation would have to be mimiced.
By this, I mean eliminate resources and the yield, in the sense of what they are in civ, and just change the "Yields" to be the raw materials. Things like Grain ( I dont think there is a need to be too specific), Vegetables, Wood, Iron, Copper, Gold, Silver, Gems, and maybe a few others, which then an be processed by the buildings, creating the "goods", which are then convered into the +:health: and +:) boosts.

For example: You have a Grassland, it produces say 1 grain. have a worker build a specific farm i.e.
a) Grain Farm
or
b) Vegetable Farm

Then inside the city, the grain can be used to
a) Food --> City Grows size
b) Brewery ---> Produce Beer --> Beer sold/traded to other countries for Commerce/Goods --> Commerce is then "procesed" into Gold/Research/Culture/Espionage and the Goods produce more Health/Happiness.
Likewise Vegetables
a) Food (more) This would be the "specialized" thing that just was used to make the cities grow.
 
I personally don't think that Colonization's economic system is transferrable to Civ4. There are several reasons for this...

1) The luxuries - In Colonization, you sell luxury commodities off to Europe where they simply cease to exist. It's a commodity to be traded elsewhere rather than a product to be consumed by your citizens. In Civilization, those luxuries would have to actually do something. Currently, it's easy... if you have a source of Incense, you get +1 Happiness. But if you have stockpiles of Incense, how would you determine happiness based on that?

2) Diplomacy - you can't trade quantified amounts of Resources. It sucks, and in spite of all the cool new diplomacy stuff released in the last patch, they kept that little window that pops up to enter (a gold) amount hard-coded. Why? No clue... but since a later patch seems unlikely, we probably won't ever see that accessible to modders.

3) The overload factor - There's a lot more facets to Civ4 than Colonization. The result is that having all of that extra stuff plus maintaining a series of complex supply lines may simply overload the user.

For more on the hotly debated issue of a Colonization-type resource system in civ, check the main Civilization 4 Customization forum for the Quantitative Resources thread.
 
man dom pedro puts the ice on great ideas :)

actually thats true - the mechanics cant perfectly port over as i under stand it. i guess the closest is to make resource units like great merchants but when the execute an order they cause an effect -> send gold to the maker and science, happiness, health etc bonus for a limited number terms using the event system's code. maybe.

i dont think diplomacy would be the way to go. just request or demand a resoure and have that create a quest event where you have to send x number resource units to the other civ.

storing and capturing as well as the variable price may be tough.

of course i'm typing it like its easy to do but I'd love to see this!

maybe the colonization sdk may enlighten people on making one.
 
That said, DPII, I believe a "semi-quantitative" resource model is do-able, using the code inherent in corporations. This is how I would envisage it working:

1) If you have 1 iron, then you have 1 iron as per usual. However, if you have 3 iron resources, then you get +1 hammers to all cities connected to your trade network. 5 irons gets you +2 etc etc.

2) If you have 1 incense, then you get your regular happiness bonus. If you have 3 then you get the happiness bonus and +2 gold or commerce per turn.

Now, as far as refined goods go, well different refined goods could produce altered yields and commerces for cities on your trade network. So, for example, 3 gold gives you +1 happiness and +2 commerce per turn, but if you convert it to jewelry, then it gives +2 happiness and +1 culture and +1 gold per turn.

Would that work DPII?
 
i would be very interested in this. It would be great if you coudl mod the col basis into a normal civ game,
 
I personally don't think that Colonization's economic system is transferrable to Civ4. There are several reasons for this...

1) The luxuries - In Colonization, you sell luxury commodities off to Europe where they simply cease to exist. It's a commodity to be traded elsewhere rather than a product to be consumed by your citizens. In Civilization, those luxuries would have to actually do something. Currently, it's easy... if you have a source of Incense, you get +1 Happiness. But if you have stockpiles of Incense, how would you determine happiness based on that?

I've noticed that when you trade resources to the natives tey use them up at a certain rate.
Now imagine the same being done in civ.
Assume you have a stockpile of 100 incense. This incense is used up at 1 unit/turn/city*(connected to the road-network).
So if you have 1 city, you use 1 unit of incense per turn. Two cities, two units, 3 cities... You get the idea.
The result is that you have a pressing need to continue and raise your production of said resource. Managing that might come from being able to set which cities get the resource, there could be techs that boost production, maybe new improvements on the map that allow production outside city-radius (or even outside your cultural borders: colonies in the true sense).
International trade might be arranged the same way that gold-exchange is done: an exchange of a lump of resources or x-amount/turn.

*you could maybe adjust rates of useage depend on city-size and buildings (e.g. a city size 1 uses 1 unit, city size 5 uses 2 units, city size 10 uses 3, etc.)
 
If this is to go forward, the first priority is actually coming up with a workable way of automating the trade flows otherwise the AI won't be able to handle it and the micromanagement becomes unbearable. The problem is difficult from a coding standpoint as pathfinding is a fairly expensive (processor time) operation and you're likely looking at hundreds or thousands, if not more, of pathfinding calls per nations turn just in trade calcs.

The best approach that I can see, would be to have each city find the nearest city in a given direction and then calculate the trade cost which would be based off time distance (turns to travel) and cargo capacity. Then you can pass demand along the trade network based off trade cost. Demand would travel until it met sufficient supply. The route could then be calculated just by taking a trade good surplus from the supply to whatever node (city) has a higher demand.

The one factor that's harder to handle is dangerous routes. But that could be handled by factoring in the trade cost as percent of lost cargo + transport (piracy rate). Eventually the trade would divert to route around the pirate troubled areas. It's just a little more dicey for the AI to be able to handle coming back from piracy after it gets resolved. That is if a large enough percent of transports get taken.

If you can get auto resource trade implemented, one of the bigger gameplay issues is resolved.
 
Hello!

Time to answer here again :).
I've added basic support for restricted bonus resources to BtS already; next in line are two question concerning the usage:
  • How can the BtS bonus resource system be modified to go from "have or not have" a bonus to using a number-based representation without having to rewrite the entire bonus resource implementation?
  • How do we trade with quantified bonus resource items?

As for the first:
For food and luxury resources, I'd suggest this: To achieve one unit of food/health/happiness bonus, I introduce a weight factor per population point in a city. For example, if you have wheat providing +1 :health: in a city with 6 population, and a weight factor of 10, you'll require 60 units of wheat to be able to gain the +1 :health: per turn.
For metals/stone/oil/coal etc., this is a different matter; up to now, I'd make these required to train units/build buildings in certain quantities, and/or perhaps also making them required for city maintenance in a way similar to the wheat example above (a weight factor per "shield" produced by a city perhaps.

As for the second:
I'd suggest a combination of the trade system in Colonization, plus allowing an "automatic" flow of restricted resources along the trade routes of a city (for example, allowing to set a global trade percentage for resources, which will then be distributed along existing trade routes), plus adding a trade route mission similar to the way the wagon trains in Colonization work, to allow additional trade between cities that don't have direct trade route connections.

I believe these ideas can be brought to BtS without breaking the BtS "core concept" (food/shields/bonus resources), while still allowing for a more realistic trade system and resource usage system.

I'm open to suggestions, of course! Feedback is always welcome.
 
man dom pedro puts the ice on great ideas :)

I can be a bit of a buzzkill at times, I'll admit. My greatest strength seems to be poking holes ;)

actually thats true - the mechanics cant perfectly port over as i under stand it. i guess the closest is to make resource units like great merchants but when the execute an order they cause an effect -> send gold to the maker and science, happiness, health etc bonus for a limited number terms using the event system's code. maybe.

I don't think that'd be a good idea. But saying "resource unit" makes me think about something that I noticed in the code for Colonization. For reasons I can't possibly fathom, the game developers decided to make "yield units". So every time you load a yield onto a transport, it actually creates a unit.. like a Muketeer or a Cannon... but it's for that particular yield. I have no idea why they chose this route.

i dont think diplomacy would be the way to go. just request or demand a resoure and have that create a quest event where you have to send x number resource units to the other civ.

I think removing resource trading from the game would seriously cripple diplomacy in the game. It's a critical piece of leverage.

maybe the colonization sdk may enlighten people on making one.

Certainly, it will be interesting to see if people can find a way to make it work. I too would like to see an alternative to Civ's binary system.

1) If you have 1 iron, then you have 1 iron as per usual. However, if you have 3 iron resources, then you get +1 hammers to all cities connected to your trade network. 5 irons gets you +2 etc etc.

2) If you have 1 incense, then you get your regular happiness bonus. If you have 3 then you get the happiness bonus and +2 gold or commerce per turn.

I assume you mean 1 source of iron rather than a stored unit of Iron like Colonization. All of this is pretty doable right now. But you'd have to come up with some way to set the bonuses per instance of a resource. That might get pretty complicated from both a coding perspective and from a gameplay perspective since it's not simply giving +1 happiness or something for each instance of a resource but is actually giving different rewards for each new tier you reach in quantities of that resource.

Now, as far as refined goods go, well different refined goods could produce altered yields and commerces for cities on your trade network. So, for example, 3 gold gives you +1 happiness and +2 commerce per turn, but if you convert it to jewelry, then it gives +2 happiness and +1 culture and +1 gold per turn.

Well, that's essentially what we have already with the exception of commerce bonuses in addition to health and happiness bonuses. So, doable? Of course.

I've noticed that when you trade resources to the natives tey use them up at a certain rate.
Now imagine the same being done in civ.
Assume you have a stockpile of 100 incense. This incense is used up at 1 unit/turn/city*(connected to the road-network).
So if you have 1 city, you use 1 unit of incense per turn. Two cities, two units, 3 cities... You get the idea.
The result is that you have a pressing need to continue and raise your production of said resource. Managing that might come from being able to set which cities get the resource, there could be techs that boost production, maybe new improvements on the map that allow production outside city-radius (or even outside your cultural borders: colonies in the true sense).

The problem is that you have cities of varying sizes, and does it make sense to have each city requiring the same amount of a resource to get the same bonus? But then if you have some cities requiring 2 units for +1 happiness, you can either give them +1 happiness or not. There's no in between. So what if they can only get 1 unit per turn?

This is where the system starts to founder for Civ IMO.

International trade might be arranged the same way that gold-exchange is done: an exchange of a lump of resources or x-amount/turn.

Can't be done for the limitations Firaxis put on us that I explained above.

*you could maybe adjust rates of useage depend on city-size and buildings (e.g. a city size 1 uses 1 unit, city size 5 uses 2 units, city size 10 uses 3, etc.)[/quote]
 
If you lack enough of a resource to go around to all the cities then you need to say these cities get it based off some set of rules, probably based off civics. One choice would be to the largest first, another would be closest to resource/import location, another would be based off need (the city that's way happy doesn't exactly need another luxury but the one with discontent does). Thus, some civics might be better at managing resources in some situations.

The other way to deal with fractions is to eliminate them. Yes, firaxis didn't code in the possibility of non integer values, but nothing says you can't increase the scale and then reduce the effectiveness. Like food, you can bump up the granary size by a factor of 4 and scale all the food production values by the same to get the equivalent of having quarter units of food. The only limit of this method is the max size of the values and the limits of the interface.
 
This would be a dream! Just imagine: you are playing as Egypt and making eco food and then sell it to Europe for increased profit, because they chose to invest in researching modified food and had bonus +2 on all 2 foods, but due to your political powers aka FF you managed to give modified food some disadvantage like negative public opinion. Modern weaponry sale! Using cheap developing countries' labor! Making uber sharp swords! Using some cold hearted unobvious political tricks which lead to promoting your good! Sell vodka to natives to make em weak!
Only cold-hearted despots will win. If this mod existed before then Hitler wouldnt start (not sure here :D) WW2, he would be playing it instead.
This mod would be like a dream game, game taking the strategic genre to the hardcore limits. Only few will play it but it will be heaven :D

I'd pay for it ;)
 
True, I was referring to 1 source. As I indicated, couldn't we use the corporation code to make this happen? It already has a +x per resource type that could be hijacked and put to our use. It would make getting more than one copy of a single resource much more important-both pre and post corporation-than is currently the case.

Aussie.
 
I see some basic problems with Current Civ/Col-game-mechanics which should be removed in the more complex economy system :

1. population growth so far is based on food
For a realistic economy, population growth should not result in loosing stored food. Food-surplus was a way to support armies and specialist (or a decadent king and his orgies.) and to trade for ressources which you could not produce on your own (or at least not at that costs).
Many countries have a population which is much higher than what their food-production would allow. (U.K. around WW2 had to import 50% of the food the population needed to survive. They traded finished goods for food but were vulnerable to a blockade.)

2. Before you can use money, you have to research currency ... eventually by trading a lot ressources and gaining Trade-Science-Points ...

3. Your population will consume goods and will work - but not for free ... Population might be divided into employed workers and kind of freelancers. Employees will require wages while freelancers will require a market where they can trade/buy/sell ressources, goods and services to earn money. All these people will also need a market to buy things for consumation (food, luxuries, etc.).

4. It is very likely that your economy in the game will tend toward a communist economy since both are kind of planned economies. The communist systems in human history mostly vanished due to failure of human beings in general to plan complex economies .... (too much micromanagement) ...
 
If you lack enough of a resource to go around to all the cities then you need to say these cities get it based off some set of rules, probably based off civics. One choice would be to the largest first, another would be closest to resource/import location, another would be based off need (the city that's way happy doesn't exactly need another luxury but the one with discontent does). Thus, some civics might be better at managing resources in some situations.
First of all, love the name. I bow before your superior bastardry :) (one of my favorite lines from the Milkman Dan strips)

Secondly, I think this will get potentially very confusing. Even if you aren't managing it manually, things are going to be going on and changing every turn in your empire, and it will potentially make the game too random for many of us who like to know exactly what's going on and why.

The other way to deal with fractions is to eliminate them. Yes, firaxis didn't code in the possibility of non integer values, but nothing says you can't increase the scale and then reduce the effectiveness. Like food, you can bump up the granary size by a factor of 4 and scale all the food production values by the same to get the equivalent of having quarter units of food. The only limit of this method is the max size of the values and the limits of the interface.
Yes, there will be an issue there with the interface. Bumping up the number significantly could help solve some of these issues, but the numbers can get a bit daunting in addition to the fact that considerably higher numbers of yields per tile will not be displayed properly on the map.

True, I was referring to 1 source. As I indicated, couldn't we use the corporation code to make this happen? It already has a +x per resource type that could be hijacked and put to our use. It would make getting more than one copy of a single resource much more important-both pre and post corporation-than is currently the case.

Aussie.

Yes, that is how it works for corporations. But if I understood you correctly, you're talking about different bonuses for different numbers of sources of a particular resource.

For example:

1 source of Sugar = +1 Happiness, +5 gold/turn
2 sources of Sugar = +1 Happiness, +8 gold/turn (first 5 + 3)
3 sources of Sugar = +1 Happiness, +10 gold/turn (5 + 3 + 2)
etc. etc. etc.

This is doable. The question is whether it's desirable. And this is a fairly simple model. But as the benefits of each tier become more complicated (especially if they vary from resource to resource), the bigger the headache becomes for players to keep track of what they're actually getting bonuses from.

1. population growth so far is based on food
For a realistic economy, population growth should not result in loosing stored food. Food-surplus was a way to support armies and specialist (or a decadent king and his orgies.) and to trade for ressources which you could not produce on your own (or at least not at that costs).
Many countries have a population which is much higher than what their food-production would allow. (U.K. around WW2 had to import 50% of the food the population needed to survive. They traded finished goods for food but were vulnerable to a blockade.)

I think that the best solution to this problem is to have yields be able to be stored on a national level and redistributed accordingly. I've been working on this for a while. The only problem is that due to a Firaxian decision to keep some of the trading screen code hard-coded in the executable file, there's no practical way to add trading yields to the trade screen (eventhough you can add just about anything else!) :mad:
 
Ahhh, no DPII. What I was specifically thinking is almost an exact replica of the corporation model. So sugar would produce +1 happiness no matter how many sources you have (though I confess, a system where you get +2 happiness from 3 sources and +3 happiness from 6 sources etc would also be nice), but each source of sugar would give you +0.5 food (rounded down) to every city in on the trade network. Later in the game, if you build a distillery, your sugar gets converted to the "Rum" resource, which grants an additional +1 happiness and +0.5 gold/+0.5 culture per source of rum.

Now, what I'm not so sure of is if you would be able-in the context of the BtS model-to determine how much of your sugar gets converted to Rum.

Hope that makes sense.

Aussie.
 
I see a lot of good ideas here. Is there anyway you guys can institue one small part, release it, and then add to it later? i think that way it'll be easier to get something going instead of trying to put all the mechanics at one.

I think the first one would be adding the code from corporations that lets you produce hammers and food based on the numbers of resources you have (instead of just one resource). I found where the code is and think I know where to do it. but not sure what to do with AI. (and I havnt even thought about compiling it).

I do like civ4 colonization's (micromanaging) way of trading resources b wagons and boats whre you have to enter the city. i was thinking that to replicate the 'Return to Europe' function of the game just make it so that you can only go to that screen by going to your capital.

just some thoughts
 
I've got an important building block for such an economic system in BtS in the making currently, code-named "trade goods" (part of the World of Civilization SDK).
Currently, I've implemented a mechanism that allows buildings to convert certain quantities of bonus resource (which have an output amount per turn) into more refined types of goods.

A first "proof-of-concept" prototype of this system will introduce required input amounts of trade goods in order to train units.
 
Back
Top Bottom