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

Research and Tech tree

Discussion in 'Gedemon's Civilization, a total overhaul project' started by Gedemon, Jun 21, 2017.

  1. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    I agree that there were alternatives to the Eurasian development model(s)/agriculture and they definitely had other species and means for producing food. But I believe there were real limitations to these viable alternatives, which in my mind makes them less competitive (and that's what we're discussing right?). I'm not saying they didn't have agriculture. I'm just saying they didn't have the same intensity in production and rate of development (made possible by draft animals etc). And yes, the European colonisers were very ignorant (and ruthless).

    Of course I haven't studied pre-colombian history, so I'm basing most of my current analysis on "Guns, Germs and Steel" and various short texts/wiki summaries.

    From what I've gathered it was the case that Europe had a larger population per area than the indigenous people of the americas (meaning a more effective agriculture), and also more advanced metallurgy and arguably military development. North America never really developed smelting unlike in South America where they did work several metals, e.g. bronze and meteoric iron, but they didn't get to mass producing metal tools and equipment, and they didn't really develop and adopt iron mining and smelting (lack of demand?).

    Of course, if it hadn't been for the Old world microbes, it would prrobably have been very hard for the European colonisers to invade and settle. On that note it would be interesting to see diseases and pandemics represented in the Civ games, although it would probably just be frustrating to players to lose say 95% of their population.

    Using the system of demand/need however, one could argue that there sinply wasn't need/demand for more intensive agriculture and metallurgy (apart from prerequisites), which I'm sure you are more knowledgeable of than I am.

    Vanilla Civ and modern people in general like to view history by the perspective of constant striving to get to where we are today, but the activities and motives of historical peoples are more varied than that. In my opinion the Civ series as wells as many other games/stories have an exaggerated focus on warfare and downplaying of culture. The initial use for metals were for art and jewelry/ornaments amongst other things. Many copper and bronze items were arguably made for cerimonial purposes rather than for war or tools.

    Game-wise

    I see 2 major ways to implement these separate development paths:

    Either you retain vanilla Civs abstract tech tree and development, trying to include all Civs regardless of climates/biogeographic conditions/resources. Where a European Civ can travel to a tropical location with a settler and improve those resources with a generic Farm or Plantation. I guess you could have a lot of Applications/Projects that are dependent on your biogeographic starting point, though I would argue it would be difficult for players to discern which ones that apply to their specific Civ and location.

    But if we're using a design of unequal/separate development lines, then you could have several different initial lines of development (giving access to similar or slightly different Applications/Projects).
    All of these lines could join together in the later eras, once the whole world is more or less explored and connected (communications and trade).
    That should bring the benefit that players would have an easier time overlooking the paths "forward".

    Although it would also be interesting if possible to remove the visibility of the techs in latter eras, to force players to guess and do some trial and error to find their way "forward".
     
    Last edited: Nov 23, 2017
    dunkleosteus likes this.
  2. Boris Gudenuf

    Boris Gudenuf Warlord

    Joined:
    Mar 11, 2012
    Messages:
    1,361
    Location:
    north of Steilacoom, WA
    Diamond's book is a good start, but Charles Mann's books 1491 and 1493, on the real situation in the Americas before European contact and the changes made in the rest of the world by American botany after the contact are eye-opening. Mann is a science writer, not an anthropologist or historian, so he cites work from the fields of botany, medicine, economics, archeology, linguistics, and a host of other disciplines (and includes a massive bibliography on each subject covered for further research)
    The gist of his thesis is that the Native Americans used alternative means of food production not found in the Eurasian continent(s), partly as a result of access to different resources (Maize, Potato) and partly as a result of compensating for lack of resources (draft animals) BUT that the result was not materially inferior to the 'Old World' agricultural models, just different. And, building on Diamond's work, one major deficiency in the Americas was that having primarily north-south connections, the complications of terrain and climate made contact between various native civilizations in the Americas almost impossible, so they didn't get the 'spread' of technologies and resources or the impetus from competition that occurred in the Middle East and Europe.

    The population question is still under debate. When I was in school (50 years ago) the estimate of the native population in North America was about 1,000,000 people. At the time Mann wrote a few years ago, that estimate was 30,000,000 and rising. English sailors fishing the New England coast in the generation before the pilgrims arrived reported villages everywhere along the coast - every running mile of coast occupied by somebody. French explorers on the lower Mississippi, before the first small pox epidemics hit, reported both banks of the river 'lined with villages'. When the Spanish arrived, Tenochtlan the Aztec capital was as large as any city in Europe or the Middle East.

    The biggest deficiency was in metal-working technology. Cold-worked copper blades and tools from copper deposits in Canada/Minnesota have been found as far away as Florida, so they appreciated the utility of metal, and several civilizations in South and Central America worked silver and gold, but nowhere in the Americas had they started alloying other metals or working Iron in any form. That turned out to be a fatal technological gap, along with the American natives' more deadly susceptibility to epidemic diseases originating in animals they hadn't lived with for centuries (pigs, cows). BUT they had achieved monumental stone-working and earth moving (Inca, Aztec and other Central American civilizations, Cahokia and Mississippians) and political sophistication as far as multi-city governments (Aztec, Inca, Maya) and multiple-group councils (Iroquois, Algonqian). Also, in a few states, written language and in others, multi-lingual sign language and 'trade tongues'.
    Which means technologically much of the Americas was either just reaching or already past the technology level of the ancient Middle Eastern and early Dynastic Egyptian civilizations, at least.

    The real problem is that, intentional of not, ALL the Civilization games have assumed a European Bias for technology, and assumed that the technology and technological timeline of the Old World leading to the European civilizations was the 'norm' to be ideally followed by Everybody. This does not just warp the view of the Americas, but also of China and Asia, which had highly-developed iron working, cast iron, blast furnaces, and such techniques a thousand years before Europe did. India was producing high-carbon steel in the 4th century BCE - 1600 years or more before Europe could reliably do the same. We now know that the Greeks had intricately-geared navigational instruments before the Roman Empire was formed, and easily thirteen hundred years before Europe started making the same kind of gear trains again. To misquote Rudyard: "There are nine-and-twenty ways of constructing Tribal Lays (or research) and each and every one of them is Right!"

    The game desperately needs that kind of flexibility and 'alternative' research possibilities. My own reading leads me to the conclusion that almost all 'research' and development comes about because:
    1. There was a Need - more food, more protection, better organization, better adaptation to local terrain/climate
    2. There was a combination of terrain. climate and Resources that 'led' the research into Solutions for the above in certain directions.

    Some of those directions are practically universal: All human warriors quickly picked up on the fact that dodging only got you so far, then it was a Good Idea to have a Shield for protection - whether the shield was wood, leather, reed, or a combination depended on what was available and the nature of the Threat.
    The type of Food Production, however, depended heavily on Local Conditions: very early cities in the deserts of southern Peru/Chile had no agriculture at all, but used what plants they could find to weave elaborate nets and snares and heavily-harvest the coastal waters and (few) rivers for fish. With draft animals (cattle, donkeys and horses were all 'domesticated' before the nominal Start of Game in 4000 BCE) Europe and the Middle East both planted Grains in big fields, could then plow them and irrigate them where necessary for ever-increasing food production. Without draft animals, North Americans never cleared fields for mass-planting, but their combination of maize, squash and beans (described as the "Holy Trinity" of American Agriculture) could be planted together in small plots everywhere, even in the midst of open forest land (cleared and opened by burning off the underbrush) so that Europeans frequently didn't even realize just how much agriculture and 'land management' the Natives of Virginia, Pennsylvania and New England were really doing.
    As a footnote to this, though, until the invention of heavy iron wheeled plows in the 11th century CE, ploughing the heavy clay soils of northern Europe was very, very difficult - 'broad field' agriculture spread only slowly north out of the Mediterranean/southern France area until well into the so-called 'Dark Ages'. Ironically, the North American agriculture 'model' would have worked fine here (as it did in similar terrain/climate in the northeastern USA) without requiring Iron Working or large teams of draft animals.
    This brings up the point that once you have started down a particular Research Path - draft animal plowing, broad fields, cereal production - it is almost impossible to Change Direction and/or model of food production, even when the alternative could be done sooner and produce a more balanced diet.

    Definitely, to really make the game a dynamic thing, the Historical Alternatives need to be available.
    As stated above, I think the 'key' to the alternatives is a wide Variety of Resources, terrain and climate with varying ways to exploit the combinations.
    In the example I gave in an earlier Post, if Agriculture is a basic Technology but the Applications include a variety of ways to exploit specific terrain/resource types, then your Civilization is free to develop the alternatives based on its own Needs and Resources.
    The only proviso being that once you have started down a 'path' that includes Draft Animals, Broad-Field Agriculture, and exploitation of cereals (wheat, rye, barley, oats), changing that Path would require wholesale reorientation of your research.

    For example, if you start by 'researching' Agricultural Applications relating to Broad Field Agriculture because you have access to draft animals and Wheat, then there will be Eureka-type bonuses for further research on that line (iron plows, better harness, better wheels) BUT there will also be negative modifiers to suddenly start 'researching' Forest Gardening or other alternatives - unless a great Need arises.
    And all these will have to be carefully studied, because sometimes, historically, a single plant or modification of a plant can have huge consequences. Examples:
    1. The incredible botanical research in the 'primitive' Americas that developed useable Maize from a tiny seedpod. That gave every culture from Central America north their basic 'grain' crop (basis for bread or bread-substitute)
    2. The development of improved Rice around the 11th century CE which allowed farms in southern China to harvest two crops a year from the same hand-worked plots of land - leading to a massive increase in China's population, productivity, and wealth
    3. The introduction of the potato to Europe in the 16th-17th centuries CE. Because it could be exploited using the same techniques already familiar to Europeans (broad fields, draft animals plows, etc) and grown in more marginal soils and climates and produced a 2- 300% increase in calories per acre, the population of Europe also 'boomed' in those centuries. Mann put it neatly: "Any history of Europe in the 16th - 18th centuries that does not mention the potato is not worth reading."

    So, we need alternative research strategies based on wide variations in Resources available for exploitation, we need specific and limited initial distribution of some resources (Chief among them historically: Maize, Cotton, Silk, Coffee, Tea, Potato, Bison, "Wootz" pure iron ore, kaolin clay) and finally, after the 'Scientific Revolution' of the late Renaissance and the rise of Directed Research/Science in the late Industrial and Modern Eras, it becomes easier to 'switch' exploitative technologies and strategies and research, to the point where Variety of Food sources becomes a goal (Amenity?) in addition to sheer Quantity and Sufficiency of food.
     
    dunkleosteus and Knasp like this.
  3. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    I know that redesigning the tech-tree is a far-reaching goal that comes after establishing the fundamental game mechanics, but nonetheless I've started working on a draft for my own enjoyment.

    I call it a time line, because it will be presenting technological and societal development as items on a time axis, in a Civ 6 inspired format.

    Basically I've started by taking the wiki/google research previously collected and then I've grouped these items by theme or geography, and placed these groups within time intervals (for e.g. 1000-500 BC).

    My first goal is to produce a chart that is starting from Prehistory to c. 1 BC, similar to the Google sheet compilation. And I'm currently working on the finishing touches for the first draft.

    Just wanted to give a heads up (shout out?) before I get around to finishing it.

    @Gedemon : If you'd prefer it, I could post it in the general forums instead. I just think it would fit better here, since I like where this mod is going and the resource mechanics that you've introduced opens many possibilities.
     
    HorseshoeHermit and dunkleosteus like this.
  4. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    I suppose that where you want to post it is depending of the feedback you want for it.

    For a general timeline and it's coherence, the main idea & suggestion would do.

    If you want to also talk of multiple paths / alternative ways to get an advancement in relation to this mod mechanisms, this thread may be better (unless you want to get general feedback about multiple path for research too, without going into details)

    Wherever you'll post it, I'll read it, I'm following the main I&S forum anyway.
     
  5. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    So, how do we link population to research exactly?

    I can think of a relation between profession, production and "research points" (as you know my initial thought was to use paper resource to stock those points), now what's your proposal?
     
  6. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    So did anyone manage to made a tree including alternate and or locked branches?

    I'm going to implement a classical "development" tree for a start, mixing applications and civics to academic research, but I do not put away the ideas of different approaches.

    I think I will implement the multiple fields in the following way: Techs/Applications/Civics will have a <MaxFieldContribution> parameter that would allow to set a max percentage of a field contribution (military, social,...)

    Each tech could have multiple fields contribution.

    Those contributions points will be added to the science points for that tech each turn, until the max per field is reached.

    Some techs may be discovered from those contributions points before being actively researched.

    If I can, I will lock some techs before a specific event is triggered (finding a big enough mass of water for Sailing for example)
     
    Knasp likes this.
  7. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    Here is a possible presentation for the data in XML, separating contribution of Research Field (global, per turn), Events (global, on action) and Needs (cities, per turn and scaling with need and population)

    Code:
        <!--
            FieldType    : MILITARY, SOCIAL, CRAFTSMANSHIP, NAVAL, EXPLORATION, ECONOMIC, ?
        -->
        <TechnologyResearchContribution>
       
            <Row     Technology="TECH_WARRIOR_CODE"         FieldType="RESEARCH_MILITARY"         MaxContributionPercent="100"/>
            <Row     Technology="TECH_CODE_OF_LAWS"         FieldType="RESEARCH_SOCIAL"         MaxContributionPercent="100"/>
           
            <Row     Technology="TECH_FOREIGN_TRADE"        FieldType="RESEARCH_SOCIAL"         MaxContributionPercent="60"/>
            <Row     Technology="TECH_FOREIGN_TRADE"        FieldType="RESEARCH_ECONOMIC"         MaxContributionPercent="60"/>
           
            <Row     Technology="TECH_BRONZE_WORKING"     FieldType="RESEARCH_MILITARY"         MaxContributionPercent="25"/>
            <Row     Technology="TECH_BRONZE_WORKING"     FieldType="RESEARCH_CRAFTSMANSHIP"     MaxContributionPercent="50"/>
            <Row     Technology="TECH_BRONZE_WORKING"     FieldType="RESEARCH_ECONOMIC"         MaxContributionPercent="25"/>
       
        </TechnologyResearchContribution>
       
        <!--
            EventType    : COMBAT_VS, COMBAT_WITH, ATTACK_VS, DEFEND_VS, ATTACK_WITH, DEFEND_WITH, ?
            TypeTag        : New TypeTags to be added to units
            PrereqTech    : Contribution can't start before this Tech (optional)
            PrereqEra    : contribution can't start before this Era (optional)
        -->
        <TechnologyEventContribution>
       
            <Row     Technology="TECH_COMBINED_ARMS"     EventType="EVENT_COMBAT_WITH"     MaxContributionPercent="25"    TypeTag="CLASS_ARMOR"     />
            <Row     Technology="TECH_COMBINED_ARMS"     EventType="EVENT_COMBAT_WITH"     MaxContributionPercent="25"    TypeTag="CLASS_AIR"     />
           
            <Row     Technology="TECH_ARMORED_WARFARE"     EventType="EVENT_DEFEND_VS"     MaxContributionPercent="25"    TypeTag="CLASS_RANGED"     PrereqTech="TECH_STEEL"    />
            <Row     Technology="TECH_ARMORED_WARFARE"     EventType="EVENT_COMBAT_VS"     MaxContributionPercent="25"    TypeTag="CLASS_ARMOR"     PrereqTech="TECH_STEEL"    />
       
        </TechnologyEventContribution>
       
        <!--
            NeedType : FOOD, PROTECTION, HAPPINESS
            PrereqTech    : Contribution can't start before this Tech (optional)
            PrereqEra    : contribution can't start before this Era (optional)
        -->
        <TechnologyNeedsContribution>
       
            <Row     Technology="TECH_AGRICULTURE"         NeedType="NEED_FOOD"         MaxContributionPercent="100"    />
            <Row     Technology="TECH_SAILING"             NeedType="NEED_FOOD"         MaxContributionPercent="50"        />
            <Row     Technology="TECH_MASONRY"             NeedType="NEED_PROTECTION"     MaxContributionPercent="50"        PrereqTech="TECH_MINING"    />
       
        </TechnologyNeedsContribution>
       
        <!--
            TypeTag        : New TypeTags to be added to Resource, Terrain, Feature, Improvments, ?
        -->
        <TechnologyNeedsRequirement>
       
            <Row     Technology="TECH_AGRICULTURE"         RequirementType="OWNED"        TypeTag="CLASS_CULTIVATED_FOOD"     />      
            <Row     Technology="TECH_SAILING"             RequirementType="IN_RANGE"    TypeTag="CLASS_SEA_FOOD"             />
       
        </TechnologyNeedsRequirement>
    
     
    Knasp likes this.
  8. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    I don't think anyone has drafted a non-linear tech tree with different paths etc. Do I understand you correctly that you want to combine the Civic tree with Research tree?

    In any case, I think a good place to start is to decide what units/buildings/improvements etc that players start the game with.
    Should the mod and tech tree start in 4000 BC? Should players start with any techs depending on their starting location?
    Another thing I'd like to comment on are particular items that should be rearranged/moved between techs or even Eras.

    Some initial thoughts:
    • For e.g. Farm, Pasture, Camp, Granary and Archers are arguably not things you should have to research in 4000 BC. Maybe Granary and Artillator buildings should be available to build form the start? Though that calls for some big changes to the early Techs...
    • 'Wheel' and Chariots should follow Pottery and Animal husbandry. Cattle and/or Horses should be prerequisite for researching wheeled vehicles. The application of horse- drawn chariots should naturally have Horses as prerequisite. Chariots research/application should probably require Archery as well.
    • Galleys should be moved to late Ancient Era -> Shipbuilding? and Quadrireme to Classical Era. The earliest troop transport over water might have happened c. 2000 BCE. First naval battles might have occured c.1500-1000 BCE. Before that you would of course have had Fishing boats, river boats/barges, trade ships, shipyards etc. Maybe Galley and Quadrireme stats have to be buffed to compensate for their later arrival in the game?
    • Sailing should be important for rivers as well as coasts/lakes. Maybe river trade/transport/movement can be improved? The earliest Egyptian sailing boats weren't built for open water travel but rather used their sails to go upstream IIRC, together with oars of course.
    • The Watermill building should be moved to Classical Era, historically, though I guess its gameplay effect might need to be adjusted to account for it arriving later.
    • I'm not certain but I believe that 'Pottery' should be a requirement or at least a boost for 'Bronze working'. The reason being that the development of more durable Pottery/Bricks required kilns to reach higher and higher temperatures. Incidentally, higher temperatures were also required to start smelting copper-alloys, leading to more advanced metal working.
    • Speaking of Pottery, I have to make a request for adding a Clay/mud resource to the game, to complement Wood and Stone. In mediterranean-to-arid climates, the cradles of civilization, these soil resources have been incredibly important, since wood has been scarce and stone is heavy and hard to work with. Clay/mud have been used for things like construction, ceramics and not to forget, the earliest writing.
      If you'd consider it, we wouldn't need to add a proper resource, but rather it could work like Plants, being associated with certain tiles and then have the resource be gathered when those tiles are worked. Unlike wood and stone, clay/mud can only be used to make Materiel for construction/pottery purposes, so it wouldn't interfere with military logistics. (No clay weapons! :p). You could simply add a Pottery workshop and/or Brickmaker building to craft the resources (Ceramics, Bricks) to be used for trade/food storage/construction.
      The reason why I feel a Clay/mud resource is necessary is to complement Wood and Stone, especially in the Mediterranean, Middle East, India etc. You can view it this way:
      Stone is durable and water-resistant yet expensive/heavy/difficult to shape. Clay/mud is cheap/easy to work with but less water-resistant and more brittle (until fired bricks are invented). Wood is versatile and cheap, so long as you're situated in a temperate-boreal landscape where there a lot of forests. Wood is certainly more water-resistant and less brittle than sundried bricks, yet it does rot eventually and is more vulnerable to city fires and wild fires. Finally, we've been discussing Paper and research earlier, and Clay/mud have a crystal clear use in this regard, being the earliest substrates for writing. Clay tablets were used for writing Cuneiform script in the Near East, Sumerian, Babylonian and Mycenaean Greek civs for e.g.
      So where to place this kind of resource? On flat (non-hills) Plains and Grassland. There should be a greater quantity by rivers and adjacent to lakes. Desert tiles would only have Clay/mud on tiles by rivers and particularly on Desert floodplains. These tiles should yield the greatest(?) quantity.
     
    Last edited: Dec 2, 2018
    Gedemon likes this.
  9. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    Is there a mod adding that resource in the game?

    I was planning to have tablets created for earlier writing from the Palace once pottery is researched, but you're right, I can also add the resource on terrain/features like I did with woods and plant. Could be combined with a mod resource if it exists to work as stones/metal resources with bigger deposits and small amount on specific terrains.

    As you're pointing it would have multiple uses, having early manufactured goods for population needs would be interesting, and another source for materiel production is indeed required for some starting positions.

    Starting techs based on location, yes thats also a possibility.

    The tree I'm going to implement is a placeholder, we'll be able to move techs around more easily now that I have removed the need to represent the paths without crossing them for the UI. And yes it's a development tree, everything mixed back, but more sources than just sciences and culture output to research a tech/advancement/application.

    About the starting date/techs for the first civs, maybe 5000BC and a few turns (5-10) with big steps (200-100y per turn) to explore the surronding area to get the initial techs and gain a settler?
     
    Knasp likes this.
  10. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    So, what should be the "tiers 0" techs, the ones you can start with (not meaning that you'll start with all), and what terrain / features / resources / events in a possible the pre-settler phase would grant them to a Civilization ?
     
  11. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    Neither Civitas nor Resourceful adds that kind of resource, and I haven't found any mod by googling. I think a reason they haven't added it is that Clay (like plants or stone) isn't rare, it's pretty universal.

    Yes, since with the changes in the mod you need Materiel for all construction, Clay is needed as the primary building resource in warmer (non-rainforest climates).
    Maybe Stone can be reserved for making arrow- and spearheads, as well as for Monument/Wonder/Medieval walls construction. Stone should be a more expensive (almost luxury) building material in the Ancient and Classical Era, unless you build your city on a tile with a lot of Stone. Wood should be reserved for ships and weapons in areas where it is sparse, preferring clay/stone as construction material.
    I'm not sure if moving the Starting date back is a good solution, because the uncertainty is greater the further back we look, meaning that we have less and less evidence to base our tech tree on.
    I'm not sure how to tackle it best, as Pottery, Granaries and Bows were "invented" thousands of years earlier. Granary and Artillator buildings could be made available in the beginning. The Pottery, Animal husbandry and Archery techs need to be reworked, but I don't have.suggestion right now.
     
  12. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    Maybe Farm and Camp should be available from the start, at least if you have any farmealble resource or wild animals nearby.

    Farm and Granary could be grouped in the same tech: Organised Agriculture (or something). This would represent Farms and Granaries organised by the chieftain/leadership.

    Sailing - If you start/found your city by coast/lake.

    Animal husbandry - If you start/found your city by Sheep/Cattle/Horses.

    Since you can probably start with all of these resources and by the coast, maybe you should only get a big boost if you start with more than one of these 3. Meaning that if you only start with coast, you get Sailing directly. If you also have Sheep, you get 50% of both. If you also have Wheat, you get 33% of all etc.
     
    Gedemon likes this.
  13. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    I don't know, the early techs and building could represent "improved version of...", not the concepts.

    I mean we stock food in cities at the moment they are created, they have some kind of small granaries, and the granary "building" represent a bigger stockage area, better organized, maybe thanks to improvements in relation to pottery.

    Also, one of the thing to ponder in relation to early archery is what to do with Javelineers and Slingers ? (but maybe that whole upgrade line needs rework, as both where used along archers, not replaced by ?)
     
    Knasp likes this.
  14. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    That's a fair point. I guess it ties back to what we consider Inventions vs. Innovations (aka Applications).

    I mean, should incremental(?) developments generally be represented in the Tech/Civic tree?
    Like: "a larger version of X".

    I would propose to consider first if the new thing represents using new construction methods? New construction materials? New shapes and designs requiring planning and calculations?

    Maybe a bigger Granary is simply tied to a larger population requiring greater storage. And/or that society and farming becomes more organised/governed by rulers. In which case it makes sense to let the player build a Granary from the start.

    In any case, I'm fine with Granaries being unlocked by tech, but then we should commit to (some) early Techs being improvements, rather than new concepts.

    Some possibilities:
    • Archers could still require an Artillator building, since making bow and arrows for an army requires a more industrial approach and logistics. It could be balanced such that Slingers and Javelinmen are cheaper/quicker to produce and maintain.
    • Archers could also get a negative debuff for every consecutive combat in a turn, to represent that arrows are more difficult to craft, so that they face a shortage the longer they have to fight without resupplying.
    • Archers could otherwise get a more varying span of damage that they inflict, to represent that they could have a lack of arrows/faulty arrows etc.
    We could probably come up with more ideas on how to balance them.
     
    Last edited: Dec 2, 2018
  15. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    First step started: merging both tree

    I'll try to add custom functions to handle multiple-field research next, and unlock Government from "Techs". Policies is already handled by the game.

    May take some time, unsure if I'll be able to push a working update this WE.
    Spoiler :
    Clipboard-1.jpg
     
  16. SeelingCat

    SeelingCat Chieftain

    Joined:
    Oct 27, 2016
    Messages:
    35
    Gender:
    Male
    Location:
    US
    I don't have any helpful suggestions for the archery side of things, but in terms of pottery, the Potter's wheel was developed c. 3500 BCE so that might be a nice middle ground between 'invention' and 'improvement'. 4000 BCE (or thereabouts) is also when Horses, Oxen, and Water Buffalo were domesticated so maybe the tech can be repurposed as 'Draft Animals'?
     
    Gedemon likes this.
  17. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    Thanks!

    I'll rename "Pottery" to "Potter's Wheel" and "The Wheel" to "Large Wheels" (which unlock the Charriot equipment and the TreadMill building)

    I think I've managed to neutralize the Civics tree, now I will code the functions to unlock Governements from Techs instead of Civics. I may add an initial governement ("Tribal Council" ?) with an unique (wildcard) slot while I'm at it.

    While writting those functions, I'm trying to visualize how it will interact with everything else, and I'm still not fixed on some parts of the design, I'm currently pondering how to represent the "local knowledge", based on the thread's discussions.

    One of the difficulty I face with a local and a global tech tree, is that I don't want to rewrite all the game's tech-related functions (would cost both time and performance) and that some of them are not moddable anyway.

    Buildings are unlocked by Tech for example, with the current code I could prevent a city to construct a building if it doesn't have the required "local knowledge" while the tech is part of the "global knowledge", but I couldn't make that building available in the city in the opposite case (the city has the local knowledge, while the tech is not researched at the civilization level), unless I remove the "PrereqTech" from the Buildings table and replace the whole mechanism by a new one.

    Same issue with Resources availability (aka "visibility") that I've reused for Equipment, I'd need to rewrite all the code that use that too if I want equipment to be available in cities independantly of the global Tech Tree progression (for example to allow the production of Steel Swords in a city with that local knowledge, while "Steel Weapons" are not yet unlocked on the global Tech tree)

    Not impossible for both, I've done that for Units, and I suppose I'll have to go that way if I want to have a good mechanism, but I'm also looking at other possibilities to represent the difference between local knowledge (let call them "applications") and global knowledge ("techs/civics") and the links between them.

    So I was thinking of the Builders actions, but limiting (or allowing) those actions based on local knowledge would not be possible, the availability of the action is always global AFAIK, maybe someone with a good knowledge of the game's Modifiers system could tell us if it's possible to limit/allow action using fake promotions (eventually I could switch the unit to be with/without promitions depending on the tiles its on)

    Then I thought of replacing the Builders by city projects or automatically place an improvement when a city is working a tile for which it has knowledge of the related application.

    But that would remove some choices in relation to planification in the Empire Building side of the game.

    Now, having both is a possibility that could solve some of the mentionned issues : the Builders would represent the great public works of a Civilization, based on its the global knowledge, while Cities could produce some improvements automatically based on the local knowledge they have accumulated.

    What we need to start defining, is the applications available at the city level, how to acquire (or loss, cf "tech maintenance" or decay) the related knowledge and how those applications interact with the global techs they may be linked to.

    Here is how it could work using the exemple of an application that we'd call "APP_FARMING" :
    - related tech = "TECH_AGRICULTURE"
    - gain points: need food (and farm resource available on cities plots), work plot with farm resource, application diffusion (through trade routes)
    - loss points: not working farm resources, low ratio between "farmers" and other population activities, low education level (level of education in a city would be defined by the number of population and some type of buildings and policies)
    - effect: when the city has enough points to match the APP_FARMING cost, it gains the ability to automatically create farms on worked plots with Wheat or Rices, (maybe immediatly or after a few turns, could use Materiel ?)

    Points gained above the application cost could generate "knowledge resources" that could be kept locally (as a knowledge "buffer"), diffused over trade route (application diffusion) or converted (by some science-related buildings) into research points for the global "TECH_AGRICULTURE"

    The "knowledge resource" could be of various level with different efficiency for diffusion/conversion: simple "Knowledge" (ie oral tradition), "Clay Tablets", "Scrolls" (Parchment, Papyrus), "Book" (Paper)

    Science-related Buildings could also create those "knowledge resources" for applications from related known global techs, using Clay, Parchment, Papyrus, Paper resource.

    "knowledge resources" related to an application would be consummed in cities that don't have enough point to maintain that application cost.

    About the created improvement in relation to applications, we could track them on the map to give each of them a base "health" value, city-created improvement would have a low value, while worker created improvement would have a high value. That health would decay if the plot is not worked, or if it's worked by a city that does not have (or have lost) the knowledge to maintain that improvement. The improvement is removed (or marked as pillaged) if "health" reach 0

    While working a farm plot should maintain the "APP_FARMING" knowledge above its cost, in some situation (high population, low ratio of "farmers" in local population, low education) a city would have to work multiple plots (ie raising the ratio of "farmers") to maintain the knowledge gain above its decay.

    I'll have to put some more thoughts on this, and see how it could be ported to later techs (in relation to resource production/consumption) but let me know what you think of it already.
     
    Last edited: Dec 4, 2018
  18. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    I've read your post and have tried to wrap my head around your questions and the possibilities, and I also find it difficult to conceptualise and visualise the components. I can't think of a way to implement a knowledge resource or a civ-wide/local knowledge division, without first establishing the base mechanics.

    I've been thinking about the concepts proposed by @Boris Gudenuf and particularly how to implement Applications. And I believe that one of these 2 suggestions could work, if they are possible to mod without DLL.

    1. CIVICS APPROACH
    Boris initial suggestion was to treat Techs and Applications as separate entities. Techs unlock multiple applications and you can research one application and one tech simultaneously.

    In order to accomplish this I would propose to repurpose/redesign the Civics tree into an 'Applications tree'. This would allow simultaneous and player directed Tech and Application progression.
    The tree could be arranged in columns, rather than rows, and every Tech would have it's own related column of Applications.
    Ideally specific applications could have further requirements in order to "research" them, like certain resources/buildings/policies etc?

    In any case, the Applications would have to be regulated so that researching one makes it more difficult to research certain other applications afterwards. Taking Boris example of large scale agriculture/draft animals VS American garden-farming as the example. Then researching one of them should pretty much block the other, if I understood him correctly.


    2. PROJECTS APPROACH
    My other suggestion is an approach which doesn't require a Civic tree but instead have the (Global)Tech tree spawn a 'local knowledge' resource in your library, once a research is completed. And having this resource would allow the city to build all associated Applications that were unlocked by the Tech, in the form of "Projects".

    So if you research Agriculture, it would unlock the "Rice farming" project. But that project wouldn't be visible in the list of production choices until the City acquires a tile with Rice.
    If you start working the Project, it could recieve "production" boosts/losses based on for e.g. Need and how many Citizens are assigned to Rice, or just the number of people that are currently living on tiles with a Rice resource.

    After completing the Project, the city would receive a fake building called 'Knowledge of Rice Farming'. This building would award any Builders constructed by the City a promotion. The promotion would give the Builders the ability to Clear marshes and build Farm improvement on the Rice resource.

    Once the Rice Farming project is finished, the city can use writing materials (papyrus/parchment/clay tablets/paper) to send this knowledge to other cities which have libraries and/or Rice resources. A city that receives the "knowledge" and has a Rice resource, will then convert the recieved knowledge into the fake building mentioned above.

    Alternatively, we could skip using Fake buildings to represent the researched application and instead award the City a "Great work" instead. Having the "Great work" in the City's library would award Builders the promotion. The downside of this approach is that you'd only get 1 copy of the Rice Farming Book, and it wouldn't be tied to the City itself, but the upside would be that you could move the knowledge/expertise to any City that you want.
    This might work better for military applications or if we simply broaden the concept from written knowledge to include specialists like "Shipbuilders" and "Siege engineers". Then you easily move the Specialists to any City that you want to use their knowledge in, but you'd be restricted to the number of Great works (Specialists) that you currently have.
     
    Last edited: Dec 7, 2018
    Gedemon likes this.
  19. Gedemon

    Gedemon Modder Moderator

    Joined:
    Oct 4, 2004
    Messages:
    7,983
    Location:
    France
    Yes, that's something I've some difficulties to do myself, I'll try to present it more clearly, here is what I base my example on

    • Global knowledge: the current "Tech tree" renamed "Development tree"
      • Based on this post (already changed some things in it since then, and nothing is fixed at this point), merging the current tech and civics tree in one
      • Using the current UI to research something at the Civilization level
      • Multiple sources to gain research points
        • normal "science" points :c5science: for each "development item" ("dev")
        • specialized points
          • Military
            • Specific buildings each turn (Barracks, Stable, ...)
            • Land Combats
            • ...
          • Exploration
            • Discovering items on the map (new resources, natural wonders, new civs, ...)
            • ...
          • Naval
            • Specific buildings each turn (Docks, ...)
            • Naval Combat
            • ...
          • Craftsmanship
            • Construction of a building in a city
            • Worker creating a feature
            • Specific buildings each turn (Stonemason, Blacksmith, Carpenter...)
          • Economic
          • ...
        • Specialized points would be assigned to the current research item first, then shared between all item accepting those kind of points (and can be researched)
        • Specific events for specific "dev" (like current eurekas, but less points and multiple occurrence), for exemple:
          • CREATE_BUILDING, CREATE_IMPROVEMENT, DISCOVER_NEW_RESOURCE, DISCOVER_RESOURCE, DISCOVER_NATURAL_WONDER, COMBAT_WITH, COMBAT_VS, DEFEND_WITH, DEFEND_VS, LAND_MELEE_COMBAT, LAND_MELEE_ATTACK, LAND_MELEE_DEFENSE, LAND_RANGED_COMBAT, LAND_RANGED_ATTACK, LAND_RANGED_DEFENSE, ...)
      • Each "Development" can have multiple research source defined, with specific limit, for example, here are possible settings:
        • Discovering new source of rices/wheat can contribute to up to 50% of Agriculture research cost, but not more, the other 50% would come from other sources
        • "Bronze Working" could be 50% from discovering multiple sources of Copper, 75% from accumulated Craftsmanship points, 40% from accumulated Military points, 40% from accumulated Economic points and 50% from fighting with/vs units equipped with Bronze weapons (a few points with each combat). Yes, the total is more than 100%, which means with that setting you could discover "Bronze Working" without spending any of the normal science points on it.
    • Local knowledge: the Applications
      • Could be linked to a specific "Development" (but not mandatory)
        • When it's the case, knowing the App in some cities could generate points to contribute to the linked item global research
        • When it's the case, knowing the Development item at the Civilization level could generate points to prevent the linked App "knowledge decay" or to contribute to researching it at the City level
      • Could have multiple (optional) prerequisites like another App or Development items (the linked development item would not be a prerequisite, they could be researched in parallel)
      • No screen to select a path on a tree (but a simple tree display is possible, yet dev-time consuming) as some requisites could be on the Dev tree
      • Researched and maintained at the city level, getting points from multiple sources
        • Automatically, from Population needs (Food, Protection, Amenities)
        • Local events in the city, on the city plots, in the city range (working a specific resource/features, nearby combats, water resources in range, ...)
        • Specific "Projects" (ie fake buildings, controlled by the mod, like the Recruitment mechanism) to maintain/research Apps available for each city
      • A Decay would be applied each turn on the Apps, based on the city level of education, population size, activity ratio between the various apps unlocked in the city
    The knowledge resource coming from a "Development" would spawn in the capital. They could then be used here to maintain/research available Apps in the capital that are linked to that "Development", or send to other cities (including foreign cities depending on the diplomatic relation level) using the mod trade route mechanism, where they could contribute to research/maintains linked apps.

    The knowledge resource coming from "Applications" would spawn in each cities that get more point for that application than they loss from decay. They'll use the same transfert mechanism, but could be converted to points for the linked "Development" (if there is one) by any cities with a science building (library, ...)

    About the various form of the "knowledge" resources, there would be limits on the amount of those resource that can be stored in a city (could be linked to buildings), and each would have a base value of research points, books having a higher value than scrolls.

    About limitations, I can't prevent any "Development item" to be researched by the normal science point, there is no way to lock a tech unless using another tech as a prerequisite, but unlike buildings, you can't set a tech to require the same tech to prevent it selection by the AI, the game crashes on load when you try that (or any loop on a prereq tech on the same path)

    Not impossible, but complex on the code side, and this add another layer between the global and local knowledge, how do you specify what's local and what's global there ?

    Locking a path would be possible for applications, as this is a fully new mechanism, but not for the merged tech/civics tree (see the limitation above)

    That's a good design, do you see a way to integrate the "need" contribution to research as Boris proposed ?

    just to clarify, sadly the worker promotion was an example of something that I can't use AFAIK, which pushed me to propose alternatives for Applications effects/bonuses.

    About which, I'm unsure for great work, but hacking it or the great people mechanism for "controlled" knowledge distribution (or gaining an application bonus where it's not researched yet) is a good idea.
     
    Knasp likes this.
  20. Knasp

    Knasp Chieftain

    Joined:
    Sep 10, 2011
    Messages:
    195
    The point is not to try and work everything into a single tree. But rather to reduce the importance of "Developments" by having them represent ideas/concepts, rather than the physical things. Researching 'Developments' could directly give the player access to new governments, maybe some social policies and other abstract effects, but among the things awarded would be the possible Applications that you could pursue.
    Meaning that (almost) all new Unit types, Refined resources, Improvements, Districts, Buildings, Wonders etc would require the additional step of researching the related Application, before they could be unlocked/become available.

    CIVICS
    The Global knowledge would be the Development/Tech tree, while the Applications themselves would be represented in the game by spawning a knowledge resource/great work, once the Application was finished.

    In any case, I believe that an additional layer is necessary to make the Development and Local/Global knowledge mechanics easier to keep track of and more manageable. I think we have to establish Applications as their own entity, because I believe that the research mechanics are possibly too complex. Meaning that I find it difficult to work out how things (e.g. units/buildings) should become unlocked, especially when you consider the grouping of items and all the hundreds of ways to gain research points. Not to forget that we also need to decide which fields should add points to what, including max limits of contribution.

    I believe we could keep the interesting though complex research mechanics as long as we can separate the individual "items" further. I see a repurposed Civics-tree or Projects as two possible ways to accomplish this, which offer the Player choices that can be compared relatively straight-forward. If all the mechanics of development/applications/unlocking and so on work in a complicated manner that mostly happens behind the scenes, then it's hard for the player to overview the progress and make meaningful choices. I'm not saying that we must split up all individual items or add the additional layer of Applications, but only that I find it difficult to plan the tech/developments/applications without such a design.

    PROJECTS
    The 'need' contribution would be the 'needs' of the City that is working on the application, including the 'needs' in connected Cities. Couldn't a 'need' calculation be used to boost or slow the "production" of the Project? A City that is collecting a surplus of food (without rationing) shouldn't get a boost to any Project for developing entirely new means of Food production. But they could get a boost for working on a Project that aims to increase the profits/exports of the current Food production.

    If they work, Promotions would be simplest to use I believe, but if promotions can't be used to unlock new actions for the Units, then I guess an alternative solution is to add variations of the same Units, like a special Builder unit. In the e.g. of the Rice farming, that special builder would have the ability to build a " Rice farm", that a default Builder doesn't. Yes, this would require adding unique improvements for many resources. But how could we otherwise limit the possible unit actions? And how could we limit Units/Cities by their current Local knowledge, rather than Global knowledge?

    The benefit of having Local knowledge represented by Projects-Applications it that you can have several paths of development . And it would also allow the Player to go for different Applications in different Cities. Yet any pursued application could block/limit other possible applications in the same City, which could increase the specialisation of Cities/Civs. An application that is known in a majority of your Cities or by neighboring Civs, could be spread to the City automatically, even if the City wouldn't have been able to access that Project on its own.

    Say thast you have for e.g. one City that goes for an Archery application, while another focuses on Slingers/Javelineers, a third focuses on Hoplites and a fourth on Cavalry. You could have some applications that would be common among your Cities, since they would be easily shared and spread in your Civ, and yet other applications would remain a speciality of that particular City.

    Whichever approach you want to go for, I'll try to contribute. I might be too pessimistic and/or lacking imagination, we'll see. :)
     
    Last edited: Dec 9, 2018
    Gedemon likes this.

Share This Page