tile-types #15
54
gdd.md
54
gdd.md
|
@ -8,26 +8,10 @@
|
|||
* Education
|
||||
* Supply chains
|
||||
|
||||
## Interaction Modes
|
||||
|
||||
Interaction modes can be changed via keyboard shortcut.
|
||||
|
||||
### Selection Mode
|
||||
|
||||
This is the default interaction mode.
|
||||
It can be accessed at any time by pressing the `esc` key.
|
||||
|
||||
### Build Mode
|
||||
|
||||
Build mode can be entered by pressing the `b` key.
|
||||
|
||||
## Critical Path
|
||||
|
||||
### Grid
|
||||
## Grid
|
||||
|
||||
Add a 10x10 grid.
|
||||
Tiles are highlighted a different colour when the player hovers over them with the cursor.
|
||||
Tiles can be interacted with, which turns them another colour.
|
||||
|
||||
### Diffusion
|
||||
|
||||
|
@ -62,7 +46,19 @@ private float TransferHeat(float t0, float alpha, float nx, float ny, float px,
|
|||
}
|
||||
```
|
||||
|
||||
### Tile Types
|
||||
## Build Mode
|
||||
|
||||
Build mode can be entered by pressing the `b` key.
|
||||
Build the cursor will start flashing when entering build mode.
|
||||
|
||||
Once in build mode, a tile type must be selected to build anything.
|
||||
Tiles cab be selected with the buttons along the bottom of the screen or by keyboard shortcuts.
|
||||
The keyboard shortcut to select a tile type is indicated on the button.
|
||||
|
||||
To deselect a tile type, press `esc`.
|
||||
Press `esc` again to exit build mode.
|
||||
|
||||
## Tile Types
|
||||
|
||||
Tiles start as wild tiles.
|
||||
The player can use a UI element or a keyboard shortcut to enable build mode.
|
||||
|
@ -71,14 +67,14 @@ In build mode, the player can click on a wile tile to turn it into a developed t
|
|||
* Wild tiles are green
|
||||
* Developed tiles are grey
|
||||
|
||||
### Heat
|
||||
## Heat
|
||||
|
||||
Developed tiles produce heat while wild tiles absorb it.
|
||||
Every tile has a floating-point heat value which diffuses to its neighbours.
|
||||
Add a heat map view which can be toggled or cycled to.
|
||||
It is possible to cycle the view using a UI element.
|
||||
|
||||
### Tile Health
|
||||
## Tile Health
|
||||
|
||||
Add another value to wild tiles: health.
|
||||
A wild tile can accept a certain amount of heat each tick from surrounding tiles.
|
||||
|
@ -96,13 +92,13 @@ Its effectiveness at absorbing heat scales with its remaining health.
|
|||
|
||||
Diffusion still occurs to move heat away from depleted wild tiles.
|
||||
|
||||
### Rewilding
|
||||
## Rewilding
|
||||
|
||||
Add a rewilding mode option to the UI.
|
||||
In rewilding mode, the player can click on a developed tile to turn in into a wild tile.
|
||||
The wild tile starts with 0 health.
|
||||
|
||||
### Wild Recovery
|
||||
## Wild Recovery
|
||||
|
||||
Depleted wile tiles can recover health each tick.
|
||||
The recovery rate is based on the difference between the damage threshold and the actual amount they received.
|
||||
|
@ -111,7 +107,7 @@ The recovery rate is increased if the tile has wild neighbours.
|
|||
neighbour multiplier = lerp(1, max, number of neighbours / 4)
|
||||
health restored = max((damage threshold - heat received), 0) * neighbour multiplier.
|
||||
|
||||
### Developed tile types
|
||||
## Developed tile types
|
||||
|
||||
Split developed tiles into 3 types:
|
||||
|
||||
|
@ -124,19 +120,19 @@ These types generate different amounts of heat:
|
|||
|
||||
industrial > commercial > residential
|
||||
|
||||
### Journeys
|
||||
## Journeys
|
||||
|
||||
Developed tiles have a chance to generate journeys between them.
|
||||
A journey instances a vehicle which traverses the map at a constant speed from its origin to its destination tile.
|
||||
A vehicle adds a constant amount of heat to every tile it traverses.
|
||||
|
||||
### Moving In
|
||||
## Moving In
|
||||
|
||||
Residential tiles have two new integer resources, current residents and maximum residents.
|
||||
Every tick there is a chance for residents to move in to a residential tile if the current number is less than the maximum number of residents.
|
||||
The initial number of maximm residents per residential tile is 4.
|
||||
|
||||
### Jobs
|
||||
## Jobs
|
||||
|
||||
Industrial and commercial tiles have two new integer resources, available jobs and occupied jobs.
|
||||
The chance for residents to move in depends on there being being fewer occupied than available jobs.
|
||||
|
@ -145,12 +141,12 @@ Their chance of generating a journey is proportional to
|
|||
|
||||
occupied jobs / available jobs .
|
||||
|
||||
### Commutes
|
||||
## Commutes
|
||||
|
||||
A resident moves in to a residential tile and gets a job at an industrial or commercial 'job' tile.
|
||||
The residential tile regularly generates journeys to the job tile, and the job tile regularly generates journeys in the other direction.
|
||||
|
||||
### Comfortable Living Temperatures
|
||||
## Comfortable Living Temperatures
|
||||
|
||||
If a residential tile is too hot, people will not want to live there.
|
||||
Residential tiles have a critical temperature at which the chance of someone moving into a tile becomes negative, becoming a chance that someone moves out.
|
||||
|
@ -161,7 +157,7 @@ When someone moves out, one of the jobs associated with that residential tile is
|
|||
|
||||
# Not critical
|
||||
|
||||
### Wealth
|
||||
## Wealth
|
||||
|
||||
Journeys generate a new integer tile resource, wealth.
|
||||
When a journey is completed, the destination tile accrues 1 wealth.
|
||||
|
|
Loading…
Reference in New Issue