Prerequisites
So, to avoid wasting both my time and yours, this tutorial requires you understand:
- Basic use of the Bash terminal
PrerequisitesI need to get this out of the way before I say anything: I will not spoon-feed complete linux noobs on how to do basic things. I am all for giving tips and helping people (even if they’re inexperienced), but I’m not going to teach you how to type “cd” in bash.
So, to avoid wasting both my time and yours, this tutorial requires you understand:
- Basic use of the Bash terminal
- [Optional] Basic use of the Apt package manager
- [Optional] A rudimentary understanding of Git
- [Optional] Some experience in building things from source
Understanding Git, Apt, and how to build things from source are optional, as they’re technically not required to do what this hopes to guide you through, but they will be needed for recommended (yet still optional) tweaks
Please for the love of god do not ask me about something you can do a web-search for and find a result in 0.00002 nanoseconds. I won’t respond to that type of question for the sake of my own sanity
Running the GameTo run, one must have first mastered walking. To mod a game, you first need it to run and be playableValve is a pretty cool company, not only because they host user-generated content like what you’re currently reading, but also because they develop something called Proton. Proton is a compatibility layer between a game and the Linux distro you’re running, one that makes it relatively easy to run windows games without too many bugs. We’ll use proton to get Inscryption running, and to eventually mod it
First, enable Steam Play on all unsupported titles. In the steam client, click:
Steam -> Settings -> Steam Play -> Enable Steam Play for all other titles -> Proton ExperimentalThis makes it so any game that doesn’t natively run on your system will use Proton Experimental by default. This on its own should be enough to run Inscryption, but I personally take a slightly more advanced route
Warning: Optional stuff aheadThis is completely optional, but recommended
Instead of using Valve’s Proton Experimental, I use Glorious Eggroll’s Proton-GE. Because Proton is open-source, anyone can make edits and forks of the code; Proton-GE is a community managed fork of Proton and is what I use. It often preforms better than Experimental, but can be more unstable, and although I usually don’t have problems with it I will occasionally need to manually make a game use Experimental instead of GE because of strange bugs exclusive to GE. It’s not a huge deal, but one to keep in mind
First, we need dependencies:
- [Optional] Basic use of the Apt package manager
- [Optional] A rudimentary understanding of Git
- [Optional] Some experience in building things from source
Understanding Git, Apt, and how to build things from source are optional, as they’re technically not required to do what this hopes to guide you through, but they will be needed for recommended (yet still optional) tweaks
Please for the love of god do not ask me about something you can do a web-search for and find a result in 0.00002 nanoseconds. I won’t respond to that type of question for the sake of my own sanity
Running the Game
Valve is a pretty cool company, not only because they host user-generated content like what you’re currently reading, but also because they develop something called Proton. Proton is a compatibility layer between a game and the Linux distro you’re running, one that makes it relatively easy to run windows games without too many bugs. We’ll use proton to get Inscryption running, and to eventually mod it
First, enable Steam Play on all unsupported titles. In the steam client, click:
Steam -> Settings -> Steam Play -> Enable Steam Play for all other titles -> Proton Experimental
This makes it so any game that doesn’t natively run on your system will use Proton Experimental by default. This on its own should be enough to run Inscryption, but I personally take a slightly more advanced route
This is completely optional, but recommended
Instead of using Valve’s Proton Experimental, I use Glorious Eggroll’s Proton-GE. Because Proton is open-source, anyone can make edits and forks of the code; Proton-GE is a community managed fork of Proton and is what I use. It often preforms better than Experimental, but can be more unstable, and although I usually don’t have problems with it I will occasionally need to manually make a game use Experimental instead of GE because of strange bugs exclusive to GE. It’s not a huge deal, but one to keep in mind
First, we need dependencies:
sudo dpkg --add-architecture i386 wget -nc https://dl.winehq.org/wine-builds/winehq.key sudo apt-key add winehq.key sudo add-apt-repository 'deb https://dl.winehq.org/wine-builds/ubuntu/ <replace this with your ubuntu distro release name (ex: focal) > main' sudo apt update sudo apt install --install-recommends -y winehq-staging
These commands were pulled straight from the winehq[www.winehq.org] page on installing for Ubuntu based systems. Here’s the link to verify them: https://wiki.winehq.org/Ubuntu
With wine installed, install winetricks (A required dependency for Proton-GE)
sudo apt install winetricks
Now with dependencies installed, we could manually install Proton-GE by downloading a version from the Github releases page[github.com] and extracting the .tar file into “~/.steam/root/compatibilitytools.d/”, or we can use a tool to do it for us
ProtonUp is a python script that checks our current install and sees if it needs updating, so we’ll use that to make it easier on us. Because ProtonUp is a python script, you’ll need python to run it (duh)
sudo apt install python3
This will install python3 and pip3, which we will use to install ProtonUp
pip3 install protonup
Having an easier way to update Proton-GE is wonderful and all, but I want it to be even easier to manage my GE versions. To do that, I use ProtonUp-Qt, a Qt interface for using the ProtonUp script.
You can either run it from source or build an appimage yourself, but in this case it’s easier to download a release and mark it executable. Go to ProtonUp-Qt’s releases page[github.com] and download the latest release. Then, use chmod to mark it executable
chmod +x ProtonUp-Qt-*.*.*-x86_64.AppImage
All you need to do now is follow the same steps as you would with enabling Proton Experimental, but instead choose the latest GE version
Modding the Game
Start with installing BepInEx[inscryption.thunderstore.io]:
- Go to the link above and click “Manual Download”, then save it somewhere on youtr system
- Open the .zip and click into “BepInExPack_Inscryption”
- Extract the contents into your Inscryption install folder ($HOME/.steam/steam/steamapps/common/Inscryption)
With that done, add this to your launch options:
WINEDLLOVERRIDES="winhttp=n,b" %command%
Now, assuming everything is working, running the game should cause a window to pop up and preload BepInEx, then launch the game. If it works, congrats you’ve technically modded Inscryption, but without any real mods it’s pretty useless. Lets install everything needed for custom cards
- Download the API[inscryption.thunderstore.io] mod and JSON Parser[inscryption.thunderstore.io]
- Go into “BepInEx/plugins” and extract the .dll files from each mod here
- Launch the game
To install a card pack:
- Download a card-pack mod
- Extract the “Artwork” and “Cards” files to “BepInEx/plugins/JSONLoader”
- Launch the game
To install any other mod:
- Download the mod
- Extract the .dll to “BepInEx/plugins”
- Launch the game
Recommended Mods and Tweaks
Feral Gamemode is a Daemon/Lib combo that allows an app to ask for certain temporary optimizations. It came preinstalled with the distro I use (Linux Mint), so I never had to go through the installation process, but it’s fairly simple compared to some other apps I’ve installed from source
First, get the dependencies:
sudo apt install meson libsystemd-dev pkg-config ninja-build git libdbus-1-dev libinih-dev build-essential
Then, build and install Gamemode:
git clone https://github.com/FeralInteractive/gamemode.git cd gamemode ./bootstrap.sh
Now that it’s installed, put “gamemoderun %command%” in your launch options to run the game with Feral Gamemode’s optimizations
If you just tried what I told you to do (add another %command% to the launch options), you will have noticed that either the mod or Gamemoded didn’t work depending on which came first. That’s because Steam doesn’t let you use the %command% keyword in the launch options more than once. This, however, is no problem. Simply put “gamemoderun” anywhere before the %command% and both the dll override and gamemode will run
This applies for anything that uses %command%. They can be chained together, but you can only have one %command%
Example:
command_option1 command_option2 command_option3 %command% -launch_option1 -launch_option2 -launch_option3
LibSpeedhack[github.com] is a multipurpose speedhack library. Why would I need this for Inscryption? Well, there’s a good chance you won’t, but in case you ever decide to ouroboros loop you’ll appreciate speeding the game up a hundred times or so to make the animations way shorter
As always, install the dependencies:
sudo apt install build-essential
Then, clone the repo and build the project:
git clone https://github.com/evg-zhabotinsky/libspeedhack cd libspeedhack make
Once built, test if it’s working by running glxgears:
$HOME/libspeedhack/speedhack glxgears echo 2 >/tmp/speedhack_pipe # This is how you do the speedhacking. Higher = faster, smaller fraction = slower
Act 1 doesn’t have a hammer, but 2 and 3 do. What’s up with that? Well, not anymore because with this mod you get a hammer in act 1 in-case you’ve made a misplay or want to clear out the boulders The Prospector makes
To Install:
- Download the Smalltweak Hammer mod[inscryption.thunderstore.io]
- Extract the .dll into “BepInEx/plugins”
Ever want to test a potentially broken card? Want to make a card behave like the ouroboros but as a 0 cost card? Want to toy around with special effects? Say no more, because this mod lets you make cards during act 1 at any time
To Install:
- Download the InGame Card Creator mod[inscryption.thunderstore.io]
- Extract the .dll to “BepInEx/plugins”
Thanks to 8 gubed for his great guide, all credit to his effort. you can also read the original guide from Steam Community. enjoy the game.
Related Posts:
- Inscryption: All Hidden Achievements (100% Completion)
- Inscryption: How to Grind Foil Pack
- Inscryption: How to Customize Decks (Editing Saves)
- Inscryption: Robotopia 2nd Slider/Cabinet Puzzle Guide
- Inscryption: Act 3 Game Map