Eureka!: Nondeterministic Research

SevenSpirits

Immortal?
Joined
Jul 7, 2007
Messages
512
This is an idea for a mod for BtS. Here's the idea:

Instead of picking your research directly, you choose which things you already know to "focus on". You'll then learn about new techs that are related to those things.

Description

The game represents research and discovery poorly. In reality, you don't plan to discover writing in a couple hundred years. You're just there, existing, and at some point... BAM! You realize that notating things on a physical medium in an organized manner might have a future to it.

The reason the game doesn't simulate this is obvious: it would suck to have no control over your discoveries. I think I've found a reasonable middle ground.

Instead of choosing a specific technology to progress towards, you choose what your researchers should focus on based on what you already have. You can:
  • Focus on a tech you already know (limited to the "best" 5 or so options)
  • Focus on what tiles your population is working.
  • Focus on what kinds of specialists you have.
  • Focus on divine inspiration.
  • Just think creatively about anything at all.

Let's take the example of focusing on a tech you know, and let's pick Agriculture as that tech. There would be a set of techs that Agriculture leads to, kind of like "OR" requirements now (the arrows) except weighted. Agriculture might have a strong weight towards Pottery and Animal Husbandry, a weak weight towards Calendar, and some other weights towards other techs. In general, there would be more links in this new system because some of them would be very weak. Now here's how the research works if you focus on Agriculture:

The beakers you produce would be broken into about 5-10 equal chunks. Those chunks would be randomly assigned to techs that agriculture leads to with probability proportional to the weight. So for each chunk, that chunk is much more likely to go towards Pottery than towards Calendar.

What this means is that you are making progress towards multiple techs at once. At some point, one of those techs will be completed, and you'll discover it. You will still have progress towards the other techs.

Naturally, the tech tree would be different. Because players wouldn't see it, it could be more elaborate, with many more links between techs. Also, there would be more techs total. There would be a lot of new, rarer techs that are only linked to weakly by other techs. It would be very unlikely for any given player to discover any given one of these. But over the course of the game, you're likely to get some techs that no one else is likely to ever be able to research. This would make tech trading a lot more interesting, because trading for a tech might be the only way for you to get it! It will also make tech stealing via espionage points a useful weapon for breaking monopolies of selfish tech-discoverers.

Now, other than focusing on a tech you have, there are a couple other options:
  • Focusing on what tiles your population is working gives you points towards techs that will help you improve those tiles' output. For example, by working forests, you'll get points towards Bronze Working, and by working river tiles, you'll get points towards Agriculture.
  • Focusing on what kinds of specialists you have gives you points towards the kinds of techs great people of that type would give you. Having citizens also gives points towards useful techs. In fact, I would probably make citizens a good way to get some good early techs that are otherwise difficult to get.
  • Focusing on divine inspiration gives points towards religious techs. If you already have a religion, it can also give points towards generally awesome techs.
  • Just thinking creatively about anything at all is the catch-all option. You'll get points towards a variety of techs, including ones that are otherwise hard to reach, but since the points are so diluted it will take longer before you complete any one of them.
Other factors in research would include some random variation in how effective your efforts are each turn, and some bias towards techs you have points invested in already.

Additionally, a player could focus on two areas at once. Then, their research points are split between the two point distribution schemes. This might allow you to say, focus on both Agriculture AND Hunting and be more likely of getting Animal Husbandry first than by choosing either of them alone. There's also the potential to code in different values for certain combinations of choices, although that could get pretty complicated.

Implementation

I haven't implemented anything yet. I'm going to however, and help would be good as well.

I've looked at some of the research-related functions in the DLL and in Python, and I'm not sure if it will require DLL work or not. There's definitely a Python way to interrupt the normal sequence of "ask what player wants to research, then apply commerce to that tech", so it could well be possible we don't need to change the DLL. I am set up to do it though, and I'm a programmer.

For me, I don't think the logic will be the hard part. The algorithm and even data storage is not very complicated. What I don't know how to do is create a screen so that the player can make choices. It would need to show the player's five highest value techs according to some algorithm, plus a button each for the other special options. The player needs to be able to have any 1 or 2 of these selected at a time. Additionally, it might be good to remind the player that they can adjust these values periodically.

Another thing that has to be done is create an AI function to pick which things to emphasize. However, since no human knows yet what a good strategy would be... let's just say the first version of the AI won't be that hard to program. ;)

The other major part of this project is redoing the tech tree. I think we can get away with reusing existing art (i.e. use the Writing icon for a Calligraphy tech, or the Agriculture icon for Advanced Agriculture). However, for this to play well, we need to put quite a bit of thought into deciding which techs lead to which others, and how strongly. Also, we want to add a good number of new, non-critical-to-the-tree but pretty cool techs that do useful things. I think this will take a lot of time, a lot of creativity and maybe a bit of historical knowledge too. :cool:

I imagine there will also be some other tweaks to game mechanics, "just because we can" and with the excuse that techs and the tech tree work differently now.

To summarize all that, we need these things done:
  1. Logic
  2. Interface
  3. AI Logic
  4. Tech tree redesign

Part two I could definitely use help with, and part four will certainly need more than one person. Oh, and I almost forgot part 5:

5) Figuring out what the problems are with this scheme, and coming up with better ways to do it that avoid those problems. Clearly, I need outside assistance on this one. ;)

Any comments, discussion and help is appreciated.*

*Except if you are just complaining that removing tech research choice would ruin the game and isn't worth pursuing. You are obviously not the target audience and I'll kindly refer you to the Strategy forum (which is awesome).
 
Woah! Cool! :goodjob: I'd like to help, but unfortunately I'm not a programmer (yet). Could I help by sketching out interface ideas?
 
Certainly! Also, remember that a good portion of the work will be figuring out a fun tech tree. I think anyone is qualified to help with that part.
 
The game represents research and discovery poorly. In reality, you don't plan to discover writing in a couple hundred years. You're just there, existing, and at some point... BAM! You realize that notating things on a physical medium in an organized manner might have a future to it.

I had the very same thought the first time I ever played Civ.

Great idea! Seems well thought out.
 
This is a very interesting way of doing it. Looking forward to hearing more.
 
Good call. I have also been thinking the same lines. :)
Also don't forget about goody huts giving tech (but not a whole one). When seeing for example an enemy with a new weapons should give some tech points in that direction.
 
WOW dude this is an awesome idea!:D I like many others it seems have always felt a little too constricted by the tech tree idea. (Although civIV does a great job to loosen up the constraints by giving different paths to research some techs) I have always felt that a more organic way of researching techs was needed and that is exactly what you have proposed!:goodjob: I cant wait to see what comes of this.

On a constructive note. For the interface, what about a screen like the BtS espionage screen with all your options for research laid out in front of you, from here you can decided what area you wish to put more weight into (be it military, agriculture, trade, resources (mining etc), religion, cultural pursuits (drama, literature etc) and so on) then give your weight into your 5 areas: tiles worked, specialists, population, divine inspiration, and creativity. This would allow for a more fluid and organic tech tree, as in the early game techs would be very random and hap hazard, but towards the later game, when your empire is established you could create an extremely specialized research plan.

Aranor
 
This, actually, was in SMAC. I, being like, 12, at the time, didn't like it but ten years later I realize how cool the idea actually was. So go, make it!
 
Well, given the number of positive responses, this seems worth following through on. :)

I think what I'm going to do is just fix up the code so the game engine works like that, and add a makeshift interface. Then it will be possible to make XML changes to the tech tree and observe the results. I think that there's going to be a seriously significant amount of XML changes necessary to get a tree that plays well, so hopefully people will be able to help with that. Especially people who know anything at all about history, my own knowledge is very rough and the inaccuracies in the existing tech tree aren't going to help me. ;)

Thanks to all the suggestions and encouragement so far.

@Zuul: Excellent point about the goody huts. Hey, that could even make the "barbs spawn" effect not completely suck for you!

I think there's actually a lot of potential for interesting effects where you get some points towards a tech outside the normal research path. Also, the Oracle and Liberalism abilities would be very interesting and powerful (and too cheap as is). Oh, and there's lightbulbing...

@Aranor: The idea of having a weight-based interface may be a good one. I think we'll have to wait until we have a more-developed tree to find out, though. It's really hard to guess exactly how much control you'll need or want.
Were you also suggesting allowing people to focus on broad categories like "trade" and "resources"? I was kind of shying away from that, because I think most new ideas aren't had by deciding what you want to be better at. Instead, breakthroughs usually happen when you're working on something you never would have thought was related (or frequently, when you are combining two apparently unrelated existing areas of knowledge).

@Goldflash: I never played SMAC (or most games, actually); did it have any cool features I missed? I did a quick search but couldn't find any mention of its research system.
 
@Goldflash: I never played SMAC (or most games, actually); did it have any cool features I missed? I did a quick search but couldn't find any mention of its research system.
In Alpha Centauri you set a research policy to focus on one (or more) of four things:

Power
Explore
Build
Discover

IIRC, you could focus on just one (thus have greater control over one specific research path - for example go all out on "Power" if you are in a war) or several (less control over what you get, but more diversified discoveries).

I don't know the nuts and bolts of how it worked, but I imagine all of the techs then had a certain weighting towards these four attributes.

I really like the idea of research being based on your terrain, especially in the early game where you are surrounded by terrain and resources that you can't work yet, and need the appropriate techs. I don't know about the other options, they seem quite complicated. I'd recommend looking at implementing your terrain model, or the Alpha Centauri system, just for starters (I know a lot of people would love you if you introduced the SMAC model to Civ IV!).

Good luck with the mod.
 
Were you also suggesting allowing people to focus on broad categories like "trade" and "resources"? I was kind of shying away from that, because I think most new ideas aren't had by deciding what you want to be better at. Instead, breakthroughs usually happen when you're working on something you never would have thought was related (or frequently, when you are combining two apparently unrelated existing areas of knowledge).

The point I was making is that if you give demographics rather than focus on building on techs that you already know as your areas of research you achieve exactly what you want in that the next tech would be completely obscured from your vision depending on the weight you put into your demographics you would have no idea what could come next. If you are researching along the lines of a previously discovered tech then you will already know what the next step will likely be. From what I understand from reading your first post, this is what you would like to avoid.

Even in ancient societies they would have had knowledge of different demographics and how they effect daily life. in this respect I think demographics sliders would be best if you wanted to you could soften the amount of research that is done in the early game and give more and more bonuses to research as time goes on to show societies progression forward and understanding of science.

Aranor
 
Question:
Would resources you currently cannot see contribute at all? Say you have sources of Iron in your territory but you do not have iron working, yet your workers work tiles where Iron will one day be. Would this improve your research into Iron Working?
Or, in the very least, if your citizens were working on tiles with mines (or you were building a lot of mines), would this contribute to Iron Working?

Also, are there events or buildings that might improve your understanding of a technology? For instance, a major astrological event might give you a bonus to Astrology or building Stone Henge might make Calendar a bit easier to understand (since you, in effect, have a calendar worked out).
 
Top Bottom