We are currently working on an adventure game for a big project. It’s comparable to the Telltale and Quantic Dream games, closer to the latter in terms of design. We have pretty much everything in place, interaction, dialogue, etc. While we have some changes to do to the mechanics, as they aren’t as streamlined as we would like them to, there’s one mechanic that’s more difficult to fix: movement.
Right now, we have the more traditional camera-relative movement, like in typical third-person games. Forward moves away from the camera, backwards towards, and left/right are pretty straightforward. However, we also switch cameras based on where the player character is in the environment, and by doing camera-relative movement, the PC instantly turns around in the new direction. We fixed this by using a more-or-less standard method to keep the character moving relative to the previous camera vector, as long as the player holds the input. As soon as the player releases any movement input, the movement vector changes to the current camera. Needless to say, most people that tested our prototype were not that amused by it. So now we’re trying to figure out different solutions to this problem.
The simplest solution (in terms of design) is to simply swap out the control scheme with a different one. I know of three types of movement in games like these: camera-relative (as we have right now), tank controls (only moving forward, and turning left/right relative to the character), and what Heavy Rain uses (moving forward, only using the thumbstick to change direction relative to the camera). We could also do full-on character relative movement like in first person. However, we feel that all these other schemes are more uncomfortable than what we have now.
This is why we are thinking of staying with camera-relative movement. Yet we still haven’t fixed the problem. In this case, the problem clearly lies with the transition between cameras. I should tell you that we’re actually developing the game primarily for VR, so we want to use as little camera movement as possible. What we’re currently thinking about is something that I’ve read in another topic: keep it as we have it right now, but instead of changing the camera vector only when the player releases input, do it also when the player makes a clear change in direction. While this will still cause a twitch in the character’s movement when the vector suddenly changes, it will prevent the ping-pong effect of doing it instantaneously, and won’t make it too uncomfortable when changing directions.
So, does anyone else have suggestions, or feedback based on what we have?
P.S.: Doing it in true third-person like Life is Strange is an option, but I’m not sure that it will be any more comfortable than first person. I must also add that these controls are only during normal movement, never during tense action scenes/cutscenes. We will use less frustrating QTEs for those, also to avoid swinging cameras around too much in VR.