Leveling and Questing in Endless Space

Started by
13 comments, last by overactor 10 years, 12 months ago

>> Actually I'm thinking the questgen IS the goal of the game

then you may find this helpful...

http://www.gamedev.net/topic/638940-types-of-quests/

its a thread about designing questgens

Norm Barrows

Rockland Software Productions

"Building PC games since 1989"

rocklandsoftware.net

PLAY CAVEMAN NOW!

http://rocklandsoftware.net/beta.php

Advertisement

This sounds really cool but I don't think I can do it like this. The first problem would be that of the map itself. I'm using fairly simple random seed generation to load a 2d map of several dozen stars per sector, 3x3 sectors at a time. Each sector has to process events, move AI entities and abstractly resolve AI-AI interactions. You can see at some point that would become untenable regardless of the system.

I do like the idea of you becoming greater and greater in power but one thing the wilderness/civilization division would hide is the problem I've seen in games like Freelancer where you have to cross through regions filled with unworthy, lower level enemies. I know you need some of this in order to have a point of reference to feel you've improved, but I'm hoping a +5/-5 or so level range in terms of class differentials per region will do this.

I feel like it could work, You could work in explicit levels, your ship's engine and other equipment determines which level you can access.

Each level consists of an endless amount of sectors and each level X sector contains n² level X-1 sectors, where n would be the order of magnitudes you allow.

When you are in a certain sector, what you need to generate is the neighboring sectors of the same level, the sector that is one level higher this sector is located in and the lower level sectors the current one contains.

To generate a level 1 sector which I guess would be a local group of stars in a galaxy, you would need to fetch some information from the level 2 sector it is located in, such as star density and civilization density. At level 2 these things would be trivial and close to unobservable, the things you travel between are bigger clusters of stars where advanced civilizations are located. Level 2 sectors fetch information regarding the density of star clusters form the level 3 sectors they are located in. You can see how this goes on. Basically, each level sector generates what is truly relevant for a person traveling at that level, the level lower is basically white noise but just important enough to be generated as well, but unimportant enough that it doesn't affect the higher level. The higher level sector your sector is in determines the parameters by which yours is created. Not that a level 1 sector can contain a level 2,3 or even 10 society, but the chances become exponentially smaller with each higher level. Similarly, a level 10 sector will likely contain millions of level 1 civilizations, but their influence on the level 10 sector is negligible.

I believe this could solve both of your problems, you don't have to travel between ridiculously big low level areas, as each level X sector will contain the same amount of level X civilizations. And map generation and AI-AI interactions, if a bit more complex is still doable. At least that's what I think, maybe I'm just underestimating how heavily this would weigh.

I'll conclude with sa (simplified) example of how map generation could work at the beginning of the game.

Start game:

Generate 1 level 10 (presumed highest level) sector:

  • Lay out structure of vains of superclusters. (generate supercluster density map)
  • Place level 10 civilizations.
  • Work out AI-AI interactions of level 10 civilizations.
  • Generate level 9 civilizations density map, based on supercluster density and proximity of level 10 civilizations.
  • Pick level 9 sector player will be located in.

Generate this level 9 sector:

  • Use supercluster density map to place superclusters.
  • Place level 9 civilizations using civlization density map.
  • Work out AI-AI interactions of level 9 civilizations towards each other and possible attitude towards close level 10 civilizations.
  • Generate level 8 civilizations density map, based on superclusters and proximity of level 9 and 10 civilizations.
  • Pick level 8 sector player will be located in.

Generate this level 8 sector:

  • Lay out structure of vains of clusters in superclusters. (generate cluster density map)
  • Place level 8 civilizations using civilization density map.
  • Work out AI-AI interactions of level 8 civilizations towards each other and possible attitude towards close level 9 and 10 civilizations.
  • Generate level 7 civilizations density map, based on cluster density and proximity of level 8, 9 and 10 civilizations.
  • Pick level 7 sector player will be located in.

I think you can see how this would go on. In the beginning, you need to generate a linear series of sectors and form then on, whenever you travel to a new sector, you need to generate all directly underlying sectors and all neighboring sectors of the same level.

"You can't just turn on creativity like a faucet. You have to be in the right mood."

"What mood is that?"

"Last-minute panic."

>> Actually I'm thinking the questgen IS the goal of the game

then you may find this helpful...

http://www.gamedev.net/topic/638940-types-of-quests/

its a thread about designing questgens

Thanks very helpful!

--------------------Just waiting for the mothership...

I think you can see how this would go on. In the beginning, you need to generate a linear series of sectors and form then on, whenever you travel to a new sector, you need to generate all directly underlying sectors and all neighboring sectors of the same level.

Maybe I'm not fully understanding, but with this system wouldn't you have to cap out at some level? With what I'm thinking of you get away with transporting the player to another location of space without really worrying about anything other than generating the challenge levels. It does have the disadvantage of never being able to go home again, but it makes it easy to have continuous, vast tracts of space with meaningful things to do.

--------------------Just waiting for the mothership...

Maybe I'm not fully understanding, but with this system wouldn't you have to cap out at some level? With what I'm thinking of you get away with transporting the player to another location of space without really worrying about anything other than generating the challenge levels. It does have the disadvantage of never being able to go home again, but it makes it easy to have continuous, vast tracts of space with meaningful things to do.

Well, the problem is that I was using variables dependent of higher level sectors to generate sectors. And this of course only allows you to work downwards from the highest level. But come to think of it, I guess you could work upwards. You basically have to create a sector with the limitation that the sector you know it contains, fits in it.

For instance, if a level 2 sector has 12 stars and 3 civilizations in it, you have to generate a level 3 sector with at least on sector in it where the star density would be 12 and the civilization density 3. If the player now moves to that level 3 sector (i.e. gets a ship upgrade that allows him to travel greater distances and uses it), you have to generate the level 2 sectors this level 3 sector contains as I explained in my previous post. With the exception of course of the sectors the player already traveled to and their neighboring sectors.

"You can't just turn on creativity like a faucet. You have to be in the right mood."

"What mood is that?"

"Last-minute panic."

This topic is closed to new replies.

Advertisement