diff --git a/wiki.md b/wiki.md new file mode 100644 index 0000000..1e0751a --- /dev/null +++ b/wiki.md @@ -0,0 +1,217 @@ +*Last updated: 22. March 2022* + +# 1. Introduction + +This post is supposed to provide resources regarding gaming on Linux and pirated/cracked games. Since there are subreddits for both of these topics, it will start as a collection of links to existing resources ([see 4.](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_4._useful_resources)). If you feel like anything is missing or wrong, feel free to create a new post discussing the issue. + +Sometimes you will see links to [the Arch wiki](https://wiki.archlinux.org/), which is a great resource for Linux in general and not just for Arch Linux, so don't worry. + +### 1.1 The basics of gaming on Linux. + +#### 1.1.1 What is Wine? + +[Wine](https://wiki.archlinux.org/title/Wine) is a compatibility layer that makes it possible to run Windows applications on Linux. It usually creates a so-called [wineprefix](https://wiki.archlinux.org/title/Wine#WINEPREFIX) in your home directory which mimics a Windows-like folder-structure, in which every application is installed. When using default Wine it's advised to install [winetricks](https://wiki.archlinux.org/title/Wine#Winetricks), [DXVK](https://wiki.archlinux.org/title/Wine#DXVK) and [other useful tools](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_6.5_tools.2C_tweaks_and_miscellaneous). + +#### 1.1.2 What is Proton? + +[Proton](https://tinyurl.com/fe5zmz3t) is based on Wine and developed by Valve. It incorporates some libraries, patches and improvements that Wine doesn't, for example it includes [DXVK](https://github.com/doitsujin/dxvk) (a translation layer from [Direct3D](https://en.wikipedia.org/wiki/Direct3D) 9, 10 and 11 to [Vulkan](https://wiki.archlinux.org/title/Vulkan)) and [VKD3D](https://github.com/HansKristian-Work/vkd3d-proton) (a translation layer from Direct3D 12 to Vulkan). + +Proton can be used to play Windows games on Linux [using Steam](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_3.1_using_steam), but it can also be [used with Lutris](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_6.3_use_proton_with_lutris). + +#### 1.1.3 What is Proton-GE? + +*[Proton-GE or GE-Proton](https://github.com/GloriousEggroll/proton-ge-custom#overview)* as of late is a fork of Valve's Proton by a developer called *[Glorious Eggroll](https://www.gloriouseggroll.tv/)*. It incorporates even more patches than the original Proton like DXVK patched with Async, [AMD FSR support](https://www.gamingonlinux.com/2021/07/proton-613-ge-1-is-out-now-with-amd-fidelityfx-super-resolution-resizable-bar/) or Protonfixes, which enable more games to be playable on Linux. + +GE-Proton is meant for use with Steam. If you want to [use Proton with Lutris](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_6.3_use_proton_with_lutris), take a look at Glorious Eggroll's [Wine-GE](https://github.com/gloriouseggroll/wine-ge-custom). + +*Thanks to u/rookielmfao's [post](https://www.reddit.com/r/LinuxCrackSupport/comments/tj80n0/the_definitive_linux_piracy_guidecheatsheet/) for inspiration.* + +# 2. Steam Deck + +The Steam Deck is running a usual Linux distribution called [Arch Linux](https://wiki.archlinux.org/title/Gaming). That means, everything in this wiki should equally apply to playing cracked games on the Steam Deck. Take your time and read at least through the following section and the linked article, as it explains all the basics about gaming on Linux. + +If you still have any issues, feel free to create a new post in this subreddit and ask for support! + +# 3. How To Play On Linux + +Here is a [introductory article](https://www.pcmag.com/how-to/how-to-play-pc-games-on-linux) about using Steam with Proton and Lutris to play games on Linux. + +### 3.1 Using Steam + +You can also add a non-Steam game to Steam and then play it on Linux using Proton. Follow these steps to do so. *This also applies to the Steam Deck!* + +1. Open Steam and make sure that *Steam Play* is activated. +2. Click on "*Steam*" in the top left, click on "*Preferences*" and "*Steam Play*" at the bottom. +3. There tick both the box "*Enable Steam Play for supported titles*" and "*Enable Steam Play for all other titles*". +4. Choose the latest Proton version for "*Run other titles with:*". +5. Close the windows and return to Steam. +6. In the bottom left click on "*+ Add a game*" and then on "*Add a Non-Steam Game...*". +7. In the new window click on "*Browse...*". +8. On the bottom select "*File type: All Files*". +9. Browse to the directory in which your game is saved. +10. Select the game's executable e. g. *game-launcher.exe*". +11. Click "*Open*" and then "*Add selected programs*". +12. The game is now in your Steam library. +13. Right-click the game and select "*Properties...*". +14. Check that "*Target*" contains the path **and** the game's executable. This might not be visible on Steam Deck, in that case copy the path from a file browser (like Dolphin) and paste it into the field. Make sure to include quotation marks, e. g. "*/home/arjab/games/Elden Ring/eldenring.exe*". +15. Check that "*Start in*" contains **only** the path from the previous section, but **not** the executable, e. g. "*/home/arjab/games/Elden Ring/*". +16. Check that "*Launch options*" is empty if not specified otherwise. +17. Close the window, it saves automatically. +18. Hit the "*Play*"-button. Enjoy! + +That's it. + +19. If the game doesn't run, open "*Properties...*" again. +20. On the left, switch to the section "*Compatibility*". +21. Tick the box "*Force the use of a specific Steam Play compatibility tool*". +21. Choose a different Proton version or a custom version like [Proton by Glorious Eggroll](https://github.com/GloriousEggroll/proton-ge-custom#installation). +22. Close the window and start the game. + +#### 3.1.1 Steam's wineprefix directory + +Steam saves a [wineprefix](https://wiki.archlinux.org/title/Wine#WINEPREFIX) for every game in the following directory: +*/home/$user/.steam/steam/steamapps/compatdata/$appid/pfx/* + +Replace $user with your username and $appid with Steam's application ID for the game. You can find the app ID by right-clicking on the game and selecting "*Properties...*". Than switch to the tab "*Updates*" on the left and you will see for example "*App ID: 1234567*" at the bottom. + +The above path is a link to the actual path, which can be found in "*/home/$user/.local/share/Steam/...*". + +### 3.2 Using Lutris + +Follow these steps to play a cracked game using Lutris: + +*It's not necessary to install a game using Lutris as described here. But for some (cracked) games it works better or as described below is necessary insofar as you need a different runner for e. g. the [installation of FitGirl repacks](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_playing_fitgirl_repacks_using_lutris_and_proton). So if you have an already installed game, skip steps 6 to 12.* + +1. Obtain your desired game from a respected source. +2. Install Lutris and open it. +3. Click on to top left "+"-button to add a game. +4. Enter the name of the game and select the Runner "Wine". +5. Change to the tab "Game options". +6. *Click on the top right button "Browse.." to select the game's executable.* +7. *Browse to the directory of your downloaded game and select the installer's *.exe.* +8. *Click "Save", you'll see your game's installation has been added to Lutris.* +9. *Double-click on it or use the bottom-left button "Play".* +10. *The installation should start, follow the on-screen instructions.* +11. *After the installation is done, right-click the game in Lutris and click "Configure".* +12. *Go to "Game options" and click the top right button "Browse..".* +13. Browse to the directory in which you've installed the game. +14. Select the game's executable and click the bottom right "Save". +15. Double-click the game in Lutris to start it or use the bottom left button "Play". + +*Optional: If a game doesn't work or has poor performance, click "Configure" on the game and tick the bottom left box "Show advanced options". Now you can edit the game's options, [change the runner](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_use_proton_with_lutris), etc.* + +#### 3.2.1 Lutris' wineprefix directory + +Lutris uses the default [wineprefix](https://wiki.archlinux.org/title/Wine#WINEPREFIX) for all games which is located in "*/home/$user/.wine*". Sometimes it's necessary to create a new wineprefix and point to it in the game's Lutris configuration. + +#### 3.2.2 Installing repacks return error + +Thanks to u/hackedyak there is an [easy fix](https://www.reddit.com/r/LinuxCrackSupport/comments/tirarp/psa_when_installing_repacks_with_custom_wine/) for failing repack installations. + +1. When you run the installation using Lutris, right-click on the game in Lutris and select "*Configure*". +2. Select the right-most tab called "System options". +3. Scroll down to "*Environment variables*". +4. Click the "*Add*"-button on the bottom right. +5. Click into the field labeled "*Key*" and enter the following: + +"*WINE_LARGE_ADDRESS_AWARE*" - if you're using a Wine/Lutris runner. + +"*PROTON_LARGE_ADDRESS_AWARE*" - if you're using a Proton runner. + +6. Now click into the field labeled "*Value*" and enter "*0*". +7. Click on "*Save*" in the bottom right and start the installation. + +You should **change this back** to "*1*" after the installation though! + +# 4. Linux Crack Tips Database + +We're trying to build a **database** on how to get certain games to work [here](https://www.reddit.com/r/LinuxCrackSupport/comments/mfy1kf/linuxcracktipsdb/). + +# 5. Useful resources + +### 5.1 General information + +* [GNU/Linux Pirates](http://www.it7otdanqu7ktntxzm427cba6i53w6wlanlh23v5i3siqmos47pzhvyd.onion/seccin/Linux_Game_Pirates) on the [TOR](https://www.torproject.org/download/) network (link only works in TOR browser!) + +### 5.2 Gaming on Linux + +* r/linux_gaming (About gaming on Linux in general) +* r/wine_gaming (About gaming on Linux using [Wine](https://en.wikipedia.org/wiki/Wine_(software)) +* r/SteamPlay (About gaming on Linux using [Steam Play/Proton](https://en.wikipedia.org/wiki/Proton_(software)) +* r/Lutris (About gaming on Linux using [Lutris](https://en.wikipedia.org/wiki/Lutris)) + +### 5.3 Compatibility databases + +* [ProtonDB](https://www.protondb.com/) for games that run through Steam Play or using Proton in e. g. Lutris. +* [LutrisDB](https://lutris.net/games?paginate_by=25&ordering=-popularity) for games that run through Lutris. +* [Wine AppDB](https://appdb.winehq.org/) for software that runs through Wine including games. +* [List of Linux games](https://en.wikipedia.org/wiki/List_of_Linux_games) or [a shorter version](https://en.wikipedia.org/wiki/Linux_gaming#Adoption_by_video_games) on Wikipedia. + +### 5.4 Cracked/pirated games + +* r/Piracy and it's [megathread](https://www.reddit.com/r/Piracy/wiki/megathread/games). +* r/PiratedGames and it's [megathread](https://rentry.org/pgames-mega-thread). +* r/CrackWatch +* r/CrackSupport +* r/CrackStatus + +# 6. Tips and tricks + +### 6.1 Johncena141 + +The group [johncena141](https://rentry.co/johncena141-collective) offers games including a specific version of Wine and other tweaks to run on Linux out-of-the-box. You can find them on 1337x. + +There are also some Linux builds for games on RuTracker (thanks u/iamnotstanley). + +### 6.2 Vortex Mod Manager + +It is possible to use the Vortex Mod Manager on Linux through a [Lutris install script](https://lutris.net/games/vortex-mod-manager/) as explained in [this video](https://www.youtube.com/watch?v=MDr7L-XRd54). +Another possible solution is to use a virtual machine according to [this post](https://www.reddit.com/r/LinuxCrackSupport/comments/tjz4b7/you_can_use_virtualbox_share_your_game_folder/). + +### 6.3 Use Proton with Lutris + +Some games will only run using Proton, which is obviously not possible when you try to play a cracked game via Lutris. Luckily, it's fairly easy to use Proton with Lutris, by either using Steam or getting it from Github directly. + +1. Get Proton, either using [Steam](https://segmentnext.com/2018/12/06/steam-proton-guide/) or by downloading it from [Github](https://github.com/ValveSoftware/Proton). Some distros offer Proton in their repositories, for example it's available on Arch Linux in the [AUR](https://aur.archlinux.org/packages/proton/). +2. Locate the installation directory of Proton. If you installed it through Steam it's one of the following. `~/.steam/steam/steamapps/common/Proton +~/.local/share/Steam/steamapps/common/Proton` +If you have downloaded Proton manually, navigate to the directory where you have saved it or where you installed it without Steam. +3. Inside the directory you'll find a folder called `dist` (or `files`) it should contain the subfolders `bin`, `lib`, `lib32`, `share`, which contains the files we need for Lutris. Check the following directory, where the runners of Lutris are located: `~/.local/share/lutris/runners/wine/` +4. Create a folder in that directory with the name of the respective Proton version, e. g. *Proton-5.13* or *Proton-Experimental*. If you have simply downloaded Proton, simply copy the respective files into that directory and skip the next step. +5. Now we create a softlink from the folder we just created, that's pointing to the `dist` (or `files`) folder. +`ln -s ~/.steam/steam/steamapps/common/Proton/dist/* ~/.local/share/lutris/runners/wine/Proton/` +or +`ln -s ~/.steam/steam/steamapps/common/Proton/files/* ~/.local/share/lutris/runners/wine/Proton/` +6. Now there should be the content of the `dist` folder inside the `Proton` folder, you've just created. Start Lutris (or restart it, if it's open) and select a game, go to *Configure -> Runner options -> Wine version* and select *Proton*. +7. Save everything and start the game! + +*The popular [Proton build by Glorious Eggroll](https://github.com/GloriousEggroll/proton-ge-custom#1-running-non-steam-games-with-proton-outside-of-steam-is-not-supported-do-not-ask-for-help-with-this) does [not support to be used with Lutris](https://github.com/GloriousEggroll/proton-ge-custom#1-running-non-steam-games-with-proton-outside-of-steam-is-not-supported-do-not-ask-for-help-with-this) and could potentially break your things.* +*If you want to use Proton outside of Steam, Glorious Eggroll provides a [Wine build for the use with Lutris](https://github.com/gloriouseggroll/wine-ge-custom) etc.* + +### 6.4 Playing FitGirl repacks using Lutris and Proton + +* u/TermoZour [mentioned](https://www.reddit.com/r/LinuxCrackSupport/comments/mfdjrk/welcome_to_linux_crack_support/gsnjbai) to add tips on how to play FitGirl repacks on Linux and for now it seems like this is simply possible by running them [using Proton](https://www.reddit.com/r/LinuxCrackSupport/wiki/index#wiki_playing_fitgirl_repacks_using_lutris_and_proton). +* Another solution would be to use this [script](https://github.com/Francesco149/protonfit), which I haven't tested for now and which isn't maintained anymore. +* [Here's another short tutorial](https://www.reddit.com/r/LinuxCrackSupport/comments/pwevxf/installing_fitgirl_repacks_on_linux_through/). +* [And yet another tutorial](https://www.reddit.com/r/LinuxCrackSupport/comments/ru6vem/yet_another_guide_on_how_to_install_fitgirl/) + +### 6.5 Tools, tweaks and miscellaneous + +* [Proton GE](https://github.com/GloriousEggroll/proton-ge-custom) \- special build of Proton with various patches and fixes included. (Here's a [great article](https://linuxgamingcentral.com/posts/proton_ge_tutorial/) about it.) +* [ProtonUp](https://github.com/AUNaseef/protonup) and [ProtonUp-Qt](https://github.com/DavidoTek/ProtonUp-Qt) for easy installation of Proton GE. +* [Protonutils](https://github.com/nning/protonutils) a CLI-tool for managing you Proton versions. +* [VKD3D-Proton](https://github.com/HansKristian-Work/vkd3d-proton) \- VKD3D-Proton is a fork of VKD3D, which aims to implement the full Direct3D 12 API on top of Vulkan. +* [Winetricks](https://wiki.winehq.org/Winetricks) +* [Wine GE](https://github.com/GloriousEggroll/wine-ge-custom) \- a special build for use with Lutris. +* [wine-tkg](https://github.com/Tk-Glitch/wine-tkg), [proton-tkg](https://github.com/Frogging-Family/wine-tkg-git/tree/master/proton-tkg) and [wine-proton-tkg](https://github.com/Tk-Glitch/wine-proton-tkg) \- Wine-tkg is a build-system aiming at easier custom wine builds creation. +* [Tk-Glitch](https://github.com/Tk-Glitch) and [Frogging Family's](https://github.com/Frogging-Family) work in general. + +* [LibreGaming](https://github.com/Ahmed-Al-Balochi/LibreGaming#libregaming) for downloading distro-specific dependencies for gaming. +* [Chad Launcher](https://gitlab.com/Gnurur/chad_launcher#chad-launcher) for launching pirated games (discontinued). +* [Rum](https://notabug.org/johncena141/rum) is the successor of Chad launcher. + +* [DXVK](https://github.com/doitsujin/dxvk) \- DirectX 9, 10 and 11 implementation using [Vulkan](https://en.wikipedia.org/wiki/Vulkan_(API). +* [dxvk-tools](https://github.com/Frogging-Family/dxvk-tools) \- DXVK & vkd3d-proton script to build/patch/install/update, Lutris and Proton-tkg compatible. +* [DXUP](https://github.com/Joshua-Ashton/dxup) \- A D3D9 and D3D10 -> D3D11 translation layer (archived!). +* [VKD3D](https://github.com/d3d12/vkd3d) \- The VKD3D 3D Graphics Library using a similar API to Direct3D 12. +* ...