Egosoft have just released the next major expansion for X4: Foundations named X4: Kingdom End, plus a major free upgrade is also out now that brings full Steam Deck Verified support.
While the game had been given a Steam Deck Verified rating back in March, this was specifically for the Beta of the 6.00 update that only launched today. Confusing really, to have a public store page rating for something people would have to know about and manually opt into, a part of Deck Verified I hope Valve make clearer in future.
Enjoy a long-awaited reunion with the Boron in X4: Kingdom End, the fourth expansion for X4: Foundations, which completes the collection of the main factions in the X Universe. Discover the unique Boron ships, and fly them through distinctive systems, on a journey of discovery. Visit fascinating places, uncover old secrets and make new acquaintances. Embark on an immersive new chapter of X4!
Direct Link
There's absolutely loads new in the game update including:
- New Feature: Updated graphics engine, with Parallax Occlusion Mapping, Reflection Probes, enhanced lighting, improved shadows, and more.
- New Feature: Jolt Physics engine.
- New Feature: Live Stream camera mode.
- New Feature: Position Defence for carrier-led fleets.
- New Feature: New Construction Vessel designs for Paranid, Teladi, Split and Terran factions.
- Added new bombardment assignment for subordinates.
- Added command to order ships to attack surface elements on designated targets.
- Added Salvage at Position and Deliver Salvage commands for use with repeat orders.
- Added self-destruct command for player-owned satellites, resource probes, nav beacons, lasertowers and mines.
- Added detection and penalty for theft from station build storage.
- Added more gamestart information, indicating whether they are Tutorial, Guided, Assisted or Sandbox, and adjusted order.
- Added option to edit Buccaneer relations in Custom Gamestart Editor under certain circumstances.
- Added Custom Gamestart Editor story states for Tides of Avarice stories.
- Added player HQ to Station Design Simulator.
- Added Supervised Mining missions.
The list of changes goes on and on and on which you can read in full here.
You can buy X4 on GOG, Humble Store and Steam.
Prolly the same one I have: the Extreme Pro 3D (something like that). Funny for me, the game wouldn't detect it native, but did just fine using proton.
I'm partial to using that old stick, mostly cause it's what I played X2 on when it came out, lol.
I didn't want to touch it until I had vacuum with dust brush in hand (couldn't even see the logo on it), but I got it out and indeed, that's what it is, "Extreme 3D Pro". I don't remember if I ever plugged that in on Linux. I'll have to check my kernel config.
I now remember why I bought it, years ago I wanted to try a racing game "Burnout Paradise" with a joystick (I used to use them in the 90's) and it didn't work out so well, a game pad type like XBox 360 was better.
But this is an actual flight game.
All I need is joydev for USB sticks, any other logitech joystick drivers are for game port.
[ 3757.813609] usb 6-1: new low-speed USB device number 2 using uhci_hcd
[ 3758.415727] usb 6-1: New USB device found, idVendor=046d, idProduct=c215, bcdDevice= 2.04
[ 3758.415735] usb 6-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[ 3758.415738] usb 6-1: Product: Logitech Extreme 3D
[ 3758.415741] usb 6-1: Manufacturer: Logitech
[ 3758.449979] input: Logitech Logitech Extreme 3D as /devices/pci0000:00/0000:00:1d.0/usb6/6-1/6-1:1.0/0003:046D:C215.0003/input/input20
[ 3758.450350] hid-generic 0003:046D:C215.0003: input,hidraw2: USB HID v1.10 Joystick [Logitech Logitech Extreme 3D] on usb-0000:00:1d.0-1/input0
P.P.S.
IS working (button presses and axes registering in test apps) but not recognized in this game and there's no compatible profile defined. I can't get a peep out of it in game.
I had the exact same problem. I know for a fact the stick works in Linux having played other games, so I'm thinking it's the game. I ended up paying using proton and the stick works out of the box with one noticable "bug". In game, in menus, the throttle is also translated as the X-axis for the mouse...
But other than that it works fine!
PS. - what was your udev rule you added? I'm curious.
Last edited by denyasis on 16 April 2023 at 8:43 pm UTC
I had the exact same problem. I know for a fact the stick works in Linux having played other games, so I'm thinking it's the game. I ended up paying using proton and the stick works out of the box with one noticable "bug". In game, in menus, the throttle is also translated as the X-axis for the mouse...
But other than that it works fine!
PS. - what was your udev rule you added? I'm curious.
If using Steam, it's programming it with SteamInput (and steam uses dbus, so you would have permissions too). I'm just running this standalone, installed from GoG archives on a from scratch system. (no multilib, so no steam)
I figured out my problem. This game is using the old input layer method of configuring joysticks. In kernel, the old /dev/input/js* interface points to the new evdev device layer. However, the linux native game is using old methods. The Windows game would be using DirectInput methods, which would get handled differently.
Section "InputClass"
Identifier "joystick catchall"
MatchIsJoystick "on"
MatchDevicePath "/dev/input/event*"
Driver "joystick"
Option "StartMouseEnabled" "False"
EndSection
That was the last piece of the puzzle for me, xorg configuration (I don't have an xorg.conf so I put that in a file in xorg.conf.d/ ). The Logitech Extreme 3D Pro showed up in the list of controllers in game then.
As for the udev rule to get access to the device nodes:
KERNEL=="event*", ATTRS{idProduct}=="c215", ATTRS{idVendor}=="046d", MODE="0666"
Those are the product ID and vendor ID of the device (as shown in dmesg when the device is initialized)
The user just needs read access to /dev/input/js0 because it's a pointer to /dev/input/event* (event20 in my case)
I still have some configuring to do in game tonight to get it working the way I want, but now the stick works! I know it'll be viable now that the axes are working.
P.S. What to take away from this... if you were to drop that InputClass section in a .conf file in xorg.conf.d (usually /usr/share/X11/xorg.conf.d in a distro these days) for example 50-joystick.conf commonly, you could probably play the Linux native game in Steam with your flightstick (after restarting X) :-)
P.P.S. To get the device to stop operating the mouse cursor (was actually causing me problems when I moved my mouse), I added this line to the InputClass section in the .conf (edited above also)
Option "StartMouseEnabled" "False"
Last edited by Grogan on 17 April 2023 at 1:46 am UTC
See more from me