These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

Linux

 
  • Topic is locked indefinitely.
 

Multiseat Eve (Sorta)

Author
Xorphix
School of Applied Knowledge
Caldari State
#1 - 2014-01-24 09:31:01 UTC
Being two people in the house playing Eve now, it started being a battle over the one computer in the house.

Instead of buying an expensive second computer that could run Eve, I read up on multiseat to use the more than plenty of ressources in the computer for another seat.

It turned out being easier than I expected, and there is alot of ways to do it but here is what worked for me:

Requirements:
2 monitors
2 keyboards
2 mice
A PC with 2 graphics cards (I ran SLI already so just pulled out the SLI chord)

As far as I can read its possible with a single card that supports 2 monitors, but its alot more work, and works horrible in Ubuntu with nVIDIA. If you tinker enough with it, it may be possible.

This is NOT a copy/paste solution but inspiration, as this is what "worked on MY computer(TM)":

I opened nVIDIA settings, and added the second monitor with "Seperate X session", saved to xorg.conf.

Then I added this server layout instead of the current:
Quote:
Section "ServerLayout"
Identifier "main"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection

Section "ServerLayout"
Identifier "eve"
Screen 0 "Screen1" 0 0
Screen 1 "Screen0" 0 0
Option "Xinerama" "0"
EndSection


In short, this creates 2 X sessions named "main" and "eve" with each their screen.
I have screen 0 on Eve session also, which makes no sense, but had trouble with nVIDIA saying no screens found, so I left it there and it works.

In order to manage which keyboard and mouse belongs to which screen, I use this command for a list of inputs:
Quote:
xinput list

Found which ID each of the keyboards and mouse had.

Then I created a launch script for starting Eve on second monitor:
Quote:
#!/bin/bash
notify-send EVE "Launching second monitor"
sudo X :1 -layout eve -novtswitch -sharevts &
sleep 3
sudo xinput set-int-prop 10 "Device Enabled" 8 0
sudo xinput set-int-prop 11 "Device Enabled" 8 0
cd ~/scripts/
DISPLAY=:1 ./start2screens.sh
XPID=`pidof X | cut -d " " -f 1`
echo Killing Xsession PID: $XPID
sudo kill -9 $XPID

This does:
Starting a second X session based on "eve" layout in xorg.conf
The xinput lines will disable the second mouse+keyboard on primary screen (ids 10+11 on my PC)
Then it starts the real launch script "start2screens.sh" on second monitor.
Then waiting till I close this script (closing Eve on second monitor), it will exit the X session.

And for the actual launch script (start2screens.sh):
Quote:
#!/bin/bash
echo Disabling keys..
DISPLAY=:1.0 sudo xinput set-int-prop 8 "Device Enabled" 8 0
DISPLAY=:1.0 sudo xinput set-int-prop 13 "Device Enabled" 8 0
- whatever you do to start eve as normal -

Where xinput lines are keyboard and mouse on main screen (ids 8+13 on my PC)

So I just boot my PC, single screen and play as normal. Whenever second person wanna play Eve, just launch the 2screen.sh script via shortcut and Eve launches on that screen and we can play at same time.
Delt0r Garsk
Shits N Giggles
#2 - 2014-01-26 15:52:30 UTC
Really cool. I have done dual seat before. But not with any kind of graphics required. I currently have a w530 think pad with a broken monitor. Have been thinking of how to set this up as the home "computer" and tv system. Perhaps i will give this another go with dual eve in mind. My wife likes to play sometimes.

AKA the scientist.

Death and Glory!

Well fun is also good.

Kismeteer
Bat Country
Pandemic Horde
#3 - 2014-01-27 23:55:23 UTC
Nicely done man! I used to do this back in college, but that was running normal text stuff, not another game!