kyechou / leagueoflegends

League of Legends install and launch wrapper for Linux
https://www.leagueoflegends.com
GNU General Public License v3.0
290 stars 23 forks source link

Riot Client black screen wine issue #124

Open lithiferous opened 8 months ago

lithiferous commented 8 months ago

System information

Software versions

Describe the issue

Recently I encountered a strange issue when installing leagueoflegends-git; After I launched the client using: prime-run leagueoflegends start - it creates a black window with game update running in the background (prime-run indicates to use nvidia GPU, and works for other wine apps). However, if I use the '.exe' provided by the website and launch the client using prime-run leagueoflegends run ./lol.exe it renders Riot Client correctly. Each time I switch between both methods of launching client I see the wine configuration running that updates the prefix inside .../.local/share/leagueoflegends. Using regular launch I cannot seem to get to the login screen as the window is not rendered, while '.exe' method does not launch the client after I log in with credentials (probably since it does not use timeout as in #16).

One of the closest solutions I have seen so far was to download '.exe' locally and do the initial installation, but not to perform login; After installation has been completed - close the window, and launch the game as per usual (they used lutris, but in our case it would be regular leagueoflegends start script). The problem is that I am not sure how to perform it (download binary, install game, launch regularly) using leagueoflegends setup as it seems to me that both leagueoflegends start and leagueoflegends run ./lol.exe use different prefixes, and first one is not using the installation from the second one's wine environment. For example, whenever I launch leagueoflegends run ./lol.exe or wine ./lol.exe the type of wine used is wine-staging (all of them are working using prime-run), while the script points to wine-lol using leagueoflegends start which is a custom wine (latest wine-lol).

Hopefully, you can give me a hint of what to look for to tackle the issue.

Steps to reproduce

Black screen

  1. Run command prime-run leagueoflegends start (log.txt).

Not rendered client

Working screen

  1. Download .exe from official website
  2. Run command prime-run leagueoflegends run ./lol.exe (log.txt)

Working using run cmd

lithiferous commented 8 months ago

Can confirm that using wine-lol-staging with the version 8-21 shows launcher as expected. Will test if the game works, and play around cheating issues for now.

Upd: game works well under 8-21

alhazacod commented 8 months ago

The same is happening to me with wine-lol version 8-27 on 6.6.8-arch1-1 with Muffin as window manager, also with nvidia drivers. I updated it using yay (leagueoflegends-git 13.7.2.r24.g661790a-1) and it wont work now, I get the same black screen. I did the solution you recommended and it worked. I'm installing the game rn, I'll update if the game works or not.

lithiferous commented 8 months ago

@alhazacod Gratz, but as a heads-up staging build might have deprecated client calls which are treated as cheating scripts on the Riot Games side for some players, so I had to do some testing and play on a side account for now. Read through #123 for more dets, and maybe not play on main acc right away.

With that said you can, of course, find understanding from support and reclaim back your account, but it costs time, so sending warning your way.

alhazacod commented 8 months ago

@lithiferous Thank you. I know, Im using wine-lol rn which is supposed to have the patch but I'll be testing it on a side account anyways.

alhazacod commented 8 months ago

I installed it without any problems with your solution but it won't start with "leagueoflegends start" how did you managed to start the launcher after install? I tried with leagueoflegends run ./RiotClientServices.exe but I get the next error: image

lithiferous commented 8 months ago

@alhazacod It's too vague of a description for me to help you. All I can give you is that my setup with wine-lol-staging 8.21-2 & leagueoflegends-git 13.7.1.r0.gfb60c87-1 works. I run the game using prime-run leagueoflegends start to force nvidia drivers.

UPD: !!! I see that you are using wrong command to run your game, you should always use leagueoflegends start because leagueoflegends run ./lol.exe leads to unexpected behaviour.

I would suggest trying:

I had similar errors, but they went away once I rebooted, and did a fresh install (from backup), if the steps above won't help I suggest you open up a separate issue on the repo with proper logs and details, and maybe I can take a look if I have time today.

lithiferous commented 8 months ago

@alhazacod I think maybe you have been following the misleading solution because what I did to play was:

So basically, I ditched the official version of wine-lol in favor of outdated staging which worked for me.

alhazacod commented 8 months ago

@lithiferous Sorry I didn't explain myself. When i run leagueoflegends start I get the black screen client, that's why i tried with leagueoflegends run ./RiotClientService.exe and got that error. Im currently using wine-lol 8_27-1 not wine-lol-staging, Im installing wine-lol-staging rn to see if it works. ty. image

alhazacod commented 8 months ago

@alhazacod I think maybe you have been following the misleading solution because what I did to play was:

* install `leagueoflegends-git 13.7.1.r0.gfb60c87-1`

* install `wine-lol-staging 8.21-2`

* run  `prime-run leagueoflegends start`

* play games after installation is complete

So basically, I ditched the official version of wine-lol in favor of outdated staging which worked for me.

@lithiferous Oh you're right I was just installing it with leagueoflegends run ./lol.exe I didn't read you comment saying the script works fine under wine-lol-staging. Sorry, my fault.