Even More Multiple Monitor Gaming On Linux

It’s been a while since I rehashed this idea as a sad attempt to drive eyeballs to my blog, which these days mainly serves to shill for my Open Source webmail project Cypht (pronounced “sift”). Not, sure, you, have, heard, of, it. You should go check it out, download it, install it, send me questions because the install is hard, really dig it once you get it working, then give me money for a security audit. Or whatever it’s no big.

I haven’t played a lot of these games extensively, many just for a few minutes to test compatibility. Mainly because one of the games in this group is consuming all my “free” time. I’m going to make you read the whole list to find out which. Just kidding, it’s called Rocket League. You should stop reading this post now and play it. Come back later and thank me.

Back already? You’re welcome! Let’s get on with the list

Wasteland 2 Directors cut

https://wasteland2.inxile-entertainment.com/
Steam tells me I have played 4 hours of this game. Having just dusted it off after a year I’m a bit concerned about my memory, because I have no idea what’s going on. It is cool though. Pretty standard point and click RPG to move your group of weirdos, examine stuff, and pick up strange I-don’t-know-how-I-will-use-that items. Fights are turned based on a hex grid with the ability to move/attack within some limitations I don’t remember.

Universe Sandbox

http://universesandbox.com/
Not a game really, but works on my rig and is included for the following reasons:

  1. It’s called Universe Sandbox, which is rad.
  2. Science is awesome, astronomy especially so.
  3. You can do really neat stuff most of which I have only seen on the menus but I did zoom into Saturn and check out the ring rotation.

Robot Roller-Derby Disco Dodgeball

http://www.82apps.com/DiscoDodgeball/
Retro first person “shooter” except it’s dodgeball. The roller derby part basically means you can’t stop moving when you want. I think there are power-ups and leveling up and you can even catch a ball thrown at you. The court has ramps and platforms, and one time I made it to the upper level before a bot nailed me instantly. I have not played it much but it’s pretty fun as far as retro disco dodgeball games go.

Niche

http://niche-game.com/
Everyone knows you have to get up to get down. This game is all about getting down. Seriously. It’s a sim where you have to furiously procreate to survive, hopefully passing on some worthwhile chromosomes. My crude description not withstanding, this is actually a really interesting (and educational) turn based game. It’s also safe for work so to speak, but you really should not be playing games at work.

Martial Law

http://store.steampowered.com/app/346150/Martial_Law/
You are alone in a seemingly abandoned and desolate photo-realistic landscape. Minutes after venturing out into a field, you are near starving. When you approach any potential resources, you are gunned down from unseen locations. This basically sums up my experience.

Madout

http://store.steampowered.com/app/352170/MadOut/
Sort of like Twisted Metal meets Mario Cart. Flashy graphics, simple physics, and easy controls. Like many others on the list, I downloaded, I configured, I played – but then moved on. I’m not sure if it’s because the game itself was lackluster or if I just did not give it a chance because I rushed through it to play Rocket League.

Distance

http://survivethedistance.com/
Another racer with nice graphics and a futuristic beat-the-track/clock type of game play. Like Madout the driving physics are pretty easy to get the hang of, on early levels anyway. Probably has lots of other features I could not be bothered to dig into during my short revisit. I did notice giant pumpkins strewn about the level that slow you down when you plow through them, so there is that.

Divinity Original Sin Advanced Edition

http://www.divinityoriginalsin.com/
Another point-click-to-move RPG with nice graphics and sort of a Diablo feel to it. I have a vague recollection that I enjoyed the 30 minutes I played months ago. I’m putting this one on the get back to it later list for sure.

Besiege

http://www.besiege.spiderlinggames.co.uk/
This is a unique game. Each level requires you to build a war machine that you let loose to destroy enemies or fortresses. There is a huge variety of components to build your machine with. Watching my creation fall apart in seconds because of my comically poor structural engineering skills is hilarious. 100% recommend this one, it’s a gem.

Rocket League

https://www.rocketleague.com/
Many of the games I like tend to be complicated, and increase in complexity as you level up and gain new abilities. Rocket League is one of those rare games with a simple concept, simple controls, playable right away, with endless room to improve. The premise is soccer (as well as other game modes) with a giant ball that you smash into with a car to move down the field. Calling it demolition derby soccer doesn’t really do it justice, but it’s accurate.

The real fun (and frustration), is combining the simple controls to blast your car into the air for “arial” hits. Trying to accurately hit the ball in the air is like trying to get 10 meters in QWOP – surprisingly difficult. You can play with bots offline, or against human opponents online (as well couch co-op with split screen). Be warned – the online community can be iffy (but you can mute the chat thank god). Another online warning – a surprising number of players are seriously good, like stupid good. Of course It’s also possible I’m just stupid bad.

More Multiple Monitor Gaming On Linux

My affinity for using multiple monitors started when I was working in finance as a software developer. One of the many things I learned from that experience is that you can’t get any work done if you don’t have at least 3 monitors on your desk. When I’m not working, I like to put all those extra pixels to use by tweaking games on Linux to run at a 5760×1080 resolution across 3 displays. It’s a weird hobby I know, and until the last few years a pretty unproductive one as well. Lately Steam has been releasing games for Linux like crazy, and quite a few work with this setup. This is a follow-up to my original post on the topic, and includes an additional 12 games you might find interesting.

Civilization 5
http://www.civilization5.com/

civ5This is a great simulation game. Sid Meier’s Alpha Centauri is one of my all time favorites. I still have a Windows XP VM just for playing it floating around somewhere. Civ 5 is all that Alpha Centauri was and so much more. Really loving this game so far. It basically works flawlessly across 3 screens, the only annoyance being textures sometimes are slow to update if you pan around really fast.

Bioshock Infinite
https://www.bioshockinfinite.com/?RET=&ag=true bioshockThis is my first Bioshock title and I’m impressed. The story line is engrossing, and weird as heck. It won’t run full screen at this resolution, but it does support a “windowed full screen mode” that is part full screen, part windowed, and works great across 3 screens. Performance would be better with real full screen support, but with a single Nvidia 980GTX the game plays pretty smoothly with high (but not ultra high) settings.

Deadfall Adventures
http://deadfall-game.com/ deadfallThis game has incredible graphics, but it’s been hard to progress very far because of frequent lock ups and crashes. Hopefully things will continue to improve since it’s a good-looking first person adventure game. Keeping my fingers crossed!

Dying Light
http://dyinglightgame.com/?lang=en_US dying_lightThis game is a very cool first person zombie shooter parkour adventure thing. The graphics are amazing, so much so that I have to turn all the knobs to low in order for it to be playable – and even then the frame-rate is barely passable. I may have to dig into the configuration manually to see what I can do to improve performance over what the in-game options provide.

Euro Truck Simulator 2
http://www.eurotrucksimulator2.com/ eurotruckWho hasn’t dreamed of one day driving an 18 wheeler across Europe? Not me. Surprisingly this game is actually a lot more fun than it sounds. Just trying to keep the truck on the road is a challenge, never mind trying to back up to a loading dock. You can see how adept I am at this game in the screenshot as I calmly plow down the wrong lane of a road at 60 KPH into an oncoming semi.

Space Hulk Ascension
http://www.spacehulk-ascension.com/ hulkHonestly I have only played this game for a few minutes, but I have read really good things about it, and look forward to checking it out more. It’s sort of turn based tactical game from what I have gleaned so far. Works perfectly across 3 screens without any tweaking.

Nekro
http://www.darkforgegames.com/ nekroThis screenshot doesn’t really do this game justice. It’s a fun sort of top down action game in which you use dark magic to conquer your enemies and consume their blood to increase your power. I’m confidant it’s unlike anything else you may have played. Game play can be a bit redundant, but it’s an odd title that is still being developed and worth a look.

NeonXSZ
http://www.neonxsz.com/ neonThis is another game I have not spent a lot of time playing. It’s a 3D spaceship flying game with easy controls and some pretty cool dog fighting type scenarios. The graphics are decent, it runs very smoothly, and it “just works” on all 3 screens without extra effort.

Serious Sam 3
http://www.croteam.com/serious-sam-3-bfe/ SS3An older title but one that provides mind numbing waves of enemies to shred. It’s just good old shoot-anything-that-4moves fun. Be on the lookout for the guy in the screenshot, he may look like just a normal suicidal cyborg enemy whose hands were replaced with active bombs who runs directly toward you with all his buddies until close enough to detonate himself but … well actually that’s exactly what he is. And you really don’t have to look out for him since he screams at the top of his lungs from the moment he spawns to the moment he gives you a big hug.

Infinity Runner
http://www.walesinteractive.com/#!infinity-runner/c1g7s runnerA runner style game with a sci-fi style and a twist. Not only must you jump, slide, and turn to stay alive, you also have to fight enemies occasionally. While running. I have not quite figured that part out yet, my strategy of mashing the keys randomly has not paid off. It’s also apparently really dark, which I did not realize until I uploaded that screenshot.

The Talos Principle
http://www.croteam.com/talosprinciple/ talosA first person puzzler with nice graphics. I had to use windowed mode to get it to run on all screens, but performance is great even with everything maxed out. The graphics are Serious Sam-ish, but this is a puzzle game requiring problem-solving skills and not shoot-bad-guys-in-the-face skills. So far I’m enjoying it.

Ziggurat
http://ziggurat.wikia.com/wiki/Ziggurat zigguratThis is a cool RPG/action first person shooter mash-up. The game play is extremely fast and furious. With a huge variety of upgrades, magical attacks, and bad guys to conquer, this is a fun game with better than good (but not quite great) graphics. The game play makes up for any graphical short fall in my opinion, and it is one of the more enjoyable titles on this list.

I really wanted to include Borderlands 2 and Left For Dead 2 on this post, unfortunately I have yet to figure out how to make them place nice with my setup. I still have some tricks up my sleeve left to try, so hopefully they will be on the next installment!

Multiple Monitor Gaming On Linux

I remember when I first got Quake3 installed and running on Linux. Ancient though it already was, it represented a glimmer of hope that modern games might be possible for my favorite OS. I wondered if companies like Loki could really start a commercial game market for Linux that would take off. Turns out, no, they couldn’t. They went bankrupt over a decade ago. But they did help plant that seed of hope in the game-deprived hearts of naive Linux users like me.

As years passed the market for Linux games, commercial or Open Source, could best be described as bleak. Decent titles were sparse, compatibility an ongoing battle. I can recall a few shining moments during those dark years, but they always left you wanting more.

The tides are turning these days as more and more effort seems to be going into producing games for Linux. But what if you want to run a game across multiple monitors, because you know, that would be really cool? And what if you had 3 27″ Samsung displays each at a resolution of 1920×1080 connected to a system fast enough to accelerate the combined 5760×1080 resolution with sufficient frame rates to render virtually any recently released game? I don’t know what you would do in that “what if” scenario, but I would fiddle with it endlessly then write a blog post about it.
setup
First the fiddling. I’m using Nvidia video hardware so the proprietary driver is a must for performance. The poorly named “TwinView” option of the driver handles all three monitors so that the X server sees one big display. I have found enabling the X server’s own “xinerama” option to be more useful than the Nvidia driver’s Xrandr interface when it comes to making the entire screen usable for a game. Window managers can interfere with a games ability to utilize the whole display so it can be useful to fire up a second X server with a different configuration and WM just for gaming.

Aside from that getting things working really comes down to the game itself. It can be hit or miss as to whether or not a game can take advantage of the combined display, so even with everything set up properly it still might fail. In those cases hacking the game configuration files can be a useful last resort, if you can figure out where they are and what to change. Here are a few games I did manage to get working. Click the thumbnail image for the full size screenshot, but be warned, the file sizes are big :).

Salvation Prophecy

http://www.salvationprophecy.com/
sp3

One part first-person shooter, one part space combat, this is a fun game that starts off small and evolves into an epic galaxy-wide struggle against other factions and unknown alien races.

Metro Last Light

http://www.4a-games.com/metro-last-light.html
metro

This screenshot does not do Metro’s incredible graphics justice. It really is an impressively done post-apocalyptic first person shooter. I’m not too far into it yet, but the story is compelling and the challenges reasonably diverse, even if the premise is a bit played out.

Half Life 2

http://orange.half-life2.com/
hl2_final

An oldie but a goodie. I had never played Half Life prior to the recent Linux re-releases on Steam, but now that I have, I can understand the praise heaped upon it when it was cutting edge. It may not stack up to Metro Last Light in the graphics department but the game play is a blast, and having the wide-angle peripheral vision is a bonus when it comes to exploring.

Forced

http://forcedthegame.com/
forced

Forced is a top-down arena battle game with interesting co-operative play and pretty cool graphics. There are four types of characters to choose from, and a system for building up your fighter’s abilities as you progress from one challenge to the next. Battles feature equal parts hack-and-slash and puzzle solving.

Spectraball

http://shoreboundstudios.com/spectraball/
sb_final

This is the ultimate “roll a ball around” game out there with nice graphics and challenging obstacles. It is amazing how far we have come since the good old days of burning the skin off your palm working the trackball on Marble Madness.

Iesabel

http://iesabel.com/
ie_final

I have to admit this was a late entry to the list and I have only played this for a few minutes. So far it looks to be a pretty interesting action/fantasy RPG type of thing. I had to mess around with it to get the resolution right, but since then it seems to be running well.

Anomaly War-zone Earth

http://www.11bitstudios.com/games/7/anomaly-warzone-earth
awe_final

Anomaly turns the tables on the tower-defense genre — you are the evading force trying to destroy the enemy’s well placed tower defense systems. It’s a fun game and the extra screen real-estate comes in handy. Since the first release several add-ons and a sequel have become available.

Legends of Aethereus

http://www.aethereusgame.com/index.html
loa_final

This is a great looking first person adventure/RPG. The combat system is a bit clunky, and I have had some stability problems in the past, but the latest update seems to be an improvement over previous versions. I hope the development team stays at it because this has the potential to be a great game.

X3

http://www.egosoft.com/games/x3tc/info_en.php
x3_final

This is an open-ended space simulation game that looks really cool. It’s also another one I have not spent much time playing. I’m looking forward to a rainy day so I can dig into it more.

0AD

http://play0ad.com/
0ad_final

The best way to describe 0AD is to combine the game play of Glest with historical accuracy and better graphics. Though seemingly in a perpetual alpha state, 0AD is actively developed and should ultimately be an excellent simulation game.

Oil Rush

http://oilrush-game.com/
oilA polished and beautiful tower defense game. Oil Rush leverages the Unigine game engine to not only load up on the eye-candy, but also to provide detailed video setting options.

Brütal Legend

http://www.doublefine.com/brutallegend/
bl2This is a first person action title based on a mythology built on 1980’s metal bands. Jack Black voices the main character who is accidentally whisked away from his thankless job as a roadie to lead a rag-tag band of rockers against heavy metal demons suppressing the people’s ability to rock. The premise alone is worth the price, even if the game play gets a bit redundant.

There are plenty of fun games available for Linux that just don’t make sense stretched across multiple screens. For the ones that do make sense (and work) I have found that it enhances the depth of the gaming experience, which I will keep telling myself is enough to justify the cost of the hardware. Now I just need a modern racing title with multiple monitor support to be released so I can upgrade my video card!

Linux On A Macbook Pro 10,1

I have been using Linux as my primary desktop environment for a long time. It can be impractical, annoying, even infuriating. But it’s still my favorite operating system, and over the years I have grown accustom to its quirks and shortcomings. I also suffer from an occasional obsessive disorder with regards to problem solving. Specifically trivial, unimportant problems. Such was the case two weeks ago when I decided to ditch a virtual Linux environment running in Mac OS for a native Linux install.

Don’t get me wrong, running Linux using a virtual environment like Parallels is a pleasant and pretty smooth experience. I felt however that it should be snappier, should run faster on the super slick Mac hardware, so I innocently decided to dual-boot the machine and compare a native Linux install to what Parallels provides. It took a wee bit longer than I hoped to get things working as well as I wanted, but I’m happy to say the effort has been worth while. Here is a summary of things learned so far running Linux on a Macbook Pro 10,1. For the most part these are not distro specific, and I’m not using any high level configuration tools from a desktop environment like Gnome or KDE.

  • Installation
    There are plenty of how-tos out there to get the installation bits figured out. I’m a Debian man myself, so I found this particular post a useful jumping off point. The tips with regards to rEFInd and getting the wireless card to work during the installation process where very useful, and within an hour or two I had a bootable Debian Sid/Unstable setup, without any breakage to Mac OS.
  • Temperature
    In my experience laptops running Linux tend to run hot, and this Macbook is no exception. Before tweaking a few things it was consistently 10 C degrees warmer than in Mac OS, and would quickly raise to out-of-control hot when doing any CPU intensive work (I triggered CPU temp throttling with a make -j8 in less than a minute). I tried a number of things to reduce the temperature and managed to find two that help bring things back into Mac OS comparable levels. First is to use the Intel Pstate kernel driver for CPU scaling. The only tweaking required is to disable CPU “turbo” mode as the driver is IMHO too liberal with frequency ranges over the normal non-turbo maximum. This eliminates conditions spiraling to dangerous levels when all the cores are pegged. Secondly I’m running a simple Bash script from root’s crontab every minute that does a core temp evaluation and adjusts the minimum fan speed if required. This brings down the average idle temp with negligible additional fan noise. This requires the standard kernel coretemp driver as well as the applesmc kernel module.
  • Power
    To date the best estimated battery life value I have seen under Linux is 5 hours (I have not run an actual timed test yet) as compared to 7.5 in Mac OS. After some acpid rules fiddling I managed to scale the CPU to 75% of max and dim the display significantly when the power is unplugged. Both can be independently restored of course, but this goes a long way toward getting the most out of the battery. The powertop app has also been useful to identify devices that are not taking advantage of available power savings modes, though I can’t say for sure how much power savings they provide.
  • WIFI
    This Macbook has a Broadcom BCM4331 wireless adapter. The b43 kernel driver is the only one that recognizes the hardware, but it’s been hit or miss in the stability department (regardless of power saving mode). Some days are solid, some days are laden with network drops. I’m still working the issue and so far the 3.10.7 kernel seems more reliable than the stock Debian kernel, albeit with limited testing. In the meantime I stuck a tiny Panda Wireless USB card in, built the kernel module, and with the exception of some excessive but seemingly harmless logging, everything has been stable since.
  • Retina Display
    The Retina display is incredible. 2880×1800 pixels packed into a slim bright package. With the apple_gmux kernel driver the brightness is controllable, both from the function keys (using xbindkeys) or when changing from battery to plugged in (using acpid). Everything is really tiny at this res, so adjusting font sizes where possible is a must. I ended up modifying the defaults for my terminal (Mrxvt) and window manager (FVWM), as well as for QT and GTK. This pretty much does the trick for everything I use with the exception of bumping the default zoom level in Chromium.
  • Trackpad
    The mtrack Xorg input module works well with the multi-touch device. I added a few bindings into the xorg.conf file to set up some click and tap combos, and so far it’s working well. I’m not a big trackpad fan but I have to admit this one is slick. I’m laughably clumsy with it but I’m getting better.
  • Function Keys
    Using xev I was able to identify the keycodes for the function keys and bind them to actions with xbindkeys. Brightness and keyboard back-lights are controlled via simple Bash scripts that manipulate /sys entries directly, and the volume controls use amixer. I have not mapped the remaining keys to anything yet.
  • Suspend
    This works quite a bit better than I expected (with nothing but kernel support and standard power management related packages). The only issue so far is that the network needs to be reset after a resume. I have not put any effort into automating this yet but plan to look into it soon. Acpid makes it trivial to trigger suspend on a lid close which is pretty handy (though sometimes annoying).
  • Video
    I’m using the Nouveau kernel driver to power the display on the Nvidia GeForce GT 650M. There is an alternate Intel i915 GPU but I have not tried to activate it yet. I did build modular support for it in the kernel, and I enabled options to allow switching between graphic devices. The Nvidia GPU continues to work fine with the Intel drivers enabled which is better than the last time I tried to run multiple kernel drivers for different GPU vendors simultaneously. Hardware 3D works and the frame rates are what you would expect from a mobile GPU.
  • Hard drive
    This rig has a peppy 251Gb Apple SSD (SM26E). Works great with the standard SATA kernel drivers. I have not run any specific benchmarks, but I’m sort of new to using SSDs and they all seem so fast I could be completely unoptimized and still loving the performance.
  • USB
    No issues here. I’m using the standard UHCI, OHCI, XHCI kernel modules to support USB interfaces. Everything I have plugged into a USB port has worked perfectly so far.
  • Sound
    The Intel HDA ALSA audio driver works with no tweaking. The volume gets pretty loud for a laptop which is nice. Plugging in headphones correctly mutes speaker output and work fine. Overall the sound quality is better than I thought it would be.
  • Webcam
    The webcam is an Apple “FaceTime” HD Camera that is connected internally using USB. Tested with mplayer, it works without issue using the kernel’s generic uvcvideo driver.
  • Card Reader
    This is a Broadcom Corporation NetXtreme BCM57765 Memory Card Reader. The MMC drivers spit out a non fatal hardware interrupt warning when I insert a card and then nothing happens. In all fairness though it might be a bad XD card. I could only find one to test with and it’s ancient.

Here is a shot of my very fancy not old-fashioned at all looking new Macbook Pro Linux desktop (click for full res).

macbook_screenshot

And here are some of the scripts and configs referenced above in case anybody finds them useful: