First of all, I don’t want you to help me with a specific problem. All the details in this post are just examples and I’m interested in getting a general understanding.

So I just wanted to play doom eternal, but when I press play on steam, after a couple of seconds the button switches from blue back to green with no game running. I checked protondb and saw that the game was gold rated, so it should run fine.

I checked the tweaks that people use and they suggest different proton versions. But no matter what I do, I basically get nothing. There are no error messages or log files. Same with other games I tried in the past.

So basically when a game does not work out of the box, I have no idea where to look for cues on how to fix it. Is there a verbose mode or something similar?

  • janNatan@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    7 hours ago

    You using an Nvidia GPU? My husband gave me his old one, and it just seemed to give me all kinds of random issues that I never had before on my AMD GPUs. Just a thought.

    I will second what someone else said. My husband had all kinds of issues when he reused his old NTFS drive in Linux. He reformated it to ext3 or 4 I think and hasn’t had major issues since.

  • mranderson17@infosec.pub
    link
    fedilink
    English
    arrow-up
    5
    ·
    1 day ago

    In addition to everything everyone else has said, the launch option: PROTON_LOG=1 %command% (from the wiki). It will create a steam-<gameid>.log in your homedir which can have lots of good wine/proton specific information in it.

    You can also rename the user-settings.sample.py file in a given proton version in $HOME.steam/root/steamapps/common/Proton - <version>/ to user-settings.py and uncomment the additional wine debugging options (PROTON_LOG is already set in this file, but it is not active until it’s renamed or passed directly on the Launch Options line).

  • WFH@lemm.ee
    link
    fedilink
    English
    arrow-up
    7
    ·
    2 days ago

    99% of the time, if a game “should run fine” and nothing happens, it’s because it’s installed on a Windows partition (NTFS or exFat).

    Try moving it to a Linux partition.

    If it still doesn’t work, you can start advanced troubleshooting.

  • terraborra@lemmy.nz
    link
    fedilink
    English
    arrow-up
    14
    ·
    2 days ago

    Are you trying to run versions of the games that were installed through the windows steam app? If so, you need to do a fresh install through the Linux client.

  • Nithanim@programming.dev
    link
    fedilink
    English
    arrow-up
    2
    ·
    1 day ago

    One very simple things I try is updating the glorious eggroll proton version and force-use that. Changing the proton version sometimes (especially switching to an older one) requires deleting the compatdata (wineprefix folder) of the game.

  • mox@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    11
    ·
    edit-2
    2 days ago

    Troubleshooting software is a deep rabbit hole. Troubleshooting modern games, made for a complex operating system like Windows and running on another operating system, is a very deep rabbit hole.

    However, since you’re just launching games through Steam, you probably won’t have to go very deep. This would be a pretty good place to start:

    https://github.com/ValveSoftware/Proton?tab=readme-ov-file#readme

    https://github.com/ValveSoftware/Proton/wiki

    Note especially the FAQ

  • Goonette ♠️@lemmynsfw.com
    link
    fedilink
    English
    arrow-up
    13
    arrow-down
    2
    ·
    edit-2
    1 day ago

    Do you have proton enabled?

    If you don’t have proton enabled, steam will try to launch the game but can’t since .exe files don’t run on linux. You’re not getting an error because there’s nothing happening.

    • TurboWafflz@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      2 days ago

      Really? For me if I don’t select a proton version it just uses the default, I’ve never seen it try to run a windows binary directly. Do I have some like secret extra setting enabled?

      • Goonette ♠️@lemmynsfw.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        1 day ago

        It’s just the setting I showed and then it auto selects the proton version. You need to do it for all games or go into steam settings and toggle on the compatibility setting “Enable Steam Play for all other titles.”

    • Diplomjodler@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      2 days ago

      This gets mentioned far too rarely. Threw me off too, when I first tried to run Steam games on a Linux PC. This could surely be made more prominent in the interface or even largely automated, like on the Steam Deck.

  • tal@lemmy.today
    link
    fedilink
    English
    arrow-up
    9
    ·
    edit-2
    2 days ago

    Steam does spit out some diagnostic messages, and I believe – don’t quote me on this – that programs that it runs normally have the same stderr/stdio, so stuff they write will show up there as well. Normally, these are not saved in a file. I generally launch it from a script, so that it’ll save said log messages in a file that I can view.

    gam-steam.sh:

    #!/bin/bash
    
    # Some games (Wasteland 2) require more file descriptors
    ulimit -S -n 4096
    
    exec steam "$@" >~/.steamlog -console -nobigpicture -nochatui -nofriendsui -silent 2>&1 &
    

    Leaves log messages in .steamlog in my home directory. You may or may not want some of those other options being passed to Steam.

  • SavvyWolf@pawb.social
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 days ago

    A lot of people are saying to just “run steam in a command line”, but for 100% clarity, to do that you search for an application like “terminal” or “console”, then into that just type “steam” and press enter. It should launch steam whilst also writing debug info to the terminal. If you’re lucky, it’ll show some things that are googleable, just don’t worry too much about things marked as “warning”.

    Another thing to check is that you have enough free disk space. I can’t count the number of times I’ve been trying to figure stuff out only for it to be broken because I ran out of space.

    If your Distro provides Steam in its software centre and isn’t Ubuntu, prefer installing it from there. The Flatpak version of Steam is also fairly serviceable. Both of these will take care of installing dependencies and getting everything set up correctly.

    I’ve not really needed it myself, but some people swear by Steam’s “verify integrity of game files” thing. But if you find yourself needing to do that frequently, back everything up since it can indicate hardware failure.

  • nous@programming.dev
    link
    fedilink
    English
    arrow-up
    6
    arrow-down
    1
    ·
    edit-2
    2 days ago

    First thing I typically do when that happens is update my system and reboot. This is useful for ensuring everything is in a known consistent state and there is no weird runtime issues that happened since you last booted. And it is always good to upgrade before you reboot to ensure you are booting the latest kernel and drivers.

    If that does not help then I would start by closing down steam completely (ensure it is not running in the systray at all). Then launch steam though a terminal and start the game as you normally would. You will hopefully see some logs for the game in the terminal. Though it is very game dependent as to if that will be useful at all. If not I would look online to see if the game logs anything to any other file as some games tend to do their own logging or have a flag you can enable.

    If the game gives you some logs and hopefully an error message you can then see if it is useful to you and if not try googling for that error and the game name. I find this tends to dig up more specific help for games then general searches for terms like wont start or crashes though sometimes those general terms can find a solution as well.

    Note: if you try to launch steam in the terminal and it is already running you wont get any logs at all from it - it basically just forwards things to the main instance or quits as it does not need to do anything. Only the first instance you start will give you and useful logs.

  • mycatsays@aussie.zone
    link
    fedilink
    English
    arrow-up
    5
    ·
    2 days ago

    I was having a similar problem with another game, and I had a similar desire to learn general troubleshooting rather than have someone give me a specific fix. That said, I don’t know if I can help because for me it’s basically butt my head against a wall until I poke something enough that it works - usually I don’t know enough to understand why the thing works.

    I was installing my games onto a secondary drive. The problem turned out to be that that drive had been formatted by Windows back when my computer was set up to dual-boot. Some games still ran fine in Linux, but this particular game nothing would happen when I clicked Play. On a whim I tried installing it on the primary drive with the OS, and it worked first time. So there was something about that game that didn’t work with the drive formatting.

    (I’ve since reformatted the second hard drive so that everything should now play nice with Linux, now that I no longer have Windows. Game is fine now.)

  • hendrik@palaver.p3x.de
    link
    fedilink
    English
    arrow-up
    7
    ·
    2 days ago

    Generally, you can start most programs (like Steam) from a commandline terminal. That way you’ll see the log output. Sometimes they’ll also write to a logfile somewhere, you’d have to google where a certain program keeps its logs. If you find some ‘ERROR’ message, you can start from that. Like copy and paste it into a search engine.

  • Arghblarg@lemmy.ca
    link
    fedilink
    English
    arrow-up
    6
    ·
    2 days ago

    If you happen to be trying to do this on a laptop with dual-graphics and the GPU is NVIDIA, it took me a while to find that one often can get proper GPU support by adding this just before wine (as in, right before it on the same command line):

    __NV_PRIME_RENDER_OFFLOAD=1 \
      __GLX_VENDOR_LIBRARY_NAME=nvidia wine <game .exe> ...