Rash-in / StarParseLinux

Instructions on installing StarParse on Linux machines using Wine
13 stars 1 forks source link

Fedora / KDE / Wine 7 Compatibility #11

Closed jonathanfox5 closed 2 years ago

jonathanfox5 commented 2 years ago

General Observations

Thanks for the time and effort in pulling this guide together, it was extremely helpful. I appreciated the logical and concise way that you laid everything out. It took me several hours (mostly due to KDE issues) but I finally got it running!

I thought that it would be useful to highlight the parts of the guide that were different for my system in case anyone stumbles over it in google or if there is anything that you want to weave into the guide.

I suspect that the main changes were due to the more recent versions of wine and KDE so my notes below will hopefully be relevant to people running other distros such as Manjaro, etc.

It's obviously not practical to add in steps for every configuration out there. One thing that would be useful though is a brief explanation at the start of what the user should be trying to achieve. That would make it much easier to work around any distro specific issues. e.g. "The process for getting StarParse running is as follows: 1) Temporarily run the java based StarParse launcher in Wine 2) Use this temporary Wine installation to get the most up to date version of the java based client 3) Extract the client files from the temporary Wine bottle 4) Run StarParse natively in Wine 5) Configure and tidy up loose ends"

Relevant System Info

Fedora 35 Wine 7.5 Staging (standard Fedora system version) KDE Plasma 5.24.4 NVIDIA Proprietary Driver 510.60.02, Geforce 3070 Ti Wayland Running the game with GE-Proton-7-14 A BGR subpixel monitor rather than RGB subpixel monitor

Step 1

No issues other than a different java version (it's currently on v331). It might be worth stating in the instructions that it is the Linux x64 version that should be downloaded (not the RPM or the 32 bit ones).

Side note: Despite having a BGR monitor, fontsmooth=rgb was fine for getting text legible enough for the temporary stage. Setting it to bgr didn't make much difference.

Step 2 - Issue 1

On my version of wine, StarParse actually ran without any errors (albiet the text was a bit messed up).

Not really an issue from a getting it running point of view, more just from a "trying to work out how this links up with the guide" point of view. Hopefully my suggestion at the bottom of "General Observations" might help other users who encounter the same thing.

Step 2 - Issue 2

.StarParse/drive_c/users/$USER/Local\ Settings/Application\ Data/StarParse/didn't exist for me. I assume this is due to different versions of wine.

For me, the command was therefore: cp -R ~/.StarParse/drive_c/users/$USER/AppData/Local/StarParse/* ~/.StarParse/StarParse/

Step 3 - Issue 1

~/.StarParse/StarParse/jre1.8.0_321/bin/java -jar starparse-launcher.jar failed to launch for me since it couldn't read the main() class name manifest file for some reason or another. This ended up not being an issue as it had already run for me in step 2 (see above).

I could therefore skip this step (after failing to troubleshoot it!) and go straight to: cd /home/$USER/.StarParse/StarParse/app/client/app && ~/.StarParse/StarParse/jre1.8.0_321/bin/java -jar starparse-client.jar

Step 3 - Issue 2

cd ~/.StarParse && rm -rf dosdevices && rm -rf drive_c && rm system.reg && rm user.reg && rm userdef.reg && rm winetricks.log && rm .update-timestamp

Very (very!) minor issue. Not all of these files existed for me, I assume due to different wine version.

Step 4 - Issue 1

Another very minor issue. You have accidentally repeated the following command from Step 3. cd ~/.StarParse && rm -rf dosdevices && rm -rf drive_c && rm system.reg && rm user.reg && rm userdef.reg && rm winetricks.log && rm .update-timestamp

Step 4 - Issue 2

The steam location was different for me (native fedora install): ~/.steam/steam/steamapps/compatdata/1286830/pfx/

Step 4 - Issue 3

The CombatLogs folder didn't exist for me. This was fixed by enabling it in game and generating one by attacking an enemy

Step 4 - Issue 4

Since .steam is hidden, StarParse didn't show it in its file picker. Pressing Ctrl-H fixed this.

Step 4 - Issue 5

For some reason, StarParse didn't save my settings the first time I closed it and re-opened it. I re-entered the path and it worked the second time. I'm not sure why this was. Maybe I pressed x the first time and "Save Settings" the second? Not sure!

Step 5 - Issue 1

I've laid out the steps for Fedora below.

Install corefonts:

File to create or change: ~/.config/fontconfig/fonts.conf

<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
  <match target="pattern">
  <test qual="any" name="family">
   <string>sans-serif</string>
  </test>
  <edit mode="assign" name="family">
   <string>Arial</string>
  </edit>
 </match>
 <dir>~/.fonts</dir>
</fontconfig>

Note that the Arch Wiki has a good article on fontconfig if you need to make any other changes.

Finally, restart StarParse.

Step 6

This was the "fun" part. I was never actually fully successful here but got it to "good enough".

I spend a long time trying various workarounds to no avail. My eventual solution was as follows:

This solution is far from perfect. Setting the game to windowed means that there is a slight gap top and bottom (hence the black wallpaper). This isn't the end of the world for me: When not using StarParse, I press alt-enter to go back to fullscreen and it's as if I never changed anything. Alt-enter returns to windowed mode

Final Thoughts

Let me know if I can provide anything else that would be helpful for updating the guide. If necessary, I'm happy to do something like recording my screen if it makes things easier?

Thanks again!

Jonathan

Rash-in commented 2 years ago

Thanks for your feedback. It is appreciated. I am glad you were able to get it up and running despite the headaches. I really wish there is a distro/DE agnostic way of doing all this. Would make it a bit simpler.

Comments from your post:

One thing that would be useful though is a brief explanation at the start of what the user should be trying to achieve. That would make it much easier to work around any distro specific issues. e.g. "The process for getting StarParse running is as follows: 1) Temporarily run the java based StarParse launcher in Wine 2) Use this temporary Wine installation to get the most up to date version of the java based client 3) Extract the client files from the temporary Wine bottle 4) Run StarParse natively in Wine 5) Configure and tidy up loose ends"

Am a bit curious on this. In the older versions of the guide I didn't have that. But on my current one I do. Table of Contents. Or are you looking for something different?

...stating in the instructions that it is the Linux x64 version

I will get that in there. agreed its important.

Step 3.2 - Very (very!) minor issue. Not all of these files existed for me, I assume due to different wine version.

Actually it was more me leaving in dirty files from when I was playing with things on other test installs. Doesn't hurt to leave them in the commands tho.

Step 3.x - Another very minor issue. You have accidentally repeated the following command from Step 3.

Yeah. That was unintentional. Started to get it moved to Step 4 but left it in both. Will get it edited.

Step 4.3 - The CombatLogs folder didn't exist for me. This was fixed by enabling it in game and generating one by attacking an enemy

I can work that into the guide. I didn't put any of that in there originally with the mindset of someone who had used SP in the past vs someone new.

Step 6....

Unfortunately, since I don't have any experience with either Fedora or with KDE, I am unable to comment on this. The parts that were created for KDE were made from someone else providing input like yourself here. That is why the part that was written was placed back in the wiki vs in the readme. I only have bandwidth for learning one window decorator plugin system :P

Rash-in commented 2 years ago

Oh yeah. Forgot this part:

fontsmooth=rgb

This was a remnant of the old guide where the app was actually running from wine. Since Java is now the native app that is running SP, its irrelevant. It might make the error screen more legible when you are extracting the client files, but that would be about it.

jonathanfox5 commented 2 years ago

Thanks for the reply.

Am a bit curious on this. In the older versions of the guide I didn't have that. But on my current one I do. [Table of Contents](https://github.com/Rash-in/StarParseLinux#contents). Or are you looking for something different?

The table of contents was good. What I was more looking for was a "what are we trying to achieve?" rather than "what are the steps that we are going through?". The reason is that understanding the process make it easier to troubleshoot (hopefully!). That said, it's not the end of the world if it's not included. The bit that takes the longest is definitely Step 6!

I would probably leave fontsmooth=rgb in the guide. The reason is that it was impossible to read any of the text without it. (not that it really makes any real difference! As you say, it gets replaced with native anyway)

I agree with separating the KDE content out. It's very fiddly and seems to be version dependent.

Thanks again.

Rash-in commented 2 years ago

Added in all the stuff requested. Am going to close this out, however, I added the stuff that wasn't changed in the main writeup to its own wiki page here. That way it can be saved for others.