Reaching Terminus - Dev Log
Week 2 (March 6th - March 13th)
Since I still have a week to complete the Game Jam, and I've already made the mechanics I set out to develop, this week my focus shifted to starting work on the mech mechanics, specfifcally ​
-
Mech Movement
-
Mech Camera
-
Mech Embarking
This was also a good chance to see how the player and mech would interact when it came to differnces in speed, scale and traversal.
Mech Movement & Camera:
When it came to the mech movement, I made the script close to a one to one copy of the player movement, but made the movement speed slower, and removed crouching and spriting capabilites (may include crouching once level design is explored more).
I also made it so the mech rotates based on the input of the horizontal axis, and have the camera rotate independantly of the rotation the mech movement. This was done to allows players to look for resources as they move. The seperate camera rotation also helps with differntiating the user expirence of the mech from the pilot.
Mech Embark/Disembark:
Despite being as simple as turning off the player and its camera, and turning on the Mechs counterpart scripts, this has been the hardest mechanic to get working so far.
This was difficult because all the existing Unity exmples of doing something similar that I could find online used character controllers and Unity's new Input System rather than Rigidbodies, so I had substitute some lines of code to attempt to make the scripts work. Eventually, the solution I came up with was adding a box collider to the mech gameobject, and when the player is inside this box collider they are prompted to press a key, and then they set their camera and player gameobject to false, and enable the camera and movement scripts of the Mech.
To avoid the mech moving outside of when the player is in control, it's Rigidbody is set to Kinematic whenver the player isnt in control of it. I also made it so the Embarking location was on the back of the mech, with a ladder to reach it. This gives players an area just outside the mech to stand on if the situation requires it, but will likely change position when I acutally design the mechs visuals.