Credits¶
There are lots of credits to go around and I'm sure I'm missing quite a few - apologies.
Credits go to Whitemagic for the amazing original Gremlin that to this day amazes me with its brilliant and elegant design.
To ShaulIz for VJoy - the virtual joystick support that makes this all work - if this didn't exist - none of this would either.
To Nefarius for work on HIDHide to remove game confusion with real inputs mixing up with virtual ones, and make tools like Gremlin and JGEX feasible, and of course VIGEM Bus for virtual gamepad support.
To Yann Boutellier for his sample code on the Python integration with VIGEM Bus, the underlying code JGEX used a lot of with a few tweaks to support gamepads in JGEX.
To the multiple testers and contributors to this project, in particular Lolo_350, Zer0_Kelvin who got into the weed of regression testing and calling out in great detail what's working, what used to work and stopped working, what needs help and what was totally broken.
To the other open source inspirations out there that provide countless examples of how to work around the workaround when third party libraries have limitations or bugs, and it becomes how to work with that or around that and how-to because much of this seems at some level to be an arcane art.
GremlinEx is a work of passion stemming from years of running simulators and excellent products out there like DCS, Star Citizen, X-Plane and Microsoft Flight Simulator. GremlinEx is one answer to hopefully make this process a bit easier, a bit more flexible, a bit more complex perhaps, with the goal of improving the game experience and simplifying the process across all these hardware vendors each offering their own proprietary solutions. Many features in GremlinEx also comes from the community in the form of "hey, can it do this". A driving philosophy is GremlinEx should as much as possible, and within a focus of controller mapping, be a universal input mapping control software without having to run five pieces of software along with it.
I give immense thanks to my (very, very patient) wife for dealing with me and the long hours of coding and choice words uttered in the basement figuring this stuff out.