The Holy Trinity
Last week Crowfall put out an update named “Powers Prediction” (I highly recommend reading it before reading this column in order to make sense of either) talking about how they plan to fix their combat so that it feels responsive. Fortunately, they are getting closer to a solution, unfortunately this is the third fairly serious problem that Crowfall has had to deal with in nearly as many months. (I consider the switch to vessels and the launch delay the other two although the launch delay was likely directly in relation to this issue which they have a solid plan for.)
“But ArtCraft (ACE) is made up of veteran developers, why do they keep having so many problems?”
Because they are creating a micro world inside a computer! I’m not making an excuse for anyone at ACE because it’s not an excuse, its simply part of the process and they are certainly not alone in problem finding. Finding problems is seemingly business as usual for MMORPG developers. When making something as vast as a MMORPG problems come up, a lot. The trick is being clever enough to fix or at least re-route around them (like the avatar to vessel switch). This is where having veterans at the helm comes in handy. They have been through rough seas before, and they know how to navigate them (or at least direct their crew through them) without panic.
Thanks to Kickstarter many studios have traded transparency for our money. We get to see behind the curtain more than ever before. It turns out the stuff behind the scenes is often even more dramatic than the stuff in game! Not stuff like Blair’s kittens. Far too many hardcore MMORPG fans spend way too much time finding out what developer’s personal views on important things like lunch are. That stuff isn’t my bag, but the process of creating the game and the chaos that comes with it, that’s my cup of tea!
Let me try to translate the “ANIMATION TECHNO MUMBO JUMBO” update. I’ll warn you, translating when you don’t speak the language to begin with is a pretty difficult task! Alas, I have faith that if I get this wrong herds of MMORPG players will sense it and stampede to the comments section below to point out my utter failure. I accept that risk and go forth unabashed!
There are seemingly 3 major components to combat in a PVP game. For this column we shall call them the holy trinity of MMORPGs (no not DPS, Tank, Heals), the Server that controls the physics, the game Client on your computer and Your Computer/Connection (hardware) (strokes computer case and smiles at it affectionately). When you push a key those three things have to work together in perfect harmony in order to have what you told your character to do appear correctly on your screen. As lead designer Thomas Blair of ACE put it, you press a key and the “client requests a power” to the server via your internet and “server activates a power”. Your machine and your internet (being random uncontrolled factors) help make that process difficult.
If you think the universe is about harmony, then I’m sorry to break the news to you but it’s about chaos. MMORPG universes included. Every PC is unique to the user. On top of that all of our internet connections are different. Beyond that the sever and engine don’t always get along. As you can see, and have experienced, this can make for some pretty frustrating gameplay full of things like lag and rubber banding. In a tab based game that’s frustrating, in a target based game it’s a deal breaker which shows us the seriousness of this issue.
It’s also something PVP games have always battled. In many games developers rely on the client to sync up the trinity. Which I understand is the easiest way to make the trinity harmonize but it’s also the ripest for hackers. I’ve experienced invisible (untargetable) players and players moving at warp speed taking out entire groups before a single person could react. Its game breaking and has broken many games. I recall another company that invented their own form of time to sync of the holy trinity. While I didn’t notice serious PVPers did and combat was deemed jarring and unfit.
“Get to the good stuff, how is ACE going to fix this?”
By cleverly hiding it in plain sight. ACE is using their “authoritative” server-side physics simulation as the one true simulation of shared gameplay physics which protects them from hacking. They then use loose synchronization on your client in combination with latency masking (“a collection of tricks the engineers have been working on to make it feel like we're all playing in the same room with no network or server lag -- even when it's actually there. (Spoiler: It always is!)”) to hide the time differential and make it so everyone is seeing nearly the same thing on screen. In other words, to buy the trinity time to sync, they will speed up or slow down your character’s animations. That seems like a pretty clever fix to me. One that players might not even notice. (Ok, most players might not, we all know the hardcore PVPers will).
While the solution is good news, the bad news is every animation in game will have to be adjusted for this concept to work! The good news with that is they are already in the middle of it with results rolling out on test servers as I type this. As is also often the case in MMORPG development, ACE is going back to the beginning of something and rebuilding it to fix a thing they could only discover by progressing development! Some people might call that process insanity, then again it probably takes the right mix of creative, intelligent and crazy to make one of these online universes come alive but that’s another kind of trinity for another column.