FMP Limbs of the Sneaky Dead Pt.3: Controller input, Grabbing and Stepping

New additions to the game were controller input, grabbing action with a limb type and an approach to moving the body had been implemented.

Controller Input and Stepping

Controller input was implemented first. This was done because the desired outcome of this project would be played with controllers. As such implementing Controller inputs will influence the overall approach to how the body and the limbs will be controlled. For the purposes of this project, the main approach to controlling limbs, that is rotating them in their respective anchor points, is done by manipulating the two thumbsticks. For now, both thumbsticks upon being pushed will move the limbs along a plane defined by 2 local axes.

This has been used to control the legs of the zombie.

This follows Octodad’s approach by linking the trigger buttons to the respective leg limbs. So pressing and holding the left trigger results in two things. 1. The left foot’s mass is reduced. 2. Both thumbsticks now move the foot and apply forces to move the foot.

So while the trigger is held down, the left leg can be moved. Right trigger enables the right foot.

However an interesting bug had arised, when both triggers are pressed and thumbsticks pushed. The Zombie is able to propel itself upwards.

This bug may be due to the body having a constant upward force applied to keep it standing, this force does not change. So when the feet triggers are pressed together, the overall body mass is significantly lighter and the body floats. Moving the legs propel it somewhat. However, this could be used for a different mechanic of some kind.

Separate thumbstick axis

Another addition that is shown above and below is the use of both thumbsticks to move a limb around different axes.

This should offer more control over limb movement. Moving the arm under and over head is controlled by the right thumbstick.

Object interactions

With the new dual thumbstick controls added it was time to interact with some objects. A grabbing mechanic had bene implemented where a non-static object can be grabbed. In this case the hand of the limb touches the box and the player press and holds the grab button, the object will then be connected to the hand by a joint.

It is possible to grab, pick up and throw the box, however there is no accurate way of throwing this box.

Interacting with non-static objects was simple enough. However, the desired result is for the player to be able to pull the zombie towards the box.

The above was replicated at height and gravity applied.

While the box could be grabbed, disastrous conseuqences followed when the limb became overly stretched. I wondered if it had something to do with the static nature of the blue box or the colliders of the body and arm. So a rope was implemented that was non-static and consisted of multiple smaller bodies.

This too resulted in the disastrous effects. I believe this may be an issue with the joints, the colliders and how I implemented them, which may take some additional research to find a solution.

Playtesting

The controller input, general arm movement and stepping had been externally tested by a playtester, they were instructed to think-aloud voicing their thoughts. Their emotions and reactions were also examined. The purpose of this test was to determine if the controls were intuitive and easy to use. What the general feel of the controls were and if they were at all fun to use.

Playtesting results

Follwing issues were found :

  1. Thumbstick drections are not clear, that is they do not align with player intention. “Feel like it’s opposite to what the directions feel like.” Playtester was not able to move the arm in the direction they wished. This comment was made with some frustration. Playtester was then instructed to control the feet by using the triggers. They also made the same comment about the thumbsticks. “Joysticks move in opposite directions.”
  2. While moving controlling the feet, playtester discovered the floating bug. However, expressed a large amount of joy and laughed aloud. “This is how a person walks!” said playtester regarding the moment of floating. “Then he comes back down!” said Playtester laughing as the zombie body gently float downwards.
  3. Limb joint spasming as seen from the above gifs.
Playtesting fixes

The results of this indicate that the current controller inputs for direction are not intuitive and may need to be redone. I suggest the following fixes:

  • Camera centreing – Playtest was conducted within Unity (same view as gifs above), two camera views of different direction could contribute to confusion of resulting movement of the thumbsticks. Then a camera system should be implemented that clearly represents direction of zombie.
  • Zombie face placeholder – Another contribution to the confusion of directions could be to do with the blank zombie body. This is because the visual elements of the zombie (the model and texture) do not inform the player which way it is facing, this can only be discerned by the direction of the feet. Then implementing a texture placeholder that indicates the forward facing direction of the body may aid in limb movement.
  • Change limb movement – The direction of the limb movement is not behaving as desired, then it may require more adjustments. This may even require a different approach to the limb movement overall. Current approach is to apply a force at limb tip towards a direction. There may be a better appraoch that may require more research.
  • Change joint settings – There is an issue where joints can be stretched too far where they then begin to spasm out of control.
  • Floating is fun – The floating bug resulted in positive feedback from the playtester. As such this bug could be implemented as a different limb type to be chosen by the player. This will need some further analysis as to why and how it works. Then this could be implemented as a separate limb type as I had said before.
  • Adapting different controllers – Upon reflection, I realised that the controller could also have affects on the game. This is because Internal testing had been carried out with a different controller. The External playtest used a different controller. Note that both are PS Dualshock4 Controllers. Then controller mappings and implementation need to be reconsidered as well.
Next steps
  • Implement above fixes.
  • Plan and prototype a multiplayer management system.

Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.