Comment by ManlyBread
3 days ago
I have been thinking about this a lot ever since I played a game called "Balatro". In this game nothing extraordinary happens in terms of computing - some computations get done, some images are shuffled around on the screen, the effects are sparse. The hardware requirements aren't much by modern standards, but still, this game could be ported 1:1 to a machine with Pentium II with a 3dfx graphics card. And yet it demands so much more - not a lot by today standards, but still. I am tempted to try to run it on a 2010 netbook to see if it even boots up.
It is made in lua using love2d. That helped the developers and comes with a cost in minimal requirements (even if they aren't much for a game released in 2024).
One way to think about it is: If we were coding all our games in C with no engine, they would run faster, but we would have far fewer games. Fewer games means fewer hits. Odds are Balatro wouldn't have been made, because those developer hours would've been allocated to some other game which wasn't as good.
Balatro was started in vacation time and underwent a ton of tweaking: https://localthunk.com/blog/balatro-timeline-3aarh So if it had to be written in C, probably neither of those would have happened.
The game is ported to switch, and it does run slow when you do big combos. You can feel it visually to the point that it's a bit annoying.