ScreamAPI
Today I'm going to introduce ScreamAPI and show you how to use it.
Introduction
ScreamAPI is acidicoala's DLC unlocker for games using Epic Online Services. I'll show you two installation methods: Proxy, then Hook with Koaloader. The filenames below are those in version 4.0.0.
Do you need the DLC files?
An unlocker makes the game see the DLC as owned, but doesn't download its content. If the files are already included in the base game, unlocking can be enough. Otherwise, install the matching DLC files too; check the game's forum topic for its folder layout and version.
Useful links
Now for the tutorial
First, close the game and enable filename extensions in File Explorer. Find EOSSDK-Win64-Shipping.dll in the game's folders: use ScreamAPI64.dll for it. For EOSSDK-Win32-Shipping.dll, use ScreamAPI32.dll and replace Win64 with Win32 in the examples. Choose one of the two modes below.
The older instructions refer to DLLs already named EOSSDK-WinXX-Shipping.dll and a ScreamAPI.json configuration. Version 4.0.0 uses different filenames: follow the names in this tutorial for that archive.
Proxy mode
The game loads ScreamAPI under the original DLL's name; ScreamAPI forwards the other calls to the original file you keep beside it.
- Download and extract ScreamAPI 4.0.0 from the forum. If it comes as a .7z containing a .zip, open the inner archive too.
- Rename the game's original EOSSDK-Win64-Shipping.dll to EOSSDK-Win64-Shipping_o.dll. The suffix is underscore + the letter o, not the number zero. Keep this original file.
- Take ScreamAPI64.dll from the archive, rename it EOSSDK-Win64-Shipping.dll, and put it beside EOSSDK-Win64-Shipping_o.dll. You should now have both files in that folder.
- Launch the game from Epic Games or its usual shortcut and check the DLC. If the game normally asks to connect your Epic account, complete that normal connection step.
Hook mode with Koaloader
This method adds a loader and ScreamAPI beside the game. Start with the original EOS DLL restored if you previously tried Proxy mode.
- Extract ScreamAPI64.dll (or ScreamAPI32.dll) from the archive, rename it ScreamAPI.dll, and place it beside the game's executable.
- Download Koaloader. For a 64-bit game that loads version.dll, extract version.dll from its version-64 folder into the same game folder. Use the 32-bit equivalent for a 32-bit game. Do not overwrite an existing DLL.
- Keep Koaloader's auto_load feature enabled. If the game doesn't load version.dll, choose a different Koaloader DLL supported by that game; the loader must run before the EOS SDK.
- Launch the game and check its DLC menu. And that's it, enjoy your game!
The optional configuration file
Start without a configuration file: the defaults are enough for normal use. For custom settings in v4.0.0, place the supplied ScreamAPI.config.json beside ScreamAPI's DLL. The old ScreamAPI.json format from earlier tutorials is not the v4 configuration.
The supplied file enables logging. Its README advises setting logging to false or leaving the file out unless you need diagnostics. Keep $version unchanged. default_dlc_status and override_dlc_status control the default and individual DLC states; keep the complete supplied structure when editing.
If it doesn't work…
Check the 32/64-bit choice, the letter o in the original filename, and any missing DLC files. If the game crashes on launch, check its Visual C++ runtime. A game update or file verification can replace the Proxy DLL: reinstall against the new original rather than putting an old original back.
How to remove it
In Proxy mode, delete only the replacement DLL and restore the original filename by removing _o. In Hook mode, remove ScreamAPI.dll and the Koaloader DLL you added. Remove your optional configuration too, then launch the game again.