Steam’d Penguins

Steam’d penguins? Is it a recipe for an exotic South Pole dish? Perhaps it’s one of those bizarre YouTube videos of penguins in a sauna cavorting with the Swedish Bikini team?

The truth is that this is the first post of the Valve Linux blog. This blog is where you can find the latest information from Valve about our Linux development efforts. Avoid the rumors and speculations that multiply on the Web. Instead, come to the source – a blog where people who are interested in Linux and open source game development can get the latest information on Valve’s efforts in this arena. In this initial post, we’ll introduce the team (and a bit of its history) and then give you a snapshot of what we’re currently doing.

Big Things Have Small Beginnings

For some time, Gabe has been interested in the possibility of moving Steam and the Source game engine to Linux. At the time, the company was already using Linux by supporting Linux-based servers for Source-based games and also by maintaining several internal servers (running a 64-bit version of Ubuntu server) for various projects. In 2011, based on the success of those efforts and conversations in the hallway, we decided to take the next step and form a new team. At that time, the team only consisted of a few people whose main purpose was investigating the possibility of moving the Steam client and Left 4 Dead 2 over to Ubuntu.

Why Ubuntu? There are a couple of reasons for that. First, we’re just starting development and working with a single distribution is critical when you are experimenting, as we are. It reduces the variability of the testing space and makes early iteration easier and faster. Secondly, Ubuntu is a popular distribution and has recognition with the general gaming and developer communities. This doesn’t mean that Ubuntu will be the only distribution we support. Based on the success of our efforts around Ubuntu, we will look at supporting other distributions in the future.

After successfully porting L4D2 to Ubuntu, interest grew within Valve and, as a result, the team and projects we were working on also grew. Currently, our focus is on the following projects:

getting the Steam client onto Linux with full functionality

optimizing a version of L4D2 running at a high frame rate with OpenGL

porting additional Valve titles

Current Projects

The goal of the Steam client project is a fully-featured Steam client running on Ubuntu 12.04. We’ve made good progress this year and now have the Steam client running on Ubuntu with all major features available. We’re still giving attention and effort to minor features but it’s a good experience at the moment. In the near future, we will be setting up an internal beta focusing on the auto-update experience and compatibility testing.

Since the Steam client isn’t much without a game, we’re also porting L4D2 to Ubuntu. This tests the game-related features of the Steam client, in addition to L4D2 gameplay on Ubuntu. Over the last few months, excellent progress has been made on several fronts and it now runs natively on Ubuntu 12.04. We’re working hard to improve the performance and have made good progress (more on that in a future post). Our goal is to have L4D2 performing under Linux as well as it performs under Windows.

We’ll be posting more information about those projects (and others) on a regular basis. Since this is a new effort for the team, we’d love to hear your opinions about the blog so shoot us an email. We also encourage you to leave comments and ideas for future postings. We want this to be a community of game developers, communicating with each other and talking about current efforts and future efforts in a powerfully creative environment.

After all, isn’t that what open source is all about – the idea that collaboration and teamwork achieve amazing things?