Thought I'd share my neat little XOne+MKW configuration I've worked on for a couple days
The Xbox One controller emulates a Gamecube controller, but in a way that you almost don't need to move your fingers away from the buttons you're mainly using, making reaction time a lot faster.
You only have to use the triggers, shoulders and sticks for everything, making everything highly accessible. Here's the gist of it: right trigger's acceleration and left trigger's braking/drifting; left stick is both steering and up/down tricks (also wheelies); right stick's for both using items and left/right tricks, and pressing it (or `Thumb R`) is wheelieing; left shoulder's for toggleable item holding and right shoulder's used for the rear view.
(below is quite a long discussion on all the aspects of this; for the actual configuration just go to the bottom, although I strongly recommend reading the part about fancy item holding and the potential issue that comes with it - which can be fixed if I knew how)
Now, the tricks' positioning might be confusing to most, however I got used to using items with the right stick when initially using my controller to emulate a Wiimote (and not a more versatile GC controller). Also, having the up trick on the same stick and steering is ridiculously handy. I have a configuration where the right stick fully emulates the GC controller's DPad, some may prefer this alternative.
(Please note that the Back button function has been added! Scroll to the bottom of the post for enhanced version!)
The fancy part here is the item holding. You can press LS to toggle item holding. In order to use the held item, use the right stick, the item will automatically unhold (you can also use the item even if you didn't hold it). You can also use the item by pressing LS again, and using the right stick while you don't have any item will make sure that LS is off (since you can't really see its value... I had that problem before). It makes use of a toggle inside of a toggle, I find it quite complex and fascinating (tbh I wasn't sure if it would've worked, but surely enough it did!). Even though this is the fanciest component of all this, I think I might need to go one step further and add a new feature, some other button (like, say, X) that would make sure the toggle is off even while you still own an item (you can get hit and lose the item you were holding without using it; this can easily get confusing and there is no way to detoggle it without using an item you might have - which, if you use when LS is toggled, will be thrown in the opposite direction... weird problem that cannot really be fixed without an additional key being used). However, I've no clue how to go THAT deep since documentation on input functions is lacking and I'd have to study Dolphin's source code a bit (luckily, somebody pointed me towards the functions' definition!).
I used a deadzone of 25% for controls that needed one, this can of course be changed to your preferences. While you don't need to use anything else other than the triggers, shoulders and sticks, I do have other buttons configured. I recently changed A on the controller to tricking instead of actual A, if I ever need to steer and using `Thumb R` feels wonky. This can be tailored to your tastes too.
I do have a problem with this that might affect some. Since `Shoulder R` is used for the rear view, it's kind of hard to press since you need to use the same index finger you use for accelerating (if you use the XOne controller like a human being). I don't really use the rear view but this might put people off. I guess `Thumb R` could be used for the rear view, some might appreciate that. I however don't have problem with this, I can use rear view for what I need.
Since the GC controller doesn't have a Home button, I have the second controller set as an emulated controller with hidden IR and the Home button configured to Y. I need to pause at times and having to defocus and pause with the keyboard is rough. This can't be used if you have more players, but I'm sure you can figure something out in such a case
Anyway, enough of my rambling. Below are the configurations (with the more intuitive alternative and the accompanying Wiimote configuration), I recommend calibrating your sticks and perhaps adjusting the deadzone (if 25% feels weird to you):
XOneSwitched.ini (what I use):
XOne.ini (more intuitive, right stick's the DPad and left stick's steering+item throwing):
acc.ini (what I use for the Home button):
NEW VERSION:
I have succesfully managed to add the Back button as a way to master reset the item holding toggle! Also, I've changed the deadzone for using items and steering to be 20%, 5% less than the item holding deadzone, to make sure a direction is selected before using items. This may have been the cause of my items being thrown in the wrong direction. To avoid any confusions, I am going to paste the new config files entirely instead of replacing the old ones:
XOneSwitched.ini (Enhanced):
XOne.ini (Enhanced):
Also, for those of you who want rumbling (the controller vibrates during gameplay), add this to you config file: [b]Rumble/Motor = `Motor L`|`Motor R`[b], then enter the in-game settings (just before selecting a licence) and turn on GC Controller Rumbling (should be the first setting out of the three). Cheers!

You only have to use the triggers, shoulders and sticks for everything, making everything highly accessible. Here's the gist of it: right trigger's acceleration and left trigger's braking/drifting; left stick is both steering and up/down tricks (also wheelies); right stick's for both using items and left/right tricks, and pressing it (or `Thumb R`) is wheelieing; left shoulder's for toggleable item holding and right shoulder's used for the rear view.
(below is quite a long discussion on all the aspects of this; for the actual configuration just go to the bottom, although I strongly recommend reading the part about fancy item holding and the potential issue that comes with it - which can be fixed if I knew how)
Now, the tricks' positioning might be confusing to most, however I got used to using items with the right stick when initially using my controller to emulate a Wiimote (and not a more versatile GC controller). Also, having the up trick on the same stick and steering is ridiculously handy. I have a configuration where the right stick fully emulates the GC controller's DPad, some may prefer this alternative.
(Please note that the Back button function has been added! Scroll to the bottom of the post for enhanced version!)
The fancy part here is the item holding. You can press LS to toggle item holding. In order to use the held item, use the right stick, the item will automatically unhold (you can also use the item even if you didn't hold it). You can also use the item by pressing LS again, and using the right stick while you don't have any item will make sure that LS is off (since you can't really see its value... I had that problem before). It makes use of a toggle inside of a toggle, I find it quite complex and fascinating (tbh I wasn't sure if it would've worked, but surely enough it did!). Even though this is the fanciest component of all this, I think I might need to go one step further and add a new feature, some other button (like, say, X) that would make sure the toggle is off even while you still own an item (you can get hit and lose the item you were holding without using it; this can easily get confusing and there is no way to detoggle it without using an item you might have - which, if you use when LS is toggled, will be thrown in the opposite direction... weird problem that cannot really be fixed without an additional key being used). However, I've no clue how to go THAT deep since documentation on input functions is lacking and I'd have to study Dolphin's source code a bit (luckily, somebody pointed me towards the functions' definition!).
I used a deadzone of 25% for controls that needed one, this can of course be changed to your preferences. While you don't need to use anything else other than the triggers, shoulders and sticks, I do have other buttons configured. I recently changed A on the controller to tricking instead of actual A, if I ever need to steer and using `Thumb R` feels wonky. This can be tailored to your tastes too.
I do have a problem with this that might affect some. Since `Shoulder R` is used for the rear view, it's kind of hard to press since you need to use the same index finger you use for accelerating (if you use the XOne controller like a human being). I don't really use the rear view but this might put people off. I guess `Thumb R` could be used for the rear view, some might appreciate that. I however don't have problem with this, I can use rear view for what I need.
Since the GC controller doesn't have a Home button, I have the second controller set as an emulated controller with hidden IR and the Home button configured to Y. I need to pause at times and having to defocus and pause with the keyboard is rough. This can't be used if you have more players, but I'm sure you can figure something out in such a case

Anyway, enough of my rambling. Below are the configurations (with the more intuitive alternative and the accompanying Wiimote configuration), I recommend calibrating your sticks and perhaps adjusting the deadzone (if 25% feels weird to you):
XOneSwitched.ini (what I use):
Code:
[Profile]
Device = XInput/0/Gamepad
Buttons/A = `Trigger R`
Buttons/B = `Button B`
Buttons/X = `Shoulder R` | `Button X`
Main Stick/Dead Zone = 25.000000000000000
Main Stick/Up = `Right Y+`
Main Stick/Down = `Right Y-`
Main Stick/Left = `Left X-`
Main Stick/Right = `Left X+`
Triggers/Threshold = 0.0000000000000000
Triggers/L = toggle(`Shoulder L`, !toggle(`Shoulder L`, ((`Right Y+`>0.25)|(`Right Y-`>0.25)))^((`Right Y+`>0.25)|(`Right Y-`>0.25))) ^ ((`Right Y+`>0.25)|(`Right Y-`>0.25))
Triggers/R-Analog = `Trigger L`
D-Pad/Up = `Left Y+`>0.25 | `Thumb R` | `Button A`
D-Pad/Down = `Left Y-`>0.25
D-Pad/Left = `Right X-`>0.25
D-Pad/Right = `Right X+`>0.25
XOne.ini (more intuitive, right stick's the DPad and left stick's steering+item throwing):
Code:
[Profile]
Device = XInput/0/Gamepad
Buttons/A = `Trigger R`
Buttons/B = `Button B`
Buttons/X = `Shoulder R` | `Button X`
Main Stick/Dead Zone = 25.000000000000000
Main Stick/Up = `Left Y+`
Main Stick/Down = `Left Y-`
Main Stick/Left = `Left X-`
Main Stick/Right = `Left X+`
Triggers/Threshold = 0.0000000000000000
Triggers/L = toggle(`Shoulder L`, !toggle(`Shoulder L`, ((`Left Y+`>0.25)|(`Left Y-`>0.25)))^((`Left Y+`>0.25)|(`Left Y-`>0.25))) ^ ((`Left Y+`>0.25)|(`Left Y-`>0.25))
Triggers/R-Analog = `Trigger L`
D-Pad/Up = `Right Y+`>0.25 | `Thumb R` | `Button A`
D-Pad/Down = `Right Y-`>0.25
D-Pad/Left = `Right X-`>0.25
D-Pad/Right = `Right X+`>0.25
acc.ini (what I use for the Home button):
Code:
[Profile]
Device = XInput/0/Gamepad
Buttons/Home = `Button Y`
IR/Auto-Hide = True
NEW VERSION:
I have succesfully managed to add the Back button as a way to master reset the item holding toggle! Also, I've changed the deadzone for using items and steering to be 20%, 5% less than the item holding deadzone, to make sure a direction is selected before using items. This may have been the cause of my items being thrown in the wrong direction. To avoid any confusions, I am going to paste the new config files entirely instead of replacing the old ones:
XOneSwitched.ini (Enhanced):
Code:
[Profile]
Device = XInput/0/Gamepad
Buttons/A = `Trigger R`
Buttons/B = `Button B`
Buttons/X = `Shoulder R` | `Button X`
Main Stick/Dead Zone = 20.000000000000000
Main Stick/Up = `Right Y+`
Main Stick/Down = `Right Y-`
Main Stick/Left = `Left X-`
Main Stick/Right = `Left X+`
Triggers/Threshold = 0.0000000000000000
Triggers/L = toggle(`Shoulder L`, !toggle(`Shoulder L`, ((`Right Y+`>0.25)|(`Right Y-`>0.25)) | `Back`)^((`Right Y+`>0.25)|(`Right Y-`>0.25)) | `Back`)^((`Right Y+`>0.25)|(`Right Y-`>0.25))
Triggers/R-Analog = `Trigger L`
D-Pad/Up = `Left Y+`>0.25 | `Thumb R` | `Button A`
D-Pad/Down = `Left Y-`>0.25
D-Pad/Left = `Right X-`>0.25
D-Pad/Right = `Right X+`>0.25
XOne.ini (Enhanced):
Code:
[Profile]
Device = XInput/0/Gamepad
Buttons/A = `Trigger R`
Buttons/B = `Button B`
Buttons/X = `Shoulder R` | `Button X`
Main Stick/Dead Zone = 20.000000000000000
Main Stick/Up = `Left Y+`
Main Stick/Down = `Left Y-`
Main Stick/Left = `Left X-`
Main Stick/Right = `Left X+`
Triggers/Threshold = 0.0000000000000000
Triggers/L = toggle(`Shoulder L`, if(toggle(`Shoulder L`, ((`Left Y+`>0.25)|(`Left Y-`>0.25)) | `Back`), ((`Left Y+`>0.25)|(`Left Y-`>0.25)), !((`Left Y+`>0.25)|(`Left Y-`>0.25))) | `Back`)^((`Left Y+`>0.25)|(`Left Y-`>0.25))
Triggers/R-Analog = `Trigger L`
D-Pad/Up = `Right Y+`>0.25 | `Thumb R` | `Button A`
D-Pad/Down = `Right Y-`>0.25
D-Pad/Left = `Right X-`>0.25
D-Pad/Right = `Right X+`>0.25
Also, for those of you who want rumbling (the controller vibrates during gameplay), add this to you config file: [b]Rumble/Motor = `Motor L`|`Motor R`[b], then enter the in-game settings (just before selecting a licence) and turn on GC Controller Rumbling (should be the first setting out of the three). Cheers!