Monday, September 21, 2015

An Idea: Cove

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.

1 comment:

DebH said...

Very cool. Something that I'll be very interested to check out.