The Snap, development log: Day 4

Mac build (r36)
Windows build (r36)

Status: Gamepad support is now complete and controls are now configurable. To set the controls for a player, click “Set p#1 Controls” or “Set p#2 Controls” at the main screen and follow the instructions. Controls are not saved when you quit the program yet. I recommend using a gamepad’s dual analog sticks to move and fire if you can.

So far I’ve tested the controller code with: Keyboard; a Sony Dual Shock 3 (on a mac, using the tattieboogie driver); and a vintage “Gravis Gamepad Pro”. But I haven’t yet tested anything on Windows, and also different brands of gamepads behave very different in SDL so the fact that I know these two gamepads work doesn’t say much about whether other gamepads work.

So I’d be extremely curious, if anyone out there has a gamepad, if you could test and see (1) could you configure your controls without incident (2) could you then play the game (…to the extent it can be played right now) and have it work. I am particularly curious whether this code works with the XBox 360 gamepad, and in particular, I’m curious whether the 360 d-pad works. The 360 gamepad does its d-pad in a weird way that requires an entire code path to itself to handle, but I don’t have one to test with.

A little amusing thing: I don’t impose any rule that different players each have to have their own gamepad, so I realized it was possible to set player 1 to control with the analog sticks on the Dual Shock and set player 2 to control with the d-pad and face buttons on the same controller. Despite my jokes about Twister before, I’m actually sort of considering encouraging people to play this way with two people! I attempted the 2 players, 1 controller thing with my spouse and it was actually weirdly workable and fun in a silly way (the configuration we settled on was player 1 had d-pad to move and right analog to fire, and player 2 had left analog to move and face buttons to fire).

Update: I found someone with a 360 gamepad. It works, but the d-pad does nothing. Oh well. Another thing I’m noticing is when you’re setting controls it’s way too sensitive about when it goes ahead and sets an analog stick axis, so it’s really easy to accidentally set your controls “sideways” if you accidentally push up a little and then left a little when you first touch the stick. I’ll fix this tomorrow.

Leave a Reply