Max's Devlog


Hello Max here, Ive been working on this game for the past week. For our game we decided to make a low poly 3d puzzle game. The main mechanics of this game is being able to control certain objects with your left mouse button and also the camera stays in place and tracks the player from above the level giving a isometric type view of the level. 

The Player controller is an important factor of everygame. Having a smooth and responsive player controller really contributes to having a good and enjoyable game. I was tasked by the team to create a third person player controller and have it that it triggers all of the animations for the player. 

My player controller consists of 4 different Scripts;

PlayerManager: This is a simple script used mainly for its 2 variables isInteracting and isGrounded.

AnimationManager: This script manages all of the animations, it keeps track of variables that help play the correct animation and also calls some of the animations from the script

InputManager; This is a script that handles all of the players inputs and calls different movement methods based of the inputs it contains methods like HandleSprintingInput, HandleJumpingInput, HandleAllInputs

PlayerLocomotion: This is the main script that handles the players movement it has a method called HandleRotation, HandleJumping, HandleMovement, it also contains a lot of public variables which can be changed  to modify the players stats, like walk speed jump velocity , fall velocity , ray cast size etc.

I had created these 4 scripts and attatched them to a player model provided to me by my team. i created a blend tree to blend the walking running and sprinting animations, 

I also added functionality for a controller and the blend tree would play walking , running, sprinting animations based on how far the stick was pushed.

I also had to fix a few bugs with my player,  The main one was that for some reason the player model kept flying away when the game had started, all of the gravity settings were correct and it took a while to fix the problem but it was a problem with some of the animations we were using. 

I also used github to often makes commits and make sure my project is up to date with my teams,  We had a few merge conflicts but they were resolved with no problems.

The next thing i worked on was a simple tutorial ui that would appear at the start of the tutorial and dissapear 5 seconds after a player input was registered. I created the script and the base ui for this which was later upgraded to look more proffesional.

Lastly i created a main menu scene and  made a main menu ui, I used a screenshot of a level as a background and created buttons and text for the menu, i added a script to the Menu Manager and in this script added functionality. The start button would load the tutorial level scene, the options button would set active the options canvas and disable the menu canvas, and exit would exit the game, Next i worked on the options menu adding a slider for volume, a dropdown for resolution and a toggle button for fullscreen. Next i went into my old script and created 3 functions so that these settings would work. I added functionality to all 3 of the options elemements and finished the main menu scene. 

Working on this game was very fun and i am happy with the work i have done, i am proud of my player controller but i do think  i can do even better next time 

Get Borders

Leave a comment

Log in with itch.io to leave a comment.