Ask Loki Prez Scott Draeker about Linux Gaming
John Carmack of id wrote Quake III, but Loki distributed the Linux version. Loki Entertainment Software has been described by happy puppy as "...the most visible Linux gaming company," so who better to turn to than Loki President Scott Draeker for word about game development and porting for Linux? Scott's an extra-cool guy, so we expect extra-cool answers from him. We'll post them sometime within the next week, so please keep an eye out.
Out of curiousity...how difficult was it to port the Quake ]|[ code and did it take very long? And do you have any advice for porting DOS/Windows code to Linux?
Sgt Pepper
Lame Sig Shamelessly Ripped from
Fortune:
Disco is to music what Etch-A-Sketch is to art.
I know the one question I would love to ask this fellow.
I have wondered this since the first day I heard about CIV:CTP port. Considering the limited nature of the Linux market at this moment how well is Loki doing as a company in terms of sales and profits?
ACK
I was curious as to any plans to develop or port a game similar to Asheron's Call or Everquest for Linux? I've seen opensource projects along these lines but none of them seem to be developing very quickly.
Scott, I am a linux programmer doing active development for technology companies in Canada. My questions spawns more from a business side rather than a technology side. I've examined Lokis business model and have a two-fold question. #1: Do you think simply porting games is a viable business model for Loki games. As Linux acceptance picks up don't you fear that more gaming houses will start doing their own cross-platform development in house rather than relying upon Loki as a "port house". #2: Linked to #1, if you fear this trend, will we see any original titles coming from LokiSoft or do you plan on strictly remaining a port house.
Do you think there is a market for children's software that runs on Linux?
GollyGee Blocks -- 3D creativity software for kids.
John Carmack of id wrote Quake III, but Loki ported it to Linux
This is flat out wrong. Dave Hircsh, aka Zoid, along with Carmack (both of id) were responsible for the linux code for quake3. Loki merely repackaged and distributed the linux version of the software.
--
You can be an atheist and still not want to succumb to some weird cross-over sheep disease -- AC
When programming a game, what steps can be taken to make it easily ported to other platforms?
For example, is one language better then another? (at least in being able to be easily ported)
Is one method of displaying graphics better then another? (OpenGL, Direct X, etc.)
And do you have any useful tips for programmers to assist in porting?
Thanks,
Axiom
Of course, the mainstream preference seems to be towards first-person shoot 'em up type games, but I for one enjoy racing games (Need for Speed, NASCAR, and the like). Does Loki have any plans for porting other types of games to Linux, and if so, how about working on joystick/periphial support?
Brad Johnson
--We are the Music Makers, and we
are the Dreamers of Dreams
Brad Johnson
How will XFree 4.0 affect how loki ports games? Is it going to make things easier? Harder? I know you have problems with being compatible with the different video card types and GlideX.X or Mesa3.X but you have done a really great job so far (I own quake ]|[, heretic ][, and Homm ]|[).
~Jester
"I have great faith in fools: Self confidence my friends call it." ~Edgar Allan Poe
Since Linux was originally much more geared towards and used for server-applications and has only been moving into the desktop-market for a relatively short period, I can imagine the operating system is not entirely optimized for playing games. Stability often comes at the cost of performance and features, so I was wondering, do you think it would be useful to create a Linux distribution that focusses mainly on gaming and other multimedia-related applications?
let me correct that last question:
And do you have any useful tips for programmers who are programming a game now that would make it easier to port in the future?
Axiom
Given Loki's experience in porting applications, have you considered, or been offered to, port programs other than games to Linux?
I'm assuming that your (current) modus operandi is to call up a company and say "Hey, can we port your game to Linux?" Given that assumption:
1) How many companies have you talked to?
2) What percentage of them rejected the request?
3) Of those that rejected, what were their reasons? (fear of "open source", lack of demand, etc)
--
Here is the result of your Slashdot Purity Test.
Linux MAPI Server!
http://www.openone.com/software/MailOne/
(Exchange Migration HOWTO coming soon)
Currently, Linux is lacking the standardized interfaces and API's that WIndows has. What is the greatest challenge (that needn't be one) when porting a game to Linux?
I mean, what makes you swear at Linux and say, Damnit, why doesn't Linux have this yet???
How do you convince the original makers of the games that you are porting to let you do it?
I imagine that it is a slightly easier task now that you have proven that you won't take their code and run.
Devil Ducky
MY peers would get out of jury duty.
If Linux-centric games start being developed and released on a broader scale, do you think making the source available under the GPL after release would be a viable solution to quick patches and bug fixes? Or would this lead to illegal forks becoming as much of a problem as pirating?
I was wondering if you've taken a look at Penguin Play, or any of the other API-like attempts at making it easier for people to program/port games for linux.
Do you think that initiatives like this are good for the OS in the long run, or do you think they're more dangerous as a way of vanilla-izing or lowering the bar for good game programming?
I understand that you cannot tell us what's happening before the announcements actually occur, but can you tell us if there is another place we might hope to get information, or if there is a good way for us to have a positive influence on the probability of particular games being ported?
Other slashdotters here seem interested in the coding challenge, which is cool, but I want to know how good of a return you guys are making on these ports. I'd like to take those statistics over to other companies to encourage them to port their products (not just games, but Real Apps too). These may be unglamorous questions, but they are the meat and potatoes ones that you no doubt answered when you decided to go ahead and port these games to linux.
2) When's the IPO?
Oh yeah, and can I have a job? Please? Please please please? If you give me a job I promise to sit in the back and not bother anyone... :-)
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
The reason I ask, is because I've been drooling over the thought of buying Quake 3 for Linux -- But the thing that stops me is the q3demo didn't work properly. I downloaded it, and installed it (the shell script installer was fantastic, by the way), but when I run it, it runs at about 1 frame per second from start to finish (From the ID Software logo, to the menus, to the game, right to the exit screen.) I've tried for a long long time to get it working, and to no avail. Windows sucks but Games work - Both well, and immediately.
Because of this, I haven't bought Quake 3 yet. I want to know it *WILL WORK* so I'm not stuck with a $50 piece of software that is of no use to me.
-- Give him Head? Be a Beacon?
-- Give him Head? Be a Beacon? :P)
(If you can't figure out how to E-Mail me, Don't.
Porting "merely" requires technical skill at the engine level : know-how on how to port Win32 to X, getting DirectX to work with SDL, OpenGL cross-platform issues, etc. Creation, on the other hand, requires the full asset of content creation tools that are of vital importance in every software house, but remain hidden from the end user -- and the porter. I like to call those tools the "boring 50%" of game production, and they consist of level editors, model builders, conversion tools (eg 3DS Max to native format), sound editors, etc.
Since Loki has recently showed interest in developing, instead of porting, Linux games, I'd like to hear what your take is on the apparent lack of solid, existing authoring tools (other than the Gimp), and the lack of solid desktop development support (KDevelop et al are nice but no match for the MSVC/MFC combo) needed to write all those quick'n'dirty but ultra-vital editor tools.
Do you agree that this lack of Linux equivalents of 3DS Max, Soundforge and MSVC is currently a major hurdle for Linux-native development ? If you go for full Linux development, would you create authoring support all by yourself and release it (a la MPEG SDL), or rather sit back and wait until Codewarrior, Kinetix etc all get their Linux products up to par with Win32 ?
Thanks !
Scott,
I've noticed that your company is now porting to LinuxPPC, and so, I have a few questions regarding that:
1) You obviously feel that the PPC market is viable for porting. What factors made the PPC more attractive over the Sparc or Alpha? I can see where the larger Macintosh hardware market may be a factor, but I just don't see Linux taking ahold on the Mac side like I do with the PC side.
2) Have there been many problems with the PPC porting effort, such in the ways of 3-D Acceleration, sound support, etc?
3) And finally, is Loki's PPC support limited to PCI machines made by Apple, or are you targeting any PPC machine that can run Linux? (Such as CHRP motherboards or machines that can only run MkLinux).
thanks,
dennis
The concept of Linux Game Programmer as a paying job is a relatively recent one. One is unlikely to see too many resumes with "8 years experience coding games on Linux" (or, if so, it should be viewed with skepticism).
When sifting through resumes of prospective coders, does Loki lean towards programmers with a strong gaming background or rather those with more Linux programming experience?
Your courageous and selfless spelling corrections have made me a better person.
Sadly enough I bought Quake 3 for Linux, not because I like Quake 3 - I don't - but because I'm hoping that my purchase will help show game companies that there is a market in developing and porting games to the Linux platform. I would like to be able to buy every game that comes out for Linux, but to tell the truth I don't have any interest in the games currently on Loki's product page. With this in mind, what would you think is the best way for me - as a consumer and a Linux user - to show game companies that I do want games ported to Linux?
Joseph Elwell.
Because of the sheer dominance of Windows (9x) as the gaming platform of choice, Linux seems that it is always playing catch up. The developers generally build sepecifically for Windows, certainly making your job tougher.
What will it take for Linux to be a primary development platform? Does the Linux community need to make strives to enrich certain aspects of itself, or is it an issue of critical mass?
I've noticed that all your games seem to use /dev/audio or some such device rather than considering network audio (through the Network Audio System); they also seem to have a frightening dependence on being on the same machine as the X server. My question is this: Why is there so little support for what X can really do? Why use non-standard 3D stuff instead of GLX? I would like to be able to run this using an NCD X-terminal, for example, which has NAS support and GLX support, but your software is all geared toward the PC. Why is this? Is any of that going to change as time goes by?
While I refuse to use (much less pay) for any type of closed source applications, I view games more as entertainment then an application. A side effect of this is that when I shell out $50US for a game, I'd like to be assured I can enjoy said game whenever I'd like, for the next 5-10 years. With DOS/Windows games, I have this assurance. Two of my all-time favorites, "Master of Orion", and "X-COM", were written for plain old DOS 6.22. Today, many years later, I can still (and do!) play these games on my Windows 98 machine. Aside from Microprose, I'm a huge ID fan. When Quake 3 came out for Linux and Windows, I purchased the Windows version, even though I have to reboot every time I want to play it. I felt I had no assurance that Quake 3 for Linux would still run on Linux 2.4, much less 3.0, or 4.0, with glibc 8.5. I'm sure there are others who feel the same. What type gaurantee can you give the gaming community, so we know our closed-source Linux entertainment purchases will still be usable for an acceptable ammount of time.
I realize part of DOS/Windows problem is the overhead incurred by backwards compatibility, but, on the other hand, I sure do enjoy being able to whip out my copy of "Karateka", or "Leisure Suit Larry 2" and know it will still run.
There seems to be direct competion in most application space between commercial software and Open Source alternatives (e.g. office suites, web servers, operating systems, etc.), except in particular niche markets. I've seen numerous comments, however, that games are different. They don't have the shelf-life of other applications. This viewpoint seems to stem from the idea that most games depend on cutting-edge technology which are best developed quickly in small groups. This is quite distinct from most Open Source development which often proceeds at a more deliberate pace ;) However, this may the ideal environment to develop different types of games such as MUDs, MUSHs, etc.
Do you forsee any conflict between commercial game software and Free alternatives? Or are these complementary models that can work together, or at least coexist?
As best as you recall, what was the most -unusual- response you had, with regards to the idea of porting software to Linux?
It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
What can we fix to make Linux a gaming platform? More specifically, what hardware drivers, APIs and libraries need to be improved to make Linux a better gaming platform than that other OS? As a coder, a gamer and a Linux afficionado I'm interested in this question, because once I know what needs to be fixed, I can roll up my sleeves and get to work. Unlike with that other OS.
It's rare that you're presented with a knob whose only two positions are Make History and Flee Your Glorious Destiny.
It's been reported on MANY sites, like slashdot and linuxgames.com that you are porting games such as Soilder of Forutne, Sim City 3000, among others. Tuxgames.com is even taking pre-orders for these games. Yet there is nothing on your website about relase dates, or even that you are doing anything with these games at all.
Are these just rumors that got out of hand? Or are you in fact porting these games? If so, why is there no mention on your website about release info, demos, screenshots, etc.?
I'm excited to see such games get ported to linux, but when in comes to facts, I like to hear it from the horse's mouth. It just seems kinda odd that many trustworty sites report this info, and no mention is mentioned on the one place it should be, lokigames.com
I've been using Linux for many many years now, and one of my favorite rants (or discussions) is how to make Linux more commercially palatable. Invariably, I always end up holding forth on how linux will not be a force to be reckoned with until you can walk down the aisle at Fry's and see boxes and boxes of shrinkwrapped linux software.
Unfortunately, as we all know this is a two-way street. People don't want to port to linux because the base is so small, and people won't use a "niche" OS to raise the user base numbers until the apps are available. This is the classic catch-22 situation.
Well, now with companies like Loki you have managed to change the scene somewhat. I am delighted every time I walk down the aisle and see Loki software on the shelves, and consequently it seems like there are more and more companies coming to the table with linux ports or following a similar strategy as Loki.
It also seems to me that a critical mass point has been reached. Once you guys proved it was possible, lots of people started jumping on the bandwagon.
Now for my question(s). Did you set out on this path because you wanted to help kickstart this whole thing? Did you expect to be one of the major movers behind this sudden influx of commercial software for linux?
Also, the competition in your space seems to be heating up. You guys were the real "early adopters", meaning you were the first to market. However, now that you've proven it will work, I'm sure there are a lot of companies out there nipping at your heels, so how do you plan on staying ahead? How do you plan on keeping the forerunner position? Will you become a force for standardization among linux (with graphics API's, sound, etc) that will eventually trickle over into every other application space (besides just games?).
-- Gary F.
Most games today are being programmed using Microsoft DirectX... and I'm getting curious about one thing:
//stalle -- I don't take myself for granted
Are there any standard in porting this code into Linux code, and would it speed up porting of other games?
By the way , I'd love to see Civ2 ported to linux
//stalle
My personal favourite game titles are the LucasArts' Star Wars games, especially the space combat sims "Tie Fighter" and "X Wing vs Tie Fighter." I'd love to see them ported to Linux, which leads to my question: What can we, as Linux folk, do to positively influence publishers into porting titles to Linux? Do petitions and email campaigns actually do any good, in your experience or opinion? Any other suggestions?
:-)
I suppose buying every Linux title Loki ships and therefore making Loki an enviable financial success is one of the best ways to convince other publishers, huh?
I know this is going to vary with the project, but I'm wondering how much manpower it takes to port a "typical" game from Windows to Linux. I suspect it's somwhere greater than zero and less than the amount of effort it took to write the game in the first place, but I just wonder how the time for (re)programming and QA are distributed compared to writing the game in the first place and how you allocate your staff to this (do they each work on a single game or do they move from project to project).
The games industry is slowly moving off PCs and onto consoles, purely for their profitability. The new Playststation is being hailed as the latest nemesis of PC gaming. Do you think that consoles are going to make Linux gaming redundant, or too unprofitable to be sustained? Given that consoles are not easily user-programmable, do you think that future talent for games programming is going to be harder to find, as these proprietary boxes do not encourage people to get involved in writing their own games as the 8/16 bit computers used to?
-- Arron Shutt
I'm a gamer and I'm also a Linux user, unfortunately these two things rarely coincide. I have a win95 partition on my computer pretty much for the sole purpose of playing games, while I use Linux for everything else. It might seem that I am the perfect person to buy Loki products but I can honestly say I have never purchases a single Loki game. Why? Several reasons:
1. Limited selection of games. I don't necessarily want to spend my money on the handful of games that you've ported.
2. Games come out to late. If it's something I really wanted then I probably already bought it before I even knew you've started a port.
3. Problems with the Linux platform. I love Linux for some things, but it has a ways to go before it is a real viable gaming platform. We need better video drivers, better sound, better controller support, etc.
What exactly are you doing to address these concerns? Will you support a more diverse variety of games (let's see some RPGs!)? Will you work on beginning a port before the game in question is already finished and available for windows? Most importantly, what are you doing to address the problems with the Linux platform for gaming?
I also have a completely unrelated question. If, some time in the future, more and more companies begin doing their own in-house ports to Linux, will Loki consider developing original games?
Thank you
I am not an idiot. Please use my name to email me.
"That's right, I'm quoting myself."
-Upsilon
Let's suppose that five years from now, most game companies develop their software with Linux portability in mind, and release Linux versions concurrently with Windows versions (or sooner, heh). Where do you see Loki in such an environment? Do you think there will be enough of a market for game porting to support Loki? Or are you looking towards shifting your emphasis as Linux gets more mainstream support?
-- $SIGNATURE
I purchased Civilization: Call to Power for Linux as soon as it hit the shelves at my local CompUSA, but I soon became discouraged over the delays between the Activision patches and your own. Specifically, while I didn't expect the Linux patch at the same time as the Windows patch, it seemed to be a bit extreme to take an 5 months to port the 1.2 patch that only took Activision 4 months to develop. What are you doing to reduce these lags?
In a related question, are you going to be porting Civilization: Call to Power II, and, if so, what are you doing to reduce the lag time between the Windows and Linux versions?
Short example: I was in total love with Transport Tycoon, until the very limited underlying world model started to irritate me bigtime. A train between two major cities would unload all of its passengers on some forsaken small stop in the middle, effectively running empty half the time.
Do you even think you could build a business out of working on such problems?
"More specifically, what hardware drivers, APIs and libraries need to be improved to make Linux a better gaming platform than that other OS?"
There are quite a number of API's out there that have Linux support (clanlib, SDL, GGI to name a few.) Most of them are pretty good, but my personal feeling is that SDL is the way to go. Its a nice clean design, there is a version 1.0, and its already very cross-platform. It definitely has the potential to become a cross-platform equivalent of Microsofts DirectX. Version 1.0 doesn't have 3D, but version 1.5 (which is in development) will support OpenGL.
OpenGL is definitely the right choice of 3D API. However, Direct3D is showing signs of seriously overtaking Direct3D in terms of functionality, so we should not complacently accept that OpenGL has "won". Some entity/organization needs to take OpenGL "by the balls" and seriously work on a decent OpenGL version 2.00, with most 1.2 extensions wrapped up into the API, and API access to new functionality (hardware bumpmapping, texture compression, maybe access to texture/surface memory buffers for dynamic/procedural textures.) As far as I can tell, SGI isn't making any real effort to do this. Someone needs to take OpenGL and update it to tackle Direct3D head-on.
The other thing that needs to happen with OpenGL on Linux is that there needs to be a standard driver interface for graphics card vendors to write drivers.
So to sum it up, in my opinion, "only" three things need to happen:
That should take care of the technical side of things ... hmm ..
Which method do you recommend, and why? I still hope for the day when I can go to the local software shop and see a Linux section.
d
www.HearMySoulSpeak.com
Scott, On most operatings systems, you probably have a guarantee that a certain set of libraries and services exist on every machine with that OS installed on it. On Linux, you (or Redhat or SUSE or whomever) can pick and choose which components should be installed or distributed. Does this cause problems for Loki's ability to produce games which will run on all (or nearly all) Linux machines? If so, how have you overcome this problem?
During software development, it usually appears to be easy enough to keep your code portable across architectures, as long as you don't risk mis-aligned memory access, don't use binary files excessively, and remember to test on different architectures.
I guess that things are a lot different if you have to deal with code that wasn't written with the explicit idea of being portable in the first place. How much extra effort was it to do the Alpha port of CTP? Do you think it was worth it? Will Loki continue to support Alpha and PPC architectures?
ABSOLUTELY! I really hope this gets mod'd up, because I too want to know when I'll be able to play broodwar in Linux. SC and SC:BW are the only things keeping WinDoze on my machine right now. I'd REALLY like to reclaim that space, and use it for productive purposes.
Also, are there any plans to port usefull non-game programs? Is Loki only going to stay in the game market, or are there any plans to diversify?
Hey Rob, Thanks for that tarball!
"Going to war without France is like going deer hunting without your accordion." - Jed Babbin
I've noticed a dearth of good Linux games being written for Windows 2000 and I was wondering when you were planning on porting games like LinCity to Windows 2000. Most of my old Win games don't work, and if you start porting games from Linux to Windows 2000, you might be able to save the OS from extinction. Do you have any firm plans in this area?
Also, could you make the explosions in this game really loud so I can taunt my boss with the sounds of my having fun? And maybe a Linux OS boss mode, so when he comes around the corner, I can toggle to a good Enlightenment screen so he'll think I'm working on something useful.
Thanks!
Will in Seattle
Security and stability are closely linked, and the game industry has often been criticised for not focusing enough on either. With the unique challenges that a game running under Linux faces (multi-user environment, ability to snoop on what a process is doing, ease of writing network proxies or bots), what does Loki do to address these issues? What should game companies in general be doing? Have you got any anecdotes about security to relate? (I know there are some from Myth II!)
--
Chris Butcher
Code Monkey
Bungie Software
I was very happy when you ported Eric's Solitaire, because it was a game my fiance could play. But it seems like that's the exception, and that the majority of commercial games for Linux either now or in the future will be these war mongering RPGs, 3D shooters and the like. I'm sure that these are more popular with the gaming audience as a whole, but does that mean that there's no hope for some more simple games, like maybe a nice board game collection or some card games? No, I don't want yet another tetris, but I do think that the 80's with the pacmans (pacmen?) and qberts was the pinnacle of gaming and would be happy to see more games like that show up on the shelves.
www.HearMySoulSpeak.com
Of course, it kind of looks like IBM snapped me up first. Too bad for those poor fools who ignored the letter, huh? Well, they can't say I didn't warn them. Listen up you all! I don't want to hear any whining when we crush you! You had your chance and you BLEW IT!
I'm only a little psychotic. Really.
BTW: Mojo's evil insight is a definite necessity for crushing the competition, so you'd better hire him too.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
Did you guys do that on purpose, was it a mistake on your part or was the original game like that? It is unnervingly difficult to get used to.
I'm trying to teach myself to set people on fire with my mind... Is it hot in here?
What can Loki do about support for simulator-related game hardware equipment? If one were to make or port a flight sim (driving sim, anything else associated with specialized controllers) for Linux, the optional hardware (joysticks, control panels, pedals, etc.) should be supported, right?
Does A3D have any plans to release the A3D 3D sound programming stuff to be used for Linux? If so, will A3D work with the Loki programmers to get the 3D sound working?
--