|
Side-Kick is a game development studio focused on motion games. During my two years as the studio's lead game designer we have worked with all available motion sensing hardware, produced dozens of demos and apps and three full console games (Eeedo Sports and Air Time for Eedoo's CT510 console and Mini Ninjas Adventures for Xbox and Kinect).
As I write this, the popular story in the gaming press is 'Kinect doesn't work'. I don't think that's true. I honestly believe it is possible to create great games for Kinect. It is also tricky and there are challenges and pitfalls all along the game's production and release. Below are a few lessons I learned from Kinect game development that I think might benefit other teams working with the hardware.
KINECT CAN'T DO SMALL GESTURES
The margin of error is just too big for the hardware to handle. Take a look at the Kinect's skeleton viewer. Move your arms and you'll see those crazy jumps where your elbow is suddenly positioned above your head. If the gesture you design is too small, these detection mistakes can trigger it and the player will bite their fingernails and eat their hair because they have no controller to break. So, no fist bumps and you probably shouldn't put that self destruct button right next to the ventilation lever.
KINECT DOESN'T DO FAST
The way we measure movements in our games is usually by looking at the angle and velocity of the moving body part. The sensor samples at 15 fps. Which means if the player moves his arm too fast, the Kinect might miss the movement altogether. Since you have no way to control the speed of the player's movement, your only way to deal with this is to show the player the optimal speed during the instruction stage and hope that it sticks.
THE KINECT IS SENSITIVE TO LIGHTING CONDITIONS
Sunlight can make the Kinect's detection abilities erratic at best. We've blocked all the windows in our playtesting room. If you develop for Kinect, I advise you do this. It of course, won't help you when the game reaches the player's living room.
TEACH. REPEAT. PRAY.
Teach. Finding the right way to teach the player a gesture is consistently the most time consuming and iterative process we go through. The tutorial animations on Mini Ninjas Adventures have literally gone through dozens of iterations to find the right style, angle and speed. During a game's production we bring in tons of people of different ages and gaming backgrounds to see if they understand the gestures we teach them.
Repeat. After teaching a gesture you have to repeat it. This is your way to help players retain the information. The more specific the gesture is, the more times you have to repeat it. Pressing X to do a karate chop is one thing. Slicing with your arm at a specific angle is something else.
Pray. In the office, we call it gesture deterioration. It's the process in which the player, over the hours of playing, morphs the gesture you taught them into a mutated version that is all their own. This happens to EVERYONE, including the people who actually created the game. It is inevitable. What you pray for is that once the mutated gesture stops working for the player, they'll remember to go back to the original version you taught them. Which of course, only works if you taught them well.
YOU CAN'T CONTROL THE PLAYER'S LIVING ROOM
There will be players that won't be able to get your game to work in their home. This is the one thing that really stings. It is also, I think, responsible for Kinect games' top Metacritic scores being in the 70's-low 80's. The player's set-up is something you will have absolutely no control over. In designing the game, you can discount for smaller spaces by not detecting any movement below the knees and above the player's head but that will only take you so far. The player's space can be too small, there can be too much sunlight, the placement of the Kinect can just be off.
And if the Kinect does not work for a certain player, the complaint won't be "This game hasn't worked for me, in my living room". It will be "This game is broken". It's completely understandable and none of it is the poor player's fault but you will find yourself making weepy phone calls to your mother. Just saying.
As a Kinect developer, the only constructive way to look at it is this: If most players have problem with a specific gesture, or your game as a whole, you screwed up. But, if some are saying your game is completely unplayable while others are calling it the best Kinect game ever: Forget it Jake, it's Chinatown.
PLAYERS WILL DO WHAT THEY WANT
This is the ultimate truth of our chosen profession. Games demand player autonomy to be games. This is what fuels Ebert's 'Games can't be art' argument. You can handcraft the most exquisitely designed level of all time and a player can still stand in the corner for two hours and pretend to have sexual intercourse with a potted plant. You can try to minimize "wrong" ways of playing your game but eventually, you will have no control of the player's individual experience.
When a controller is involved, all of the player's choices have to be funneled into the game through the tiny plastic device in their hands. There is only one way to press X. However, there are about a million ways to throw a punch. In a motion controlled game, players can do ANYTHING. Trust me, I've seen it all in playtesting sessions. Including the player that punched in reverse, yanking his fist backwards every time. I still don't get that one.
And, that's it for now. Feel free to ask me questions in the comments.
|
I'm curious if this curtain between the players and the guts of the tech is required by the platform holders. ? I guess that's my question, Ehud.
Because it strikes me as a horrible strategy (with the Wii, you can go into a 4 step sensitivity screen, which will let you see bad reflections in your environment. And the Kinect has it's calibrator. but neither of these is sufficient when you flat out fail to perform specific actions in game. You need something in game, which lets you troubleshoot the maneuver you cannot perform).
example: I bought Sonic Free Riders for the Kinect, because I couldn't believe the reviews which said it was flat out broken. I was eager to puzzle out what people were doing wrong, so I could ... post some snarky comments on the internet. I guess. I worked at a motion control company (NaturalPoint) for 10 years, so I figured I had a leg up on the intricacies and quirks of optical motion tracking.
But instead, I found I couldn't even get through Soni'cs *Q@!%! tutorial levels. I couldn't make it as far into the game as those reviewers who said it was unplayable. (Specifically, there is a tutorial level where you are told to jump up, twist in the air, and land with your body facing the opposite direction. When you fail, it just says you failed and restarts. Not mention of what aspect failed, or any suggestions on what to do differently. I tried this tutorial over and over until I finally pulled a muscle in my leg. from "angry jumpin'".
I decided it must have been something about my fat 6 foot american body type not matching the japanese devs' body types. Or that I wasn't planting my feet and shoulders in the proper orientation to the camera at start or finish. Or that the Kinect needed an update to better resolve my skeleton.
Basically, I gave up and blamed the game.
What baffles me is that the developers didn't include better tools for investigating problems in some obscure options menu of the main screen. (better feedback in game, would have helped too). In my experience with optical tracking, you need an options screen where you can see exactly what the camera sees - to identify unwanted light sources, and objects that cause confused tracking. In Sonic, I could only pause and jump out to Kinect's basic calibration tools. This wasn't connected to their jump twist maneuver in any way. What I needed to see was my resolved skeleton next to their idealized skeleton, so I could adjust what I was doing until it was consistently recognized. damnit.
anywho. now I'm all riled up again. It's been month since i fucked up my leg trying to do that maneuver. So I guess I'll go home and try again tonight. Maybe search around on youtube again, trying to find video of someone who can actually play the game at all. (a separate question might be: why don't these developers release video of themselves playing the game, to prove all the "it's just broken" critics wrong?)
But ultimately I'm flummoxed as to the strategy:
Why do they insist on hiding the experience behind a curtain of magic, instead of allowing for an obscure detailed option/tool which will help the user figure exactly what is going wrong.
(I have the exact same curiosity over the widespread reports that Steel Battalion was flat out released unplayable. But this time I wonder if if it's true. No way I'm buying that game until someone proves it isn't a mean spirited trick)
Thanks for the thoughtful comment. I'll fumble with some answers below:)
First, regarding the Sonic Free Riders sample you've given, I haven't played the game but from what you describe the gesture sounds badly designed on a few levels. 1) It has a high risk of player injury, something we should be extremely careful about as motion designers. 2) It is not actually one gesture but a number of connected gestures in a sequence (The jump, the turn and the landing). This makes the 'gesture' very hard to measure. Add to that the fact that the Kinect sometimes has problems recognizing the skeleton when you stand sideways and you get a gesture with a large probability of failure.
Now, regarding letting the players 'peak behind the curtain' to troubleshoot their gameplay experience, I think there are a few reasons why it doesn't happen. These are all speculations on my part. The first is a question of resources. Most Kinect games are focused at more casual players so chances are the more tech savvy options will be used by a relatively small amount of players. Creating a good diagnostic tool can be resource heavy and the resources might be better used on fine-tuning the gesture recognition itself.
Next are design and aesthetic reasons. Personally as a game designer, I feel that things like showing the player their skeleton while they play have a negative effect on their immersion in the game. If players divides their attention between their avatar and the skeleton it breaks the player's connection to the avatar. So I'll always prefer to try and create that feeling of 'magic' and not let the player see the tech behind the experience.
The last reason is how useful the diagnostic tool will really be in letting you fix your game experience. For instance, you might see that your arm is bouncing around all over the place while you are standing still but the reason why it is happening won't be clear.
And regarding the development team releasing a video showing them playing the game, we did just that recently:) Not because of any 'it's broken' feedback (We've gotten some great reviews) but to show players the optimal way to perform a few gestures. It's a fun thing to do and I agree it would be great to see more of it.
Ehud