OK, Auria, so it's like this: I wanted to control STK with a different external controller, and this controller is a (gym) spinning bike. Also, the STK controls the spinning bike, i.e., it controls the load (how heavy the bike feels) based on several info from the World, Kart and Race Manger classes. I have buttons on the bike mapped to basic kart control and actions. One of these functions is the accelerate function that corresponds to how fast the person is pedalling on the bike. The new key binding I needed was to control the general difficulty (to match the person's physical aptitude). Ups and downs of the track, crashes, hitting things, bubblegum or bananas, getting nitros and the boxes... all of this increases or decreases the load on the bike, and each effect (or game event) has its own duration and strength. I think I understood how the game handles theses events and I added a bunch of command line options to control how the game behaves regarding controlling the load. I tried to follow the recommended programming style, but being an electrical engineer and not a real programmer, I must have made some ugly choices. It uses USB ports (one for each of 4 possible bikes) to talk to the bikes – but I’ll go bluetooth soon. It's possible to do a "race" with up to 4 players on spinning bikes effectively feeling all the ups and downs of the tracks and the events of the game as variations of the load on the bike pedals. This is a link for a semi-edited video of kids using the bike with a modified STK in a local school:
https://www.youtube.com/watch?v=WAt9RA-Dgpo