Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Yu-gi-oh Duel Links (601510) #1471

Open
1 of 2 tasks
jomarocas opened this issue Sep 15, 2018 · 19 comments
Open
1 of 2 tasks

Yu-gi-oh Duel Links (601510) #1471

jomarocas opened this issue Sep 15, 2018 · 19 comments
Labels
Game compatibility - Unofficial Games not expected to work without issues .NET Uses the .NET framework

Comments

@jomarocas
Copy link

jomarocas commented Sep 15, 2018

Compatibility Report

  • Name of the game with compatibility issues: Yu-gi-oh Duel links
  • Steam AppID of the game: 601510

System Information

  • GPU: GTX 970
  • Driver/LLVM version: nvidia 396
  • Kernel version: 4.15
  • Link to full system information report as https://gist.github.com/jomarocas/3a9a591a69cc4a0cd622d014212b5c4e
  • Proton version: 3.7.6 beta
  • Ubuntu 18.04 fully update
    I confirm:
  • that I haven't found an existing compatibility report for this game.
  • that I have checked whether there are updates for my system available.

Symptoms
First problem encounter with media in ntfs i modify in /etc/fstab for working and execute,i use steam beta and proton beta
/dev/sda3 /media/juegos ntfs-3g defaults,uid=1000,gid=1000,exec 0 0

Reproduction

Install latest update

  1. You can find the Steam AppID in the URL of the shop page of the game.
    e.g. for yu-gi-oh duel links the AppID is 601510.
  2. logs for proton in home https://gist.github.com/jomarocas/f5b40aa5786daa5511d4d9f0e5246917
  3. related issues are in #Trying to launch a game on an NTFS drive fails #11

more logs

the game crashed. the crashed report folder name "2018-09-15_152126" next to game executable. it would be great if you send it to developer of the game
https://gist.githubusercontent.com/jomarocas/8c2ebd04425c8c2ec1c387d53d7136b9/raw/7af56432af5a6d1e387f7f2a932b510858599e59/log

WINEPREFIX="$HOME/prefix32" WINEARCH=win32 wine wineboot

@kisak-valve kisak-valve added the Game compatibility - Unofficial Games not expected to work without issues label Sep 15, 2018
@kisak-valve kisak-valve changed the title Yu-gi-oh Duel links Yu-gi-oh Duel Links (601510) Sep 15, 2018
@kisak-valve
Copy link
Member

err:mscoree:CLRRuntimeInfo_GetRuntimeHost Wine Mono is not installed in the log points towards #18.

@jvschiavo
Copy link

err:mscoree:CLRRuntimeInfo_GetRuntimeHost Wine Mono is not installed in the log points towards #18.

Do you plan to include wine-mono in Proton to support those games?

@jomarocas
Copy link
Author

jomarocas commented Sep 15, 2018

duel links working with playonlinux https://www.youtube.com/watch?v=DR_gnNzt7e0

@jomarocas
Copy link
Author

Later of try and read lot of things, i can make the game working with wine prefix, but i make a lot of things and i dont know how of this things is make to work the game. Start

Install mono form this page https://www.mono-project.com/download/stable/#download-lin-ubuntu
follow steps for install mono, i use ubuntu 18.04 and i have nvidia driver 396 for clarify

later i install wine, wine64 bit and winetrick, but before you need to sure to other installation of wine that make have a problems

sudo apt remove wine*
rm -rf .wine/
sudo apt install wine-stable wine64

and go to you installation path and make

WINEPREFIX=/media/juegos/juegos_linux/steamapps/compatdata/601510/pfx winetricks dotnet45

execute the game and now working, i have steam cliente beta and proton beta, but this use local wine

wine --version
wine-3.0 (Ubuntu 3.0-1ubuntu1)
winetricks --version
20180217 - sha256sum: 1b156c616174f41df79d72a90c52eb2b110c63a6e8ecb865d303a8f9f0908924

I install dotnet from winetrick in install programs, i install corefonts this for game working
sudo apt-get install msttcorefonts

@minionprocyk
Copy link

After installing mono, I can run the game, but I'm unable to transfer my data from the main menu and I get the error message
"user-open error: Supplied URL scheme "duellinks" is not allowed". This then lets your browser hang on konami's authentication page while the main app is saying wait for the data to be transferred.

Outside of that one issue, game seems to run perfectly fine. Not sure if anyone is having a similar problem. I'll play around and see if I can get it to run.

@jomarocas
Copy link
Author

@minionprocyk i dont have the issue, when download i close the app and reopen again for download in the same status, later of download all working good

@jomarocas
Copy link
Author

@kisak-valve you can change the status of this issue to whitelist, thanks

@kisak-valve
Copy link
Member

kisak-valve commented Nov 5, 2018

Hello @jomarocas, no, because it looks like this game requires manual install installation of wine-mono / .net. A whitelist request should be usable out of the box, but if the game needs some runtime config options, it can still be considered.

@kisak-valve kisak-valve added the .NET Uses the .NET framework label Dec 13, 2018
@omnishamble
Copy link

I have the same issue as @minionprocyk - game runs perfectly, but I am unable to setup Data Transfer with my Konami account.
Falkon browser opens up the My Konami page, but after logging in, Falkon gives me the following error: "Could not find any application or handler for duellinks://yugioh/regist/?code=f9a88f3211c74bccab72a8f754555e05"
Firefox simply does nothing.

@minionprocyk
Copy link

minionprocyk commented Jan 12, 2019

I took another go at this... I was able to get the data transfer to complete successfully. I will post detailed instructions later but basically you have to setup an application redirect in your default browser to handle "duellinks" and associate it to a shell script, this shell script needs to run wine in the same context (same prefix) as duellinks and launch the duellinkstakeover.exe file.

After you do this, when you press data transfer and punch in your konami credentials, the script will launch the duellinkstakeover.exe file, wait for the process to finish, wait some time, then tab back into the game and hit initialize link. You will load in with your save file.

I did not confirm if the data is presistent after initial load, but I'm pretty happy just to see it work. Will post later today with more detailed instructions of what I did.

...

I may have jumped the gun a little early. when you launch through steam, it performs its own data sync of the game's save files. That's what was being synced across my machines. I'm able to run the datasync tool in the game, but it results in some trouble downloading the files:

UnloadTime: 0.586700 ms
Log: connection {1} has been disconnected by timeout; address {::ffff:127.0.0.1:2121} time {2418}, last rec time {333} rtt {0} timeout {2000}
reactor filed to acomplish request with code {676}, bytesReceived {0}
received close sock signal with code {676} and ret {0}
Setting up 2 worker threads for Enlighten.
Thread -> id: 53 -> priority: 1
Thread -> id: 54 -> priority: 1

@minionprocyk
Copy link

minionprocyk commented Jan 12, 2019

Well turns out I was just being silly. I did indeed get the process to work afterall. Here's what you need to do.

To get the game to launch at all, you need to install dotnet45 and set the launch options to PROTON_USE_WINED3D=1 %command%. Now the game loads, hooray!

Now to get data transfer to work:
The example i will provide is using Firefox as default browser using ubuntu 18.10.

  1. In firefox, open about:config, and right click to add a new boolean with the name: "network.protocol-handler.expose.duellinks" and set it to false.

  2. Create a shell script called duellinks and place it into /usr/local/bin or wherever you choose. This shell script will serve as a wrapper for calling the data transfer process when you login to the konami page. It will need execute privileges, e.g. chmod +x /usr/local/bin/duellinks

  3. create a dummy html file that contains a duellinks application link.

<!DOCTYPE html>
<html>
<body>

<h1>Get Duel Links Data Transfer Working</h1>

<p>Click the link, set the default application to be your duellinks script and check the Remember This Choice checkbox</p>
<a href="duellinks://open/friends">Click This Link to get the dialog box</a>
</body>
</html>
  1. save the html file, load it into your browser, click the link, set your default application to handle the link to be the duellinks script you've already created.

  2. Add content to your duellinks script, here's an example of the shell script I created.

#!/bin/sh

WINEPREFIX="/path/to/SteamLibrary/steamapps/compatdata/601510/pfx"
WINEESYNC=1

exec /path/to/Proton\ 3.16\ Beta/dist/bin/wine Z:/path/to/SteamLibrary/steamapps/common/Yu-Gi-Oh!\ Duel\ Links/DuelLinksTakeOver.exe "$@"

If you want to test your script, you can type "duellinks" in your terminal, it will load a window briefly and your terminal should have a wall of text saying FIXME from wine.

  1. Launch DuelLinks and select data transfer, enter your konami credentials
  2. watch a window appear, do some magic, then duellinks will load your new credentials and present you with a box saying it was succesful. Load the game and start playing!

@omnishamble
Copy link

Thank you for your detailed instructions, @minionprocyk , the solution worked! I'd just like to point out that there's a typo in your script - there's a " missing after the path pointing to the wineprefix.

@minionprocyk
Copy link

thanks @omnishamble . I updated the comment.

@FooisOP
Copy link

FooisOP commented Oct 10, 2020

As much I don't want to quote entire solution, it is directed to the solution regarding on linking accounts.. It seems a lot has changed between now and then.

I ran into a major bug problem where I cannot run wine because it would give me bad EXE. However, if I run wine64 then it would run but it crash the duel links client. I have to force quit the game through htop.

Installing breakpad exception handler for appid(gameoverlayui)/version(20201007061553)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
recv failed for host {0}, error {676}. Host will be closed
[1010/094219.418521:INFO:crash_reporting.cc(270)] Crash reporting enabled for process: renderer
Installing breakpad exception handler for appid(gameoverlayui)/version(1.0)
[1010/094219.611641:ERROR:frame_sink_video_capturer_impl.cc(206)] Invalid resolutions constraints: 0x0 must not be greater than 0x0; and also within media::limits.
Unloading 1 Unused Serialized files (Serialized files now loaded: 18)

Unloading 29 unused Assets to reduce memory usage. Loaded Objects now: 18112.
Total: 38.443600 ms (FindLiveObjects: 1.874800 ms CreateObjectMapping: 0.770700 ms MarkObjects: 35.675700 ms  DeleteObjects: 0.121700 ms)

I tried to dig up some additional info. This is the results.

Log: connection {1} has been disconnected by timeout; address {::ffff:127.0.0.1:2121} time {2533}, last rec time {433} rtt {0} timeout {2000}
reactor filed to acomplish request with code {676}, bytesReceived {0}
received close sock signal with code {676} and ret {0}
 Setting up 4 worker threads for Enlighten.
  Thread -> id: b4 -> priority: 1 
  Thread -> id: b5 -> priority: 1 
  Thread -> id: b6 -> priority: 1 
  Thread -> id: b7 -> priority: 1 

I am running Steam Proton 4.11. I am afraid to change anything since I found out that my account is not connected to the konami ID at all for some reason. This whole time, I thought it was connected automatically.

Anybody here got any ideas?

Edted: I fixed the solution.

"network.protocol-handler.expose.duellinks" and set it to True.

It should not be false as original solution stated.

@UltiRequiem
Copy link

duel links working with playonlinux https://www.youtube.com/watch?v=DR_gnNzt7e0

Not working actually.

@alkaris2
Copy link

alkaris2 commented Jan 24, 2021

When I tried to play this game, the game appears to work normally until I click out of the game or Alt+Tab, and I can no longer interact with the game. I can still draw particle effects with my mouse when clicking in the game, but I cannot click on anything in the game like buttons, menus etc... everything just ceases to work for whatever reason.

I'm basically forced to restart the game if I click out or Alt+Tab, because trying to click back in or Alt+Tab back to the game doesn't restore game functionality. I need to try grab some logs next time I play it, to see if anything of interest pops up as to why it can't focus back to the game when switched to it.

EDIT:

I don't know if this log will help but this is what I get when I alt+tab away or click out the game. Perhaps there's something to add to the tweaks of Proton that can be made somewhere to fix this issue.

steam-601510.log

@alkaris2
Copy link

A follow up to the mouse focus issue. I've found a fix to the mouse focus so you can click out or Alt+Tab to and from the game. To fix the issue, you need to add the following to Regedit;

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Wine\X11 Driver]
"UseTakeFocus"="N"

Copy+Paste the above in to a text editor and call it MouseFocusX11.reg or whatever you want and open Regedit with either Winetricks or Protontricks, and then from the menu select Import Registry Key to add it.

@GAumala
Copy link

GAumala commented Feb 12, 2021

I managed to transfer my data today. I can confirm that @minionprocyk's method works and that "network.protocol-handler.expose.duellinks" has to be set to false. Testing the dummy file beforehand is really important to get this working.

For some reason running the game executable in the bash script that I choose to run in firefox didn't work for me. Instead what I did is save the url that the script has to handle to a local file. The script used looks like this:

#!/usr/bin/bash

# Path must be absolute!!
echo "$@" > /home/user/args.txt

After submitting credentials in the Konami website, args.txt contained a single url like this: "duellinks://yugioh/regist/?code=aaaaaaaa-bbbb-cccc-dddddddddddd". Then I just ran in my terminal:

exec "$PROTON_PATH/dist/bin/wine" "Z:$STEAM_LIBRARY/steamapps/common/Yu-Gi-Oh! Duel Links/DuelLinksTakeOver.exe" "duellinks://yugioh/regist/?code=aaaaaaaa-bbbb-cccc-dddddddddddd" 

In case you are wondering about the variables used here:

  • $STEAM_LIBRARY is the absolute path to the Steam Library. If for some reason you don't know it, you can check it in Steam by opening Settings, going to downloads and clicking the button "STEAM LIBRARY FOLDERS"
  • $PROTON_PATH is the absolute path to the directory where Steam installed the proton version you are currently using. Proton is installed in your local user home directory, so if you are using Proton 5, it's "/home/user/.steam/steam/steamapps/common/Proton 5.0"

@McEazy2700
Copy link

Hi, I noticed the last comment was in 2021. I'm not sure steam works like this anymore. First of all I don't have whine or proton installed. When I chekes how steam runs it's apps if found this to be it's execution command steam steam://rungameid/601510.
I'm also trying to connect Duel Links to my Konami account. Please is there an updated method?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Game compatibility - Unofficial Games not expected to work without issues .NET Uses the .NET framework
Projects
None yet
Development

No branches or pull requests

10 participants