So, the last couple of weeks have been a real challenge. My physics work is almost complete, but - as ever - edge cases cause lots and lots of problems. I had rocks that forced you back through 1-way walls, balls that went into a non-decaying orbit when thrown, clouds that made you flip into the air as you approached an edge, objects you could swing off causing the player to enter into a non-decaying orbit, and countless others.
The ultimate problem emerged when I realised the player wasn't gaining mass when carrying objects. My little (as yet unnamed) pal wandered around quite blithely, leaping all over the place with a boulder on his head the size of a small 4x4. It seemed a bit silly. When players walked against the boulder and thus pushed it, it felt suitably massive and rolled sullenly, like an overweight cat being shooed off a couch. However, flagging the boulder as 'carryable' allowed the player to loft the massive object into the air with ease.
I fixed this.
And then I realised why I hadn't fixed it before.
In game design there's a constant fight between realism, expectation and fun. Realistically, you shouldn't be able to move a heavy boulder. However, if you could lift it, you'd expect to stagger under its weight. However, that's no fun.
I realised I was going to have to be a little more binary in my treatment of all this stuff, and figure out why I was letting the player do these things in the first place. I always think that once you get into the psychology of game design, a lot of complicated issues become a little clearer.
So, why am I allowing the player to lift the rock? Because it's fun to carry stuff. Because it's necessary for some quests. Because you can throw rocks, and in order to throw them, you need to be able to carry them. See - all this stuff basically says: "Hey! I'm fun! You can do stuff with me!"
So, in this case I decided - even if it is hard to push a rock - if you can lift it, you can move it around with ease. If you try to throw it, it'll arc just like a small pebble.
'But surely that's nonsense!' I hear you cry.
'No,' I respond. The key is in the 'if you can lift it'. It's impossible for any normal person to lift a fecking great rock. However, if we're saying 'you can lift it' then you're super-strong. The end.
I remember the Halo team talking player expectation in relation to AIs, and how 'grey' rules really don't work. If you can make a squad of baddies run by killing their leader, it better happen every damned time, or else don't bother doing it. It'll just confuse the player.
In my case, if you can lift it, you can carry it. If you can throw it, you throw it in a manner identical to every other item you can throw. No exceptions.
Click, Swipe, Press, um... Lick... uh... Fondle?
Have I mentioned how much I hate on-screen controls? The little virtual joysticks that effectively say: "Sorry - I forgot I was designing for the machine you now hold." I think they're awful, lazy, impractical and fiddly.
However, I really wish I were using one.
At the moment, players can do the following, all by pressing, tapping or swiping the screen.
4) Pick up
None of these use on-screen controls, nor the accelerometer*.
Balancing all these things involves careful tweaking of interaction radii, the minimum valid distance for a swipe and the maximum period you can keep your finger on the screen before it decides you're pressing rather than tapping
If you make jumping more responsive then you find stuff you're carrying around sticking to you like pathetic industry execs on a booth-babe. Make jumping less responsive and the merest flick of a finger causes stuff to fly off without your say-so. Watching my wife play the game last night was an exercise in frustration. She fundamentally doesn't understand the difference between 'tap' and 'press', nor how 'make the player jump on a press' simply wouldn't work (because that would mean you couldn't move without jumping first).
That's the thing with casual games - there's a lot of training involved because your audience has not had 10+years of tropes and rules to fall back on when faced with a new control system. It's irritating as hell. At some point I'll just draw a line in the sand and say: "Yup... I know. You don't know how to swipe the screen. Quite how you've managed with your iPhone so far, I don't know, but I think you and I part company here.' I'm thinking of giving away 'Act 1' of incoboto and then selling subsequent chapters, so that people who just can't deal with it don't feel too annoyed.
Despite the eventual training issues, it is working - and relatively well. There are no on-screen controls apart from 'Pause'. When you use the machines on the planets, there'll be no mini-game, GUI or other distraction. You'll be manipulating real, physical objects that spin, slide, rotate and otherwise give you tactile feedback.
It's taking a while, but there's the potential for this to be quite awesome.
Now, where's that bloody rock gone.. ow!
*I tried the accelerometer for a bit and then realised that using one on the iPad is no fun at all - and Incoboto is destined for the iPad at some point. Tilting the iPad makes me feel like I'm drunk while in charge of a vehicle, albeit with less lethality, lifelong guilt and prison sentences.