Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation on 03/09/24 in all areas

  1. I know there are already some threads about running PKHeX on Linux (like this or this) but they are all outdated and none of them is simple and straightforward enough. I feel like there’s still a lot of confusion about PKHeX and Linux, especially for what happened recently when the program switched from .NET 7 to .NET 8, so I’m making this thread hoping for it to become the ultimate reference for this subject. I'll keep it up to date. --------------------------------------------------- Latest PKHeX version: 24.03.26 Status: WORKING Known bugs: Drag & dropping save files into the program's window isn't really stable and could lead to a crash. This usually happens when you import/export boxes in a save file, and then import another one into the program. Always make a backup or try to avoid drag & drop at all by only using the File > Open option. --------------------------------------------------- 1) Installing Wine Vanilla Wine is more than enough for this. It’s a matter of a couple of commands and everything will work fine without having to go through a bunch of settings in programs like Lutris and Bottles. You must have Wine version 9.3 (or higher). Please refer to your distribution's documentation if you don’t know how to install it. 2) Creating a Wine prefix It's better to create a separated Wine prefix (the “Windows environment”, for those who don’t know what a prefix is) so that it won't conflict with others (if you have any). You can do that with the following command: WINEPREFIX=/path/to/your/prefix/pkhex wineboot Replace /path/to/your/prefix/pkhex with the folder you want to create the prefix in. For example: WINEPREFIX=/home/anon/Prefix/pkhex wineboot Let it set up everything. If it asks for the Mono installation you don’t need it, so you can click on cancel. 3) Installing .NET Desktop Runtime 8 PKHeX needs the 64 bit version of .NET Desktop Runtime 8 to work. You can download it from here. This is the global page with every download link, just in case the given link dies because of a version change (it is currently 8.0.3). Launch the following command to start the installer: WINEPREFIX=/path/to/your/prefix/pkhex wine /path/to/the/installer/windowsdesktop-runtime-8.0.3-win-x64.exe As seen before replace the paths with your own ones. For example: WINEPREFIX=/home/anon/Prefix/pkhex wine /home/anon/Downloads/windowsdesktop-runtime-8.0.3-win-x64.exe Go through the installation process. 3.1) CJK fonts CJK stands for Chinese, Japanese and Korean. These fonts are not shipped by default with Wine, therefore names or OTs of Pokémon in these languages won't be displayed. The "shinify" icon is also affected by this. Although this is optional, we can fix this by installing CJK fonts with Winetricks (you have to install the package first): WINEPREFIX=/path/to/your/prefix/pkhex winetricks cjkfonts Again, replace the path with the one of your prefix. WINEPREFIX=/home/anon/Prefix/pkhex winetricks cjkfonts This could take a while, so be patient. 4) Launching PKHeX PKHeX can now be launched with this command: WINEPREFIX=/path/to/your/prefix/pkhex wine /path/to/pkhex/executable/PKHeX.exe In my case: WINEPREFIX=/home/anon/Prefix/pkhex wine /home/anon/Games/Pokémon/PKHeX/PKHeX.exe 4.1) Note on .NET If you have .NET installed on your system (it is available natively for Linux, it's the Desktop Runtime needed by PKHeX that isn't) PKHeX might not launch. If this is the case for you make sure to add the following arguments to the command: WINEPREFIX=/path/to/your/prefix/pkhex env -u DOTNET_ROOT -u DOTNET_BUNDLE_EXTRACT_BASE_DIR wine /path/to/pkhex/executable/PKHeX.exe In my case: WINEPREFIX=/home/anon/Prefix/pkhex env -u DOTNET_ROOT -u DOTNET_BUNDLE_EXTRACT_BASE_DIR wine /home/anon/Games/Pokémon/PKHeX/PKHeX.exe 5) Making a launcher for PKHeX In case you don’t want to use the terminal every time you want to launch PKHeX you can create a launcher for it. For example you can make a simple bash script for it. Paste the following content into a text editor and save the file wherever you want and with whatever name you want: #!/bin/bash WINEPREFIX=/home/anon/Prefix/pkhex wine /home/anon/Games/Pokémon/PKHeX/PKHeX.exe As always replace the paths with yours. Of course this can also be the command seen in paragraph 4.1: #!/bin/bash WINEPREFIX=/home/anon/Prefix/pkhex env -u DOTNET_ROOT -u DOTNET_BUNDLE_EXTRACT_BASE_DIR wine /home/anon/Games/Pokémon/PKHeX/PKHeX.exe Now make the file executable by running: chmod +x /path/to/your/script For example: chmod +x /home/anon/Games/Pokémon/PKHeX/Launcher Now you can simply open PKHeX by double-clicking the launcher. 6) PKHeX plugins As you may already know, PKHeX supports plugins loading through .dll files put in the plugins folder of the program. A lot of plugins, such as the WC3 one, will make the program crash when opening it. A possible workaround is to switch to Wine-GE instead of using the vanilla Wine. This is a modified version of Wine that includes a lot of patches for games and seems to be more stable for plugins loading. Note that we can't use it as the base for our prefix, as Wine-GE is still based on Wine 8 at the moment (it doesn't include the patches for .NET 8 and PKHeX), we are just using its binaries and libraries on top of the vanilla Wine prefix. You should do this ONLY if you need to use plugins. Download the latest Wine-GE version, which is version 8.26 at the moment of writing, and extract its contents somewhere on your system. Now launch PKHeX by replacing the wine command with the binary of Wine-GE: WINEPREFIX=/path/to/your/prefix/pkhex env -u DOTNET_ROOT -u DOTNET_BUNDLE_EXTRACT_BASE_DIR /path/to/wine-ge/bin/wine /path/to/pkhex/executable/PKHeX.exe This is how it looks on my system: WINEPREFIX=/home/anon/Prefix/pkhex env -u DOTNET_ROOT -u DOTNET_BUNDLE_EXTRACT_BASE_DIR /home/anon/Prefix/Wine-GE/lutris-GE-Proton8-26-x86_64/bin/wine /home/Anon/Games/Pokémon/PKHeX.exe You can go back using vanilla Wine by restarting PKHeX with the wine command instead of the Wine-GE binary.
    1 point
  2. Version 3.1.13

    259821 downloads

    Original Developer: Codr Description: Original Thread
    1 point
  3. FRLG, Emerald, and GSC should work as expected. Which is to say, Emerald's still broken for soft resetting of course. Ruby and Sapphire should work as normal provided the flashcart has a real time clock, which both the EZFlash Omega and DE do. RNG manipulation still works as normal in my experience.
    0 points
×
×
  • Create New...