diff --git a/sac_emu/dlc/EmuConfigTemplate.ini b/sac_emu/dlc/EmuConfigTemplate.ini new file mode 100644 index 0000000..4e87cec --- /dev/null +++ b/sac_emu/dlc/EmuConfigTemplate.ini @@ -0,0 +1,42 @@ +[steam] +; Application ID (http://store.steampowered.com/app/%appid%/) +appid = SAC_AppID +; Current game language. +; Uncomment this option to turn it on. +; Default is "english". +;language = german +; Enable/disable automatic DLC unlock. Default option is set to "false". +; Keep in mind that this option WON'T work properly if the "[dlc]" section is NOT empty +unlockall = false +; Original Valve's steam_api.dll. +; Default is "steam_api_o.dll". +orgapi = steam_api_o.dll +; Original Valve's steam_api64.dll. +; Default is "steam_api64_o.dll". +orgapi64 = steam_api64_o.dll +; Enable/disable extra protection bypasser. +; Default is "false". +extraprotection = false +; The game will think that you're offline (supported by some games). +; Default is "false". +forceoffline = false +; Some games are checking for the low violence presence. +; Default is "false". +;lowviolence = true +; Purchase timestamp for the DLC (http://www.onlineconversion.com/unix_time.htm). +; Default is "0" (1970/01/01). +;purchasetimestamp = 0 + +[steam_misc] +; Disables the internal SteamUser interface handler. +; Does have an effect on the games that are using the license check for the DLC/application. +; Default is "false". +disableuserinterface = false + +[dlc] +; DLC handling. +; Format: = +; e.g. : 247295 = Saints Row IV - GAT V Pack +; If the DLC is not specified in this section +; then it won't be unlocked +SAC_DLC \ No newline at end of file diff --git a/sac_emu/dlc/config_override.ini b/sac_emu/dlc/config_override.ini new file mode 100644 index 0000000..6aba50f --- /dev/null +++ b/sac_emu/dlc/config_override.ini @@ -0,0 +1,4 @@ +[FileNames] +steamapi = steam_api_o.dll +steamapi64 = steam_api64_o.dll +emuconfig = cream_api.ini \ No newline at end of file diff --git a/sac_emu/dlc/infos.txt b/sac_emu/dlc/infos.txt new file mode 100644 index 0000000..f77d99b --- /dev/null +++ b/sac_emu/dlc/infos.txt @@ -0,0 +1,7 @@ +Steam Auto Cracker will use these .dlls: +- If the game is at the BOUGHT Steam games location +- If crackownedgames is set to 0 + +The goal of this is to unlock all DLCs for a legit bought Steam game. + +The default DLLs included are: CreamAPI v4.5.0.0 non-log build \ No newline at end of file diff --git a/sac_emu/dlc/steam_api.dll b/sac_emu/dlc/steam_api.dll new file mode 100644 index 0000000..7babc7a Binary files /dev/null and b/sac_emu/dlc/steam_api.dll differ diff --git a/sac_emu/dlc/steam_api64.dll b/sac_emu/dlc/steam_api64.dll new file mode 100644 index 0000000..6ed8437 Binary files /dev/null and b/sac_emu/dlc/steam_api64.dll differ diff --git a/sac_emu/game/EmuConfigTemplate.ini b/sac_emu/game/EmuConfigTemplate.ini new file mode 100644 index 0000000..e61c483 --- /dev/null +++ b/sac_emu/game/EmuConfigTemplate.ini @@ -0,0 +1,58 @@ +[Settings] +; The Game AppID (store.steampowered.com/app/XXXXXXX/) +AppID = SAC_AppID + +; Source steam_api(64).dll version +API = SAC_APIVersion + +; Player name you'll have in-game +PlayerName = VALVE + +; Game Language +; english german french italian koreana +; spanish schinese tchinese russian thai +; japanese portuguese polish danish dutch +; finnish norwegian swedish hungarian czech +; romanian turkish +Language = english + +; Save types: +; VALVE(game dir) 0 +; VALVE(my documents) 1 +; RELOADED 4 +; SKIDROW 5 +; FLT 6 +; CODEX(3.0.4+/my documents) 7 +; CODEX(1.0.0.0+/APPDATA) 8 +SaveType = 0 + +;Achievements Count limit +;AchievementsCount=0 + +; Game exe path +;GameEXE=game.exe + +;SteamUserID = 12345678 +;SteamUserIDH = 12345678 + +;IsLoggedOn=0 +;Online=0 + +UnLockListedDLCOnly=1 + +[DLC] +; To unlock a DLC, use this format: "AppID = DLC Name" +SAC_DLC + +[Option] +; Block Network (internet connections made by the game) +FullBlockNetwork=1 + +; Redirect File Handle to ".valve" +FileRedirectCheck=1 + +; DECRYPT STEAM STUB +; 1 tells steam_api.dll / steam_api64.dll to decrypt the steam stub as soon as possible +; 2 tells SteamClient.dll / SteamClient64.dll to decrypt the steam stub as soon as possible +; 0 to disable it. +DECRYPT_STEAM_STUB=0 \ No newline at end of file diff --git a/sac_emu/game/config_override.ini b/sac_emu/game/config_override.ini new file mode 100644 index 0000000..651f0bd --- /dev/null +++ b/sac_emu/game/config_override.ini @@ -0,0 +1,2 @@ +[FileNames] +emuconfig = SteamConfig.ini \ No newline at end of file diff --git a/sac_emu/game/infos.txt b/sac_emu/game/infos.txt new file mode 100644 index 0000000..761b001 --- /dev/null +++ b/sac_emu/game/infos.txt @@ -0,0 +1,7 @@ +Steam Auto Cracker will use these .dlls: +- Always, except if: + - If the game is at the BOUGHT Steam games location and crackownedgames is set to 0. + +The goal of this is to crack the game as well as unlock every DLC for an uncracked game. + +The default DLLs included are: ALI213 v6.91.21.57 \ No newline at end of file diff --git a/sac_emu/game/steam_api.dll b/sac_emu/game/steam_api.dll new file mode 100644 index 0000000..c0d88de Binary files /dev/null and b/sac_emu/game/steam_api.dll differ diff --git a/sac_emu/game/steam_api64.dll b/sac_emu/game/steam_api64.dll new file mode 100644 index 0000000..414962d Binary files /dev/null and b/sac_emu/game/steam_api64.dll differ diff --git a/sac_lib/get_file_version.py b/sac_lib/get_file_version.py new file mode 100644 index 0000000..da53c0b --- /dev/null +++ b/sac_lib/get_file_version.py @@ -0,0 +1,5 @@ +import win32api + +def GetFileVersion(filename: str) -> str: + fileInfos = win32api.GetFileVersionInfo(filename, "\\") + return "%d.%d.%d.%d" % (fileInfos['FileVersionMS'] / 65536, fileInfos['FileVersionMS'] % 65536, fileInfos['FileVersionLS'] / 65536, fileInfos['FileVersionLS'] % 65536) \ No newline at end of file