protonscr

YuuYuu Jiteki no Yuukarin

protonclosed appid 1727000Game compatibility - Unofficial
ValveSoftware/Proton#5272 · opened 2021-10-31 by vermeeren · updated 2023-12-04 · 24 comments · github · game page · search this game
Vvermeeren 2021-10-31 github

Compatibility Report

  • Name of the game with compatibility issues: YuuYuu Jiteki no Yuukarin
  • Steam AppID of the game: 1727000

System Information

  • GPU: AMD RX 6900 XT
  • Driver/LLVM version: Mesa 20.3.5, LLVM 11.0.1
  • Kernel version: Debian 5.10.0-9-rt-amd64, 5.10.70-1
  • Proton version: Proton Experimental (6.3-3 as of writing)

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.

steam-1727000.log

Symptoms

The game starts fine. Opening cutscene, settings all work perfectly. However, when you start the first stage on the world map some severe rendering glitches occur.

image

The player character and other entities (enemies, coins, blocks) do not render., foreground layer appears skewed, persistent white rectangle on top right. The gameplay itself actually works and sounds also play properly, but without visuals it's impossible to play.

Possibly related to missing depots for VC++ runtime, see https://steamdb.info/app/1727000/depots/ . The game uses Pixel Game Maker MV, which shouldn't do anything unusual. Another game using same engine reports no issues: https://www.protondb.com/app/891170 https://steamdb.info/app/891170/depots/ .

Edit: Copying over the prefix from Pixel Game Maker MV Demo (1162550) doesn't result in any change.

Reproduction

Simply start the game, start a save with defaults, skip the cutscene and play the first level.

To change to English: press F1 and set the language in the options on the top-left, then press OK and hit F5 to reload the game.

Kkisak-valve maintainer 2021-10-31 github

Hello @vermeeren, if it's available for your distro, please test if the rendering quirks happen with a current point release of mesa.

Vvermeeren 2021-11-01 github

Hi @kisak-valve, I upgraded to Debian bookworm (testing) with Mesa 21.2.4. Unfortunately did not help, the problem persists.

I did try looking around somewhat, but am pretty clueless about this one. If there is anything else I can try feel free to ask.

CChachaNuVaughn 2022-07-17 github

Hello, just wanted to report that I'm experiencing the same issues with the game as shown in @vermeeren's screenshot. Though, I'm trying to play the game on the Steam Deck. I've tried running both the most recent stable version of Proton (7.0-3) and the experimental version.

I've also tried a third-party custom build of Proton (GE-Proton7-24) as this supposedly fixed the game for someone on an Ubuntu desktop, but that didn't fix it on Steam Deck.

Uunit73e 2022-11-06 github

I don't have this game but I was also trying to run a Pixel Game Maker MV game and got the same issue. If I had to guess this is an issue with MESA, so AMD and Intel, since Nvidia doesn't seem to have the same issue in ProtonDB. Changing DXVK won't do anything because games implemented with this engine run OpenGL only. What you can do is thinker with MESA options, so here: https://docs.mesa3d.org/envvars.html

I did try a few things but no success. Not even changing to software mode works. It seem to be some kind of layering or texture issue. I'm just guessing though. You can see what the engine is doing in the action_log.txt file.

Uunit73e 2022-11-06 github

So I found a bit more about this and apparently it's a problem with AMD GPUs: https://steamcommunity.com/app/837510/discussions/2/1798529872660054893/

I has to do with blur effects but I have no idea why AMD glitches with that particular effect or how to fix it.

EDIT: by the way, the demo version will never work because it's an old version. It will make the problem worse.

CChachaNuVaughn 2022-11-08 github

That's pretty interesting. Well, with Steam Deck, don't have any choice aside from using an AMD GPU, haha~ So, is this something I can fix on my end? Is it something the game developer can fix? Or is it something that can be corrected with Proton?

Kkisak-valve maintainer 2022-11-08 github

It would be nice if someone with an NVIDIA gpu (and maybe an Intel gpu) directly confirmed (instead of second-hand) that the game renders fine for them, and if that's true, then that narrows the scope of the misrender to mesa/radeonsi.

FFishaphrodite 2022-11-08 github

I don't have a dedicated GPU, using an old i3, the game doesn't render fine and result in the same "symptom" screenshot. If that can help.

Distro:Linux Mint 20.3 (64 bits)
Kernel:5.4.0-125-generic
RAM:16 GB
GPU Driver:3.0 Mesa 21.2.6
GPU:Intel HD 4400 (HSW GT2)
CPU:Intel Core i3-4130 @ 3.40GHz

Worth noting I don't own the game on steam, but adding it as a non-steam game and running with proton results in that, same in regular wine, I prefer to give precisions in case steam can't handle well non-steam games with proton.

CChachaNuVaughn 2022-11-08 github

On ProtonDB, there are three reports from PC users: one says it works, and two say it doesn't. The two who say it doesn't work have AMD GPUs, while the one who says it works has an NVIDIA GPU.

https://www.protondb.com/app/1727000

Uunit73e 2022-11-12 github

I have tested with an Nvidia GPU and indeed it is a MESA issue only. I have no idea what kind of issue it is though.

Uunit73e 2023-02-10 github

I recommend opening a bug here: https://gitlab.freedesktop.org/mesa/mesa/-/issues
This is definitely an OpenGL game, so the driver for AMD is radeonsi.
Here's the big catch, if it doesn't work with LIBGL_ALWAYS_SOFTWARE=true it might actually be a bug in the engine that Nvidia ignores, but AMD and Intel don't.

Uunit73e 2023-04-26 github

I've opened a bug on another game that uses the same engine: https://gitlab.freedesktop.org/mesa/mesa/-/issues/8918
It's for all games that use Pixel Game Maker MV so might as well use a game that is available online for everyone.

Uunit73e 2023-05-12 github

@vermeeren try adding $HOME/.drirc with this content:

<driconf>
  <device screen="0" driver="radeonsi">
    <application name="Default">
      <option name="allow_glsl_120_subset_in_110" value="true" />
    </application>
  </device>
</driconf>

If that works, don't ask me why it works because I have no idea. I just used adriconf (it's a GUI tool to configure drirc) and was testing debug options one by one and that one worked for Pixel Game Maker MV games. Note that the configuration I posted will enable that option for all games and you probably don't want that.

There are two GUI tools that allow you to change DRI options:

It's possible to create profiles specific only to some games.

FFishaphrodite 2023-05-13 github

This text file workaround works on the deck, for my PC with no GPU however it wasn't, oh well, I can play on the deck at least. Thanks!

CChachaNuVaughn 2023-05-13 github

@unit73e Wow, amazing! That fixed it!

I mean... kinda. I don't really understand this stuff (I'm a real novice when it comes to Linux, eheh...)... so I installed adriconf from Discover, and enabled that option by default, and the game worked. I have no idea how to setup a profile so it only is enabled for Pixel Game Maker games.

But hey, this is big! Thank you so much!

Uunit73e 2023-05-13 github

This text file workaround works on the deck, for my PC with no GPU however it wasn't, oh well, I can play on the deck at least. Thanks!

You're welcome. Took me a lot of time to figure this one out.

Perhaps your PC with no GPU has an intel iGPU and in that case instead of "radeonsi" you have to use the intel equivalent.

So you don't have to guess install adriconf on your PC and you should get something like this:

image

This is a GUI configuration tool for DRI.

image

In my case I enabled "Allow a subset of GLSL 1.20 in GLSL 1.10 as needed by SPECviewperf13" and then saved (or some equivalent option for Intel), which will then write the file in posted in $HOME/.drirc and it should work with Intel as well.

Now in that tool you can also only enable those options for certain games. In the first screen, if you press add, you will get this:

image

This allowed to create another profile. You can have any "Profile" name, it doesn't matter, but the important part is the "Profile executable". There you set the name of the executable you want the profile to work, and know that with something like htop or ps -ef.

I would have preferred to enable a DRI profile by setting an environment variable, but I haven't figured how to do that yet.

Uunit73e 2023-05-13 github

@unit73e Wow, amazing! That fixed it!

I mean... kinda. I don't really understand this stuff (I'm a real novice when it comes to Linux, eheh...)... so I installed adriconf from Discover, and enabled that option by default, and the game worked. I have no idea how to setup a profile so it only is enabled for Pixel Game Maker games.

But hey, this is big! Thank you so much!

It did take me some time to figure it out, and the solution was trial and error, so I'm glad I was able to solve the problem and help everyone.

I think this has to do with a bug in Pixel Game Maker MV. From the documentation it was designed for OpenGL ES 2.0, which supports GLSL 1.20, but the games on desktop are running in OpenGL 2.0, which only support GLSL 1.10. I don't know why the engine doesn't simply pick the latest OpenGL but hey, problem solved. Someone will eventually figure a better solution now that the problem was found.

I posted instructions how to do it per game, but to be honest, it's too complicated. I'm going to leave that option by default since it shouldn't really mess with other games. It's just enabling features that shouldn't be in OpenGL 2.0. If I find a way to enable with an environment variable I'll post it here.

Uunit73e 2023-05-13 github

@kisak-valve I think Proton can add dri configurations per game? That would help Steam Deck users.

FFishaphrodite 2023-05-13 github

This text file workaround works on the deck, for my PC with no GPU however it wasn't, oh well, I can play on the deck at least. Thanks!

You're welcome. Took me a lot of time to figure this one out.

Perhaps your PC with no GPU has an intel iGPU and in that case instead of "radeonsi" you have to use the intel equivalent.

I did this, and it worked, thanks (it uses driver="crocus" instead by looking back at the file).

Uunit73e 2023-05-18 github

A developer in MESA posted a workaround: https://gitlab.freedesktop.org/mesa/mesa/-/commit/842feb46e9199fea11121f4a5d5f1ed8d9be8072

If the merge request is accepted, this will part of MESA in the future. It's same fix I posted but specifically for games with executable player.exe so most Pixel Game Maker MV games.

Wwaspennator 2023-07-04 github

A developer in MESA posted a workaround: https://gitlab.freedesktop.org/mesa/mesa/-/commit/842feb46e9199fea11121f4a5d5f1ed8d9be8072

If the merge request is accepted, this will part of MESA in the future. It's same fix I posted but specifically for games with executable player.exe so most Pixel Game Maker MV games.

Apparently the workaround has been in Mesa now since Mesa 23.1.1

Wwaspennator 2023-11-17 github

Latest steamos update should include the mesa version with the fix out of the box now for Steam Deck

CChachaNuVaughn 2023-11-17 github

Yep! Can confirm that with the SteamOS 3.5 update, this is now fixed natively without needing any workarounds!

Vvermeeren 2023-12-04 github

Confirmed working for me too with Mesa 23.2.1-1 on Debian. Will close issue.

Proton versions