Balancing Teleportation and Touchpad Locomotion
One of the things I've heard the most consistent feedback on since the very earliest OrbusVR videos is that people want different locomotion options in the game besides just teleportation. I'm please to announce that we've listened and you can now use Touchpad (or "sliding") locomotion in the game:
However, offering both teleportation and touchpad locomotion in a VR MMO goes beyond just implementing the mechanic -- you also have to balance them in a fair way! We're working on a solution that allows the freedom of choice while still keeping the game fair for everyone (for both player-versus-environment and player-versus-player interactions). We're sharing it with you today so we can start getting your feedback on it as well.
There are two key pieces at play here. The first is how quickly you can get around in the world, and the second is how movement will work during combat.
Speed of Travel
We started by deciding how quickly we wanted people to be able to travel in general. We settled on around 5 meters/second, which is somewhere between a jog and a sprint for the average person. Obviously you can choose to go slower than this but this is the max speed, and we want the max speed for both locomotion systems to be the same.
Setting the max speed for the sliding locomotion was easy -- we just made it so that when you were going "full throttle" you were going at that speed. Underneath the hood, we're also constantly doing the same checking we do for teleportation, in terms of making sure that you can't actually "slide" into a place where you couldn't teleport, such as over a cliff or through a tree.
For teleportation, the simple and obvious solution was to simply figure out how far you can teleport, and then just make sure if you can teleport 10 meters forward, you can only do that once every 2 seconds. However, in play testing this was confusing and not apparent (why can't I teleport there yet? Is it broken?) And it also precluded you from making "smaller" teleportation jumps more quickly -- so if you want to only go 5 meters at a time, or make a small adjustment, you still had to wait the full 2 seconds to teleport again, which means you would fall way behind someone using the sliding locomotion unless you perfectly teleported the full distance every single time.
Instead, we came up with a mechanic where when you go to teleport, the teleportation grid "builds up" over time, indicating how far you can currently go. Here's a quick example:
So if you teleport only half the distance each time, you can teleport twice as often. In addition, the timing on the teleporter buildup is based on your last teleportation time, so if you teleport, then fight a monster for a few seconds, when you go to teleport again you'll be able to teleport right away.
This solution is really elegant because it's quickly apparent to the player what's going on -- I can teleport nearby quickly, or I can wait a little longer to teleport farther. And it allows us to support both long-distance, less-frequent teleportation along with short-distance, frequent teleportation while still making it match the same speed as sliding locomotion.
Combat Positioning
So that's all fine for traveling the world, but what about combat? Right now we've decided to build the combat in the game around using the teleportation mechanic as a "dodge" move. So think of it less as "I'm teleporting around the world because it keeps me from getting sick" and more as "I'm actually a powerful person in this world who can bend space and time to leap out of the way of a deadly incoming attack!"
If you've seen previous videos of the game, you'll notice that we do "warning zones" to indicate heavy-hitting monster attacks. The idea is that you will see the red area show up, and move out of the way quickly. If we have to support both sliding locomotion and teleportation for that type of combat, it would be impossible to decide on a timing for how long you have to get out of the way -- if you're teleporting, it only takes a split second. But sliding takes much longer.
Taking PvP into account, we want the teleportation mechanic to be a key piece of how you "dodge" incoming attacks like Fireball spells from other players. Doing slide locomotion doesn't allow you that same feeling of "jumping out of the way".
It's possible that we may still allow sliding locomotion during combat (depending on how play testing goes), but the combat will be designed around using the teleportation as a "dodge", so you're going to have to use it at least for that (or risk taking way too long to get out the way of an incoming dragon breath attack!)
Room Scale Movement
The one thing that we still need to figure out to finish this puzzle is room-scale movement. Obviously one of the great things in VR is moving around at room-scale, and we want you to be able to physically move out of the way of an attack from a monster or a player if you have the room for it. However, unlike the teleportation mechanic, we don't have any way to restrict you from just constantly hopping around making yourself very hard to hit for another player, for example. It also leads to a situation where those with large room-scale setups might have an advantage over those with more limited play-space.
We don't have a good solution for this yet (although we'd love to hear it if you do!), but right now we're leaning toward something where moving around a lot in room-scale (like, meters at a time) uses up your teleportation charge the same way using the teleport mechanic would, and if you do it too often you may actually end up in an "out of body" experience where your avatar can't keep up with you. Not sure how we would indicate that to the player, though.
Anyway, we're still marching onward to our next stress test, more details coming soon!
If you'd like to discuss this post you can do so on our community forums or on Reddit.