Cove (temporary working title) is meant to be an exploration
game that will allow players to interact without mechanics of conflict. Players will explore an ever-shifting
algorithmic world which only lasts as long as a player is present. Along the way, they will discover McGuffins
(again, just a temporary term) which can then be placed to prevent that small
area from changing. Players can thus
share locations that they consider interesting or pleasing, slowly building a
stable world out of algorithmic chaos.
The landscape is intended to be both an aesthetic experience
and to offer algorithmic movement puzzles. Cove will not be a game of pressure; players will
not be threatened by failure states (death or similar) and the main constraining
resource will simply be time spent playing.
That said, not all terrain configurations will be equally quick to traverse. While falling or drowning will not be lethal
concerns in Cove, gravity and basic physics will still be a factor in movement. Cliffs, waterways, broken terrain, and dense
forests – all will consume more time, and demand more roundabout routes, to
traverse than flat plains (which will be uncommon due to its inherent simplicity). In theory, once a player encounters an
interesting spatial puzzle (or easy pathway to another stable area) that player
can then “lock” the location into permanence via McGuffin to share the
experience.
Each game world will be saved as a file which can then be
loaded for play, either locally for solo play or on a server for multiple
players to explore simultaneously. The
game will generate, in real time, terrain chunks around the players’ locations
(probably drawing on the players’ computers for at least some of the
calculations, otherwise scaling would probably be a nightmare). This terrain will stay in place as long as
the players are within a certain distance, at which point the chunks will be
deleted. The exception is McGuffins; the
chunks around them will be locked in place and saved, and while they may need
to be de-instantiated (we’ll see about performance) they’ll simply be re-created
from the saved data when a player approaches again.
That’s it - aside from the technical meat of terrain
generation. The mechanics described
above form a framework within which I can explore algorithmic world generation. I’ve previously done infinite real-time terrain-generating
tech (albeit not in a multiplayer game), so that’s not what’s most interesting
about this project. The terrain algorithms
themselves, and ways to render and display them, are what most interest me. This project began from thinking about
different methods for forming algorithmic terrain, so I’ll have a lot more to
say about that as this project gets underway. Such posts will hopefully
make up the bulk of this blog for a while.