Pre-Production

Flowcharts:


Here are some flowcharts that help me visualise how my scripts will work. 

Here is the basic movement flowchart. This is a basic rundown of how exactly the basic movement will work. At the start of the program, the code will access the mouse input which will control the camera movement in the game. This will simulate a first person view. If W, A, S or D are pressed, then the player will move in a direction according to which button was pressed. While this flowchart is very simple, the system that determines speed will be more complex and will likely prioritise Unity physics to perform all the movement.

Here is a flowchart for how I would like the grappling to work. It would first check if the player is close enough to an object that can be grappled on, if the player is close enough then a UI target indicator would appear which prompts the player into pressing the grapple button. This would then shoot the grapple hook to the target which would then pull the player towards the target at increasing speeds. When the player reaches the target the script ends. I may also implement an extra option when the player reaches the target, they may be able to either mantle on to a building or wherever they grappled to or boost past the object to fly even further.


I may develop grappling further and create a swing mechanic as well. This will help the player move around more efficiently as pulling only helps for vertical movement while swinging greatly helps horizontal movement.

Here is a flowchart around double jumping and rocket boosting depending on which option I go for. The script will work by checking if the player is currently on the ground, when the player is on the ground the are able to press spacebar which then allows them to perform the first jump. The script will then check if the player is back on the ground, if not then they can press space bar again to perform a double jump and then cannot jump again until they hit the ground.


The rocket boost will work the same way except for after the single jump, the script will check if the boost gauge is empty, if not then the player can continue boosting until the gauge runs out. Then the player will have to wait until they hit the ground again to jump again.