protonscr

NosTale

protonopen appid 550470Game compatibility - Unofficial
ValveSoftware/Proton#635 · opened 2018-08-26 by memegauste · updated 2024-02-28 · 25 comments · github · game page · search this game
Mmemegauste 2018-08-26 github

Log:
steam-550470.log
Distro: Arch Linux

Kkisak-valve maintainer 2018-08-26 github

Hello @HoshiYamazaki, please copy your system information from steam (Steam -> Help -> System Information) and put it in a gist, then include a link to the gist in this issue report.

Mmemegauste 2018-08-26 github
Cczapnaper 2018-12-14 github

In my case, the game only runs on a new beta (3.16-5) may be in your case too.

Mmemegauste 2018-12-21 github

In my case, the game only runs on a new beta (3.16-5) may be in your case too.

Sorry but I don't use anymore Linux since it does not support well mixed dpi support and wine does not support scaling - I have FullHD and 4K monitors.

If there wayland will become better I will return to it (or wine will get upscaling options like Windows 10 have).

So I can't test NosTale under *nix, but when I tried it worked fine on Arch - I had only problems with NosMarket not displaying under native wine. Despite that it does not work fine on macOS and I reported my problems on bugzilla:
https://bugs.winehq.org/show_bug.cgi?id=42999

Kkisak-valve maintainer 2019-10-23 github

NosTale gets wrong font rendering (550470)

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3165.
@HoshiYamazaki posted on 2019-10-23T17:46:49:

Compatibility Report

  • Name of the game with compatibility issues: NosTale
  • Steam AppID of the game: 550470

System Information

  • GPU: Rx480 4GB
  • Driver/LLVM version: Mesa 19.2.1-2
  • Kernel version: 5.3.7-arch1-1-ARCH
  • Proton version: 4.11

Symptoms

Font are rendered badly, because wrong FREETYPE settings.

Solution

Set
FREETYPE_PROPERTIES="truetype:interpreter-version=35"
Before launching wine, but I'm not sure how to do that in steam proton.

Kkisak-valve maintainer 2019-10-23 github

Hello @HoshiYamazaki, you should be able to set env variables on a per game basis by adding ENV_VARIABLE=foo %command% in the game's launch options.

Go to Steam -> Library -> Right click on the game -> Properties -> Set launch options -> FREETYPE_PROPERTIES="truetype:interpreter-version=35" %command%

Mmemegauste 2019-10-23 github

For some reason, it does not work under steam-runtime, and on steam-native it crashes. I don't tested it with FREETYPE_PROPERTIES=truetype:interpreter-version=35 convention, maybe I miss Windows fonts (I don't have them installed), but I tested it year ago on native clean Wine and it was overall improvment.


NosTale crashes on latest proton (was working before) (550470)

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3576.
@HoshiYamazaki posted on 2020-02-27T18:15:48:

Compatibility Report

NosTale
(550470)

System Information

  • GPU: Rx5700 XT
  • Driver/LLVM version: AMDGPU 19.1.0-1
  • Kernel version: 5.5.6-arch1-1
  • Proton version: 5.0-3

I confirm:

  • [x] that I haven't found an existing compatibility report for this game.
  • [X] that I have checked whether there are updates for my system available.

https://pastebin.com/nvKTvcGS

Symptoms

NosTale crashes on startup.

Reproduction

Just run game, was working on Proton 4.11.

Kkisak-valve maintainer 2020-02-27 github

Hello @HoshiYamazaki, can you check if adding PROTON_USE_WINED3D=1 %command% to the game's launch options has an effect?

ZZereoX 2020-02-27 github

Hey @kisak-valve, the issue is actually caused by the change to the default windows version of prefixes. Manually reverting the compatdata folder to Windows 7 (using winecfg) or creating the compatdata folder using Proton 4.11-12 before reverting to 5.0-3 will allow the game to launch (Proton 5.0 does not upgrade the Windows version of existing prefixes).

This title appears to be affected by https://bugs.winehq.org/show_bug.cgi?id=44865 as indicated by the following error message present in the log:
519915.469:0034:0035:err:ole:CoGetClassObject no class object {54e211b6-3650-4f75-8334-fa359598e1c5} could be created for context 0x1

Mmemegauste 2020-02-27 github

Also, I want this option to be passed by default:

FREETYPE_PROPERTIES="truetype:interpreter-version=35"

Since it improves font rendering in NosTale (makes rendering Windows-like) but it seems that it doesn't work in proton (it does in raw Wine), but I tested it year ago.

Mmemegauste 2022-02-16 github

Hiya, so I want to reminder here that NosTale still has mouse bug on recent Wine versions:
https://bugs.winehq.org/show_bug.cgi?id=49988

I reported it on bugzilla, but maybe people from here will know why it happens, and how to fix that. It also appears on macOS (and has longer history, because the Linux has not problem from wine 2 to wine 5.1x, and game is affected again).
https://bugs.winehq.org/show_bug.cgi?id=42999

Thanks in advance for support.

Mmemegauste 2022-02-16 github

So, here is log:
https://pastebin.com/rHKzr1b4

Maybe somebody will know how to fix that, I will also upload plain wine logs too later.

Kkisak-valve maintainer 2022-02-22 github

steamdeck unsuported

Issue transferred from https://github.com/ValveSoftware/Proton/issues/5603.
@hydrasho posted on 2022-02-22T14:14:07:

Hello, I don't know where to write this report, but nostale is displayed as unsupported, however this is a bug since proton 6, we can't move the character since this version.

on the other hand run nostale with proton 5 and lower, it works perfectly!

My request:
force nostale on steamdeck to run with proton 5 or less
or correct proton 7 to be able to move the character again.

Thanks !

Capture d’écran de 2022-02-22 15-07-47

Nnda-cunh 2022-02-28 github

@kisak-valve i think you didn't understand my request, nostale works very well! with proton 5. it should be "playable" and not "unsuported".

Mmemegauste 2022-02-28 github

@kisak-valve i think you didn't understand my request, nostale works very well! with proton 5. it should be "playable" and not "unsuported".

Then just use Steam Proton 5.13 - if I know steam play always uses newest version of proton besides experimental, so I don't know if it's even possible to "force it" without writing new functionality in the launcher.

Also NosTale can work better with newer DXVK, and has font aliasing bug on previous versions. So the issue of mouse bug will be revelant until it will get fixed both on Linux & macOS.

Mmemegauste 2022-04-20 github

@kisak-valve can I ask you, or your team for checking issue with the mouse cursor not being usable again?

I also posted many bugzilla reports before on WineHQ site, maybe they will help:
https://bugs.winehq.org/show_bug.cgi?id=49988
https://bugs.winehq.org/show_bug.cgi?id=42999

Thanks anyway, I really appreciate your work!

KKaspianDev 2022-09-28 github

Unfortunately mouse still doesn't work on proton 6+

Bbegin-theadventure 2022-10-10 github

The latest version of Proton that works is 5.13, in newer versions mouse clicks are completely broken, except for the in-game web browser.
In 7.0, the web browser displays correctly and VkBasalt also works.
There are plenty of posts on various sites mentioning the mouse issue: GitHub link.

Mmemegauste 2022-10-18 github

The issue is caused (probably) by nProtect GameGuard, it also makes some other games unplayable (despite PSO2 which got fixed some time ago). That's seems to be really funny because this anticheat does everything in unwanted, opposite direction - it makes game unplayable on UNIX-based operating systems (Linux, SteamOS, macOS, and probably every that has wine), despite there were many gold, multiclient and other kinds of exploits using custom packets.

Also I'm not Entwell/GameForge developer to say anything about that, but it seems they pay nearly 15K yearly (until there is some discount, or taxes-based workaround to save some money) for it:
image

The image is from here:
https://gameguard.nprotect.com/en/index.html

This can be reason for P2W mechanisms in the game to afford this anticheat engine, since the whole point of gameplay is snobbery. If this solution would be removed, the NosTale should be easier to maintain without providing so many money-paywalls into the gameplay. This also confirms that GameForge can not earn on this game very much, but I'm not sure since teenagers can buy more items than I expect from itemshop to just prove their value.

Sorry if I sound rude, but if you are Entwell developer, consider removing the nProtect GameGuard from game engine, just to support your community. I'm not really sure if I want to support this game after all these years despite I loved to play it since I was teen. Time to probably grow up and move into Final Fantasy XIV.

If you are wine developer, do whatever you want, I just gave my point of view. It's all what I wanted to say after all these years.

KKaspianDev 2022-10-18 github

I don't think anticheat has anything to do with mouse movement not working, on older proton (5) the game runs fine.
Anticheat would just not let thru at all.

On another note, how stupid it is to pay 15k/year for software that doesn't support all 3 major platforms (windows,linux,mac).

Edit: according to reply from nostale team manager from 2021 there's no anticheat

Mmemegauste 2022-10-18 github

I don't think anticheat has anything to do with mouse movement not working, on older proton (5) the game runs fine. Anticheat would just not let thru at all.

This can be caused by some odd NosTale/wine logic, the nProtect GameGuard seems to be released after decade ago so I would not be suprised if it detect some variables that wine sets because of some reason. Also the old anticheats can work differently than these what exists now, also it could be removed, but not completly and it still exists in NosTale codebase.
After working with software by years I'm really keen to the idea there can be some odd quirk that make this game unplayable.

On another note, how stupid it is to pay 15k/year for software that doesn't support all 3 major platforms (windows,linux,mac).

Neither is writing game engine that does odd amount of draw calls (causing early versions DXVK not performing well at all), or implementing OpenGL backend that for some reason does not even work, but is in game since the release.

Edit: according to reply from nostale team manager from 2021 there's no anticheat|

I'm not suprised, NosTale Team Manager is not developer, not even connected with development since majority of work is outsourced to Entwell team in Korea.

Mmemegauste 2023-01-02 github

Hey, despite everything I posted here I decided to contact my friend @morsisko that has reverse engineering experience so we were able to fix the mouse issue on Linux and even on macOS too. It seems that NosTale is checking memory regions for some odd reason and if user32.dll is placed under 0x70000000 address it get's buggy and unplayable. With custom patch for it in Makefile.in the game FINALLY works.

With help of Linux Gaming Discord I managed to create custom Steam Proton (based on GE) build:
https://github.com/PSzczepanski1996/proton-ge-nostale
And also custom CrossOver wine executables:
https://github.com/PSzczepanski1996/macos-crossover-wine-nostale-builder

Not sure how we should mainstream these patches, if even. There are preferred base addresses for user32.dll and other libraries that should be considered to set in Wine:

image

But with ALSR it get's random after everyboot in my Windows 11 x64 machine so probably it should be set to constant or get randomized beetwen some range (0x7...-0x8... maybe?).

I also tag my Proton build as beta, since I'm not really sure if there are other bugs and if the solution we found is stable enough - please test it and post results here!

Bbegin-theadventure 2023-01-03 github

@PSzczepanski1996 That's great news! I hope this eventually goes upstream and gets fixed. Thanks.

Mmemegauste 2024-01-26 github

NosTale works just fine on CrossOver 24 beta1 without any custom patches, so probably it will work also on Steam Proton with Wine 9.0 based builds. I'm now waiting for any Proton-9 release and will test NosTale again on it, fingers crossed!

Mmemegauste 2024-02-28 github

NosTale works fine on CrossOver 24, newest Mobox and also Steam Proton 9 Beta, so the issue will be resolved so far in near future without any additional patches / need to download custom build.