Modding Balatro on PC to add touch controls

TL;DR: I've made a Balatro mod that adds the touch controls of the iOS version on PC. It's called "Sticky Fingers" and is available to download on GitHub! This post will is mostly about the process of making the mod itself.
How I got here
If you're reading this, I probably do not need to explain Balatro to you. To say I got into this game would be an understatement. According to Steam, I've spent 210 hours playing it last year and I expect to spend half of that amount playing it in the next year. The game's good, turns out.
Balatro released on PC in February 2024, Mac in March, and got an official mobile port in September of the same year.
And that mobile port is great! Great use of the haptic engine and most importantly… great touch controls!
If you don't know what I'm talking about, here's a little recording showing them off:
After playing the game on iOS a bunch, I've come to really like those controls and would often miss them when playing on my Mac.
So I did the reasonable thing… Hoping that someone ported those controls to the desktop version of Balatro.
Until I got fed up with waiting and asked myself: ✨ "How hard could it be, really?" ✨
Not that hard, but not easy either, it turns out!
Background
If you are unaware, Balatro is a game written using the LÖVE framework in Lua and more importantly… the code of the game is available on the file system when you buy it! All of it, neither obfuscated nor minified! This is, obviously, very convenient when it comes to making mods (of which there are many), and it greatly…Read more