More-Flexible Tech Prerequisites

For what's not in 'Top Priority Game Design'. Post your ideas, visions, suggestions for the game, rules, modifications, etc.
Message
Author
User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12282
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

More-Flexible Tech Prerequisites

#1 Post by Geoff the Medio » Fri Aug 07, 2015 6:04 am

I'd like to consider a large but simple change to the tech tree: the requirement to be able to research a tech is to have any of its prerequisites researched, rather than all prerequisites as is the case now.

This would have a few effects:
-More potential strategy and flexibility in chosing pathes through the tech tree
--In particular, more techs can be made completely optional
--Some techs could be missing or unavailable for some empires to research, similar to the original MOO's (non-tree based) research system, making each game's strategy more distinct / unpredictable
---A missing tech that is a necessary (not optional) prerequisite could be never missing, or the later tech's prerequisite(s) could instead be any of the missing tech's scripted prerequisites
--Having multiple prerequisites for a tech could reduce its time or cost, giving more potentially interesting tree path choices that are impossible with the current need-all-prerequisites system
-Easier to "unlock" a tech from non-tech requirements, such as having a building or species or resource, without confusing / conflicting additional in-tree requirements
-It would be a bit complicated to auto-enqueue a tech with multiple unresearched prerequisites, as not all of them would be needed, so a choice would need to be made about which to enqueue before the requested tech. A reasonable default would be to pick whatever path is fastest given current RP availability

Other than needing AI adjustments, are there any major problems with this?

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: More-Flexible Tech Prerequisites

#2 Post by MatGB » Fri Aug 07, 2015 6:36 am

It would require a fairly major balancing pass, but the techtree needs that anyway.

My initial reaction was "NO!" but I reread your bullet points and I think I'm cautiously in favour, but it would make it even easier than it is currently to optimise certain things like population or research output, so we'd almost certainly need to do an initial reappraisal of the costs of, well, everything, then multiple tweaks to ensure that there remain actual strategic choices and not a best path that's virtually always the same.

It would make for more disjointed areas, for example I'd want to change advanced damage control so it's prerequisite remained galactic infrastructure not just fleet field repair.

On the other hand you can also introduce building/usage requirements for having multiple effects, similar to the way I did the artificial paradise planet, and also have some techs provide extra boosts if you've also got other techs.

It might also allow us to strengthen an either/or approach to certain things, an empire chooses to either adapt its species to live on different planets or to adapts its planets to suit its species, as an example, so you either research the terraforming route or the adaptation route.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
em3
Vacuum Dragon
Posts: 510
Joined: Sun Sep 25, 2011 2:51 pm

Re: More-Flexible Tech Prerequisites

#3 Post by em3 » Fri Aug 07, 2015 7:22 am

MatGB wrote:It would make for more disjointed areas, for example I'd want to change advanced damage control so it's prerequisite remained galactic infrastructure not just fleet field repair.
How about making field repair a prerequisite and galactic infrastructure a non-necessary prerequisite (is that an oxymoron?) that would make ADC easier to research if it is already researched (it would boost research just like having multiple prerequisites, but would not unlock the ADC tech by itself). This could be indicated by fainter or dotted lines in the technology graph.
[...] for Man has earned his right to hold this planet against all comers, by virtue of occasionally producing someone totally batshit insane. - Randall Munroe, title text to xkcd #556

User avatar
Dilvish
AI Lead, Programmer
Posts: 4720
Joined: Sat Sep 22, 2012 6:25 pm

Re: More-Flexible Tech Prerequisites

#4 Post by Dilvish » Fri Aug 07, 2015 7:27 am

Geoff the Medio wrote:I'd like to consider a large but simple change to the tech tree: the requirement to be able to research a tech is to have any of its prerequisites researched, rather than all prerequisites as is the case now.... Other than needing AI adjustments, are there any major problems with this?
This seems to me to pretty substantially overlap a discussion we had a couple years back. That thread perhaps got a little sidetracked, but still has some good points we shouldn't lose. Especially mine. :D

Our tech system can already accommodate as much of this flexibile unlocking as we'd like, although our tech UI is not so well adapted to it currently. I like the idea of having at least some of this flexibility, but I'm pretty doubtful about totally (or even mostly) scrapping true prereqs. Adding some of this flexibility seems to me like a nice gameplay addition. Totally swapping over, on the other hand, seems like a lot of effort into mostly moving sideways, to something that's different but not at all clearly better.

I would suggest we add a few of these alternative-unlocks to our tech tree, and work on getting UI elements to handle them ok. It looks to me like any set of UI elements that can handle the alternate unlocking will also be able to handle the current unlocking, or a blend of the two.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Sloth
Content Scripter
Posts: 685
Joined: Sat Mar 17, 2007 12:28 am

Re: More-Flexible Tech Prerequisites

#5 Post by Sloth » Fri Aug 07, 2015 3:31 pm

Dilvish wrote:This seems to me to pretty substantially overlap a discussion we had a couple years back. That thread perhaps got a little sidetracked, but still has some good points we shouldn't lose. Especially mine. :D
And just like back then, i still agree with Dilvish:

The problem is not that we need more potential for strategy and flexibility, our tech tree design already has plenty of options, but we're not really using them.

It has been six years since the last tech tree overhaul (by Bigjoe) and that was before Food, Mining and Economics were removed and without a real AI to play against. Some of you may not be aware (or not agree with me), but i think the tech tree is in a desolate state. What the tech tree really needs is a another big update with strategic choices, game pacing and replayability in mind.
All released under the GNU GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0 licences.

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: More-Flexible Tech Prerequisites

#6 Post by MatGB » Fri Aug 07, 2015 3:59 pm

Sloth wrote: It has been six years since the last tech tree overhaul (by Bigjoe) and that was before Food, Mining and Economics were removed and without a real AI to play against. Some of you may not be aware (or not agree with me), but i think the tech tree is in a desolate state. What the tech tree really needs is a another big update with strategic choices, game pacing and replayability in mind.
Agree completely, it's been mentioned as a plan on various threads, I've been concentrating on testing for 0.4.5 but I think this sort of thing is what Branching is designed for in Github.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
Vezzra
Release Manager, Design
Posts: 4674
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: More-Flexible Tech Prerequisites

#7 Post by Vezzra » Fri Aug 07, 2015 4:50 pm

Dilvish wrote:I like the idea of having at least some of this flexibility, but I'm pretty doubtful about totally (or even mostly) scrapping true prereqs. Adding some of this flexibility seems to me like a nice gameplay addition. Totally swapping over, on the other hand, seems like a lot of effort into mostly moving sideways, to something that's different but not at all clearly better.
Pretty much this.

I think it's important to be able to make certain prereqs mandatory prereqs, so you can make sure certain techs are only available if the player has researched certain other techs. Giving that up might making designing the tech tree a lot more complicated.

That said, I certainly like the idea that in addition to mandatory prereqs you can have optional prereqs. If a tech has only the latter, you'd have to research at least one of those optional prereqs to unlock the tech. Once a tech has been unlocked, researching further prereqs can reduce the costs of the tech.

However, I think that this mechanic will make the tech tree more complex to handle.

User avatar
Vezzra
Release Manager, Design
Posts: 4674
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: More-Flexible Tech Prerequisites

#8 Post by Vezzra » Fri Aug 07, 2015 5:05 pm

Sloth wrote:Some of you may not be aware (or not agree with me), but i think the tech tree is in a desolate state. What the tech tree really needs is a another big update with strategic choices, game pacing and replayability in mind.
I'm certainly aware, and I agree completely - the tech tree basically needs to be completely redone. There have been so many mechanics removed, changed, added, and most of the time the tech tree has only received superficial/temporary/stop-gap additions/adaptions to make the necessary changes to e.g. give access to new features etc.

But that's an inherent problem with a game that's at FOs current stage of development. We're still experimenting with game mechanics, adding, changing, removing them, there are big chunks we've been throwing around ideas at best (influence, happiness, allegiance, empire-species relations, diplomacy, intelligence). Meaning, even if we redo the tech tree completely, it will get outdated again. That's just something we have to life with.

I think we can't really start to bring the tech tree in a shape that has a chance to last until FO is at the feature-complete stage, at least as far as the main game mechanics are concerned. That doesn't mean we'll have to leave it at the desolate state it's now in, of course. But we shouldn't waste too much effort in trying to make it "perfect", as that's a battle we cannot win ;)

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12282
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: More-Flexible Tech Prerequisites

#9 Post by Geoff the Medio » Fri Aug 07, 2015 9:00 pm

Dilvish wrote:I like the idea of having at least some of this flexibility, but I'm pretty doubtful about totally (or even mostly) scrapping true prereqs.
Why? What makes have (multiple) required techs for another tech to be researched important? How many of these situations couldn't be handled by requiring, for instance, a building to be produced to actually use (some aspect of) a tech?
...to something that's different but not at all clearly better.
The default design for a tech tree is usually more or less what FreeOrion has now, but it's relatively poor in terms of giving players options / choices between different pathes through content. If all the connections are mandatory, then there's not much that can be made really optional other than dead ends in the tree that lead to nothing else.
Vezzra wrote:That said, I certainly like the idea that in addition to mandatory prereqs you can have optional prereqs.
[...]
I think that this mechanic will make the tech tree more complex to handle.
I'm very reluctant to have a complicated mixture of need-all-of and need-any-of tech or can-also-get-to-reduce-cost dependencies, specifically because this would make the tree substantially more difficult to understand for players, and much more difficult to display.

User avatar
Dilvish
AI Lead, Programmer
Posts: 4720
Joined: Sat Sep 22, 2012 6:25 pm

Re: More-Flexible Tech Prerequisites

#10 Post by Dilvish » Sat Aug 08, 2015 12:39 am

Geoff the Medio wrote:
Dilvish wrote:I like the idea of having at least some of this flexibility, but I'm pretty doubtful about totally (or even mostly) scrapping true prereqs.
Why? What makes have (multiple) required techs for another tech to be researched important?
Having only OR connections allows one kind of network. Allowing only AND connections allows a different kind of network. I think it would be a huge waste of time to try debating which "pure" network would be "better". If you allow NOT connections in addition to either of those then they are fully equivalent-- anything you can build with NOT and OR you can build with NOT and AND, and vice verse. In fact, when electrical engineers build logic networks, the underlying chips are generally constructed internally 100% with AND and NOT. But the engineers still design every thing in terms of AND and OR (and NOT), because this mixture is the most clear way for us to understand such constraints.

And I as pointed out, our current tech system supports both kinds of connections (and the NOT as well, really). But our UI is primarily directed to displaying an AND-oriented network.

Your proposal seems to essentially be a combination of (i) add UI support for the OR connections, and then (ii) rework the tech tree to use only OR connections, and (iii) hack out all support for AND connections. Please, if I'm wrong in that, tell me how.

And then when I say that (i) seems good, but that I'm doubtful about (ii) and (iii), you ask me to justify why I think they're important? I don't think I have anything nonobvious and new to say (well, except maybe for that bit above). You're the one proposing we do a nontrivial chunk of work, though, right-- isn't it your job to justify why it would be worth it?

I also don't at all understand your apparent suggestion that "requiring, for instance, a building to be produced to actually use (some aspect of) a tech" would in any way substitute for the mandatory-prereq dynamic. We already have buildings that are required in order to actually make use of a tech, all over the place. How would that substitute for mandatory tech prereqs? Did I totally misunderstand you there?
...to something that's different but not at all clearly better.
The default design for a tech tree is usually more or less what FreeOrion has now, but it's relatively poor in terms of giving players options / choices between different pathes through content. If all the connections are mandatory, then there's not much that can be made really optional other than dead ends in the tree that lead to nothing else.
I very clearly said I thought it would be best if not all the connections were mandatory. So it's a pretty huge waste of all our time to snip that part out and then pretend I argued it would be best for all of the connections to be mandatory. An uncharitable view of this communication style would be that your are intent on ramming an all-or-nothing decision down our throats. About the most charitable view I can come up with is that you could be so enamored of the change-it-all idea that you are letting yourself be really blinded to what others are saying.
Vezzra wrote:That said, I certainly like the idea that in addition to mandatory prereqs you can have optional prereqs.[...]I think that this mechanic will make the tech tree more complex to handle.
I'm very reluctant to have a complicated mixture of need-all-of and need-any-of tech or can-also-get-to-reduce-cost dependencies, specifically because this would make the tree substantially more difficult to understand for players, and much more difficult to display.
I agree with Vezzra that this (using OR connections more) would make the tech tree a little more complex, and we would need to change some UI elements to handle it. I don't see that as a big deal, though. I strongly disagree about it being hard to understand and I'm don't think it would be hard to display. This kind of mix of mandatory and alternative requirements is found throughout life and, and even if you change the tech system this pattern of constraints will still be found throughout FO. I don't think there is anything at all difficult to understand about it, it's almost universally natural.

As for displaying things, it seems to me that it would probably work out just fine if the primary graphical distinction were solid lines versus dotted (or dashed) connecting lines, indicating an AND-type unlocking or an OR-type unlocking. If Tech A and Tech B are both needed to unlock Tech C, their connections to Tech C are solid. If it's that either Tech A or Tech B is needed to unlock Tech C, their connections to Tech C are dotted. This would even let you clearly show that Tech E can be unlocked by either (i) Tech A (dotted line), (ii) Tech B (dotted line) or (iii) the combination of Tech C and Tech D (solid lines). If you wanted to keep things slightly simply and not have that mixture of unlocking styles for an individual tech, you could simply add a new intermediate Tech F (perhaps just costing a single RP), whose mandatory prereqs are C and D, and then Tech F could join A and B as alternative prereqs for E.

Seems plenty clear to me, though of course for a UI the proof is in the pudding.
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0

User avatar
Sloth
Content Scripter
Posts: 685
Joined: Sat Mar 17, 2007 12:28 am

Re: More-Flexible Tech Prerequisites

#11 Post by Sloth » Sat Aug 08, 2015 7:19 am

Dilvish wrote:As for displaying things, it seems to me that it would probably work out just fine if the primary graphical distinction were solid lines versus dotted (or dashed) connecting lines, indicating an AND-type unlocking or an OR-type unlocking. If Tech A and Tech B are both needed to unlock Tech C, their connections to Tech C are solid. If it's that either Tech A or Tech B is needed to unlock Tech C, their connections to Tech C are dotted. This would even let you clearly show that Tech E can be unlocked by either (i) Tech A (dotted line), (ii) Tech B (dotted line) or (iii) the combination of Tech C and Tech D (solid lines). If you wanted to keep things slightly simply and not have that mixture of unlocking styles for an individual tech, you could simply add a new intermediate Tech F (perhaps just costing a single RP), whose mandatory prereqs are C and D, and then Tech F could join A and B as alternative prereqs for E.
That would be a solid implementation Dilvish. Totally works for me and i'm also confident that new players will quickly grasp the concept.
All released under the GNU GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0 licences.

User avatar
MatGB
Creative Contributor
Posts: 3310
Joined: Fri Jun 28, 2013 11:45 pm

Re: More-Flexible Tech Prerequisites

#12 Post by MatGB » Sun Aug 09, 2015 10:01 am

A way of costing things could involve reducing the hard prerequisites, but having other techs reduce the costs.

For example, say that Basic Damage Control, Fleet Field Repair and Advanced Damage Control no longer follow on from each other, but each requires a tech in the Construction line (as the latter two currently do).

So, if you want to research Fleet Field Repair, you need to have Intersteller Logistics. You don't need to have Basic Damage Control, but if you have, you get a discount on FFR. This could be an especially useful approach for techs that effectively replace predecessor techs (in the way that, for example, Symbiotic Biology replaces the Planetary Ecology bonus or the way Advanced Damage Control used to replace (and thus stop working) Basic Damage Control).

An advantage of this approach is the fairly obvious one that it's completely scriptable right now (Psionics uses the approach) and it could be used to clean up the existing tech tree. In addition, we could make the Weapon research line more interesting by having, for example, Plasma 1 be unlocked by researching something in Learning, but have a discount if you've researched Laser1, etc.

We do need to decide if/what/when we're doing this though as some work on rebalancing the tech tree needs to be done sooner rather than later, but if there's going to be an overhaul from first principles during the next cycle anyway we might as well combine the projects.
Mat Bowles

Any code or patches in anything posted here is released under the CC and GPL licences in use for the FO project.

User avatar
Sloth
Content Scripter
Posts: 685
Joined: Sat Mar 17, 2007 12:28 am

Re: More-Flexible Tech Prerequisites

#13 Post by Sloth » Sun Aug 09, 2015 3:10 pm

MatGB wrote:A way of costing things could involve reducing the hard prerequisites, but having other techs reduce the costs.

For example, say that Basic Damage Control, Fleet Field Repair and Advanced Damage Control no longer follow on from each other, but each requires a tech in the Construction line (as the latter two currently do).

So, if you want to research Fleet Field Repair, you need to have Intersteller Logistics. You don't need to have Basic Damage Control, but if you have, you get a discount on FFR. This could be an especially useful approach for techs that effectively replace predecessor techs (in the way that, for example, Symbiotic Biology replaces the Planetary Ecology bonus or the way Advanced Damage Control used to replace (and thus stop working) Basic Damage Control).

An advantage of this approach is the fairly obvious one that it's completely scriptable right now (Psionics uses the approach) and it could be used to clean up the existing tech tree. In addition, we could make the Weapon research line more interesting by having, for example, Plasma 1 be unlocked by researching something in Learning, but have a discount if you've researched Laser1, etc.

We do need to decide if/what/when we're doing this though as some work on rebalancing the tech tree needs to be done sooner rather than later, but if there's going to be an overhaul from first principles during the next cycle anyway we might as well combine the projects.
These are great ideas Mat. I would love to see this getting implemented (independent of other changes discussed here). Would solve a lot of the problems i have with the tech tree at the moment.
All released under the GNU GPL 2.0 and Creative Commons Attribution-ShareAlike 3.0 licences.

User avatar
Vezzra
Release Manager, Design
Posts: 4674
Joined: Wed Nov 16, 2011 12:56 pm
Location: Sol III

Re: More-Flexible Tech Prerequisites

#14 Post by Vezzra » Mon Aug 10, 2015 2:29 pm

Geoff the Medio wrote:What makes have (multiple) required techs for another tech to be researched important?
Obviously the ability to make a certain, very special/very powerful tech harder to get. Or to grant access to certain special techs only to players who have researched a certain combination of other tech (lines). A very good example are suggestions currently discussed here: e.g. give a player who chooses to research both the organic hull and the monster tech lines access to special "bonus" techs like a super special hull that is a space monster altered to be able to serve as a ship hull. Not possible if more than one prereq for a tech strictly translates to you have to research only one of them to be able to get the tech.
How many of these situations couldn't be handled by requiring, for instance, a building to be produced to actually use (some aspect of) a tech?
Like Dilvish I don't understand what this has to do with how tech prereqs are evaluated. How would requiring a building to be produced act as a replacement for the ability to have several mandatory prereqs for a tech?
The default design for a tech tree is usually more or less what FreeOrion has now, but it's relatively poor in terms of giving players options / choices between different pathes through content. If all the connections are mandatory, then there's not much that can be made really optional other than dead ends in the tree that lead to nothing else.
That depends on how the tech tree is designed. A narrow, deep tech tree will certainly suffer from the problem you describe, but if it's sufficiently broad without too much interconnetions (a problem our tech tree IMO has), then even a tech tree where all connections are mandatory can offer plenty of options.

That said, again I'm with Dilvish: no one rejected your idea of having optional prereqs, so we're not talking about an all-connections-mandatory tech tree anyway. We just objected to removing the possibility to have multiple mandatory prereqs completely. I'll follow your proposal even as far as having prereqs being optional (that is, you've to research only one of the prereqs to unlock a tech) be the default/standard case, and the case where a tech has multiple mandatory prereqs be the exception. But not remove this possibility completely.
I'm very reluctant to have a complicated mixture of need-all-of and need-any-of tech or can-also-get-to-reduce-cost dependencies, specifically because this would make the tree substantially more difficult to understand for players, and much more difficult to display.
If we'd allow for all possible combinations of and'ing and or'ing prereqs together, yes, then that will become unmanageable to display and handle. So, no "(A and B and C) or (D and E) or F" or something like that. It will most likely be sufficient to simply have all the prereqs for a tech either being mandatory or optional, no mixing. And if you really want tech A be unlocked by either B or (C and D), then this can be done by having a intermediate (theory) tech E which has C and D both as mandatory prereqs, and B and E being the two optional prereqs for A - like Dilvish already suggested.

User avatar
Geoff the Medio
Programming, Design, Admin
Posts: 12282
Joined: Wed Oct 08, 2003 1:33 am
Location: Munich

Re: More-Flexible Tech Prerequisites

#15 Post by Geoff the Medio » Mon Aug 10, 2015 3:25 pm

Vezzra wrote:
Geoff the Medio wrote:What makes have (multiple) required techs for another tech to be researched important?
Obviously the ability to make a certain, very special/very powerful tech harder to get. Or to grant access to certain special techs only to players who have researched a certain combination of other tech (lines). A very good example are suggestions currently discussed here: e.g. give a player who chooses to research both the organic hull and the monster tech lines access to special "bonus" techs like a super special hull that is a space monster altered to be able to serve as a ship hull. Not possible if more than one prereq for a tech strictly translates to you have to research only one of them to be able to get the tech.
My question is whether it is really necessary to have both lines be researched to unlock this "bonus" tech line. What would be the problem with having it being available if either of the prerequisite lines was researched?

Or even more so, why does there need to be a carefully constructed network of related-concept prerequisites in most situations? Consider the tech system in the original Master of Orion, which is nearly the opposite: within each broad tech category, any tech in level N will unlock all available techs in level N + 1, regardless of what they actually do. This has interesting outcomes, such as that tech can be removed from the tree randomly, and thus make each game's possible research plan different, without need to worry about whether it breaks up a dependency relationship. And a player can pick which of a family of techs to get and which to skip, as later ones make earlier ones redundant... if they are present, which they aren't always.
How many of these situations couldn't be handled by requiring, for instance, a building to be produced to actually use (some aspect of) a tech?
Like Dilvish I don't understand what this has to do with how tech prereqs are evaluated. How would requiring a building to be produced act as a replacement for the ability to have several mandatory prereqs for a tech?
The point was that buildings could provide a type of dependency that the tech tree didn't, primarily so that the tech tree itself could use just a single form of dependency (any vs. all). Having a particular building might be a requirement to use some aspect of some tech, which would require a player to either research that tech and produce the building, or capture the building from another empire and then be able to skip doing the extra research.
That said, again I'm with Dilvish: no one rejected your idea of having optional prereqs...
That's fine, but what I really want to discuss is issues with / advantages of making all tech prereqs be optional / "or" style.

Post Reply