+ Reply to Thread
Results 1 to 15 of 15

Thread: DD 5: Trade Goods, Civilisation and Units

  1. #1
    Colonel Descartes's Avatar
    200k clubHearts of Iron 2: ArmageddonCrusader Kings IIEU3 CompleteDivine Wind
    Heir to the ThroneEuropa Universalis: RomeSengokuRome: Vae VictisMount & Blade: Warband
    500k clubEuropa Universalis IV

    Join Date
    Oct 2008
    Location
    Sweden
    Posts
    1,196

    Lightbulb DD 5: Trade Goods, Civilisation and Units

    It has been some time since I introduced my new trade system in v1.0. I've done my best to make it fully functional in time for the next release, but I ran into a major problem: The only way to enable a certain unit type in a province is to add allow_unit_type = x in the effects of its trade good. This fact has been a royal pain in my ass for some weeks now. Even though a province may have the province supply called horses, it won't be possible to recruit cavalry there unless the trade good has a line saying allow_unit_type = cavalry. Since I can't add this line to every single trade good, I have to make sure the province in question always exports horses. No regulation of provincial export!

    I've discovered other problems with my supplies, too. Most of them give a global bonus, since the number of provincial modifiers is far to limited. (There's no such thing as a local building cost modifier or heavy infantry cost modifier). Global bonuses can easily become quite unbalanced, since they make the large countries even stronger. In my opinion, the only good solution is to let triggered modifiers handle the global bonuses. Small countries get larger bonuses for the same number of supplies.

    I've decided to scrap my supplies entirely, and extend the list of available trade goods instead. I'll start off with showing you a list of the new trade goods.

    Code:
    amber
    asphalt
    carpets
    cattle
    coal
    colours
    copper
    cork
    currants
    dates
    drugs
    figs
    fish
    furs
    geese
    glass
    gold
    grain
    hemp
    honey
    horses
    incence
    iron
    ivory
    lead
    linen
    marble
    no_trade_good
    olive_oil
    papyrus
    parchment
    perfumes
    petroleum
    pottery
    purple
    salt
    silk
    silver
    slaves
    spices
    sulphur
    swine
    timber
    tin
    wa
    wild_animals
    wine
    womens_hair
    wool
    zink
    For reasons I've already explained, none of these trade goods will have global bonuses. Instead, I've divided them into three categories. First, we have the luxury items, trade goods that satisfy the needs of the upper class in society (citizens). Trading these will, obviously, make the local aristocrats happier, which grants a small bonus to research points. Then we have a couple of trade goods that I have linked to the middle class (free men), such as textiles and pottery. These ones increase the local manpower value. Finally, there's a number of trade goods that are supposed to make things easier for the lower class (slaves), and consequently increase the local tax revenues.

    This division is somewhat crude, but I can't come up with anything better with so few provincial modifiers available. At least it's very balanced. Check the code box below to see what it looks like in tradegoods.txt. The last trade goods (beginning with wood) aren't used in-game, they're just there for compability.
    Code:
    amber = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    asphalt = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = archers
    	allow_unit_type = trireme
    }
    
    carpets = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = archers
    	allow_unit_type = trireme
    }
    
    cattle = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    coal = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    colours = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    copper = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    cork = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    currants = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = archers
    	allow_unit_type = trireme
    }
    
    dates = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    drugs = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    figs = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = archers
    	allow_unit_type = trireme
    }
    
    fish = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    furs = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    geese = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    glass = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    gold = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    grain = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    hemp = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    honey = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    horses = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = cavalry
    	allow_unit_type = trireme
    }
    
    incence = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    iron = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    ivory = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = warelephant
    	allow_unit_type = trireme
    }
    
    lead = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    linen = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    marble = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    no_trade_good = {
    	color = { 0.7 0.0 0.0 }
    	local_trade_routes = -10
    	allow_unit_type = horse_archers
    	allow_unit_type = archers
    	allow_unit_type = trireme
    }
    
    olive_oil = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    papyrus = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    parchment = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    perfumes = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    petroleum = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    pottery = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    purple = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    salt = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    silk = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    silver = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    spices = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    sulphur = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    swine = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    tin = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    wax = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    wild_animals = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = warelephant
    	allow_unit_type = trireme
    }
    
    wine = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    womens_hair = {
    	color = { 0.7 0.0 0.0 }
    	local_research_points_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    timber = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    wool = {
    	color = { 0.7 0.0 0.0 }
    	local_tax_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    zink = {
    	color = { 0.7 0.0 0.0 }
    	local_manpower_modifier = 0.1
    	allow_unit_type = heavy_infantry
    	allow_unit_type = trireme
    }
    
    wood = {
    	color = { 0.0 0.5 0.0  }
    	allow_unit_type = trireme
    	allow_unit_type = archers
    }
    
    stone = {
    	local_defensive = 1
    	color = { 0.0 1.0 0.0 }
    }
    
    elephants = {
    	allow_unit_type = warelephant
    	color = { 1.0 0.8 0.8 }
    }
    
    cloth = {
    	local_ship_recruit_speed = -0.25
    	color = { 0.3 0.7 0.9 }
    }
    
    wild_game = {
    	local_start_experience = 0.1
    	color = { 0.0 0.8 0.8 }
    }
    Note that the unit types are called light/heavy/missile infantry, light/heavy cavalry and war elephants in-game (see previous update). Quite illogically, missile infantry can only be recruited in provinces with asphalt, currants, carpets or figs. This is because I've located these trade goods to provinces where the Romans historically recruited their auxiliary archers. Asphalt is found in Nabatea, currants on the Balearic Islands, carpets in Phrygia and currants on Crete.

    In case you haven't noticed, there's a trade good that really stands out. It's called no_trade_good. This trade good makes it impossible to trade with other provinces. I've given it to every single province with a civilisation value below 50.

    It works a bit like in EU III, where colonies start out with a question mark in the trade box. You've no idea what kind of trade good a colonised province will produce (unless you know your history), until it becomes civilised enough to start exporting products to other provinces. Each province has a flag given to them, which triggers an event once their civilisation value reaches 50. This event gives them the trade good that they exported historically. Naturally, provinces with civilisation values above 50 start out with trade goods from the beginning.

    With no trade routes to save them, uncivilised provinces will take a long time to get civilised. Luckily, I'm going to add a number of events that increase the local civilisation value once certain buildings are built. Colonisation won't be impossible in Imperium, only more expensive.

    When it comes to unit types, I'd say my new system reflects the situation during Antiquity quite well. Typically, you recruit heavy infantry from your cities and archers and light cavalry from your colonies. Uncivilised tribes have three unit types to play around with, which is a lot more fun than just one. (This could make up for the fact that I've prevented them from trading.)

    Cheers!
    Last edited by Descartes; 17-06-2009 at 01:17.
    Previously worked on Imperium, a mod for Rome: Vae Victis.

  2. #2
    Roman LibrAARian comagoosie's Avatar
    200k clubHoI AnthologyCrusader Kings IIEuropa Universalis 3Divine Wind
    For the MotherlandHearts of Iron IIIHOI3: Their Finest HourHeir to the ThroneEuropa Universalis III: In Nomine
    EU3 Napoleon's AmbitionEuropa Universalis: RomeSemper FiVictoria 2Rome: Vae Victis
    Rise of PrussiaEU Rome Collectors Edition500k clubEuropa Universalis IV: Pre-order

    Join Date
    Apr 2007
    Location
    945 (EU3, Michigan) in between palm and ring finger
    Posts
    8,732
    Blog Entries
    1
    Very nice

    One question, and it might sound very stupid, but how can you export purple?
    EU3 Save Suite - your one stop shop for everything related to EU3 savegames.

    I want you to contribute to great tools developed for Paradox. See this thread. Help with the parsing or with creating an EU4 Savegame editor

    Think you're the best EU3 player? Check out the EU3 Hall of Fame
    Dealt: A polish colonel deals his last hand
    The Swiss Account: The average documentation of the stereotypical Swiss.
    "Cheese ages better than women but money is forever." - Davout
    EU3 Hurt and Heal Archive

  3. #3
    Lt. General Scorpi's Avatar
    200k clubCrusader Kings IIDeus VultEast India CompanyEuropa Universalis 3
    For The GloryFor the MotherlandHearts of Iron IIIHeir to the ThroneEuropa Universalis III: In Nomine
    EU3 Napoleon's AmbitionVictoria: RevolutionsEuropa Universalis: RomeSemper FiVictoria 2
    Rome: Vae VictisMount & Blade: WarbandPride of Nations500k club

    Join Date
    Nov 2003
    Location
    Beijing, China
    Posts
    1,473
    as always interesting, how far from release are you now? Cant wait to try this out..

  4. #4
    Colonel Descartes's Avatar
    200k clubHearts of Iron 2: ArmageddonCrusader Kings IIEU3 CompleteDivine Wind
    Heir to the ThroneEuropa Universalis: RomeSengokuRome: Vae VictisMount & Blade: Warband
    500k clubEuropa Universalis IV

    Join Date
    Oct 2008
    Location
    Sweden
    Posts
    1,196
    Quote Originally Posted by comagoosie View Post
    One question, and it might sound very stupid, but how can you export purple?
    It's the name of a popular dye during Antiquity (http://en.wikipedia.org/wiki/Tyrian_purple).

    Quote Originally Posted by Scorpi View Post
    as always interesting, how far from release are you now? Cant wait to try this out..
    Dunno, that depends on how buggy you want it to be
    Previously worked on Imperium, a mod for Rome: Vae Victis.

  5. #5
    Colonel vanin's Avatar
    Arsenal of DemocracyCrusader Kings IIDarkest HourDeus VultEuropa Universalis 3
    Divine WindFor The GloryHeir to the ThroneEuropa Universalis III: In NomineMagicka
    EU3 Napoleon's AmbitionVictoria: RevolutionsEuropa Universalis: RomeSengokuVictoria 2
    Rome: Vae VictisCK2: Holy Knight500k clubEuropa Universalis IV: Pre-order

    Join Date
    May 2008
    Location
    The Frozen Wastes
    Posts
    941
    Nice development, this and all the earlier stuff looks incredibly interesting!

  6. #6
    Lt. General Scorpi's Avatar
    200k clubCrusader Kings IIDeus VultEast India CompanyEuropa Universalis 3
    For The GloryFor the MotherlandHearts of Iron IIIHeir to the ThroneEuropa Universalis III: In Nomine
    EU3 Napoleon's AmbitionVictoria: RevolutionsEuropa Universalis: RomeSemper FiVictoria 2
    Rome: Vae VictisMount & Blade: WarbandPride of Nations500k club

    Join Date
    Nov 2003
    Location
    Beijing, China
    Posts
    1,473
    I dont mind it being buggy at all.

    Have you thought about introducing some more country specific decisions/ missions, it can really add some flavor.. Also have you checked out Puppets rome mod for EU3 ? Perhaps you could coorporate regarding missions/decisions since this similiar to both EU3 and Rome?

  7. #7
    It may be historically correct but incredibly confusing to have so many tradegoods. I already realised this in a game with Imperium 1.12. Crete, for example, doesn't have any wood supply and thus can't leave their island.
    To solve this I had an idea: Can you give provinces a variable which contains an initial number of ships they can build without needing to trade wood? For example: Crete could be allowed to build 5 ships, then their woods are all chopped and they have to trade wood.

    Just an idea

    And, by the way, I find the tradegoods that give a bonus to monthly loyalty underpowered. +0.001 is really little... I actually don't care if something increases or decreases the loyalty by 0.01, so why should I care is it's ten times less?

  8. #8
    Quote Originally Posted by comagoosie View Post
    Very nice

    One question, and it might sound very stupid, but how can you export purple?
    Put snails in boxes.
    Read my first AAR: Wittelsbach- A CK AAR
    http://www.europa-universalis.com/fo...d.php?t=293636

  9. #9
    Second Lieutenant Erthain's Avatar
    Crusader Kings IIDeus VultEU3 CompleteDivine WindHeir to the Throne
    Victoria: RevolutionsEuropa Universalis: RomeRome GoldVictoria 2Victoria II: A House Divided
    Victoria II: Heart of DarknessRome: Vae VictisWarlock: Master of the ArcaneWar of the Roses500k club
    Europa Universalis IV: Pre-order

    Join Date
    Aug 2008
    Location
    Oklahoma, USA
    Posts
    153
    Looking good. Can't wait to see how all these juicy additions play in the finished product.

  10. #10
    Colonel Descartes's Avatar
    200k clubHearts of Iron 2: ArmageddonCrusader Kings IIEU3 CompleteDivine Wind
    Heir to the ThroneEuropa Universalis: RomeSengokuRome: Vae VictisMount & Blade: Warband
    500k clubEuropa Universalis IV

    Join Date
    Oct 2008
    Location
    Sweden
    Posts
    1,196
    Quote Originally Posted by Scorpi View Post
    Have you thought about introducing some more country specific decisions/ missions, it can really add some flavor..
    I haven't done a lot of that myself, but Hardradi's wonders and rivers will be included of course.

    Also have you checked out Puppets rome mod for EU3 ? Perhaps you could coorporate regarding missions/decisions since this similiar to both EU3 and Rome?
    Yeah that's a good idea, at least I could get some inspiration.

    Quote Originally Posted by humpelheinz View Post
    It may be historically correct but incredibly confusing to have so many tradegoods. I already realised this in a game with Imperium 1.12. Crete, for example, doesn't have any wood supply and thus can't leave their island.
    To solve this I had an idea: Can you give provinces a variable which contains an initial number of ships they can build without needing to trade wood? For example: Crete could be allowed to build 5 ships, then their woods are all chopped and they have to trade wood.
    Actually, all of my trade goods enable construction of ships, so it won't be a problem.

    And, by the way, I find the tradegoods that give a bonus to monthly loyalty underpowered. +0.001 is really little... I actually don't care if something increases or decreases the loyalty by 0.01, so why should I care is it's ten times less?
    It's removed in next version anyway.
    Previously worked on Imperium, a mod for Rome: Vae Victis.

  11. #11
    I don't agree with taking away the only way a nation like the Pictii can gain civilization....
    Proud player of WWM ( Latest game is a WC by the Aleutians up in northwest America. )

    And Civ Univ. The person who brought the mod back to life ..... but not the person who gave it a new calling and modernizing it - Hafte.

    Currently playing Carib in Civ Univ.

  12. #12
    Actually you can gain civ by building province improvements.
    "When a man says he approves of something in principle, it means he hasn't the slightest intention of putting it into practice." Otto von Bismarck

  13. #13
    How many years into the game are we talking about?
    Proud player of WWM ( Latest game is a WC by the Aleutians up in northwest America. )

    And Civ Univ. The person who brought the mod back to life ..... but not the person who gave it a new calling and modernizing it - Hafte.

    Currently playing Carib in Civ Univ.

  14. #14
    I think there's a kind of gap in the way you've made recruiting units: It's possibe to recruit archers and light cavalry only in border colonies with civ under 50, once they get over it and start being able to commerce no more auxiliary units available.

    The problem as I see it is that between the moment you get above 50civ and the moment you are able to colonise next region you are w/out auxiliaries and it may even be for a long stretch of time.

    Maybe you could set up a mixed period in civ % where you can trade and recruit auxiliaries?

  15. #15
    Quote Originally Posted by Shoobs View Post
    How many years into the game are we talking about?
    I am playing the 1.2 beta the month after completing a new building in a province under 50% civ you get the civ bonus event. I cant speak to 1.12 I didnt play it.
    "When a man says he approves of something in principle, it means he hasn't the slightest intention of putting it into practice." Otto von Bismarck

+ Reply to Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts