Monday, September 24, 2012

You are a sheep to them: corporate cultures and you

In the modern world, we've no choice but to be customers of large corporations. Even indirectly, we're affected by their attitudes towards us. That makes it a great shame that their attitudes are generally so unpleasant.

This grew from a discussion on Twitter of "moon money", the various unreal currencies games companies like us to use. Call them Nintendo Points, Microsoft Points, what you will, they're a layer of obfuscation between your money and the things you buy with that money. Sometimes, they can be bypassed; but more often, your only choice is to pay in moon money or not at all.

Part of their purpose is to allow the companies to report income sooner. Once you've bought your moon money, you're now out the real world cost of however much moon money you bought; the company issuing the moon money has the real money now, instead of however much later it is when you finally finish buying "things" (generally intangible things, mere data) to the value of the moon money you bought. They got your money as a lump sum up front, not in the dribs and drabs it would have come in had they let you pay real money; because a common feature of moon money is that it may only be bought in inconveniently large chunks. Part of this is to avoid proportionately large charges for processing small credit card transactions, but a secondary benefit for the issuing company is the decoupling of moonbucks from real money. The real money is gone, and so spending moonbucks feels like getting something for free. A further aid to this is the common oddball exchange rate; Microsoft points exchange at a rate of $10 for 800 points, which is inconvenient to remember, while being close enough that people can be tricked into assuming that the exchange rate is one point per US cent.

On the face of it, these practices seem abusive to the customer; I believe they are, but they stem naturally from the corporate culture. Any publically traded company has a duty to its shareholders to maximise profit in the short term, which will result in abuse. Consider the customer as a mature sheep; you can look after this sheep, shearing it for wool each year, taking milk (but not too much!), and gain a long term advantage of woolen clothes, healthy family from good nutrition, and so on; the farmers' way. Or, you can sweep in, take the sheep, slaughter it, and you'll get a nice sheepskin rug, some very large mutton dinners, and overall a short-term windfall; the raiders' way. The difference is that the farmers' way results in you still having a sheep all along, but gives less reward at any given time.

So the requirement to maximise instantaneous reward is what has killed any consideration for customer loyalty. There will "always" be more sheep; so slaughter them, carpet the world in sheepskin rugs, and get fat on your mutton dinners. Privately owned companies can afford to take a longer view; after twenty years, the farmers will have a lot of sheep, because well-cared-for sheep increase in number, while the raiders will have slaughtered enough sheep (in this analogy, annoyed enough people to the point of boycott) that sheep will be getting thin on the ground. Short-term thinking is not generally sustainable.

One games company which appears to be a farmer is Valve. I've said many nice things about them, but the most telling example is their system of moon money. Yes, it's still moon money; but it's denominated in dollars and cents, as if it's real money; and it's available in flexible amounts, subject to a $5 minimum purchase. You want $13.74 in Valve moon money? Go right ahead and buy it. It'll cost you $13.74, and you won't have to round up and have the $1.26 from going to $15 hanging around. But if you do round up, any leftovers can be applied as a discount to anything you buy via Steam; the one time I used Valve's moon money, I ended up with $0.02 left over, and that was knocked off my next Steam purchase automatically. Valve go to pains to make sure their moon money behaves as much like real money as possible, because they'd rather sacrifice short-term gains in favour of keeping you coming back for a long time. They can do this because they're a private company; there aren't shareholders to placate with short-term growth. They can think long-term.

Any time you're asked to exchange real money for tokens, think carefully. The entity asking you to do that is aiming to make you stop thinking of your money as money, because they want to keep your money. Casinos; arcades; points for online purchases. The root desire is to get you to stop seeing it as money.

Monday, September 17, 2012

The controls are wrong: why ported games are hard.

It's usual, these days, for videogames to be released on multiple platforms. There are plenty of good reasons to do this; for one, the difficulty of hooking up consoles to a TV goes up exponentially as you add more consoles (as I should know, having at one point attempted to have eight different wossnames hooked up to one TV, and needing multiple switchboxes to do it since the US lacks SCART and its ability to Just Work) and so most people of normal sanity will tend to buy one console and stick with it. Then there are the people who don't really have consoles; the LA and I have a Wii, which initially stomped all over the PlayStation 3 and xbox 360 in sales, but which is now mostly passed over for high-profile games releases because things can't be made quite as pretty on it as they can on Sony's and Microsoft's offerings. So to get at all the potential sales, a smart developer and publisher will release on as many platforms as possible.

And therein lies the problem. Control schemes are inevitably going to be different. The Wii has its own issues with controlling the games, and generally Wii releases aren't straightforward ports; but PS3 and xbox releases will often be the exact same code, compiled for two different platforms. The controllers for these consoles are very similar; designed to sit in both hands, with four buttons and a joystick for each thumb to waggle about, and four more buttons in trigger-like positions. Some details are different, such as where the joysticks are, or whether they actually fit human hands or are designed for tiny elves, but that's the basics; twelve buttons and two joysticks. The joysticks can also be pressed on to make two more buttons, and there are a couple more buttons used for system access, overriding the game.

You can make certain assumptions with controllers. The fact that you have two guaranteed analogue input devices means you can get fancy with driving controls, and have somewhat realistic speed sensitivity in your steering; wallop the stick hard over at speed, and you'll spin out spectacularly. And so on. The four buttons under the right thumb make a very easy reflex test, known as a quick-time event; remember Simon? A lot of games nowadays use that for "react fast" challenges such as disarming bombs.

And these control assumptions fall apart when confronted with the harsh reality of PC gaming. A keyboard and mouse make for far different control inputs. For one thing, you only have one analogue input, and it's a pointing device rather than a steering device. There's typically a direct mapping between how far the mouse is moved and how far the pointer moves; flicking the mouse will move it fast, moving the mouse slowly will turn it slower. A joystick, by contrast, varies the speed of the pointer based on how far it's pushed over; accurate pointing is much more difficult. The different control methods here are a big impact. A recent high-profile problem caused by this was discovered in id Software's tech-demo Rage; on consoles, everything looked gorgeous, all the time, while on far more powerful PCs, at the same resolution, turning around too fast would result in the player seeing a blurry mass of foot-wide pixels for a short while until the game could get the proper gorgeousness on screen. The fundamental problem was the difference between a pointing device and a steering device; consoles didn't allow the player to turn faster than the game could get the right data.

And then there's the problem of car controls in driving games. Remember the speed-sensitive steering I mentioned earlier? One of the PC games I play has that, and it's a disaster trying to drive in a straight line at high speed. The reason is, the mouse is needed for camera control, and so the steering is delegated to the keyboard. Keys have two states: on or off. This means that the steering is either straight ahead, or at full lock. This has led to my typical method of cornering in that game being to bail out of the car by opening a parachute, which gives me enough time to see a car going in the right direction and steal that one. It's far quicker than slowing down to the point at which I can avoid spinning out, and cheaper than buying a gamepad. Another console port game has a much less speed-sensitive steering mechanism; I typically turn corners in that one, although the keyboard turns them from a dexterity challenge to a timing puzzle (hit the keys with the right timing to flick the car through 90 degrees, and punch the go pedal at the right moment, as opposed to judging how hard to shove the stick)

Similar difficulties prevail going the other way, rare as that is nowadays; the consoles being where the money is, they're likely to be the primary market. I've attempted to play ports from PC to console, and they're generally clunky and awkward at best.

As long as the control assumptions remain as they are, porting in either direction will remain a problem. Input handling is one of the hardest things to get right in making a game.

Tuesday, September 11, 2012

Some news

I have a buffer, and more posts to add to it, so regular content drops will resume on the 17th inst., but the LA and I have just bought a house and so things will be chaotic for a while.