Archiving Steam games for fun and profit
lorendb.dev
lorendb.dev
I would just like to add that Steam assigns ten IDs to an app, making appID 10 the first game, 20 the second, and so on.
Though Steam has delisted games, they are still available from one's user library, provided they have a valid license for it. If, for any reason, it's not visible in the library, one could use the DepotDownloader[0] to download any version, past or current, directly from Steam's servers. I've had some fun with it, visiting release versions of favorite games, seeing how much they've changed.
Great script! This will definitely help some game archiving enthusiasts.
I use this to download historical versions of a game to help with reverse engineering to archive dialogue trees from a game https://dialogue.destiny.report
So this has me curious but what if Steam did disappear tomorrow, or they banned your account accidentally... wouldn't the archive be un-runnable? Or is there some way to run those archived games without Steam?
https://gitlab.com/Mr_Goldberg/goldberg_emulator/blob/master...
It's easy to test, just exit Steam and try to launch the game (.exe) with Goldberg installed. If Steam doesn't open, it's working.
There are also quite a few games that don’t institute any validation and will happily run without steam at all. It’s up to the developer to enable either level of validation and many don’t.
The only games on steam that have any meaningful DRM are the ones that go out of their way to do so. Nothing about steam is actually meant to serve as DRM that is more than paper thin. Valve tried to make a push a lot time ago with the custom executable generation technology around the time Civ 5 came out (2010) and it didn’t hold up for long and the appetite was not there.
Broadly speaking only Denuvo and very niche solutions for obscure games that are completely homespun (so the demand just isn’t there for people to properly crack them) are the only pure DRM being used on steam now.
(I own over 1500 games on steam to be clear, I do however often pirate games to try them out because 2 hours is a pretty narrow window for most games, especially the ones I enjoy. I buy what hooks me.)
> It doesn't break any DRM. If the game has a protection that doesn't let you use a custom steam api dll it needs to be cracked before you use my emulator. Steam is a DRM as much as any API is a DRM. Steam has actual DRM called steamstub which can easily be cracked but this won't crack it for you.
That being said looks like steam themselves don't consider their DRM to be very useful
https://partner.steamgames.com/doc/features/drm
> The Steam DRM wrapper by itself is not an anti-piracy solution. The Steam DRM wrapper protects against extremely casual piracy (i.e. copying all game files to another computer) and has some obfuscation, but it is easily removed by a motivated attacker.
They also run GOG, which is mostly DRM-free games. Another major recent title available DRM-free on GOG is Baldur's Gate 3 by Larian.
The common theme for both studios seems to be that they don't use a publisher, which is the likely reason neither add garbage like Denuvo to their games. I feel like DRM/no-DRM might be a good indicator for whether developers or MBAs were in control of a project.
"GOG.com is a digital distribution platform for video games and films. It is operated by GOG sp. z o.o., a wholly owned subsidiary of CD Projekt based in Warsaw, Poland."
I've now got two other Linux machines set up for my daughters (7 and 9).
I'm not excited about purchasing the same games for each kid.
Can I use the same account on three computers independently? Or, would something like this script come in handy?
I don't want to run afoul of the Steam license. And, I feel it would be fair to let one kid play a game while the other kid isn't, on their own independent computer system.
Any advice here?
Steam also has family library sharing, which allows games to be shared across accounts (with some restrictions).
For what it's worth, IDs 1 through 10 are a mix of test depots, libraries, and such.
I have a system with a bunch of VMs on it.
I run this script and sync all games to a games partition on the machine.
Then I can mount the disk in a VM and install and play the games.
For example, I have a windows 11 vm without a network device, and can play with no annoying updates, no nags, no games phoning home.
I got annoyed because some games phone home (anything built on unity), and others have spyware (check out kerbal space program)
I have a steam library from years ago, I wonder if I can do something similar to play offline
The human race will go extinct because some lawyer saw a chance to make a buck by denying people access to that old file.
Gog, on the other hand, doesn't let you do this, so I resorted to lgogdownloader.
https://english.stackexchange.com/questions/25205/what-is-th...
I've tried setting up different accounts for each game I buy, but switching between accounts crashed my computer. Ideally there would be a steam launcher launcher where you pick the game and it launches steam into the correct account for you. It sets any settings/preferences as well. Each game would be installed in different locations on the file system.
If I have 10 games, I have 10 accounts. I play on one pc with one account and my son plays with another account on his pc. But then I can switch to a different game my son was just playing by using his account after he stops and he can play a different game on yet another account. All rightly and fairly paid for.
As it stands, I've bought a couple games from Steam competitors just so I could for sure play them when my son is gaming.
Personally, I get around this by using Offline Mode, but I know that workaround doesn't work in all cases, such as playing an multiplayer game while you kid plays something else.
"If the IP addresses are the same you must let them game."
And you can be offline and still play most singleplayer games, so enjoy!
On a separate occasion, I played a game for 10 hours through family share, and then decided to get a copy of my own. Wanted to return it after 15 min, but Steam won't let me because it is considering prior 10 hours play time makes me ineligible for 2 hour refund window.
Basically the rule is you can share and lend your games, but only 1 game from your account can be played at any one time.
For games that use steam features, you can drop in a steam emulator[0] to shim the API calls. I use this for when I want to run multiple versions of the base game with different mods.
Typically this works fine as long as there's no real Drm/anticheat (which is common in multi player games but rare for single player).
So this should allow you to clone parts of your library for your son to play (as well as consolidate your many accounts).
[0] https://gitlab.com/Mr_Goldberg/goldberg_emulator/blob/master...
Nintendo is still King when it comes to local multiplayer but they unfortunately haven’t upgraded their hardware in quite a while and the switch was a little anemic even for its time.
It has led to a weird situation where for most games it’s only really feasible for us to play together if we are hours apart and playing over a network. Back in the ps2 / Xbox 360 era it felt like almost every game had a local split screen mode.
This is all just to say that Nintendo can't compete on hardware performance and graphics so it focuses on other things to be best at.
If you’re annoyed by games that were better before an update, that’s on you. Before online distribution you’d never even have a chance to experience them before they’re “done”. Now it’s your own choice that you’re complaining about.
>It's weird when I start playing a game at, say, v1.6, really like it, then suddenly it can't be had anywhere because v1.7 is a different game.
Counter Strike immediately comes to mind but I'm sure there are earlier games than that.
Minecraft also 'incredibly' has first-party support for downloading and playing any previous version of the game. There's and incredibly vibrant community playing the game on years old versions of the game (mainly for modding).
Contrast this to World of Warcraft where you cannot play anything but the current latest (except via the now-released Classic, which still isn't the same as "preserve this version forever").
Factorio has also been "never really done" but they work hard to make the modding interface (and especially save games) stable.
https://github.com/GTNewHorizons/lwjgl3ify
https://wiki.gtnewhorizons.com/wiki/Installing_and_Migrating...
However, this gets into a question of game economics and "how do we keep paying developers?"
The "buy, one and done, no patches ever, bye" model for game development gets "this game is abandoned" and the initial sales splurge doesn't always cover the cost of development. Thus you've got DLC. If there are servers to be hosted for multiplayer lobbies, that expense needs to be paid somewhere.
So a constant trickle of updates / fixes / DLC / changes keeps the player base interested, and can provide the revenue stream to maintain those updates, fixes and servers.
On the other hand, looking at Stellaris DLC (or Crusader Kings) and you go "I'm gonna pay how much for that game?" while players who started from the start see it more as a "pay $20 / year for something new added to the game".
This season didn't put Stellaris on sale, but I not infrequently see 50% off on it.
Awhile back I was playing through darkest dungeon and they did two rebalances that changed how most characters work. I had spent time leveling up characters and building teams only to have the game change out from under me. It was annoying even if the final rebalance was better since I made decisions that were based on obsolete information.
I've lost track of how many times I've had to relearn that game.
There's also plenty of new games that are "one and done" outside of patches, probably more than ever.