Open gordan-bobic opened 6 years ago
it does start but the intro cutscene is very slow and makes it to seem like its just a blank screen. EDIT: it seems to be caused by esync, disabled in user_settings.py and works fine
Hello @gordan-bobic, please copy your system information from steam (Steam
-> Help
-> System Information
) and put it in a gist, then include a link to the gist in this issue report.
Here is mine: https://gist.github.com/admalledd/c0e104947351c86c351e3b535e6f674d
And I confirm, disabling esync per @TheChosenEvilOne makes it work.
PS: I have to do /tmp/proton_run winecfg
and select the "Automatically capture mouse" else it escapes to my other monitors.
Can also confirm its a esync issue. But i just disabled it for this game with the launch option
PROTON_NO_ESYNC=1 %command%
Probably better than disable esync for all games.
My Steam info: https://gist.github.com/OlliC/4cfd76dfa291bb19f55f
Confirmed that the blank screen is cured by PROTON_NO_ESYNC=1.
On to other problems
1) Not sure yet if this is SC:FA specific, but while the game is running, Steam is unaware that the game is running, e.g. if you Alt-Tab out of the game, you can start it again. This doesn't happen with native games.
2) Game is unresponsive to Alt-Enter and Alt-F4. This works on Windows, not sure if it works on standard WINE.
3) Setting Anti-aliasing too high (above 4), e.g. 8Q or 16 at very high resolution (5K) results in black screen with only a functioning mouse cursor.
Supreme Commander Forged Alliance
Issue transferred from https://github.com/ValveSoftware/Proton/issues/1487. @tatsujb posted on 2018-09-16T14:04:32:
Play
button in the Steam client is sufficient.The game runs perfect past the main menu.
(normally the games starts up to a black screen (you hear the intro video's audio but the screen is black))
I used to use alt
-F4
to trick the graphics stack into refreshing by making the "do you really want to exit prompt" modal show up (which I then closed).
but thanks to this github's config section : https://github.com/ValveSoftware/Proton#runtime-config-options , I've figured out that actually, enabling PROTON_NO_ESYNC
solves this in much cleaner fashion and utterly removes menu issues altogether and makes the game as a whole run identically to windows.
Is there a place I can get counsel on figuring out how to execute a game via proton but only in command-line?
Supreme Commander Forged Alliance's online community, despite using steam's Supreme Commander Forged Alliance is practically entirely on an online platform built around this game called Forged Alliance Forever, (aka FAF) which runs natively in Linux, in which case in a wine scenario, it does nothing specific, you simply point FAF to the bin directory in the same fashion you would under windows and the communication between the two apps happens flawlessly.
since under ubuntu 18.04.1 wine has ceased to work for a number of apps including Forged Alliance and since proton performs much better, doing all this with proton instead would be much better.
I hoped that running the app with the following commands was what steam did :
cd ~/.local/share/Steam/steamapps/common/Proton*
STEAM_COMPAT_DATA_PATH=/home/t/.local/share/Steam/steamapps/compatdata/9420 ./proton run /home/t/.local/share/Steam/steamapps/common/Supreme\ Commander\\ Forged\\ Alliance/bin/SupremeCommander.exe
but as it happens I must be missing some arguments or what steam does is completely different because this ends immediately with a popup error saying with PROTON_NO_ESYNC
off :
Application load error P : 0000065615
or with PROTON_NO_ESYNC
on :
Application load error P : 0000065434
whereas, via steam, it runs flawlessly
One of the nicest feature of the game is that it handles dual screen: you can have a strategic view of a screen, and a tactic view on another.
It looks like we lose this feature with Proton :cry:
@fistons we never had this feture under linux. proton is just Wine under the hood and wine itself doesn't have dual screen capabilities.
it's unfortunate, but it's Gaz Powered Game's fault (and non-fault) at the time they were making supreme commander "fake fullscreen" A.K.A. "borderless fullscreen" didn't exist.
when it finally came out it was just like "hey look, now that scaling is made easier and that graphics cards and screens have been communicating in much simpler ways we can just maximize a window to take every pixel of the screen, no need to change resolution uselessly to what it already was and better response time for switching back to the desktop at no cost"
and it was stupid simple and nobody could believe we hadn't thought of it before.
and implementations of dual screen that were costly cluncky and always had some bugs were now easy, rudimentary, reliable, robust and future proof.
the thing is, under windows most people use a hacked-in fake fullscreen anyways, I even made a script myself : https://forums.faforever.com/viewtopic.php?f=2&t=9778
the thing is you'll have to hack proton into "fake dualscreening" also. I've tried with wine, and never really got any success.
hopefully it might work this time around with proton.
I've noticed that this game, when run through Proton or naked Wine, is liable to a crash during gameplay where the game completely freezes and needs to be killed. I have my game log attached, near the end you can see where the error occurs (err:ntdll:RtlpWaitForCriticalSection) steam-9420.log
If not killed, that error shows up every minute or so (it retries).
EDIT: This can be most easily replicated by using an 81km map, with maximum number of AI. Takes between 5 and 20 minutes to produce.
Is there a way to launch the game through proton via command line?
The community lobby, mod manager, and re-balances/fixes seems to need to operate the game through the command line which seems to be problematic for proton.
https://forums.faforever.com/viewtopic.php?f=2&t=4507&start=620#p170186
@douglasg14b hey, good to see I'm not the only one asking for this, I asked this in this very thread : https://github.com/ValveSoftware/Proton/issues/688#issuecomment-421791298 hopefully something happens with this soon.
@tatsujb Are there any specific persons that are heavily involved in the proton project that we might be able to ping to get them to chime in on that?
There is someone with "valve" in their name subscribed to this issue. They might chime in on this when they get to that point in their notifications/emails. I imagine with a piece of software that has 1500+ issues the valve employees get quite a backlog.
On note: I also would quite like to see FAF runnable with Steam/Proton Supreme Commander.
@pipnina yeah it's possible the bug you mentioned : https://github.com/ValveSoftware/Proton/issues/688#issuecomment-447109059 isn't even reproducible when running with FAF. FAF fixed so many FA bugs.
@tatsujb Are there any specific persons that are heavily involved in the proton project that we might be able to ping to get them to chime in on that?
That would be @aeikum.
Is there a way to launch the game through proton via command line?
The community lobby, mod manager, and re-balances/fixes seems to need to operate the game through the command line which seems to be problematic for proton.
https://forums.faforever.com/viewtopic.php?f=2&t=4507&start=620#p170186
Depending on exactly what you need, you can use the PROTON_DUMP_DEBUGCOMMANDS thing to generate `/tmp/proton$USER/run. Then you can run
/tmp/proton_$USER/run SomeExecutable.exe -WithParameters`.
translation : open up file folder, search : user_settings.sample.py
, rename to : user_settings.py
, open with editor, uncomment : "PROTON_NO_ESYNC": "1",
, add "PROTON_DUMP_DEBUG_COMMANDS": "1",
I'm still downloading FA. about to give it a spin.
@aeikum thanks a lot for this, you seemed to ask what we needed specifically.
well the first real issue is running FA with proton-steam from command line, this fails with errors ranging from Application load error P : 0000065615
to Application load error P : 0000065434
have you successfully run this game with command line? for me it only works from steam gui.
EDIT 1 :
huh, hadn't tried this in awhile but today I can't run it at all :
EDIT 2 :
okay so editing user_settings.py while the game is downloading is not a good idea because it'll be in the downloading folder while the game is downloading and only when it's done, it'll be moved to the proton folder.
So this time I waited untill the game had finished downloading to find and edit that file
I also forced the proton version to : 3.16-4
and now it runs. I'm going to try running it with command line now....
EDIT 3 :
ok so that's been several months coming, it works, omg aeikum where have you been?
for me it was :
/tmp/proton_t/run /home/t/.steam/steam/steamapps/common/Supreme\ Commander\ Forged\ Alliance/bin/SupremeCommander.exe
trying it in FAF now.
EDIT 4 :
omg this is everything I've striven for for months!!
it works !!!
the following settings will get you FAF + FA native with no wine needed !! (minus the "technically..." )
(FAF settings don't want the backslashes, I think it has to do with JAVA)
@tatsujb Can you write-up a summarized step-by step that we could copy/paste here and there? It's amazing that you did the ground work for this.
Does this actually work completely with FAF as if it where installed and configured under Wine? I so, this has made my week. And should be posted on the Linux thread on the FAF forums.
@tatsujb There should be no need to edit the user_settings.sample.py
file.
Also note that the tmp folder is a poor place to keep the files since they may be removed on reboot.
You can set the launch options for the game in steam and it generates the appropriate /tmp/proton
folder.
PROTON_NO_ESYNC=1 PROTON_DUMP_DEBUG_COMMANDS=1 %command%
@tatsujb Can you write-up a summarized step-by step that we could copy/paste here
If you want but I'm in the process of making a youtube video-guide which in my mind is even better (yes it will include a pastebin of copy-pastable commands)
@tatsujb There should be no need to edit the
user_settings.sample.py
file. You can set the launch options for the game in steam and it generates the appropriate/tmp/proton
folder.
PROTON_NO_ESYNC=1, PROTON_DUMP_DEBUG_COMMANDS=1 %command%
yeah I'd forgotten about that way. I'll prefer this method in the on-screen instructions and in the attached pastebin.
Also note that the tmp folder is a poor place to keep the files since they may be removed on reboot.
is copying the folder contents to somewhere else viable? what I mean is, will proton recognize this or does it expect tmp specifically?
yeah copying that file or the whole proton_$USER dirrectory to say, documents, for example, and pointing there instead of tmp works.
@tatsujb I played a couple games with this kind of install and have had issues with mods working, and explosions for munitions seems to be missing for lots of things.
Have you had any issues?
Edit: Tried more mods and none of them seem to actually load or work. The "Mods" section of game info when the game starts is empty.
@douglasg14b you could have used my old tutorial video instead of getting impatient :'(
cd ~/.steam/steam/steamapps/common/Supreme\ Commander\ Forged\ Alliance
ln -s ~/My\ Games/Gas\ Powered\ Games/Supreme\ Commander\ Forged\ Alliance/Maps/ Maps
ln -s ~/My\ Games/Gas\ Powered\ Games/Supreme\ Commander\ Forged\ Alliance/Mods/ Mods
/home/t/.steam/steam/steamapps/compatdata/9420/pfx/drive_c/users/steamuser
rm -rf My\ Documents
mkdir My\ Documents
cd My\ Documents
ln -s ~/My\ Games/ My\ Games
chmod +x ~/.faforever/bin/ForgedAlliance.exe
it's almost done uploading wait :P
I did! Though I wasn't sure what you where doing with the linking compared to the new way, but now I see...
I haven't played FAF for years, now I use linux and had an FAF itch to scratch so I was pretty stoked that it might work. Definitely was impatient.
@tatsujb Thanks! Though not that I do not have a /285330/
dir under steamapps/compatdata/
FYI.
In my case it was 9420
. This can be found by going to $HOME/.steam/steam/steamapps/common/Supreme Commander Forged Alliance/
and opening the installscript.vdf
file, the app ID will be at the end of HasRunKey
. For example: "HasRunKey" "HKEY_LOCAL_MACHINE\\Software\\Valve\\Steam\\Apps\\9420"
my bad, you were right it should have been :
/home/t/.steam/steam/steamapps/compatdata/9420/pfx/drive_c/users/steamuser
rm -rf My\ Documents
mkdir My\ Documents
cd My\ Documents
that works for me.
@tatsujb
Any experiance with this issue wehn trying to do ranked 1v1?
Failed to setup initial search path.
Program : Z:\home\douglas\.faforever\bin\ForgedAlliance.exe
Cmd line arguments : /init init.lua /nobugreport /aeon /log /home/douglas/.faforever/logs/game.log /gpgnet 127.0.0.1:33887 /mean 814.79 /deviation 203.135 /savereplay gpgnet://127.0.0.1:39101/9211177/douglasg14b.SCFAreplay /country US /numgames 7 /team 1 /players 2
Callstack:
unavailable.
Last 100 lines of log...
warning: Running "Z:\home\douglas\.faforever\bin\init.lua" failed: cannot read init_faf.lua: No such file or directory
stack traceback:
[C]: in function `dofile'
Z:\home\douglas\.faforever\bin\init.lua(1): in main chunk
Edit: I see the thread here https://github.com/FAForever/downlords-faf-client/issues/1095
Commented there.
@tatsujb Do you see issues with the Steam FAF install where there are no explosions? Artillery, bombers...etc nothing makes any explosions.
ok are you ATi? and check your graphics settings in game (maxing them out helps) but this is graphics and driver related. FA plays better with nvidia and doesn't require much GPU. if you don't mind switching out graphics from time to time, even an old shitty nvidia will get you better results than ati.
but it will never be perfect.
wine has never (and probably will never) support bloom. FA's tech for spots of light in bright areas. making nukes shine like the sun and ect.
I don't see a lot of projectiles, in particular, those of t1 point defense and of the commander, especially with Aeon.
I rely on strategic dots of the projectiles when zoomed out alot.
I dunno what to say... :/
Hu, yeah. I am using ATI, and RX 580. That's pretty weird if that's the problem.
I have a gtx 960 laying around, wonder if Ubuntu can handle two graphics cards, and if supcom can use tone over the other. I'll have to try.
It's not vital information, just nice to have the visual when doing things like bombing an ACU.
Hello @douglasg14b, please copy your system information from steam (Steam
-> Help
-> System Information
) and put it in a gist, then include a link to the gist in this issue report.
OS: Ubuntu 18.10
KERNEL: 4.18.0-12-generic
CPU: AMD Ryzen 7 2700X Eight-Core
GPU: Radeon RX 580
GPU DRIVER: 4.4 Mesa 18.2.2
RAM: 32 GB
I don't know if this is pertinent but apparently people have messed with having both an ati and nvidia graphic card onboard at the same time on ubuntu : https://streamhpc.com/blog/2011-10-12/both-nvidia-gtx-and-amd-radeon-on-linux/
i personally had both types of graphic cards plugged in at one point but I was blacklisting the nvidia to do hardware passthrough to emulated windows.
if worse comes to worse it doesn't hurt to have both in at the same time and switch out graphics drivers with a reboot to utilize one then the other.
I've noticed that this game, when run through Proton or naked Wine, is liable to a crash during gameplay where the game completely freezes and needs to be killed. I have my game log attached, near the end you can see where the error occurs (err:ntdll:RtlpWaitForCriticalSection) steam-9420.log
If not killed, that error shows up every minute or so (it retries).
EDIT: This can be most easily replicated by using an 81km map, with maximum number of AI. Takes between 5 and 20 minutes to produce.
i can confirm this. tldr; i have AMD GPU and i get these crashes constantly. i've tested with Nvidia GPU on the same hardware/software config and the crashes disappeared. both vanilla SupComFA and modded SupComFAF has this problem under Wine or under Proton Wine (version doesn't matter)
i did extensive testing regarding this: different Ubuntu releases, kernel versions, Wine versions (v2.0 - v3.18), Wine settings, game settings, game scenarios, open source AMD graphics drivers and the closed ones downloaded from AMD's site. Non of this solved the crashes.
what i've found is that the games crash at the same "game time" at ~40-50 mins (game time is simulation speed dependent). in real world time it's between 20 mins - 40 mins.
Easiest way to test this in vanilla SupComFA: map: Betrayal Ocean, 4AI-s, game type: sandbox, game speed: fast
tested configs: AMD Ryzen5 1600X, 16GB RAM, AMD RX560 4GB RAM - crashes at ~48min game time AMD Ryzen5 1600X, 16GB RAM, Nvidia GT710 2GB RAM - no crashes
AMD drivers: the open source and the closed source provided by AMD Nvidia drivers: open source Nouveau driver and the proprietary driver provided by Ubuntu
EDIT / UPDATE: the crashes appears on Nvidia too for me. see below: https://github.com/ValveSoftware/Proton/issues/688#issuecomment-460047828
Hu, yeah. I am using ATI, and RX 580. That's pretty weird if that's the problem.
I have a gtx 960 laying around, wonder if Ubuntu can handle two graphics cards, and if supcom can use tone over the other. I'll have to try.
It's not vital information, just nice to have the visual when doing things like bombing an ACU.
@douglasg14b could you do tests for my problem (seen above) using your AMD and Nvidia card? remove your AMD card then test with Nvidia, no need for messy dual GPU configs.
Thanks!
~Hello @foodlfg, can you test with a newer version of mesa like from a PPA (Padoka, Padoka stable, Oibaf)? If they are also affected, it may be worthwhile to also bring your issue to the attention of your video driver vendor.~
i've tested with Nvidia GPU on the same hardware/software config and the crashes disappeared.
Interesting, I only have Nvidia cards but the crash occurs for me. What driver version do you use for your Nvidia cards? I'm currently using 396.54
415 for me.
i've tested with Nvidia GPU on the same hardware/software config and the crashes disappeared.
Interesting, I only have Nvidia cards but the crash occurs for me. What driver version do you use for your Nvidia cards? I'm currently using 396.54
You're right unfortunately. I installed my GT710 (proprietary drives) and tested again using different replays (i did the Betrayal Ocean gameplay test too) and it crashed like it does with AMD. When I tested the GT710 before I probably chose the wrong replays (they wasn't long enough). Sorry about the confusion.
I couldn't test with Proton Wine and vanilla SupcomFA (the Launch button didn't appear in Steam...) but that doesn't really matter. It definitely has the same "late game" crashes (on my system on linux).
Now I have no idea what causes the crashes. Maybe the game engine does something in late game (30+ mins in) that Wine cannot handle. I don't know.
The crash log is the same btw:
EXCEPTION_ACCESS_VIOLATION (0xc0000005) at address 0x0095854f
attempted to write memory at 0x01f60000
Program : Z:\home\test1\FAForever\bin\ForgedAlliance.exe
Cmd line arguments : /replay /home/test1/FAForever/cache/temp.scfareplay /init init_fafbeta.lua /nobugreport /log /home/test1/FAForever/logs/replay.log /replayid 9223888
Callstack:
Unknown symbol (address 0x0095854f)
Last 100 lines of log...
The full log can be found here: https://gist.github.com/foodlfg/ba0cb22830aeff726c9dffc5c7d4dc2d#file-full-crash-log-txt
The full glxinfo for the GT710 with proprietary drivers: https://gist.github.com/foodlfg/ba0cb22830aeff726c9dffc5c7d4dc2d#file-gt710-proprietary-glxinfo-txt 4.6.0 NVIDIA 390.87 - i guess.
Yeah. I can now confirm that neither the 396 driver or the 415 driver solve the ntdll:RtlpWaiForCriticalSection bug. I just tested the same map on both and while the 415 driver got further than the 396 driver, the crash still occurred.
can you guys give a step by step to reproduce? am I supposed to use a particular replay file?
I'm curious about this as well, I receive no crashes even on long games with AMD.
@tatsujb @douglasg14b I produce it by loading a skirmish 81km map like Betrayal Ocean, and filling the 7 AI slots (any difficulty). It's possible that increasing the time modifier makes the crash occur faster but it seems to happen for me at around the 20-30 minute mark on an 81km map. Happens after over an hour when it occurs in 40km maps, but it doesn't seem to happen at all in 20km or smaller. Can't get replays from it because the game crashes.
If there's a way to get more detailed information about the crash (debug tools etc) I can reproduce it easy enough to provide that info.
So, this might be related. I cannot play games with AIs with other players. I become de-synced quickly (The desync that happens when the simulations hashsdoesn't match up between players).
Replays with AIs also playback differently for me than for how they actually went down.
It's possible that increasing the time modifier makes the crash occur faster
you mean speed? can you reproduce it if you just leave it on normal?
So, this might be related. I cannot play games with AIs with other players. I become de-synced quickly (The desync that happens when the simulations hashsdoesn't match up between players).
Replays with AIs also playback differently for me than for how they actually went down.
you were observer? did you have any other players? are your ports forwarded?
@tatsujb
I was a player. But watching the replay does not cause the same turn of events that actually happened in the game according to those that where in it.
The Desync isn't a network-related item, it's when the hash of the games state does not match between the clients, and the game diverges from there on the desynced client. This only happens with AI present (I'm trying to introduce a few new players to the game).
@douglasg14b Are you running with mods? I have found that mods need to be installed in a rather specific way or multiplayer de-syncs will occur. BrewLAN and Experimental Wars seem to cause this a lot but I've not experienced this with a vanilla game. I think it is also not a proton issue, since my windows friends experience modded multiplayer de-syncs as well.
@tatsujb It can be reproduced at normal game speeds, I just tested it on 81km map "Debris" at fixed standard game speed and it crashed in 16 minutes and 40 seconds.
@pipnina UI mods only, and the issue only occurs in multiplayer games with AIs
Works with WINE and has done for years. Doesn't start with Proton (blank screen).