DICE PACKS BUNDLE
  1. #1

    [Linux] FantasyGroundsUpdater "launch loop" + workaround

    Problem

    Code:
    FantasyGrounds.x86_64
    fails to launch via "Launch Fantasy Grounds" button in
    Code:
    FantasyGroundsUpdater
    . Instead, the Updater continues to relaunch with no error message as to why it was unable to launch Fantasy Grounds.


    Expected Behavior

    Fantasy Grounds launches when clicking "Launch Fantasy Grounds" button in the Updater.


    Actual Behavior
    The updater will continue to "Loop": When clicking "Launch Fantasy Grounds" the updater screen will close and then return, ad nauseum. This behavior occurs after closing a successful launch of Fantasy Grounds using the workaround below and is subsequently repeatable 100% of the time.


    Workaround

    Execute the following:
    Code:
    $ rm -rf ~/.smiteworks
    $ ./FGUWebInstall.bin
    ... [Accept License Agreement]
    ... [In Updater window, click "Launch Fantasy Grounds"]
    ... [Updater updates as expected, Fantasy Grounds launches]
    System Specs

    Code:
    Distro: Fedora 34
    Kernel: x86_64 Linux 5.14.9-200.fc34.x86_64
    Shell: zsh 5.8
    CPU: Intel Core i7-10850H @ 5.1GHz
    GPU: Mesa Intel (R) UHD Graphics (CML GT2)
    RAM: 31851MiB

    Personal Note

    Firstly, thank you for providing a Linux client for Fantasy Grounds via Unity! It is much appreciated and the workaround is only a minor inconvenience. Once FGU is up and running, it runs beautifully, so thank you very much!

    As a former Game dev who has used Unity for production development, an issue I constantly ran into was unclean file descriptor closing in Unity 3D and games I wrote which relied on loading of local files for state retrieval experienced this same behavior until I hooked into the final stage of Unity's provided shutdown events, where I explicitly had to ensure that all buffers and file descriptors were actually closed prior to engine shutdown. This could also be an issue of FDs being properly closed, but startup routines hang up on reading the last modified timestamp (or use last modified timestamps in some other logic). Either way, if someone points me to a repo with the Linux-specific code for Fantasy Grounds, I don't mind trying to track down root cause of this issue myself in the hopes of submitting a patch to potentially fix it.

  2. #2
    Thanks for the report. I haven't heard this as a general issue, so I wonder if it's related to run on an alternate distro than the supported one? Do you also see this in an Ubuntu environment?

    I did a quick check of the code, and every file descriptor opened for load/save in the C# updater code is either encapsulated in a using statement, or specifically closed.

    Thanks,
    JPG

  3. #3
    Hi JPG,

    No, I haven't tried it on Ubuntu because I have no Ubuntu systems at home. If the file descriptors are as you say, then without seeing code myself I'd just be making bad guesses.

    You bring up a good point though, it's supported on Ubuntu and not Fedora distros. I wonder if there's a difference in my home directory that could be causing this? Or maybe because I have selinux set to `enforcing`? Is there additional information I can provide which might assist in narrowing down whether or not this is a distro-specific thing or just something that only I'm experiencing?

  4. #4
    We have had some intermittent reports of issues like this over the last year, but it's not consistent and appears to usually be tied to alternate distros or unique user configurations. That's sort of the main issue in supporting Linux is that the user base is so fractured over different configurations. So, as a developer using a specific game engine with a small team, we try to focus on what the game engine (Unity) specifically supports.

    You could try pulling the Unity engine logs after it fails, to see if there is any specific exception noted in the game engine logs.
    ~/.config/unity3d/SmiteWorks/FGUpdaterEngine/Player.log

    Regards,
    JPG

  5. #5
    Quote Originally Posted by Moon Wizard View Post
    We have had some intermittent reports of issues like this over the last year, but it's not consistent and appears to usually be tied to alternate distros or unique user configurations. That's sort of the main issue in supporting Linux is that the user base is so fractured over different configurations. So, as a developer using a specific game engine with a small team, we try to focus on what the game engine (Unity) specifically supports.

    You could try pulling the Unity engine logs after it fails, to see if there is any specific exception noted in the game engine logs.
    ~/.config/unity3d/SmiteWorks/FGUpdaterEngine/Player.log

    Regards,
    JPG
    I was just having this issue on Ubuntu 18.04.6 LTS. I got around it by going into Settings from the Updated and selecting Force Update. When I did that instead of not downloading anything like it was previously it downloaded the updates, restarted a few times and then finally ended up at the Launcher Page.

    I should say I think I was having the same issue. I could install the updater and go through all the login,license steps only the be stuck forever at the Updater. Only by doing what I said above was I able to actually get it to update and move to the Launcher.
    Last edited by talislanta; December 5th, 2021 at 07:30.

  6. #6
    Thanks for the information on how you were able to workaround.

    Regards,
    JPG

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  
5E Character Create Playlist

Log in

Log in