Lately Sabriena and I have been playing World of Warcraft again, as we'd just about run our course on Trove and two of our friends were playing it so it sounded fun. Duncan was bugging us that he wanted to play too, but how to accomplish that?
We've got the desktop out on the TV, so this shouldn't be too difficult right? The first problem was setting him up an account - no big deal, WoW has "starter accounts" now that are free, where he can play up to level 20. That's probably fine, as I don't expect him to play that much and beyond about level 20 the difficulty is probably going to stack up too high for a five year old. He can't join the guild, but if we buy him the battle chest, guild one of his characters, then let his subscription lapse he can - so we can keep an eye on him, but we probably don't need to anyway what with him playing on a 32" screen right in front of at least one of us.
I theorized that I could use JoyToKey to emulate a mouse on the right analog stick having it hold down the mouse button at the same time. This worked well enough for him to play for about an hour, but after a cursory Google search it turns out there's an addon that makes things significantly easier. It's called ConsolePort, and it's well worth installing. It comes with it's own JoyToKey profile, but for some reason I had to edit the keybindings to get it work, which was a fair amount of work to get right.
Once it's all configured correctly though, one can tab-target and use all 10 skills on the main bar, along with general movement and interacting with your backpack and such far easier than without the addon - it's really well done. Actually interacting with NPCs is still a no-go without using "the mouse", presumably to stop people from writing a full bot in LUA... but the addon writer has done such a great job Blizzard really ought to consider implementing this stuff into the game itself. Using "the mouse" is easier too because with a press-in of the right analog stick, the analog stick ceases controlling the camera and starts controlling the mouse.