Skip to content

Instantly share code, notes, and snippets.

@porky11
Created November 23, 2018 16:13
Show Gist options
  • Save porky11/7eee07189bedb6e74b2c19ddfc787e1b to your computer and use it in GitHub Desktop.
Save porky11/7eee07189bedb6e74b2c19ddfc787e1b to your computer and use it in GitHub Desktop.
Exploration Game Idea

Story

Introduction

You are a boy/girl living in the city. Now you are old enough to travel alone. Since you are a cyborg, you are interested in some island, which was famous for different kinds of technology, even cyborg extensions. Nowadays there's nothing going on anymore. It's just a small island, where some nature people live. Because of their era of prosperity, there also still live many different kinds of people of different races.

You assume it's going to be a relaxing vacation, where you explore the landscape and talk to native people there. You also want to see the ruins of the factories. It would be cool to explore them, too. Maybe you even meet some former workers, which can tell you about this place. But most of them are probably already dead anyway. The best thing, you can imagine, is finding some acient body upgrade, which you can use. Even if you find some, it's unlikely it will match and still work, but the factories here were the predecessors to some famous factories in the city, which turned you into a cyborg.

World

The main place is some small island. There are multiple areas with different communities of people to discover.

Areas

Jungle

A large, but pretty flat area, where some nature people live.

Caves

The caves are under the island and connect multiple areas of the island. There live some armor humans.

Mountains

The mountains are difficult to climb by humans. There only live some birdy humans.

Lake

There's a big lake on the island. In this lake live some amphibian humans.

Noble district

There's a district, where mostly former workers and relatives live, which are pretty rich now. There live different kinds of humanoid races.

Factory ruins

The ruins of the factories are not easy to enter, but there are some interesting upgrades and robot enemies.

Secret laboratory

Deep under the factory ruins are still people working on secret projects. They seem to have evil plans with their new technology.

Communities

Nature people

These only have pretty weak weapons like knives and spears. Some of them have some acient technologies, but don't know, how to use them. They don't like being exploited by wealthy or stronger people.

Armor humans

These are pretty large and strong. They also have armor plates on their bodies, so it's difficult to hurt them. They normally live in wet caves, where noone cares, what they do. They would like to live on the surface without being restricted.

Birdy humans

These are birdlike humanoid creatures, which can even fly. They are rather wise and intelligent.

Amphibian humans

Wealthy people

Robots

Evil organization

Main plot

After you arrive on the island, there are multiple things, you can do. When talking to people, they tell you different things, you could do. Depending on your actions, there will be a few main stories.

Peaceful vacation

You almost don't help or kill anyone. You learn about the cultures and the history of the island. In the end you find some interesting cyborg upgrade, so you had a real nice vacation.

Helping a specific community

Some of the communities want your help, so you decide to help one of them. They have problems with some of the other communities, so you have to kill people to help them.

The secret of the island

You really want to find some interesting things on the island. So you only help people if you think, you will find something interesting. After some time you discover some secret area, where still people work on some projects. They seem to be dangerous and also don't like you. So you have to fight them.

Gameplay

Abilities

  • walk
  • one controller axis or two buttons
  • optionally a run and a slow button
  • small jumps
  • jump direction and high depending on multiple factors
  • jumps only about as high as possible in reality
  • jumps only useful for specific cases, not for platforming sections
  • just using the inbuilt collision physics for jumping may be the best
  • either single button to jump or axis of body stretching to use in combination with ducking
  • ducking/crawling
  • ducking either by using a stretching axis or a duck button
  • moving while ducking means crawling
  • climbing almost everywhere
  • grab a wall when touching it
  • press button to release it
  • press jump button to jump away from it
  • shooting
  • free aim in all directions
  • aiming using a stick or the mouse
  • shoot using normal gunlike weapon, which can kill humans in one shot

Upgrades

  • different weapons
  • bombs to destroy some kinds of walls
  • electric shot to open electric doors
  • etc.
  • short flying
  • jetpack
  • force gets weaker the longer you fly
  • compareable to a jump in platformers
  • mainly suited for overcoming high obstacles
  • gliding
  • higher fall friction
  • lower fall speed
  • useful for overcoming large distances (canyon)
  • wind would more likely blow you away, when activated
  • grapple hook
  • can be thrown and attachted to most surfaces
  • lets you hang
  • climbing gloves
  • allows climbing on very steep angles and ceilings
  • allows climbing on smooth/slippery surfaces (ice walls)

Implementation

Tasks

  • world editor
  • game engine
  • exact story and world construction

Program

  • continuous world
  • everything in a single or if neccessary multiple 2D planes
  • no loading times
  • world built from polygons
  • polygon collision mask
  • redering using image or noise texture
  • different types of polygons (solid, water, destroyable by ..., etc.)
  • character collision using point collisions
  • two points for the ground
  • one point for the head
  • one point for the arm (climbing)
  • collisions may trigger physical movement
  • character state changes depending on point collisions and key presses
  • animation using vector graphics?
  • just using image based animations or polygon based models would be easier
  • the character may rotate
  • when walking on a round area
  • when being hit
  • when being in air
  • also see sonic games or fancy pants adventures
  • enemies
  • similar to character implementation
  • some kind of AI

Needed world object types

  • static world polygons
  • attacks (shoots)
  • characters (collision points, look/animations, controls, controller (AI, keyboard&mouse, gamepad))

Organisation

  • global storage (ECS?) of the world polygons grouped by chunks/rooms
  • efficient collision detection
  • possible to unload parts of the world
  • global storage (ECS?) for dynamic objects
  • collision detection between dynamic objects only near main character
  • objects in invisible chunks may be deactivated at all
  • one of both storages for each world layer

Schedule

The tasks will be grouped into mostly independant categories, weakly sorted by working order and tagged with an estimated time.

Story and World (65 days)

  • personality and goals of important characters (2 days)
  • all dependencies of story events on decisions (4 days)
  • general world interconnectivity of main regions (2 days)
  • connect story paths with powerup requirements (1 day)
  • matching abstract world map with locations of possible story events, powerups and powerup requirements (3 days)
  • connect locations in abstract world map with regions (1 day)
  • design an exact world map based on these (5 days)
  • design entities (enemies, characters and bosses) and connect them to correct locations (10 days)
  • draw animations for every entity (25 days)
  • write some dialog (12 days)

Engine and Editor (90 days)

  • storage types of main objects, with ability of copying, adding and destrying objects (3 days)
  • simple world editor, add new objects to world and display them (1 day)
  • physics and collision detection for all kinds of objects (7 days)
  • all controls including powerups for main character (4 days)
  • animation logic for main character (3 days)
  • specific collision events like damage, destroying, getting powerups (3 days)
  • some efficient way for collision detection and object activation (4 days)
  • saving and loading world and world state (2 days)
  • AI for every entity, includes boss fights (7 days)
  • graphical more advanced renderer (4 days)
  • build world (7 days)
  • build special objects like doors, statues, etc. and place them in the world (4 days)
  • decision/event system (3 days)
  • place entities in the world, dependant on events (4 days)
  • text boxes (4 days)
  • talking system (2 days)
  • attach event based logic to some entities, also includes dialog and scripted reactions (4 days)
  • main menu, pause menu (6 days)
  • polishing (18 days)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment