Skip to content
This repository has been archived by the owner on Nov 22, 2023. It is now read-only.

Commit

Permalink
Outline design of research systems (#168)
Browse files Browse the repository at this point in the history
* Summarize research options

* Refine research goals with Sixfold

* Initial notes for assimilation with Sixfold

* Add initial notes on genetics research

* Outline of hive mind system

* Fix broken link

* Proofreading <3

Co-authored-by: TimJentzsch <[email protected]>

* Add intelligence as an implied theme (Sixfold)

* Differentiate milestones and acheivemetns (Tim)

* Add links to glossary for upgrade options

Co-authored-by: TimJentzsch <[email protected]>
  • Loading branch information
alice-i-cecile and TimJentzsch authored Dec 28, 2022
1 parent f486d5b commit 35c20fd
Show file tree
Hide file tree
Showing 6 changed files with 249 additions and 0 deletions.
4 changes: 4 additions & 0 deletions design/src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,7 @@
- [Creative Automation: Case Studies](./high-level/creative-automation-case-studies.md)
- [Production Chains](./production-chains/index.md)
- [Raw Resources](./production-chains/raw-resources.md)
- [Research](./research/index.md)
- [Assimilation](./research/assimilation.md)
- [Genetics](./research/genetics.md)
- [Hive Mind Upgrades](./research/hive-mind-upgrades.md)
42 changes: 42 additions & 0 deletions design/src/glossary.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,14 +11,26 @@ Key concepts and terms from game design.

### Accessibility

### Achievements

### Automation

### Challenge

### Constraint

### Design-by-stumble

### Depth and complexity

### Diagetic

### Double-edged

### Early game, mid game and late game

### Flavor text

### Fun

### Genre
Expand All @@ -27,18 +39,34 @@ Key concepts and terms from game design.

### Loop

### Ludotography

### Mechanic

### Plausibility and realism

### Progression

### Quality of life

### Randomness

There are two kinds of randomness: input randomness and output randomness.

### Tuning levers

### Tutorialization

### Upgrade

### World generation

## Factory Builders

Terms defined here are standard elements of the factory builder genre.

### Alert

### Belt

A belt is a simple logistic entity which transports goods in a single direction.
Expand Down Expand Up @@ -94,6 +122,8 @@ Previously copied layouts are simply overwritten.
- [Factorio: Controls/Tools](https://wiki.factorio.com/Controls#Tools) (copy/paste/cut)
- [Dyson Sphere Program: Mass Construction (Lv1)](<https://dyson-sphere-program.fandom.com/wiki/Mass_Construction_(Lv1)>) (enables copy/paste functionality)

### Encyclopedia

### Filter

Filters allow only one set of goods to pass through.
Expand Down Expand Up @@ -137,6 +167,10 @@ The consumers in the network (e.g. logistic bots) can access the producers in th

- [Factorio: Logistic network](https://wiki.factorio.com/Logistic_network)

### Map

### Notes

### Overlay

Overlays are UI elements which allow the player to view additional information about entities or processes.
Expand Down Expand Up @@ -166,6 +200,10 @@ The distribution of power is usually separated from the distribution of other re
- [Satisfactory: Power](https://satisfactory.fandom.com/wiki/Power)
- [Dyson Sphere Program: Power](https://dyson-sphere-program.fandom.com/wiki/Category:Power)

### Production statistics

### Recipe

### Research

Research is the main means of progression.
Expand All @@ -189,6 +227,8 @@ There are different types of resources:
It's an intermediate set towards the production of end products.
- **End product**: A resource that can be used directly for some in-game benefit.

### Sandbox

### Science pack

An intermediate resource that can be used to research technologies in the _lab_.
Expand All @@ -213,6 +253,8 @@ In some games there are also many other entities to guide the behavior of large
- [Factorio: Railway](https://wiki.factorio.com/Railway)
- [Satisfactory: Electric Locomotive](https://satisfactory.fandom.com/wiki/Electric_Locomotive)

### Undo

## Ecology

These terms come from the science of ecology and its related fields.
Expand Down
39 changes: 39 additions & 0 deletions design/src/research/assimilation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# Assimilation

When the player **assimilates** a species, they domesticate it, learning how to care for and reproduce it, and bringing it into the broader multi-species hive.

Assimilation serves several gameplay purposes:

1. Gate wildly different technology in a visually distinctive way.
2. Tutorialize the process of caring for a new species.
3. Give players a reason to care about and get excited by the flora and fauna they see around them.
4. Encourage players to explore new areas.

In order to assimilate a species you must:

1. Study the species in the wild for a time.
1. You must observe key life cycle events, which unlocks that section of their encyclopedia entry.
2. Capture a number of specimens of a species.
3. Keep that population alive for several life cycles.

Once you have assimilated a new species, you unlock control over [genetics](genetics.md) for that species, and can build reproductive structures for that species.

## Implied Constraints

- players should be able to tame almost anything they meet
- players must be able to clearly differentiate between tamed and wild organisms of the same type
- species must be mechanically and visually distinct
- you cannot have 3 species of dragonflies!
- this is because players must be able to clearly tell when an encountered species is new to them
- there must be a moderate number of species in the game
- with too few species, players will get bored
- with too many species, finding and understanding each species will explode complexity and development costs
- exploration becomes an important game mechanic
- map cannot start fully visible
- different species must live in different regions
- each species must have an interesting life cycle that players must learn about and master
- survival, feeding and reproduction are the obvious choices
- unique / interesting / challenging behavior is also a good option
- progression must be robust: there must be many paths to the same resources and comparable tools
- each pathway should feel meaningfully distinct: this plays well with unique life cycles
- [_Against the Storm_](https://store.steampowered.com/app/1336490/Against_the_Storm/) and [_Oxygen Not Included_](https://store.steampowered.com/app/457140/Oxygen_Not_Included/) do a fantastic job of this
68 changes: 68 additions & 0 deletions design/src/research/genetics.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
# Genetics

**Genetics** allows the player to modify species that are [part of their hive](assimilation.md).
In this menu, players can:

1. Unlock **mutations** for a species.
1. These can add new options for the species.
2. These can also dramatically improve the species in some axis to open up a new role for it.
2. Create a new **strain** of a species.
1. Strains are part of the same species, and share an unlocked upgrade pool.
2. Each strain can select a different set of mutations.
3. Assign mutations to a specific strain.
1. Choices are not locked in, but changing them comes with a cost.
4. Configure other strain-level settings, such as signal responses.

The mechanics for assigning mutations are fairly simple:

1. There are some number of slots for each species, typically corresponding to some visible part of their body.
2. Each strain may select up to 1 mutation for each slot.

To unlock mutations, you must accquire resources, and perform research at a dedicated species-specific facility.

Creating strains and changing strain-level settings (other than to select the first mutation for each slot) comes with some cost to avoid thoughtless twiddling.

## Realism

This, unsurprisingly, is a wildly "unrealistic" model of genetics and crop / livestock breeding.
It is, however [plausible](../glossary.md#plausibility-and-realism), as it *feels* like genetics and synergizes with the game's aesthetics.

Very briefly, there are some key facts about real genetics, and why they make bad game mechanics:

- genetics involves random mutation
- yes, and [output randomness](../glossary.md#randomness) is generally frustrating
- most mutations have no effect
- wow, so exciting
- strains aren't genetically homogenous
- this is extremely hard to convey to players
- this is very frustrating at a scale of hundreds to thousands of organisms
- this is likely to have a significant performance cost
- not all functional mutations are visible
- yes, but players need to be able to tell what's going on
- cross-breeding is complicated and involves carefully selecting lines and genetic analysis
- yes, and that's not what this game is about
- traits typically show complex genetic patterns of dominance and recession and polygenetic origins
- yes, and that's not what this game is about
- eusocial insects have really complicated chromosomes!
- yes, I know: if it adds gameplay value we can make a nod to that
- eugenics is Very Bad
- yes!
- plant and animal breeding is generally accepted as ethical however
- don't capture people and subjugate them to the hivemind and force them to breed, okay?
- ~~unless they're into that~~

Again, this game is [*inspired* by biology, not a model of it](../high-level/game-thesis.md).

## Implied Constraints

- each upgrade must be visually distinguishable
- this follows from the [key design constraints](../high-level/game-thesis.md#key-design-constraints)
- strains must be visually distinguishable
- this should be done via player-driven color selection
- all combinations of mutations across different slots should be compatible
- incompatible mutations must belong to the same slot
- mutations should typically represent an increase in power over their base version
- unlocking new mutations should be exciting and worth the resource investment
- every upgrade slot should have at least one "generally good" upgrade
- mutations within the same slot should have clear tradeoffs between them
- [double-edged](../glossary.md#double-edged) upgrades are particularly good for this
78 changes: 78 additions & 0 deletions design/src/research/hive-mind-upgrades.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
# Hive Mind Upgrades

High-level play of factory builders involves understanding a *tremendous* amount of information and using an enormous number of [quality of life](../glossary.md#quality-of-life) tools.
This can be overwhelming, and detracts from the new player experience.
However, simply excluding these tools makes managing late-game factories effectively very hard, and will frustrate genre veterans.

To deal with this tension, many of these tools are traditionally buried in menu settings, hidden behind keybinds or relegated to mods.
However, there's a better approach: enable them slowly over time in a [diagetic](../glossary.md#diagetic) way.

In *Emergence*, the player controls the hive as a whole.
We can play into this theme by framing quality of life and information upgrades as the hive mind getting smarter.

To differentiate these further from [genetics](genetics.md) research, these upgrades don't cost resources.
Instead, they unlock as various milestones are completed for each playthrough.

These upgrades are arranged in a tree structure: both for complexity management and because many of these upgrades are logically locked behind earlier ones.

Each upgrade can be toggled on-and-off freely in the same menu, so players can control the information they're viewing.
When unlocked, these begin in the off state, but an alert notifies the player that they've unlocked a new hive mind upgrade.

## Upgrade options

Several categories of [upgrade](../glossary.md#upgrade) belong here:

- basic upgrades
- these are too important to [early game](../glossary.md#early-game-mid-game-and-late-game) [quality of life](../glossary.md#quality-of-life) and [tutorialization](../glossary.md#tutorialization) to be gated behind all but the most basic achievements
- [alerts](../glossary.md#alert)
- [undo/redo](../glossary.md#undo)
- [pipette](../glossary.md#pipette)
- [clipboard](../glossary.md#clipboard)
- basic [encyclopedia](../glossary.md#encyclopedia)
- zoning strength
- pheromones
- terraforming
- [map](../glossary.md#map)
- informational upgrades
- local, regional and global [production statistics](../glossary.md#production-statistics)
- [recipe](../glossary.md#recipe) lookups
- organism statistics
- soil and water statistics
- signal [overlays](../glossary.md#overlay)
- geographical status [overlays](../glossary.md#overlay)
- organism intent and actions
- expanded [encyclopedia](../glossary.md#encyclopedia) entries
- simulation [sandbox](../glossary.md#sandbox) upgrades
- this is a special creative mode, used to test designs quickly and at no cost
- time is paused while in this mode
- further upgrades unlock the ability to further modify environmental conditions, speed up time, get more space and so on
- production planner capabilties belong in this tree
- [quality-of-life](../glossary.md#quality-of-life) upgrades
- [blueprints](../glossary.md#blueprint)
- customizable [alerts](../glossary.md#alert)
- map [notes](../glossary.md#notes)
- [complexity](../glossary.md#depth-and-complexity) upgrades
- [assimilation](assimilation.md)
- [genetics](genetics.md) research
- maximum number of strains of each species
- tame and perform genetics research on multiple species at once
- complex game mechanics unlocked via genetics research
- [research](../glossary.md#research) queues

Players can choose to opt out of this system during [world generation](../glossary.md#world-generation), allowing them to access all of the complexity at the very beginning.
This is mostly useful for genre veterans and experienced players.

## Implied constraints

- *Emergence* must have an achievement system
- unlocking milestones for the first time should grant an achievement
- achievements must be tracked on a per-playthrough basis
- achievements used in this system should be achievable in every playthrough by every player
- achievements should show progress towards the goal
- achievements should be conceptually tied to the type of tool they unlock
- informational upgrades should come when you need that new information for example
- we must have a handful of very basic achievements to unlock the key early-game tools and introduce these systems to players ASAP
- this system of upgrades is one of the main forms of [tutorialization](../glossary.md#tutorialization)
- achievements must be shared between players in a multiplayer game
- each achievement should have a run-specific in-game reward
- intelligence, and the development of intelligence, becomes a theme of the game
18 changes: 18 additions & 0 deletions design/src/research/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Research

[Research](../glossary.md#research) is the primary mechanism of progression in the [factory builder genre](../high-level/genre-analysis.md).
Raw resources are transformed and then consumed to unlock new options and receive permanent boosts to effectiveness.

Research serves many goals:

1. Provide a meaningful, nearly limitless sink for raw resources.
1. Most other resource sinks ultimately *improve* the rate of resource extraction and refinement!
2. Gate [complexity](../glossary.md#depth-and-complexity), by slowly unfolding options throughout the game.
1. This feels more meaningful and is less patronizing as players can choose the order, and control the rate of unlocks.
3. Provides a sense of [progression](../glossary.md#progression) and rewards players for their successes.
4. Provide players with an outlet for mechanical [creativity](../high-level/creative-automation.md), by allowing players to choose how their playthrough unfolds.
1. In most games, this effect is quite limited, as you are steadily unlocking a fixed tree with limited actual freedom.
5. Showcases late-game mechanics to let players plan and get them excited about how cool it's going to be.

In *Emergence*, there are three distinct forms of research: [assimilation](assimilation.md) (capturing new species), [genetics](genetics.md) (refining and branching existing species) and [hive mind upgrades](hive-mind-upgrades.md) (increasing information and direct player upgrades).
These are primarily split for thematic cohesion, but that choice also serves to increase system richness and add more interesting and distinct end goals.

0 comments on commit 35c20fd

Please sign in to comment.