1. We have added a Gift Upgrades feature that allows you to gift an account upgrade to another member, just in time for the holiday season. You can see the gift option when going to the Account Upgrades screen, or on any user profile screen.
    Dismiss Notice

Resources Stockpile, Routes, Placement and Acquisition

Discussion in 'Gedemon's Civilization, a total overhaul project' started by Gedemon, May 7, 2017.

  1. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    So "human resources" (literally here) instead of paper-related resources for local technology discovery ?

    And paper-related resources for diffusion/conservation ?

    Maybe we can have both for discovery, with books taking over "oral tradition" for preparatory works on a new technology as eras advance ?

    Now, how do we handle those human resources precisely ?

    We'd have types (Metalworkers, Shipbuilders, ...) and linked Technologies/Applications that we'd need to define first before coding the events that generate those specialists and the effect of their "usage".

    With paper-related resources for techs, most of the code and table generation/linking can be automatically generated from the technology table and I just need to code the events generating the resource as effects can also be applied automatically in that case.

    In both cases functions already exist to create,transfer/stock/capture "resources", so they are still relatively easy to add to the mod.

    But if we want those specialist to be linked to population and migration, they are not "resources" anymore and a lot of new functions must be created. I'm already pondering to drop the simple 4-5 classes (personnel, upper, lower, middle, slave) into a lot more groups (farmers, miners, fishers, ...) linked to the 3 upper-middle-lower classes depending on policies/eras.

    The Metalworkers, Shipbuilders and other specialists could then be integrated into those population groups, but this would requires a lot of heavy changes in the core code. I think it would be preferable to to everything from scratch than trying to create an hybrid system that would be hardcoded. Maybe I should convert the core code to convert population types into a new type of "resources" to share existing functions and tables before adding new population types.

    Of course events and effects related to research could be completly separated from resources and population BTW, but that would still require new functions to handle filling buckets and diffusion/capture of specific technologies.

    Maybe I should not have brought the subject of research there, as we've not really designed the bases yet and those could still be discussed later in the development process, but the paper resource usage would be much cheaper in development time, and I'd like to play this before Civ7 is out. On the other hand I really don't want to add something irrealistic in the mod.

    Now converting paper into yields (culture/science) depending on building seems relatively easy to code and balance so that's a possibility, same for technology diffusion/capture I suppose.

    Other proposed usages seems more complex to implement, but the two above are IMO already enough to justify the implementation of a "writing Industry", so let's start by this one in this thread.

    From your previous message, we need 3 new base resources:
    - "Parchment" : produced from "Hides", a new resource created from animals and also allowing production of "Leather" (for armors and, when added, clothing)
    - "Papyrus" : directly collected on flood plains
    - "Paper" : from 2 new resources unlocked by technology (which ones ?), "Pulped Rags" (from "Plants") and later "Wood Pulp" (from "Wood")

    Which buildings to produce Parchment and Paper ?

    Parchment could be build directly in the base building of any city (ie the "Central Square" representing small artisan and shops) that already produce/convert some basic resources for the early game, what about Paper ?
     
    Knasp likes this.
  2. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Well, I guess you could just as well replace the classes straight away with "professions", since professions are easily connected to socioeconomic classes anyway. And yes, I think that the specialists (human resources) should be recruited from the population in the plot. Doesn't Personnel already work in that way?
    Your population could start out as Farmers, Hunters, Pastoralists, Fishermen, Weavers, Masons, Metalworkers etc.
    Improvements and buildings, along with social policies and Era would introduce new professions/specialists.
    You could have an overarching hierarchy of professions in which people of Lower class professions would prefer to adopt Middle and Upper class professions. Whenever there's a demand of manpower for a certain profession then people currently having a lower status profession would be converted to fill those slots.

    But before attempting a complete makeover of the population system, why not begin by experimenting on a more isolated aspect of the game?

    For e.g. the maritime/naval aspect of Civ6 is already a bit disconnected from other parts of the game. The naval part of the game uses its own terrain and feature types, its own resources and unit types, along with a separate row of technology etc. You could keep the current land-based system the same for now, and use the naval parts as a testing ground for these new ideas.
    Coming up with a good game/mod design isn't easy, and I understand your concern. To be honest, seeing how the Civilization series have been developing so far, I'm way more invested in your mod than whatever changes Firaxis is likely to make. In any case, the ideas and mod designs that you're working on, and that we're discussing and testing, could in any case be brought over to a future Civ7 (assuming it would be modding friendly).
    Parchment and Papyrus could be unlocked with Writing
    Paper from plants/textiles could come from the Plants resource and of course Cotton & Silk. Pulped rags should be introduced in the late Classical Era, so maybe Engineering or Mathematics?
    Maybe something like:

    Ancient Era
    Parchment from "Parchment manufactory"
    Papyrus from "Papyrus manufactory"

    Classical Era
    Paper from "Paper manufactory"

    Medieval Era
    With Machinery, you'd be able to build "Paper mill" (waterpowered)

    Renaissance Era
    With Printing, you would unlock some building (Printing workshop?) that would massively increase the output of Books, Pamphlettes, Letters etc. The demand for paper should skyrocket and mostly exceed the supply until the late Industrial Era (see below)

    Industrial Era
    With Scientific theory or Industrialization you could unlock "Wood pulp mill"

    Information Era
    Finally, once you've researched Computers and/or Telecommunications and/or Satellites, you wouldn't have to produce so much Paper anymore.
     
    Gedemon likes this.
  3. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Though I'd like to stress that Paper and writing should primarily be used for bureaucracy, legal documents and historical texts.
    Farmers payed their taxes with farm produce long before any coinage showed up. And since food spoils, unlike metal coins, the administration would need to keep track of how much grain was produced, taxed and how much is available in their local granaries. The basis for Civilization is in that aspect: administration, which requires writing.
     
    Gedemon likes this.
  4. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    I'll try to think on how to link it to efficiency, in relation to production factor.
     
  5. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Instead of affecting production factor/taxation efficiency directly, which I guess requires more work, we could go for something like:

    Paper can affect the amount of resources you are able to stock and/or maybe Granaries need to use Paper to convert resources to food etc.

    Personally I'd prefer if Paper can be used to limit the amount of resource transfer between cities, and/or the efficiency of resupplying units. 1 paper required by the city to make a demand for a resource. Or at least require Paper to trade with other Civs cities.

    Alternatively you could add Paper as an additional bonus/boost to resource extraction/stocking/trading. Maybe the use of paper could be decided bycertain social policies.

    My overall point is that you could add Paper on top of existing production/population mechanics.
     
  6. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    The initial work is roughly the same.

    In all cases we need to do a pre-check/pass at the beginning the city turn to get all the possible "transactions" (collecting a resource, converting it in buildings, transferring it to another city or an unit, keeping a record of the current stocks, etc, etc...) at the city level and get how many papers should be needed for all that then determine how many transactions can effectively be processed with the current stock of paper (for example if we have only 60% of the needed papers for all transaction, then each "transaction" is 60% efficient...)

    Of course we need some base values for every transaction under which no paper at all is needed if we want our citizen to be able to produce something or feed themselves before the discovery of writing...

    Each transaction "type" could have a different requirement ratio (ie number of paper needed per global transaction or per amount of resources per transaction)

    Even for applying bonuses we need an initial calculation of the requirement in paper to get the value of the bonus to be applied (or if we apply a bonus)
     
    Knasp likes this.
  7. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Yes, thats why I suggested that only trade between cities and between Civilizations would require Paper. Local production and consumption of gathered resources in each city wouldn't require Paper. So basically you'd need paper to expand your Empire. Paper would be needed in order to connect several cities into a common resource pool. Paper would be needed for logistics.

    Regarding Paper consumption:
    1 Paper needed for all outgoing trade, that is going to the same destination. The recieving City or Unit wouldn't need any Paper in order to receive the goods. This model should work for logistics and internal trade. External trade would be a different matter, and should require Paper from both parties (business contracts).

    Signing an Alliance or Peace treaty should require 1 Paper per signatory.
    Changing social policies or Government should cost 1 Paper minimum.
     
    Last edited: Oct 5, 2018
  8. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    We can't mod diplomacy with the current tools.

    AFAIK changing policies or government is not something I can mod either (new action)
     
    Knasp likes this.
  9. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    In my latest game I noticed that horses can't be used for food. So I'd suggest that the City center & Butchery should be able to slaughter horses for food. Of course Stables and war horse production can have greater priority, but in the early game it helps to be able to use all food sources.
     
    Last edited: Nov 18, 2018
  10. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    There is now a Herdsman mod on Steam, I'll ask if we can implement the art file in the mod.
    https://steamcommunity.com/sharedfiles/filedetails/?id=1564497864

    On resource acquisition, I need to check if we can add new item in the spies action list (to steal a luxury from another civilization)
     
    Knasp likes this.
  11. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Wow, now that's interesting and the timing is peculiar! The last couple of weeks I've been considering if I should try to learn some Lua in order to make the same kind of mod. Since it's now obviously possible and you're considering such a mechanic I'd like to share my idea, which I think could work better with the A.I.

    My idea was to:
    1. Remove all Horses/Cattle/Sheep resources from being placed on setup.
    2. Have the barbarians spawn Wild animal units that uses an explore/civilian A.I. Meaning it should roam around and try to avoid being captured.
    3. If a player captures the Wild unit, it becomes converted into anorher kind of unit, a "Herded" unit. The herded unit would be a Civilian unit with the sole ability of building a Pasture.
    4. Remove the resource requirement for Pastures to allow the herd unit to build it wherever, and also remove Builder's ability to build Pastures.
    5. Whenever a Pasture is built, you'd need Lua script to trigger and check which unit is responsible. And then the script would remove the Pasture, place the proper animal resource and finally place the Pasture again.

    But that's not all, because my idea was to go further than the Herdsman mod, in allowing the City to build Herd units. The obvious requirement for building such a unit would be having the improved resource. Meaning that if you've captured Horses and placed the improved resource, the city would be able to build new Horse herd units, that you could "settle" wherever you wanted on your tiles.

    A possible advantage of using the Pasture approach is that the AI should be able to build the unit and use it as a builder (maybe the unit can be given pseudoyields?) And this approach should be able to disallow building Pastures on tiles with other Resources, even hidden (future) ones?

    What do you think? Does it sound possible?
     
    Last edited: Nov 28, 2018
  12. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    9,556
    Location:
    France
    Yeah, we've discussed of adding those kind of mechanism using new units and fake features (more than one year ago, wow !), technically feasible I think, maybe not exactly like that, but possible IMO. Still, can't be 100% certain before coding it.

    One of the issue I have with roaming units is that they will go anywhere (jungle, desert, snow, ...)

    Making them with 0 movement point and replacing them manually on adjacent valid plots each turn is a possibility, but requires a bit more coding.

    That's something I'm also pondering for Fish, Whales or Deer (but while keeping them as resources and "moving" them around, not units)

    Yet I was thinking of the herder more as a later era unit, to move resources from one of your plot to another, because creating (and capturing) those could potentially be OP for the human player if we do not balance it carefully (even if, yes, the AI should be able to use your mechanism, while it won't understand the removing from one plot to put on another part or, worst, use it in a loop)

    Same for unit allowing (re)placement of food or luxuries resource.

    Could fit in a bigger mechanism which would manage renewable resources and overuse.

    There is also the issue of knowing where would be the future resource by seeing where you can't place your fake improvements.

    Even more work, but a possibility is to have fake resources placed on some plots (not all) that would represent good position to implement horses, cow, sheep (and wheat, rices, etc...), and make those resources a requirement for our fake improvements.
     
  13. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    I don't see this as a problem, because you can limit them to having only 1 movement point and 1 visibility range. You should be able to influence where they spawn, so that they don't spawn in Snow/Desert.
    And isn't it possible to increase movement penalty/cost for specific terrains (or features at least)? In that case, the wild animal units can be given a movement modifier of -100% for snow/desert tiles.

    And even if they could roam where they shouldn't, I don't think you'd see that happen a lot, since Players would be hunting those units down. And in any case, it should be possible to limit the amount of animal units spawned so that there wouldn't be hordes of them.

    I think that chasing an animal unit could be fun, but resources moving around randomly seems unnecessary to me. At the large scale that we envision the map, in the mod, it doesn't make sense to me, to move around Deer or Fish. Should the Camp and Fishing boats improvement move with the resource as well?

    Whales on the other hand could definitely roam around the oceans. Though I think it would be more exciting to have Whale units roaming around, and have Whaler ships that you can use to hunt them. When the whale unit is attacked, the whaler ship could gain whale meat/whale oil that it carries in its stock.

    I can definitely see the point of a Herdsman unit that can move resources, but I think I'd prefer that a Herd unit is spawned when a resource is 'Pillaged' or a Builder does 'Remove Improvement'. Being able to steal other Players livestock through pillaging and then settling them in your own lands could be quite fun.

    The point of allowing the player to build Herd units after having aquired the resource, is that you would be able to trade to aquire said animals. You could trade yourself horses, and then build a herd unit to "settle" them, and then you'd have your own horses when the trade deal is up.

    For some historical examples: This would allow European Civs to aquire Arabian breeds of horses (being bigger and more suitable for war). Spain could trade their Merino wool sheep with Europe. South Africa and Australia could aquire the sheep through trade or by Britain sending a Herd unit from Europe.

    Regarding balancing, the livestock resources might have to yield less to counter spam.
    On the other hand, you've already implemented in the mod that the Farm improvement yields more food by default. A herd unit would cost time and animal stock to produce, and settling them would mean that you might be giving up a Farm space and thereby get less food. The upside would be that you'd get Wool/Leather/Draft-animals/Horses, and that you could use any Hills and/or Plains without Fresh water for something productive.

    I'm not sure how to deal with the botanical aspect or those kind of luxuries. My suggestion fits domesticated animals best. Doing the same thing with Farms could be more difficult.
     
    Last edited: Nov 29, 2018
  14. Knasp

    Knasp Warlord

    Joined:
    Sep 10, 2011
    Messages:
    266
    Isn't an easy solution just to save the the loction of all hidden resources in a table.
    And when a player researches say Iron working, the Pasture/Horse would be removed from the Player's Iron tiles (a horse herd unit spawns on the tile). And then the discovered resource would be placed anew?
     

Share This Page