They Can’t Fix That With Data
July 1, 2008 11:10 am
It seems that differing animation cycles in the game have resulted in an unforseen side effect: female avatars do less damage then male ones [previously at WCFTWD]. At the time, the Funcom developers said they’d let us know as soon as they could about a fix. Today they let us know, but the news is mixed. The good news is that ’straight damage’ (what they call white damage) has been fixed. Simple autoattack routines use few animations and they’ve all been fixed and pushed to the live servers.
The problem comes in with the much-vaunted realtime combat system, which requires heavy use of combos and unique animations. There are almost a thousand of those animations, and every single one will apparently have to be tweaked by animators and then retuned by a designer.
Truth: live teams can’t depend on anything but design time, because artists get moved to other projects and coders are busy fixing shit. Even if you’re so sure that your project will be better!, just play it safe. Design data should always be the final arbiter of anything that may change during live.
I don’t care that your animation was painstakingly handcrafted to look great at a four second cast time — I will change that cast time someday, and I do NOT want to ask for art time to do it.
One of the commenters asks why female characters’ DPS couldn’t be fixed with damage multipliers. That would be a nice quick fix, but I would guess they can’t do it — the ability system would need to be able to check gender, which would require code and data format changes. One would assume that they don’t have a lot of code time to spare! And then it’d be a huge amount of crap for designers to maintain in the future.
Dave Rickey wrote:
So, what you’re saying is that their combat system balance was completely under the origination of the animators? They built a combat system that looked good, and at best the designers came in afterwards and plugged in values that made it sort of balanced. But nobody noticed that the genders used different animations?
That’s just a whole new level of letting the tail wag the dog.
Posted on 01-Jul-08 at 9:59 pm | Permalink
Enno wrote:
I am surprised that anything was linked to animation time at all. Usually, the animation data (even the metadata about how long an animation is) should not be available to the game server, which makes all the decisions. Unless you’re completely off your rocker.
The ability system can check for gender, I’m sure (a lot of that is from AO, and we checked for gender all the time). After all, gender is just a stat and gets handled like any other character value.
And lastly, I think a higher damage multiplier is a terrible fix, because usually, higher damage per blow means big armour is relatively less effective, alpha strikes get harder, etc., etc.
Posted on 02-Jul-08 at 1:46 pm | Permalink
Rohan wrote:
I don’t think the server knows about the animation time. Judging by my play experiences, I think there’s a 1-deep clientside queue of actions in AoC. The client probably doesn’t send the next action in the queue to the server until the animation finishes.
Posted on 02-Jul-08 at 1:57 pm | Permalink
Rohan wrote:
It also brings up the question of if there’s a class that is overpowered because it was tested with female characters. I.e. the female values are right and balanced, but the male version does too much damage.
Posted on 02-Jul-08 at 1:58 pm | Permalink
Tess wrote:
If I were responsible for engineering that system, I think I’d go hide in a log cabin somewhere in the mountains for the next 10 years out of sheer embarrassment.
Enno, I suspect that the server was fine. This was probably a client-side problem. The server was likely just processing the attacks it received. But, if the client delays the attacks that the player is requesting for phenomenally stupid reasons, there’s not much the server can do about it.
Posted on 02-Jul-08 at 2:18 pm | Permalink
Tess wrote:
JINX! I owe Rohan a beer.
Posted on 02-Jul-08 at 2:19 pm | Permalink
Dave Rickey wrote:
Of course, if the client is in charge of attack rate, that’s an even worse “whoops”. How long until someone speed-hacks their clock to increase their attack rate? Given that this is a PvP game, if it hasn’t already happened, it will very shortly.
Posted on 02-Jul-08 at 4:09 pm | Permalink
Khan wrote:
Dave, I’d have to agree with Rohan on this one - the client is probably responsible for this, not firing a new action with the server until the current animation is finished.
I can see how that might happen, if the client developers don’t communicate with the artists responsible for the animations - they don’t understand the way the client relies on the animations.
The animators might work under the assumption that the animations don’t effect the system overrall, and the devs with the assumption that all animations are created equal (in time at least).
Furthermore, the engine itself might make some assumptions. For instance, not pass in a time frame for cast times to the queue processor, leaving the processor blocked until the animation returns.
TL;DR - I don’t think the server could be tricked that easily, you might eliminate lead time on casts, but a twitcher could compensate for that anyway.
Posted on 02-Jul-08 at 6:40 pm | Permalink
Sara Jensen Schubert wrote:
“The ability system can check for gender, I’m sure (a lot of that is from AO, and we checked for gender all the time). After all, gender is just a stat and gets handled like any other character value.”
I was thinking in particular of an additional value for every ability, which would be a lot of extra data.
“It also brings up the question of if there’s a class that is overpowered because it was tested with female characters. I.e. the female values are right and balanced, but the male version does too much damage.”
Yeah. Who bothers parsing logs for every single race/class/gender combination? If it’s easy, sure. But I don’t know that any company but Turbine has tools that are robust enough.
Posted on 03-Jul-08 at 9:55 am | Permalink
Enno wrote:
Tess/Rohan: Thanks, that would make sense with the more interactive combat system that they are having. But if there’s a queue like that then a speed hack is the first thing I’d have tried, too - I suspect there’s a limit on the server that prevents attacks from being too fast, but if it’s shorter than the female animation time, who knows if it’s not also shorter than the male animation time? My curiosity is triggered, and I guess I will have to ask somebody what exactly the details are like
Enno,
widely hated for his hand in all manner of lousy drop rates (because that AoC loot-generating code is mine from AO, hehe).
Posted on 03-Jul-08 at 5:16 pm | Permalink
Tess wrote:
Oh, trust me, I agree about the speed hacks. In fact, a speed hack would be the most surefire way to test whether this was a client bug, since you should be able to speed-hack a female to get her up to at least male speed, and even if they had a limiter, or some kind of logging to catch speed-hackers, they wouldn’t do anything to stop you from acting at what was already expected to be the “normal” speed.
Posted on 03-Jul-08 at 6:39 pm | Permalink
Tess wrote:
Though, *ahem*, my previous comment is merely speculative, and should not be seen as encouraging speed hacks. I do not condone violating the Terms of Service of any game for research purposes. Besides, it’s much more fun to just get the devs drunk and ask them.
Posted on 03-Jul-08 at 6:44 pm | Permalink
Lost Creation wrote:
The server needs to know what the animation times are so that it knows when the client can fire off a new action. (Otherwise, you’re vulnerable to speed hacks.) Ideally, that data is automatically generated during the “build”.
I haven’t played AoC myself, but City of Heroes has had similar animation problems. (There’s was flying vs standing and male vs huge male vs female.) CoH’s build system, however, does not generate those times automatically and they’ve recently spent a lot of resources going through each animation and syncing up the animation time (client) to the “rooted/can’t act” time (server).
If AoC uses Frame Animation (like CoH does), you can’t simply “speed up” the animation sequence. Attempting that will cause drop frames and jerky motion of your avatars. You need to actually create a new animation in whatever tool you use to generate the animation frames.
Animation isn’t my area of expertise (not by a long stretch) and there may be more modern methods that would permit the no “art time” changes that Sara’s arguing for, but I’m not aware of them.
Posted on 04-Jul-08 at 5:06 pm | Permalink
Andrew Crystall wrote:
Ahh, things I miss because I was in Germany…
Let me say.. *blinks*
Lost: You do it as roughly as follows: character executes a move in n seconds. If this goes wrong in the anim system, the character’s avatar will snap a little, but the game effect will be right.
How you do this can vary from up to holding a “final state” you want the character in and playing anims on different parts of the character to achieve this up to inverse kinematics…
It’s actually far more complex than that, but rest assured there are multiple ways to do it. And a little visual snap is far, far better than breaking your game balance in nasty ways.
Posted on 05-Jul-08 at 8:51 pm | Permalink
Mox wrote:
Depending on how the animation system is set up, sometimes it can be hard to even get how long an animation is going to be, at the moment in code you trigger it. I’m thinking it might be possible to come up with a DPS modifier to every skill, assuming DPS is generally well-balanced (hah!) by factoring the animation time into the damage a particular skill does. Theoretically, you can recalibrate the data into DPS data with an offline tool process using the male animation sets as a basis. Then the over-long femal animations will introduce a bonus component from the DPS expansion because of their longer duration.
Posted on 07-Jul-08 at 7:17 am | Permalink
Anaxymander wrote:
This explains why my Female Bear Shaman sucked compared to a male counterpart.
Does this problem also extend to character size? Do the animations other than walking and running play different with different sizes? Short characters take more steps…or I could be wrong.
Posted on 10-Jul-08 at 6:42 pm | Permalink