Git Product home page Git Product logo

steamautocracker's Introduction

SteamAutoCracker

GitHub all releases GitHub release (latest by date) GitHub Repo stars GitHub watchers

An open-source script that automatically Cracks (removes DRM from) Steam games

How to use (easy way)

  • Download the bundled/compiled version by clicking here and downloading the file named Steam.Auto.Cracker.GUI.vX.X.X.zip
  • Extract the content of the archive (.zip) somewhere on your computer
  • Run steam_auto_cracker_gui.exe
  • Select the folder of your game
  • Enter the name of the game to try to crack it! (you can also enter the Steam AppID if you know it)
    • SAC will automatically attempt to find the AppID using the Name you provided. If it can't, please try entering the AppID yourself.
    • You can find the AppID in the URL of the game's Steam page (ex: store.steampowered.com/app/-> 620980 <-/Beat_Saber/)

Features

  • Automatically cracks your bought or pirated Steam games. You only need to select the game's folder, and enter the Game Name or AppID.
    • Cracks Steam API DRM by applying and configuring Steam Emulators automatically
    • Cracks Steam Stub DRM by applying Steamless on executables automatically
  • No Steam account or Steam API key needed
  • Configurable to your liking
  • Option to only unlock DLCs for your bought Steam games instead of cracking them entirely
  • Option to choose your own Steam Emu thanks to a simple list, and simple config template system (default: ALI213)
    • List of Steam emus included by default:
      • ALI213 (Game)
      • Goldberg (Game)
      • CreamAPI (DLC)
  • Open source, transparent and privacy focused. No hidden analytics or weird things!
  • An opt-in autoupdater and version checker. Opt-in for privacy!

Screenshots

Screenshots from v2.0.0

Images

Requirements

  • An internet connection (SAC will do requests to steampowered.com to retrieve AppIDs and DLCs)
  • If you use the compiled .exe:
    • 64 bits Windows
  • If you use the python file (source):
    • The requests module. Install with py -m pip install requests or python -m pip install requests or python3 -m pip install requests
    • The pywin32 module (which contains win32api). Install with py -m pip install pywin32 or python -m pip install pywin32 or python3 -m pip install pywin32
    • The tkinter module, but it should be included in Python by default.
    • I believe Python 3.7+ is needed.

Notes about DLCs

Some DLCs in some games requires you to download additional files.
This tool is not able to download those files, you'll have to get a clean version of them.

You can get clean Steam files for games (and sometimes DLCs) in the Steam Content Sharing section from cs.rin.ru

Windows Build informations

Compiled using pyinstaller and venv
Was previously compiled using auto-py-to-exe (which is just a GUI for pyinstaller)

Instructions on how to compile SAC, as well as useful scripts are available here: https://github.com/BigBoiCJ/SteamAutoCracker/tree/compile-env

Privacy

SAC will do requests to steampowered.com (Steam's official website) to retrieve AppIDs and DLCs.
It is not bannable, and won't cause you problems.

SAC will do requests to this GitHub repository to check for updates, download the autoupdater and new releases.
This only happens if you decide to manually click on the "Check for updates" button, and decide to update using the autoupdater. SAC can also automatically check for updates if enabled in the settings (it is disabled by default)

Nothing is logged by SAC.
You can delete the SAC folder at any time and there won't be any leftovers. *

* Exception to leftovers:

  • There will be some leftovers if you use the compiled exe. This is due to how PyInstaller / auto-py-to-exe works. An embedded version of Python and the python script itself will be extracted to the temp-folder of your OS. The folder will be named _MEIxxxxxx, where xxxxxx is a random number. You can delete the folder at any time after using the program, as it might not correctly delete itself in all cases. Please check the pyinstaller documentation for more infos.

Virus detection

You could get a virus detection on some files. The biggest offender is sac_emu/game_ali213/files/steam_api.dll.
A lot of cracking tools are detected as malware, either because their behavior is suspect (bypass game protections), or because they have been flagged manually (happens with a lot of tools).
If you're suspicious about the legitimacy of the files, just delete the DLLs and use your owns instead.
You can discuss with others about the tool in cs.rin.ru or in the GitHub issues.

Thanks

  • Thanks to atom0s for their Steamless project
  • Thanks to oureveryday for their Steamless fork, supporting command-line (no longer used)
  • Thanks to the creators of Steam Emus, specifically those who are included: ALI213, Goldberg and deadmau5 (creator of CreamAPI)
  • Thanks to CS.RIN.RU and their members for being helpful and sharing quality uploads
  • Thanks to our contributors that propose code, report issues and give suggestions! The most notable ones will be quoted in releases' notes
    • Even if you're not credited, that doesn't mean you didn't help! I thank everyone ❤️

steamautocracker's People

Contributors

bigboicj avatar matt14451 avatar phong940253 avatar v1ckxy avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

steamautocracker's Issues

unpacking of csgo

Hi, can you make a plugin to unpack counter-strike global offensive, too?
It will not work at the moment.

Mac support?

i was just wondering if there is gonna be mac support and i have a mac i can test it

Help, I Can't Use It

Traceback (most recent call last):
File "steam_auto_cracker.py", line 390, in
File "steam_auto_cracker.py", line 115, in FindGameDirectory
FileNotFoundError: [WinError 3] The system cannot find the path specified: 'C:/Users/ventu/Music/T6 By AvatarDZ (NF)/'
error.log

After crack demo game writes "connection error"

I have downloaded free demo of a Dong Wu game (unity engine) when the demo was available.
It was later removed from access and the demo would not launch writing "no licence" steam error.

Tried SAC latest version. Followed default settings, chose game folder, entered app id, selected ALI213 - game launches but immediately writes "Connection Error. Try again ?(900000)"

Redo with Goldberg emu - same result.
I dont understand what's the issue. Demo doesnt have DRM. Some sort of hard coding in the game ?

İt doesnt work

Hello i was trying to crack a game then it crashed and it gave me this error Traceback (most recent call last):
File "steam_auto_cracker.py", line 500, in
File "configparser.py", line 1257, in getitem
KeyError: 'EmuConfig'

Does not work for Doom (2016)

I own the Doom (2016) game on Steam and I wanted to play this game without opening Steam launcher (it only has Steam DRM). So I used this tool to crack the game and it said afterwards the crack process was successful. Everything is good up until I try to load into the game. I do not mean by startup, but during the time when the game has to load up to main menu. Whenever it loads to 100% the game crashes immediately.

I suspect the crash might be happening because it is trying to connect to the multiplayer servers for the game. Not sure how to fix it though.

Not opening/working

i downloaded everything it said and tried doing the module request but it doesnt work i did download python too still not opening what should i do?

No module named 'requests'

Alright so maybe I am an idiot, but I installed this by going to "Code" and downloaded the zip file, unzipped it and then ran the "steam_auto_cracker.py" file and this error came up, the issue persisted after going to command prompt and using pip to install the 'request' module.

Traceback (most recent call last):
File "C:\Users\Austin Polley\Downloads\SteamAutoCracker-main\steam_auto_cracker.py", line 4, in
import requests
ModuleNotFoundError: No module named 'requests'

NameError: name 'exit' is not defined

Bug importance: minor

The exit() function is not defined in some cases apparently, sys.exit() should be used instead.
This should fix the problem where the program would signal a crash when it was actually closed with exit().

Windows 7/8/8.1 support

@BigBoiCJ Hi, I make a number of forks of apps for Windows 7, including Chromium > https://thorium.rocks/win7 and some electron apps.

In light of steam removing support for Win7 on jan 1 2024, and the fact that one of the games that I have on there is ONLY available on steam, and that I have paid for it on mobile as well as steam, AND that it has graphical issues on Windows 10 and above, I am looking to this to be able to run it in the future.

Will this run on windows 7 SP1 64 bit, or will I have to install steam on my Win10 drive, crack the game, and then copy the cracked game to my Win7 drive?

If not win7, will it work on 8.0 or 8.1/server 2012?

Allow skipping the DLC checking process

Multiple ways it could be done:

  • By checking the config template, and if "SAC_DLC" doesn't appear in it, just skip the DLC searching process. (less easy for users to find, but easier to implement)
  • If too many DLCs (over 15 for example), propose to skip the checking of DLC, and set a field in EmuConfigTemplate.ini to a value. Problem is some Emus use 1 to unlock all, some 0 (like ALI213), some true, some false (CreamAPI)

DLC cracking failed

After the recent update of RunningWithRifles, DLC cracking has not been successful, as it was previously successful.
AppID:270150
It seems successful, but it doesn't actually work.
Unable to select DLC map in the game.

Starting Problem

When i open the .exe cmd opens and closes by itself instantly so i just used python when i use it i get this error could you help me with this ?
Screenshot 2023-07-28 113925

Unified Goldberg settings

Would be nice if the interface included unified Goldberg settings for custom options, such as default save location, username, LAN mode, etc.

Not fully cracking?

Ive been trying to crack Command and Conquer Red Alert 3 and ive been running the python script, it find the game and folder, but closes as soon as I enter the name of the folder. I also noticed it didnt have ay steam_64api.dll or whatever they are called. I tried moving it out and it just said application error, do I need to put some files in there or something?

3rd crack approach (Only create config and put in SAC directory) acts like the 2nd

"Only create the crack config, and put it in the same directory as the Steam Auto Cracker tool" is broken and keeps the crack config files in the same directory as the steam_api DLLs, like the 2nd approach.

I'm wondering if I should fix it or get rid of it, as probably no one uses it and it'll be a pain to handle now and in the future.

Access is denied

Hello, I'am new to using this program (and sorry for my bad english).
I answer correctly to the program (locations, questions about steamless...) and I have this error:
Traceback (most recent call last):
File "steam_auto_cracker.py", line 481, in
PermissionError: [WinError 5] Access is denied: 'E:/Pirate/Tourist Bus Simulator\Engine\Binaries\ThirdParty\Steamworks\Steamv139\Win64/steam_api64.dll'

I try to elevate the program but nothing change.. Can you help me please?

The specified resource type cannot be found in the image file.

Happens when I try to crack Factorio,

  • Couldn't run Steamless on factorio.exe, it is probably not under DRM.

[!!!] A Python error occurred! Writing the error to the error.log file.

Traceback (most recent call last):
File "steam_auto_cracker.py", line 477, in
File "sac_lib\get_file_version.py", line 4, in GetFileVersion
pywintypes.error: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')

Error written to error.log, please report it on GitHub or cs.rin.ru
Make sure to blank any personal detail.

Traceback (most recent call last):
File "steam_auto_cracker.py", line 477, in
File "sac_lib\get_file_version.py", line 4, in GetFileVersion
pywintypes.error: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')

it dont work, barotruama dont work😭

Traceback (most recent call last):
File "steam_auto_cracker.py", line 390, in
File "steam_auto_cracker.py", line 115, in FindGameDirectory
OSError: [WinError 123] The filename, directory name, or volume label syntax is incorrect: '"C:\Users\Privacy\Downloads\Barotrauma.v1.0.20.1"'

Steam API DLL

Finished cracking the game!
[ ! ] No Steam API DLL was found in the game!
Press enter to exit

uhh help i don't exactly know how to crack games this is my first so what can i do to make it find the Steam API DLL ?

Error file while trying to use this software for Heart of Irons IV

The text file named: error.txt
inside it said this

Traceback (most recent call last):
File "steam_auto_cracker.py", line 463, in
File "sac_lib\get_file_version.py", line 4, in GetFileVersion
pywintypes.error: (1813, 'GetFileVersionInfo:GetFileVersionInfoSize', 'The specified resource type cannot be found in the image file.')

Hope this helps

sleep() is imported but not used

from time import sleep is something I forgot to remove when publishing v1.1.0

To improve the code, it should not be included.

It'll be removed in the next update.

Folder Issue

I keep writing the correct folder of the game and it says that the folder does not exist on my PC? Please fix this, BigBoiCJ.

Why is this?

An error occurred while trying to crack Rogue Legacy 2 (App ID 1253920)
——————
Traceback (most recent call last):
File "urllib3\connectionpool.py", line 699, in urlopen
File "urllib3\connectionpool.py", line 382, in make_request
File "urllib3\connectionpool.py", line 1010, in validate_conn
File "urllib3\connection.py", line 411, in connect
File "urllib3\util\ssl
.py", line 428, in ssl_wrap_socket
File "urllib3\util\ssl
.py", line 472, in _ssl_wrap_socket_impl
File "ssl.py", line 501, in wrap_socket
File "ssl.py", line 1041, in _create
File "ssl.py", line 1310, in do_handshake
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "requests\adapters.py", line 439, in send
File "urllib3\connectionpool.py", line 755, in urlopen
File "urllib3\util\retry.py", line 573, in increment
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='store.steampowered.com', port=443): Max retries exceeded with url: /api/appdetails?appids=1253920&filters=basic (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "steam_auto_cracker.py", line 380, in
File "steam_auto_cracker.py", line 137, in RetrieveGame
File "steam_auto_cracker.py", line 28, in init
File "steam_auto_cracker.py", line 32, in DoRequest
File "requests\api.py", line 76, in get
File "requests\api.py", line 61, in request
File "requests\sessions.py", line 542, in request
File "requests\sessions.py", line 655, in send
File "requests\adapters.py", line 514, in send
requests.exceptions.SSLError: HTTPSConnectionPool(host='store.steampowered.com', port=443): Max retries exceeded with url: /api/appdetails?appids=1253920&filters=basic (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1129)')))

[GUI] Bug: Controls remain locked on RetrieveGame() fail

Give back control on RetrieveGame() fail

if appID != 0:
if RetrieveGame(): # On success
# We are now on step 3
gameSearchDone = True
frameCrack2.pack() # Show the crack frame
searchGameButton.config(state=tk.NORMAL) # Re-enable the ability to search the game
selectFolderButton.config(state=tk.NORMAL) # Re-enable the ability to change the selected folder
else:
searchGameButton.config(state=tk.NORMAL) # Re-enable the ability to search the game
selectFolderButton.config(state=tk.NORMAL) # Re-enable the ability to change the selected folder

Should be fine to change line 132 to if appID != 0 and RetrieveGame():

Battle Brothers, and CK2 not getting their DLC's cracked.

Any idea as to why when I use the GUI to crack these games -- it appears to break the game and not allow me to launch it anymore?
When I double click the shortcuts it effectively just loads for a moment and then does nothing and stops running.
Any fixes?

I don't understand

Hi,
I just want to crack a game like steep.
But for running the activator, i need to already have the game???
I yes, how can i download the game for free...
Sauroyn

Some DLCs aren't shown on Steam page & API

Some DLCs, such as https://store.steampowered.com/app/1725500/Beat_Saber_Skrillex__Bangarang_feat_Sirah/ aren't shown properly on the main game page, and do not appear on the Steam's API.

This means some DLCs won't be detected by SAC and won't be automatically unlocked.

If that happens, the only workarounds are either:

  • Using the "auto unlock DLC" feature in Steam emulators. Keep in mind that it might not work for certain games, and thus, should not be the default way of unlocking DLCs.
  • Adding the missing ones yourself from steamdb

Sorry for this problem, but it seems it's Steam's fault. There doesn't seem to be any acceptable and easy workaround.
If you know any, please help.

Add a version checker / autoupdater

Feature to add: a version checker and if possible, built-in autoupdater.

Should be "click to retrieve version", instead of automatic, to prevent leaking your IP to GitHub every time you run SAC.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.