Longer tech tree (feasible?)

cryptc

Chieftain
Joined
Oct 29, 2010
Messages
83
I'm playing around with several different ideas on how to slow down the tech race so that it doesn't jump as much as it feels like it does today (even skipping whole classical era with a single great scientist at times)

One idea I have is pretty simple on drawing board, just divide up every tech that has several components to it into different techs, and have all the sub-techs be required to get the prereq for the techs that would previously required them.

Calendar for example would be split into two techs, Plantations and Stonehenge, and both of them would be required to gain Theology techs (in addition to the Philosophy techs obviously).

This would allow you to get a single tech you wanted early, while delaying the rest until you need them as prereqs, and I'd combine this mod with my slowing research ideas, to keep each era long (I like slow paced pre-industrial games). It also helps balance GS and RA's since there are so many more techs to pick from.

A couple of questions however which those who have modded techtrees before might answer:

- Will AI's still work after doing a change like this, or are they tied to trying to research techs that no longer exist?

- Are there any space limitations which make this unfeasible? Like there being too many techs in the tree might break the whole ingame selection engine.
 
The AI will be fine, it makes its decisions off of the Flavors, not the tech names. Longer tech tree is very easy to do; making them viable and balancing the gameplay for the increased speed is the hard part.
 
Well, since I'll not change any placement of any techs, the balance should be pretty equal to base game, except that the AI might not pick and and choose from several trees most optimally I suppose. Guess I'll have to try and see.
 
Well, since I'll not change any placement of any techs, the balance should be pretty equal to base game, except that the AI might not pick and and choose from several trees most optimally I suppose. Guess I'll have to try and see.


It'll pick optimally as long as you set the flavors right. If the costs aren't cut in half, you risk enlarging the game out of sync with everything (so be careful!).

Good luck!
 
Well part of the goal is slowing down research in relation to other things, but I've realized I need to do something about social policies as well, but I'll figure it out hehe.

And how exactly do you mean "set the flavors" right? Do I need to adjust computer AI "flavors" ?
 
Well part of the goal is slowing down research in relation to other things, but I've realized I need to do something about social policies as well, but I'll figure it out hehe.

And how exactly do you mean "set the flavors" right? Do I need to adjust computer AI "flavors" ?

Yep. Pretty simple.

Code:
<Technology_Flavors>
<Row>
<TechType></TechType>
<FlavorType>FLAVOR_NAVAL_TILE_IMPROVEMENT</FlavorType>
<Flavor>4</Flavor>
</Row>
</Technology_Flavors>
 
- Are there any space limitations which make this unfeasible?

The tech tree can be as long (columns) as you like (but as every tech is placed on a hard coded grid, inserting techs in the middle can be a very painful process), but you are pretty much limited to the current height (rows) as there is no usable way to make it scroll up/down and also the "pipe connector" code makes various assumptions about the number of rows and the maximum height of a vertical pipe.
 
Ok the size limitation makes my idea pretty much impossible yeah.

As for flavors, posting some xml and saying it's simple didn't really make me understand heads or tails of it hehe... I'm good at SQL and changing a couple of settings here and there, but what Technology Flavors, Flavor Naval Tile Improvement and the value 4 has to do with anything of what I posted I have absolutely no clue as I'm complete neophyte to Civ5 modding in general.
 
One idea I have is pretty simple on drawing board, just divide up every tech that has several components to it into different techs, and have all the sub-techs be required to get the prereq for the techs that would previously required them.

The other guys mostly answered your questions, but there's one major hurdle to discuss. If you make every tech only give a single benefit, then you'll have a real problem with the decision-making process, both for the human and the AI. Depending on exactly how you do it, this could cripple the AI horribly.

Look at the tech tree; half of what's on there is useless. WHICH half will change based on the current game, the player's preferences, and so on, but still, half.

Wonders are useless to research if another player has already completed them (or if you're confident you'll lose the race to build them).
Units in general are useless to research if you're not in a war.
Naval units and coastal buildings (lighthouse, harbor, seaport) are useless if you have no coastal cities.
Some specific types of units are more useless than others. How many people really make Musketmen, Lancers, Anti-Tank Guns, etc.?
Improvement yield increases are useless if you don't have any (or at least many) of that improvement.

The example you gave, Calendar, is a perfect demonstration of why this is a problem. If I'm playing on a higher difficulty then the AI starts with Pottery and is practically guaranteed to beat me to the Wonder as a result. If my starting location doesn't have the right Luxuries then I don't need Plantations. So if you split these up, what happens?

A Human player who doesn't plan ahead (i.e., one who only looks at the currently available techs, picks one, and goes back to playing) will never take the "useless" techs until he absolutely has to. As a result, he'll be far slower to reach the techs beyond that one. Now, a smart Human can open up the tech tree and realize that he has to take a junk tech to get to the really good stuff, but not everyone plays that way.

An AI works like that sort of stupid Human as well; if you split the flavors so that the Stonehenge tech is all Wonder and Culture flavors, and the Plantation tech is all Happiness and Gold flavors, then the AI might take one of the two quickly but not take the other for a LONG time. The AI doesn't look ahead to what the tech unlocks, his decisions are only made based on the immediately available techs.
But it's even worse for the AI, because he won't know which techs are useless; if his starting location has no plantation-related luxuries, but the AI needs Happiness, he'll see those Happiness and Gold flavors and take that Plantation tech, not knowing that he can't benefit from its effects. If the player's already build a Wonder, the AI will still think the tech is something worth taking, because he bases his decision on the Flavor values, which won't have changed.

In other words, you'll horribly gimp the AI. If anything, the game needs to be changed in the OTHER direction, with each tech giving three or four different things. That way, every tech will still be somewhat desirable to every player. In my own mod (see sig), I ended up doing exactly that; nearly every one of my future-era techs gives three benefits, no more than one of which is a world wonder. If a tech adds a Wonder, a Building, and an Improvement yield, then it's practically guaranteed that at least one of the three will be useful to you. As a result, the AI handles it far better.
 
Yeah that was exactly what I was afraid of regarding the AI, thanks for clearing it up, I will file this under "not an easy change" hehe :)
 
I've been pondering more about this again... first of all, would the smarter techtree pipes ( http://forums.civfanatics.com/showthread.php?t=391165 ) solve the otherwise dealbreaking problem of splitting the techs up? seems like it would allow more than enough space to allow it, but haven't tested yet.

And if this then is possible, I'm considering testing this out, and set slightly higher flavors on the techs that are generally more useful in the tree, and less on the less useful ones. But like spatz notes, this doesn't solve all the problems, since some techs will be more or less useful depending on the game and this magnifies that problem.

The flavor is set per tech I notice, not per civilization or per player. Is there any way to alter an AI's priorities/flavor/decisionmaking during the game? like "IF <plantation luxury nearby> SET <plantation flavor +1>" or "IF <stonehenge exists in game> SET <flavor of stonehenge tech to 0>"
 
Each leader has flavors associated with them. Modify these flavors to change the way each leader plays the game.

The tech tree allows space for 10 techs in one column and an infinite amount of rows. I don't think smart techtree pipes will add any more space for your techs, but it will allow you to fix bugs associated with tech tree drawing.

Higher flavors place a higher priority for the AI to grab once that tech is available. If you wanted, for example, a militaristic AI to pursue Iron Working fast you may want to set Mining Bronze Working and Iron Working to have a high military training factor - but I don't think that would help them play the game.

That's really all I can help you with. I don't know how LUA works, so I can't help you with the specifics of the tile improvement mechanic. I don't even think we have access to that information yet. But if you want the AI to research tile improvement techs, then you can change their flavor adjustment.
 
The flavor is set per tech I notice, not per civilization or per player. Is there any way to alter an AI's priorities/flavor/decisionmaking during the game? like "IF <plantation luxury nearby> SET <plantation flavor +1>" or "IF <stonehenge exists in game> SET <flavor of stonehenge tech to 0>"

No. Flavors are, unfortunately, universal. We have ways, currently, to prevent an AI from trying to build a certain building, but so far we don't seem to have a way to prevent it from taking a technology.

Also, there's no simple function to check for the presence of a certain improvement or resource. There are a few useful functions like "how many of Improvement X do I have in my empire", but that's not going to help here.
 
Back
Top Bottom