- No alt-tab with fullscreen spring
- Unreliable edge map scroll with "fake" fullscreen modes that did allow alt-tab
- Shaky performance with "fake" fullscreen modes
On my wanderings on the internets i was lucky enough to find the idea of running games on a separate x server. It allows you to alternate between your regular desktop (CTRL+ALT+F7) and the other X server with spring (CTRL+ALT+F9 on my setup). This also has the additional effect of backgrounding all your desktop stuff so that it eats less memory and cpu, so you get that extra frame per second and lose the little FPS drops that happen when the cpu scheduler starves spring.
This is my first howto and is mostly a copy of several resources i found online. What was available was outdated and needed some updating, plus i had to deal with some extra problems on my setup.
Original: http://ubuntuforums.org/showthread.php?t=51486
So lets paste:
1. First to allow you to run a new X display you need to:
Code: Select all
sudo dpkg-reconfigure xserver-common
2. Next we have to set your ~/.Xauthority file up. This may look tricky but it's very straight forward, all you need to do is add a line using a special key we find. So, in a terminal type:
Code: Select all
xauth
list
Code: Select all
ananke/unix:0 MIT-MAGIC-COOKIE-1 9fde426e5g03b20f4b7e51cb329d3033
localhost.localdomain/unix:0 MIT-MAGIC-COOKIE-1 9fde426e5g03b20f4b7e51cb329d3033
Code: Select all
add :1.0 MIT-MAGIC-COOKIE-1 9fde426e5g03b20f4b7e51cb329d3033
exit
Code: Select all
cd
kate spring
Code: Select all
#!/bin/bash
xinit /usr/games/_spring $* -- :1
4. Now we need to make it executable, rename spring and put this script in its place:
Code: Select all
chmod a+x ./spring
sudo mv /usr/games/spring /usr/games/_spring
sudo mv ./spring /usr/games/spring
I tried to make this perfectly compatible with det's HOWTO to use the windows lobby with wine and native spring. It works for me.
PROBLEMS:
1) X crash when returning to main screen (CTRL+ALT+F7) if running beryl.
Workaround: Disable Beryl before running spring by right clicking the beryl-manager icon on the systray and then picking "Select Window Manager" and picking the one that is not beryl (in my case, KWin). Maybe this step could be automated somehow? Help is welcome.
2) If you want to run spring the old way just run "_spring" from a terminal. If you want to revert the renaming and replacing, do:
Code: Select all
sudo mv /usr/games/spring /usr/games/spring.x
sudo mv /usr/games/_spring /usr/games/spring
- Automate Window Manager switch. Solution in the replies
- Since i'm running a script instead of spring i might as well customize. The TASpring.exe wine process stays at 1% and up to 5% cpu usage at times. I find that unaceptable so i'm thinking of killing the wine process in this script. It will look like you left the lobby as soon as game started, but you will still be in game.
edit: To kill the process, edit your /usr/games/spring script so that it looks like this:
Code: Select all
#!/bin/bash
killall TASClient.exe
xinit /usr/games/_spring $* -- :1.0