I got my Steam Deck 3 days ago and I just started exploring it. Given that I already have a large library of games on Epic Games, one of the first thing I did was installing the Heroic launcher. It worked well for some of the games (and not for others… like Hyper Light Drifter ;_; if someone knows how to configure it please help me). What I’m not understanding is: why do I need to have different proton versions installed for each game? Eg: one game requires GE 7.32 (what’s GE by the way???), another game version 7.45, another one 7.20 etc etc etc… Why? I already had the latest version (8.0) of proton installed on my Steam Deck, shouldn’t it be enough to run all other games being the latest version? 🫤
Ideally, any change to any codebase would be a strict upgrade that’s always better for everything.
But in practice, it just doesn’t work that way. There’s a lot of software out there that needs specific versions of specific libraries in order to not break, because even a straight bug fix can break software that was built and tested while that bug existed, if it was touched by that bugged behavior and the developers didn’t know it was a bug. There are a lot of code bases that just rely on way too many dependencies to be able to actually read and comprehend the specification for every dependency they have. In theory that’s not ideal, and leaning on a lot of external dependencies can break stuff in a lot of ways as they change, but it’s how it is.
It’s worse in some ways for games, because they take more shortcuts in the name of optimization, and in a lot of times are helped by graphics drivers to avoid breaking. Nvidia game ready drivers are a good example. There are games that have serious issues if you use a driver earlier than that, because nvidia will do hacky shit to fix the hacky shit the devs did and make it work.