diff options
-rw-r--r-- | assets/sketch-checkpoints.jpg | bin | 0 -> 281852 bytes | |||
-rw-r--r-- | assets/sketch-enemy-menneke.jpg | bin | 0 -> 25577 bytes | |||
-rw-r--r-- | assets/sketch-enemy-terror-uil.jpg | bin | 0 -> 38060 bytes | |||
-rw-r--r-- | assets/sketch-enemy-ventje.jpg | bin | 0 -> 30772 bytes | |||
-rw-r--r-- | assets/sketch-level-horizontal.jpg | bin | 0 -> 117928 bytes | |||
-rw-r--r-- | assets/sketch-level-vertical.jpg | bin | 0 -> 214332 bytes | |||
-rw-r--r-- | assets/sketch-platformer-elements.jpg | bin | 0 -> 237635 bytes | |||
-rw-r--r-- | assets/sketch-player.jpg | bin | 0 -> 57988 bytes | |||
-rw-r--r-- | assets/sketch-regular-level.jpg | bin | 0 -> 358615 bytes | |||
-rw-r--r-- | docs/gameplay.md | 126 | ||||
-rw-r--r-- | docs/gen/doc.m4 | 1 | ||||
-rw-r--r-- | docs/gen/style.css | 3 |
12 files changed, 130 insertions, 0 deletions
diff --git a/assets/sketch-checkpoints.jpg b/assets/sketch-checkpoints.jpg Binary files differnew file mode 100644 index 0000000..5e5eed4 --- /dev/null +++ b/assets/sketch-checkpoints.jpg diff --git a/assets/sketch-enemy-menneke.jpg b/assets/sketch-enemy-menneke.jpg Binary files differnew file mode 100644 index 0000000..2a43f70 --- /dev/null +++ b/assets/sketch-enemy-menneke.jpg diff --git a/assets/sketch-enemy-terror-uil.jpg b/assets/sketch-enemy-terror-uil.jpg Binary files differnew file mode 100644 index 0000000..f36beae --- /dev/null +++ b/assets/sketch-enemy-terror-uil.jpg diff --git a/assets/sketch-enemy-ventje.jpg b/assets/sketch-enemy-ventje.jpg Binary files differnew file mode 100644 index 0000000..6c330f9 --- /dev/null +++ b/assets/sketch-enemy-ventje.jpg diff --git a/assets/sketch-level-horizontal.jpg b/assets/sketch-level-horizontal.jpg Binary files differnew file mode 100644 index 0000000..becfa1a --- /dev/null +++ b/assets/sketch-level-horizontal.jpg diff --git a/assets/sketch-level-vertical.jpg b/assets/sketch-level-vertical.jpg Binary files differnew file mode 100644 index 0000000..f5ee3ad --- /dev/null +++ b/assets/sketch-level-vertical.jpg diff --git a/assets/sketch-platformer-elements.jpg b/assets/sketch-platformer-elements.jpg Binary files differnew file mode 100644 index 0000000..edecc90 --- /dev/null +++ b/assets/sketch-platformer-elements.jpg diff --git a/assets/sketch-player.jpg b/assets/sketch-player.jpg Binary files differnew file mode 100644 index 0000000..375050e --- /dev/null +++ b/assets/sketch-player.jpg diff --git a/assets/sketch-regular-level.jpg b/assets/sketch-regular-level.jpg Binary files differnew file mode 100644 index 0000000..5e59d11 --- /dev/null +++ b/assets/sketch-regular-level.jpg diff --git a/docs/gameplay.md b/docs/gameplay.md new file mode 100644 index 0000000..129156c --- /dev/null +++ b/docs/gameplay.md @@ -0,0 +1,126 @@ +# Concept (Loek) + +## General gameplay + +- Platformer (similar platformer mechanics to Cuphead) +- Focus on gameplay instead of story +- Medium length levels +- Horizontally (left to right), or vertically (both directions) scrolling + levels +- Levels get progressively more difficult (like Hades) +- Each level has a miniboss at the end +- Levels are separated by a checkpoint room +- Checkpoints don't have respawn points, but are like saferooms with a shop for + buying upgrades (like in Hades) +- The player automatically shoots bullets as they walk +- The player's score is determined by the distance travelled + bonus points for + various actions like defeating enemies + +## Player character & abilities + +![rough sketch of the game protagonist](../assets/sketch-player.jpg "medium") + +- Small guy with a hood and Fall guys eyes +- Actions + - Jump (primary action button) + - Dash/attack (secondary action button) (upgradable -> [shop][shop]) + - Movement (D-pad) + - Shooting (D-pad) (automatic rapid fire when holding direction) +- Temporarily invulnerable when taking damage (with flashing animation like in + Super Mario Bros.) +- 5 HP (by default) (upgradable -> [shop][shop]) + +## Level design + +- Hatched zones in the following sketches indicate movement zones for the + player during a mini boss +- Outside the movement zone, the player should take damage, but the player + should realize this intuitively +- During the miniboss, the camera is locked past the dashed line so the player + can't escape by running away +- The camera follows the player + +### Level flow + +![horizontal level flow](../assets/sketch-level-horizontal.jpg) + +- Horizontal level always flows from left to right +- Level design in which the player has to "walk back" from right to left is + discouraged + +![vertical level flow](../assets/sketch-level-vertical.jpg) + +- Vertical levels can either flow from top to bottom, or bottom to top +- Small sections of backtracking are allowed in the top to bottom vertical flow + +[shop]: #checkpoint-room-shop +### Checkpoint room (shop) + +![checkpoint room](../assets/sketch-checkpoints.jpg) + +- Transition room between levels +- Visible exit point is determined by the following level type + - Door on right side for horizontal level + - Nuclear bunker style hatch for vertical top-bottom level + - Ladder into black hole for vertical bottom-top level +- Game starting screen is also a checkpoint room, but without a shop +- Checkpoints don't act as reset points +- Available upgrades + - HP boost + - Temporary status effects + - Jump boost + - Speed boost + - Different kinds of dashes (with tradeoffs) + - Regular dash (furthest distace, no special effects) + - Super punch (deals damage during dash, less distance) + - Smoke bomb (temporarily invulnerable and invisible, less distance) +- Upgrades are purchased/unlocked only once per game +- Switching to other dashes is only allowed in checkpoints + +### Regular level + +![regular level example](../assets/sketch-regular-level.jpg) + +- A: player +- B: breakable +- S: solid ground +- E: enemy +- 1: primary action +- 2: secondary action + +## Enemy types + +The enemies aren't named in-game, so these names are either working names or +internal names. All enemies deal 1 HP damage per hit. + +### Menneke + +![enemy type 1 "menneke"](../assets/sketch-enemy-menneke.jpg "small") + +- Runs around and jumps on platforms vaguely in the player's direction +- Slightly slower than the player +- 1 HP +- Passive (damage on contact, but doesn't actively 'hunt' the player) +- Low score bonus + +### Ventje + +![enemy type 2 "ventje"](../assets/sketch-enemy-ventje.jpg "small") + +- Runs at the player, but can't jump very high +- Slightly slower than the player +- Passive +- 2 HP +- Divides into smaller copies when defeated (like slimes from Minecraft) +- Medium-low score bonus + +### Terror uil + +![enemy type 3 "terror uil"](../assets/sketch-enemy-terror-uil.jpg "small") + +- Roams around the top of the screen +- Sometimes attacks player +- 1 HP +- Medium-high score bonus +- Was on NOS Jeugdjournaal once + diff --git a/docs/gen/doc.m4 b/docs/gen/doc.m4 index 5719b54..b5edceb 100644 --- a/docs/gen/doc.m4 +++ b/docs/gen/doc.m4 @@ -3,6 +3,7 @@ define(`docname', NAME, `pve', `Pakket van eisen', NAME, `research', `Research document', NAME, `design', `Design document', + NAME, `gameplay', `Game design document', `UNKNOWN???'))dnl <!DOCTYPE html> diff --git a/docs/gen/style.css b/docs/gen/style.css index 7179ded..a162289 100644 --- a/docs/gen/style.css +++ b/docs/gen/style.css @@ -106,4 +106,7 @@ display: block; margin: 0 auto; } + + img[title="small"] { max-width: 5cm; } + img[title="medium"] { max-width: 8cm; } } |