title screen
description: the first screen of the game, should have big button "Play" and small button "Exit". there should be big juicy picture in the background
result: working title screen that can start the game and exit the game
scripts
layout
gui
character controller
description: create a way to handle player input and apply it to the character
result: there is a prefab of the character controller that allows player to move a character in the game (even if the character is a capsule)
scripts
prefab
camera
description: decide how the camera should behave and setup a camera accordingly
result: there should be a prefab of the camera that is ready to be used
block-out of the first level of the game
description: create a block-out of a level
result: it should be possible to add the player controller and a character to the level in order and play the level
game data
description: create a way to store game progress that could be saved later
result: there should be an object that holds all the data related to the game
list of data: level index (scene name); player position; player rotation; player state;
base shader
this is required only if we go for toon shading
description: make a base shader that will be used by all the objects in the game
result: there is a set of shaders that will be used for all the objects in the game
character model + animations
description: make and import into the project a mesh and animations that will be used for the player character
result: there is a model and set of animation clips that could be used to create a character prefab
implement animation controller
description: make an animation controller out of that bunch of animation clips that were imported
result: a character prefab that is animated and the animation state is controlled from the scripts
finish the art side of the first level
description: add props, materials, vfxs and other stuff to the level to make it look good
result: the first level of the game looks good
finish level screen
description: a screen that will appear when player finishes a level
result: there is a screen that confirms that player just finished the level and shows some useful info
pause screen
description: a screen that player will see when presses ESC button
result: when player presses ESC button during the game the screen appears, and it's possible to resume the game and exit the game
scripts
layout
gui
save manager
description: make a way to save player progress by saving the game data object
result: when player gets to a checkpoint the game progress saves to the disk; add a button to the pause menu to restart from last checkpoint (from last save)
skill N logic
description: start implementing some of the skills of WaterBoy
result: player is able to use skill (requires clarification how player uses skills)