Linux Support

Ask here if you experience technical problems with X4: Foundations.

Moderator: Moderators for English X Forum

_JD_
Posts: 137
Joined: Wed, 29. Oct 08, 15:05
x4

Re: Linux Support (Beta)

Post by _JD_ »

I encountered a really annoying issue: the joystick deadzone is not working at all. I tried with both a Logitech Force 3d Pro and X52 Pro and it makes absolutely no difference change the value from 0 to 100.

To make it even worst, with the X52 Pro it seems that the deadzone is 25%, making very hard and annoying to aim at something.

I made a video to show the issue: https://youtu.be/zERDrr9Y108
And another where you can see the evtest-qt and jstest-gtk output: https://youtu.be/5pNve4vzogQ

I found also several other issues with the detection of some button and axis on the X52 pro. Most of them are detected correctly, but some, like the all the buttons from 33 to 39, are recognized as POV directions, like it was the main POV on the stick. The same buttons are correctly recognized on evtest-qt (/dev/input/eventX) and jstest-gtk (/dev/input/jsX).

Should I report all the issues here, create a separate post, send via email or is there an official tracker?
Toidiboy
Posts: 11
Joined: Wed, 27. Feb 19, 17:49
x4

Re: Linux Support (Beta)

Post by Toidiboy »

JD reporting here should suffice, the devs are veey active in here and will pick things up/reply to issues.

BTW good work on debugging the issue, I have had a few problems with my HOTAS as well. Quite sure this will help the devs rectify the issues.
cicero111
Posts: 108
Joined: Sat, 13. Aug 11, 14:30
x4

Re: Linux Support (Beta)

Post by cicero111 »

Some feedback after serveral hours playing on my ancient 1.0 savegame, wich has a couple hundred hours and using 40+ mods atm.

Issues related to the Linux beta:
- Same issue as radcapricorn mentioned with external camera keybinding controls not working. Only mouse center-click panning works.
- Same issue as _JD_ mentioned with setting 0 deadzone. Reducing does have some effect for me but setting 0 would compare to about 10 in the windows version I guess.
- As mentioned in an earlier post, extensions only works when files/folders are lower case. When changed all works as expected, even more complex ones as ashipmod, xrebirth effects etc.

Performance:
Noticeably better than the windows version with the same settings, I'm impressed..
Had some garbled UI and a few CTD with Vulcan OOM warnings initially, not surprised since my GPU are barely mimium spec. After closing browsers etc this have not happened for many hours. With windows i had to restart the game roughly every 2-3 hours when the UI got more and more garbled, not seen this for a while.
Also little to no stutters in general, even when lingering in Argon Prime - didn't have to teleport to the fringes of the universe to do empire management which was nice.

System/hardware:
Mageia6 on an ancient I5-3570K@3.4GHz CPU, 16G RAM, GTX780 (3Gb), 418.43 driver. Joystick is a true relic but nice sidewinder pro.
Some graphics info: Fullscreen, 1920x1080, FXAA High, Adaptive Vsync, modified ultra preset with reduced lod/effect to 50, low glow, no distortions.
Cg089
Posts: 80
Joined: Fri, 18. Jan 19, 19:25
x4

Re: Linux Support (Beta)

Post by Cg089 »

Cg089 wrote: Thu, 28. Feb 19, 00:19 I'm having trouble figuring out the source of this bug since it locks up my system and I don't have a second computer set up right now. Nothing that seems relevant is appearing in my system logs, though I'm happy to upload them if you want. Steps to reproduce:
  1. Launch X4 windowed.
  2. Exit using the little red x in the top right corner of the screen. (You can start a game first, if you like, but it's not necessary to cause a crash).
  3. Reboot your computer since your computer no longer responds to input.
Ubuntu 18.04 with Nvidia proprietary drivers version 415.
No getting to another TTY, no mouse movement, no keyboard, nothing. It sounds like it might related to apcolvin's issue, but I'm honestly not sure since I'm not positive what issue he was describing. But X server screen/keyboard lockup definitely fits the bill. Having done a fair bit of work with Linux, my best guess is that exiting out without using the menu option doesn't do cleanup (since it may use the default termination signal handler if another one is not provided), and thus the GPU is left stuck causing X to stop responding. But that's complete speculation.

DxDiag for my system which is below minimum specs in terms of VRAM, but I highly suspect that is not the source of the bug; if someone else could confirm, that'd be great.

Also, unrelated and minor question about the X Rebirth catalog tool. Any chance we could get a Linux binary for the XRebirth catalog tool? Obviously, if it's a significant amount of work, probably not worth doing, but I was wondering if it actually depended on Windows & Windows build tools or if we just had only seen a Windows executable distributed due to historical reasons.

Thanks guys, I really appreciate the Linux support! One less thing I need to use Windows for! And sorry CBJ, I'm sure you're getting sick of me.
A follow up on this - it happens sometimes when using Exit to Desktop too. Still trying to find anything related from the logs...

A more minor bug - custom ship logos seem to be broken on Linux. I put them next to the save folder (in .config/Egosoft/longnumber/logos/) and I get squares in the menu, but they're blank. The preview and actual ships both show the Da Vinci man logo instead (the one where the man is filled in). Nothing at all in the logs outside of previously mentioned minor log messages from startup. Tried .png and .dds.
It's maybe possible that this is related to the uppercase name thing people have been talking about due to the particular logo pack I was trying out using upper case names for its logos, I'll take another look at it tomorrow. Either way, it's a linux issue - the logos in question work just fine on Windows.
ant1393
Posts: 23
Joined: Mon, 10. Dec 18, 12:54
x4

Re: Linux Support (Beta)

Post by ant1393 »

radcapricorn wrote: Thu, 28. Feb 19, 21:36 Do external view controls work for you guys? I've tried both numpad (with numlock on and off) and shift+mmb in F2 and F3 views with no luck.
F1 F2 works, but tried pushing F3 F4 and it does nothing... + with F2 view i tried NUMkey_123456789 and it don't look cockpit or change ship external camera view.
ubuntu 18.10 latest updates + nvidia-415 + pulseaudio + xbox one pad.

i7-2600k, gtx 970, 16 gb ram, focusrite saffire pro 24 soundcard, ssd.
radcapricorn
Moderator (English)
Moderator (English)
Posts: 3230
Joined: Mon, 14. Jul 08, 13:07
x4

Re: Linux Support (Beta)

Post by radcapricorn »

Cg089 wrote: Fri, 1. Mar 19, 02:19 A more minor bug - custom ship logos seem to be broken on Linux... Tried .png and .dds.
It's maybe possible that this is related to the uppercase name thing...
My logo works fine (png, lowercase letters). Though I wouldn't think case matters here. Or rather, I'd expect it not to.
cicero111 wrote: Fri, 1. Mar 19, 02:07 - Same issue as radcapricorn mentioned with external camera keybinding controls not working. Only mouse center-click panning works.
Thanks for confirming!
ant1393 wrote: Fri, 1. Mar 19, 02:20 F1 F2 works, but tried pushing F3 F4 and it does nothing... + with F2 view i tried NUMkey_123456789 and it don't look cockpit or change ship external camera view.
Thanks for confirming. F3 is the target view, i.e. you have to have a target and I think it needs to be no further than a certain distance.
ponyryde
Posts: 5
Joined: Thu, 28. Feb 19, 11:29
x4

Re: Linux Support (Beta)

Post by ponyryde »

Thumbs up!

Pretty shocked to find it worked out of the box at a stable 60fps (except shipyards) on ultra with a gtx970/fx8370/ubuntu 18.10/xb360 controller (could do with more menu navigation). Game is amazing, RIP x3.
StarTuxia
Posts: 4
Joined: Wed, 21. Aug 13, 04:21
x4

Re: Linux Support (Beta)

Post by StarTuxia »

tuxinvader wrote: Thu, 28. Feb 19, 15:58
tuxinvader wrote: Thu, 28. Feb 19, 14:48 Is there a way to remap joystick axis in the control settings?
The older games used to have Xn_config binary which allowed this, but X4 doesn't have that, and remapping with jstest doesn't seem to make any difference?

It would be good if you could select two Axis assignments and swap them.

I have an old ST290 PRO, and the X/Y axis are assigned for strafing, how can I reassign them for roll, pitch, yaw, etc?

Thanks
I edited the inputmap.xml manually and assigned the axis where I wanted them. They don't all show up in the control UI now though, but they do work :-)
Awesome, I am editing that file too. Hope it goes right lol. I noticed Vive and Occulus entries too...

Edit: Got it to recognize the axes via movement without editing. Took of that gamepad option and then it seemed to work, also made sure no controllers were left empty in the manage controls.
equeim
Posts: 3
Joined: Sat, 29. Dec 12, 18:43
x4

Re: Linux Support (Beta)

Post by equeim »

Byter wrote: Thu, 28. Feb 19, 16:17 I installed the AMDVLK package (version 2.63.1120.g81fd878-1) but really have no idea what it does. I would highly appreciate help in that regard.
Also, if it is fixed in LLVM 8.x and mesa 19.x, I'll wait and not install mesa-git for example. I waited for X4 since its release. I can wait a bit longer. I'm just happy that all my Linux brethren are able to play :)
You can use differrent Vulkan driver by changing VK_ICD_FILENAMES environment variable. Go to /usr/share/vulkan/icd.d directory, there should several json files, notabl radeon_icd.x86_64.json and amd_icd.x86_64.json. Their names may slightly differ on different distros, but the one with "radeon" is Mesa's RADV and one with "amd" is AMDVLK. In order to use AMDVLK with X4 you need to edit command line parameters in the game's properties dialog in Steam and put following there:

Code: Select all

VK_ICD_FILENAMES="/usr/share/vulkan/icd.d/<AMDVLK's json file>" %command%
With my RX 580 AMDVLK offered better performance than RADV.
andrewpc
Posts: 23
Joined: Sun, 27. Jan 19, 19:11
x4

Re: Linux Support (Beta)

Post by andrewpc »

Trying to debug this issue further. I have upgraded the graphics system

Code: Select all

glxinfo snippet
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: X.Org (0x1002)
    Device: Radeon RX Vega (VEGA10, DRM 3.27.0, 4.20.10-1-default, LLVM 8.0.0) (0x687f)
    Version: 19.1.0
    Accelerated: yes


==========
VULKANINFO
==========

Vulkan Instance Version: 1.1.100

Instance Extensions:
====================
Instance Extensions     count = 17
        VK_EXT_acquire_xlib_display         : extension revision  1
        VK_EXT_debug_report                 : extension revision  9
        VK_EXT_debug_utils                  : extension revision  1
        VK_EXT_direct_mode_display          : extension revision  1
        VK_EXT_display_surface_counter      : extension revision  1
        VK_KHR_device_group_creation        : extension revision  1
        VK_KHR_display                      : extension revision 23
        VK_KHR_external_fence_capabilities  : extension revision  1
        VK_KHR_external_memory_capabilities : extension revision  1
        VK_KHR_external_semaphore_capabilities: extension revision  1
        VK_KHR_get_display_properties2      : extension revision  1
        VK_KHR_get_physical_device_properties2: extension revision  1
        VK_KHR_get_surface_capabilities2    : extension revision  1
        VK_KHR_surface                      : extension revision 25
        VK_KHR_wayland_surface              : extension revision  6
        VK_KHR_xcb_surface                  : extension revision  6
        VK_KHR_xlib_surface                 : extension revision  6
Layers: count = 10
=======
VK_LAYER_GOOGLE_threading (Google Validation Layer) Vulkan version 1.1.100, layer version 1
        Layer Extensions        count = 1
                VK_EXT_debug_report                 : extension revision  6
        Devices         count = 2
                GPU id       : 0 (AMD RADV VEGA10 (LLVM 8.0.0))
                Layer-Device Extensions count = 0
                GPU id       : 1 (AMD RADV VEGA10 (LLVM 8.0.0))
                Layer-Device Extensions count = 0

I get the same crash before before the menu screen appears. However, if I run with the following environment variables it doesnt lock up the PC in its entirety and actually gets to the point of showing the menu when it crashes closing the window.

Code: Select all

export RADV_DEBUG=syncshaders,vmfaults,allbos
export RADV_TRACE_FILE=/tmp/radv.debug
steam steam://rungameid/392160 -windowed
This is what is captured in dmesg

Code: Select all

[  502.081964] JobThread-0x7f5[14651]: segfault at 9000050 ip 0000000001927f15 sp 00007f51f989d710 error 4 in X4[400000+216b000]
[  502.081973] Code: 43 1c 04 4c 8b 33 75 56 f3 0f 10 95 cc 43 10 00 4d 85 f6 f3 0f 11 54 24 0c 0f 84 06 01 00 00 49 8b 06 f3 0f 10 05 c3 a7 41 00 <48> 8b 40 50 48 3d f0 79 56 00 0f 85 3b 01 00 00 41 f7 c4 00 40 00
Steam also creates a crash dump which it seems to be uploading. There is no extra information in the journal log. This is the steam crash id if you can retrieve the crash dump CrashID=bp-0b70cb81-3d6d-4ea4-9491-f1fc72190301
linuxastronaut
Posts: 1
Joined: Fri, 1. Mar 19, 16:02

Re: Linux Support (Beta)

Post by linuxastronaut »

Hi I just purchased X4: Foundations and am currently downloading it. I will post any bugs or crashes I may encounter. Thank you for the Linux port, it's much appreciated!
Distribution Base: Ubuntu 18.04.1 64bit LTS
CPU Model: Intel i7-6700K, 4x 4.00GHz, 8MB Cache
GPU Model: Nvidia GeForce GTX 1060 6GB | Palit Super Jetstream
GPU Driver: Nivida 415.27 Proprietary Driver
RAM: 16GB
Monitor Resolution: 1920x1080
CulunTse
Posts: 153
Joined: Mon, 15. Jun 15, 08:10
x4

Re: Linux Support (Beta)

Post by CulunTse »

radcapricorn wrote: Fri, 1. Mar 19, 06:37
Cg089 wrote: Fri, 1. Mar 19, 02:19 A more minor bug - custom ship logos seem to be broken on Linux... Tried .png and .dds.
It's maybe possible that this is related to the uppercase name thing...
My logo works fine (png, lowercase letters). Though I wouldn't think case matters here. Or rather, I'd expect it not to.
Linux filesystem handling works differently than windows: Linux is case sensitive, Windows is not (even though NTFS knows about case, the API's on top ignore it);
This means that a config-value of "mylogo.png" will find "MyLogo.png" on Windows, but it won't on Linux.

For XR I wrote a detailed guide how to handle case sensitivity for mod-compatability, it seems it can be recycled for X4 :-)
[XR:PSA] Steps to make your mod work on Linux+Mac
Last edited by CulunTse on Fri, 1. Mar 19, 16:27, edited 1 time in total.
radcapricorn
Moderator (English)
Moderator (English)
Posts: 3230
Joined: Mon, 14. Jul 08, 13:07
x4

Re: Linux Support (Beta)

Post by radcapricorn »

CulunTse wrote: Fri, 1. Mar 19, 16:16 Linux filesystems work differently than windows: Linux is case sensitive, Windows is not;
This means that a config-value of "mylogo.png" will find "MyLogo.png" on Windows, but it won't on Linux
Sigh, here we go again...
a) That's wrong. NTFS is case sensitive. Windows file handling API by default ignores that.
b) There's no config file. There's just an image file. To get at which the game has to read the directory. Which will not yield an incorrect file name. Ergo, in this case the case shouldn't matter. If it does, that's a bug.
_JD_
Posts: 137
Joined: Wed, 29. Oct 08, 15:05
x4

Re: Linux Support (Beta)

Post by _JD_ »

_JD_ wrote: Thu, 28. Feb 19, 22:11 I encountered a really annoying issue: the joystick deadzone is not working at all. I tried with both a Logitech Force 3d Pro and X52 Pro and it makes absolutely no difference change the value from 0 to 100.

To make it even worst, with the X52 Pro it seems that the deadzone is 25%, making very hard and annoying to aim at something.

I made a video to show the issue: https://youtu.be/zERDrr9Y108
And another where you can see the evtest-qt and jstest-gtk output: https://youtu.be/5pNve4vzogQ

I found also several other issues with the detection of some button and axis on the X52 pro. Most of them are detected correctly, but some, like the all the buttons from 33 to 39, are recognized as POV directions, like it was the main POV on the stick. The same buttons are correctly recognized on evtest-qt (/dev/input/eventX) and jstest-gtk (/dev/input/jsX).

Should I report all the issues here, create a separate post, send via email or is there an official tracker?
Ok, I did some more tests and it seems a Linux related issue: I rebooted on Windows 10, installed X4 and tested the X52 Pro and the deadzone slider is correctly working: I was able to feel a huge difference going from 25% to 0%.

I copied the Windows' inputmap.xml to the linux config dir but, even using that, the deadzone slider is still ignored.

CBJ, timon37: is this issue accepted on your side? Are you able to reproduce it with your Joysticks?

I was really hoping to be able to play a little this weekend :cry:
CulunTse
Posts: 153
Joined: Mon, 15. Jun 15, 08:10
x4

Re: Linux Support (Beta)

Post by CulunTse »

radcapricorn wrote: Fri, 1. Mar 19, 16:22 a) That's wrong. NTFS is case sensitive. Windows file handling API by default ignores that.
b) There's no config file. There's just an image file. To get at which the game has to read the directory. Which will not yield an incorrect file name.
a) Whoops, I don't intend to spread mis-information! Is my edited version OK?

b) during my many hours of testing in XR, I found that lowercasing all filenames fixed basically all problems, even if the filename should have an uppercase letter based on the "real" gamefiles they modded/replaced. My (personal, uneducated) guess is that there is some form of case-folding going on in the game internals, so even if the directory-traversal would give the correct "PathName", the game still won't find it because it keeps looking for "pathname".

P.S. I just read back through the old thread; thanks for pointing out the .cur<->.png issue back then!
ant1393
Posts: 23
Joined: Mon, 10. Dec 18, 12:54
x4

Re: Linux Support (Beta)

Post by ant1393 »

ponyryde wrote: Fri, 1. Mar 19, 07:58 Thumbs up!

Pretty shocked to find it worked out of the box at a stable 60fps (except shipyards) on ultra with a gtx970/fx8370/ubuntu 18.10/xb360 controller (could do with more menu navigation). Game is amazing, RIP x3.
hi, do you have the gamepad's mouse emulatiom cursor on map ? i not have it :(

edit: anyone with xbox pad one or 360 can confirm please ?
Last edited by ant1393 on Fri, 1. Mar 19, 16:57, edited 1 time in total.
ubuntu 18.10 latest updates + nvidia-415 + pulseaudio + xbox one pad.

i7-2600k, gtx 970, 16 gb ram, focusrite saffire pro 24 soundcard, ssd.
radcapricorn
Moderator (English)
Moderator (English)
Posts: 3230
Joined: Mon, 14. Jul 08, 13:07
x4

Re: Linux Support (Beta)

Post by radcapricorn »

CulunTse wrote: Fri, 1. Mar 19, 16:35 a) Whoops, I don't intend to spread mis-information! Is my edited version OK?
Would do for government work :D
b) during my many hours of testing in XR, I found that lowercasing all filenames fixed basically all problems, even if the filename should have an uppercase letter based on the "real" gamefiles they modded/replaced. My (personal, uneducated) guess is that there is some form of case-folding going on in the game internals, so even if the directory-traversal would give the correct "PathName", the game still won't find it because it keeps looking for "pathname".
Yeah, it would seem that the game loses the real file name somewhere along the way. I've just tested: put an image with uppercase letters into the "logos" directory. Just as in Cg089's case, the game displays an additional "empty" logo. Still, I maintain that in this case the case should not matter at all, and that behavior is a bug :P
P.S. I just read back through the old thread; thanks for pointing out the .cur<->.png issue back then!
;)
radcapricorn
Moderator (English)
Moderator (English)
Posts: 3230
Joined: Mon, 14. Jul 08, 13:07
x4

Re: Linux Support (Beta)

Post by radcapricorn »

ant1393 wrote: Fri, 1. Mar 19, 16:50 hi, do you have the gamepad's mouse emulatiom cursor on map ? i not have it :(

edit: anyone with xbox pad one or 360 can confirm please ?
I'll test with a One S in a bit. What should I be looking for? One of the sticks should control the mouse pointer?
hakzsam
Posts: 6
Joined: Fri, 1. Mar 19, 17:58

Re: Linux Support (Beta)

Post by hakzsam »

Hi there,

I'm one of the RADV developer.
I have just played the game a bit using latest llvm/mesa on my Vega 56, everything seems fine.

Can you explain how to reproduce the GPU hangs (ie. mesa/llvm versions, chip, steps) ?
Can you also explain how to reproduce "Graphical glitches on lockboxes and jumpgates on radv" ?

Thanks a lot, I would be glad to help.
9000
Posts: 20
Joined: Sun, 12. Nov 06, 18:32
x4

Re: Linux Support (Beta)

Post by 9000 »

_JD_ wrote: Thu, 28. Feb 19, 22:11 I encountered a really annoying issue: the joystick deadzone is not working at all. I tried with both a Logitech Force 3d Pro and X52 Pro and it makes absolutely no difference change the value from 0 to 100.

To make it even worst, with the X52 Pro it seems that the deadzone is 25%, making very hard and annoying to aim at something.

[...]
I can confirm that issue using a T.16000M. Fighting against S/M-Ships is now a lot more... thrilling :wink:


Apart from that: Many thanks for the Linux Port! Good works. The game worked out of the box with my from Windows imported savegame (1.0), even with an experienced better performance of the map (less input lag, nearly same, sometimes a little bit more fps than on Windows).

A few infos of the system:

Software:
Gentoo Linux
kernel 4.14.83
nvidia-drivers 390.116

Hardware:
GTX 1080
AMD Ryzen 7 1800X
Last edited by 9000 on Fri, 1. Mar 19, 18:48, edited 1 time in total.

Return to “X4: Foundations - Technical Support”