If there are two individuals in the Linux game scene today that they brought a lot and very good Free games to all Linux users, these should be Michael Speck of LGames and Bill Kendrick of NewBreedSoftware. Their games have been played not only by Linux users, but by users on all major platforms via the portability of the SDL game library. Today, we interview Michael Speck, regarding his games, his opinions about the Linux game market, about Linux’s performance as a multimedia platform, his future plans and much more.1. Tell us how you got involved with computer programming. Do you only enjoy game programming, or programming in general? What do you do in “real life”?
Michael Speck: I am at the age of 22 and in real life I study mathematics at the university of Stuttgart, Germany. I also work there in the High Performance Computing Center as an assistent to parallel programming issues.
I got seriously involved with programming when was about fifteen.In school we were about getting lessons in computer sience and I was seeking an opportunity to evolve some special skills back in these days. As my older brother was already programming I thought: Why not learn coding? and so I sat down and worked my way through the TP 7.0 Compendium in my holidays. After that I had the rough basics and as I extremely enjoyed computer games I wanted to do some on my own. The person who made this possible was my brother Thomas who implemented some assembler routines to draw graphics fast. This was essential as I didn’t
know about graphics at this time.
From there on I development different games from DOS to Windows to Linux and never thought about applications. Games give the most fun to a user and that is my ambition behind programming: to have and bring fun.
2. You are mostly using SDL for your games. Tell us, are there some features that you would like to see implemented in a future SDL and related SDL libraries?
Michael Speck: I would like to see a merge of related libraries like SDL_mixer and SDL_image into SDL itself as the routines they provide are very important and still compatible with the basic idea of SDL as DirectMedia Layer. Apart from that I consider SDL to be complete.
3. What is your opinion on the DirectX, Allegro & ClanLib APIs? What made you stick to SDL? Have you tried OpenGL in conjuction to SDL?
Michael Speck: What makes SDL a clear winner is the high portability and easy installation, no one wants to be stuck with dependancies. I never used Allegro or ClanLib for developing but I once had to install ClanLib for a game. This was an annoying and erroneous process and as using a program begins with its installation this is a big minus to ClanLib. It’s not a very comfortable thought that users might turn away before giving your game a try because installation is too difficult.
Long before thinking about portability I have chosen SDL due to another fact: It’s similiar to the fine interface of DirectX which I used in Windows before.
I once coded a little OpenGL demo for Windows to learn about it’s abilities but as I didn’t have hardware 3D support for Linux for a long time I skipped the idea of 3D games to reach the maximum number of users possible.
4. What is your favorite game of all time, and which one of your games is your favorite?
Michael Speck: I don’t have a special all time favorite but one game that impressed me very much was Turrican back in the days of Commodore 64. After that Doom, Command&Conquer and Fallout2 really struck me.
Concerning my games, LBreakout2 has meant an aweful lot of work and I had some very hard and very good times coding it. So the load of efforts and emotions which this game represents make it my favorite one.
5. What other games are you planning to design and write? Will you seek a profession in game programming in the near future?
Michael Speck: A new project which is a cooperation with other developers is currently in the designing phase and aims to extend LGeneral into a networked table-top like game. It has no name yet.
I propably will also take care of ‘Operation Citadel‘ to save this abandoned game from distinction and to port it to SDL.
I think I will seek a profession in programming, if possible in game programming, after I finished my studies which will take about four to five years. Until then I will run LGames as a hobby of mine.
6. What do you think about the Linux performance on multimedia in general?
Michael Speck: Well, it’s easy to watch AVIs, MPEGs and listen to MP3s so the perspective of consuming is covered well. But although I tried all major addresses for Linux software I wasn’t able to find a convincing tool for audio editing. Either they had outrageous dependancies or were to limited in there abilities so I used a shareware tool in Windows to produce the LBreakout2 sounds for example. On the other hand the GIMP is an excellent free tool to modify and draw pictures so ‘creating multimedia’ is a topic that still needs a lot of work.
7. Have you tried other OSes besides Windows and Linux? Which Linux distro are you using?
Michael Speck: Windows and Linux are the only ones. My first Linux distribution was SuSE 6.0 but as its updates became too expensive I switched to Mandrake 8.x.
8. Do you believe that there is still future for the professional/heavy 3D games market under Linux, after the dismiss of Loki Software? What changes to the Linux infrastructure can help in the success of the particular market?
Michael Speck: If games are developed platform-independant from the start which allows to sell it for different platforms in one package with one price then there will definitely be a market under Linux. As long as games are developed on a single platform and ports are skipped with the excuse of higher prices such a market is in question so the decision is up to the industry.
One thing that Linux needs in general is a unified directory structure as alternatives are nice to have as long as they are placed correctly. Concerning the 3D game market installation of 3d hardware support must become very easy, best integrated into the distro’s installation so that any Linux user becomes a potential 3D game user.
9. Personally, I love simple, arcade/platform/puzzle/adventure games, like the ones used to be found at the coin-ops, Amiga and Atari. I like games that I don’t have to read a manual to learn to play. What is your take on today’s “complex” 3D games that take years to complete developing them? Do you enjoy these as much?
Michael Speck: I stopped playing games that need serveral days to be played through. It’s simply no longer my kind of game I prefer the little action and arcade games that can be played in between so concerning myself these large 3D games are a big waste of money.
10. In the same frame of mind of “Vi vs Emacs” and “BSD Vs Linux” which one is better and why, in your opinion? Pacman or Tetris? 🙂
Michael Speck: Tetris! Pacman is lovely but I think Tetris is a more interesting challenge because one has to imagine how to rotate and place the next block before one can actually do it.
It would be great if Michael was able to port citadel to SDL and hence a Linux port, ive not tried the game yet but it looks good. I like lgeneral, but it has its shortfalls, but still a great game nonetheless.
keep up the great work Michael
Good point about Suse, I also haven’t used it since iso’s stopped being freely available – and i don’t know if it’s any good these days, so i wouldn’t buy it or recommend it to anyone. I would guess Suse are shooting themselves in the foot in the long run.
I’m glad the moderators on osnews are more accepting and intelligent than those on slashdot. Thanks!
Well, if you dowbloaded it then SuSE never made any money from you in the first place.
Way back when, I bought SuSE 5.1-5.3 then 6.1. I hadn’t looked at it again until version 8.0. I have to say, it’s improved a lot over the years. After trying Mdk 8.2, SuSE 8 and RH 7.3 (and Limbo2) I’d have to recommend SuSE 8.0 for desktop use. It is seriosuly slick. It felt as together as BeOS did for me. I urge you to try it. There’s now a 16MB ISO that does an FTP install if you can’t afford to buy the boxed set. It’s relly great. Yast2 has pretty much everything you’d need in a system management tool, and YOU (the online update tool) seemed almost as slick as Debian’s apt-get. It won’t be replacing Debian on my laptop yet, but it was a very strong distribution. It seemed very professional.
As for the free ISOs, I like what Libranet does. They sell the newest version but offer the previous version free to download. This way a user can get a feel for the system and decide if they want to purchase the shipping version. Maybe SuSE should give away 7.4 ISO files. Seems a good comprimise between making money and keeping people happy.
As for the article, good interview. I’d never played any of the lgames, but Debian had most of them packaged. They seem quite good.
Did someone ever thought about doing a game distro?
CD-ROMS included in magazines sell very well here in Brazil and, at least in my case, I found installing SDL (and other things a F/X-enriched file manager demanded) way too difficult (in fact, I gave up).
Maybe we could go to next level: standardize on some principal Linux distros and go for game distros, office-software distros, multimedia distros etc. which would be added onto those main Linux distros.
Of course, RedHat, Mandrake or Suse could do this, but I think we’d have more competition with independent distributors of an specific class of software.
Check out Mandrake Linux gaming edition
That is *so* true about distros needing to put 3D hardware suppport in there from the very start. As things stand, 3D gaming on Linux will never take off big-time!
In my opinion, LBreakout2 rocks! (especially the BeOS version!) Nice interview, i’d like to see a map/scenerio editor for LGeneral… and the network version sounds fun. When that one comes out can you port it to BeOS Eugneia?
*If* his network code plays nice with BeOS, yes.
He does not use SDL_net for the network code of LB2 (which anyway its BeOS version is currently broken and it does not work well with BeOS’ net_server), while by not using something as cross platform as SDL_net it gets tricky to port it to BeOS easily, especially if he is using sockets a lot.
With BONE that would not have been a major issue, but with net_server, it is really difficult to port real networking apps on BeOS…
Michael Speck: Windows and Linux are the only ones. My first Linux distribution was SuSE 6.0 but as its updates became too expensive I switched to Mandrake 8.x.
So, I wonder, how could you play Turrican which was your all time favourite on the Commodore 64, if you only use Windows and Linux before….?
Anonymous: Good point about Suse, I also haven’t used it since iso’s stopped being freely available – and i don’t know if it’s any good these days, so i wouldn’t buy it or recommend it to anyone. I would guess Suse are shooting themselves in the foot in the long run.
On one hand, they can provide ISOs so freeloaders can download – not only they don’t get any money from it, they waste bandwidth. On the other hand, you loose market share. There is an FTP install, use it, see if you like it, and buy the package. This is the sole reason why Linux businesses are dropping dead one after another…
So in the first place, how do they shoot their own foot when they don’t make a single cent out of you?
Ben: Maybe SuSE should give away 7.4 ISO files.
IIRC, they didn’t have a 7.4…..
Besides, I wish they can have ISOs for download. For a fee of course. Why? There isn’t one, not even one, reseller in south east asia selling SuSE 8.0. I could buy over the Net, but shipping would cost more than the product itself…
I’m mostly using Windows as my game development platform, and using the ClanLib SDK. I tried first SDL, but found actually ClanLib *ALOT* easier to compile under Windows than SDL. After I had coded on my game for a while, and wanted it ported to Linux, I tried ClanLib under Linux, and it was a simple ./configure, make install. It uses libpng, libjpeg as dependencies, but who hasnt got those installed?
Anyway, its all about taste, but I find ClanLib providing such ultimately more than SDL, and lets me concentrate on developing my game. If you compare ClanNetwork and SDL_Net, you’ll see how much easier it is to use, while not loosing any controls since its high-level.
But I guess after developing 3-4 games, you have coded much of your gameengine needs (its just that I saved much of that work).
I checked their homepage and didn’t find a hint so maybe they changed it but back when I tried to install it ClanLib relied on two underlying libraries. I think libhermes was one and I can’t remember the other. It was horribly broken and took me quite the time to get it to run. If they got rid of it, good but as you said I already coded most of the algortithms I need so I’ll surely stay with SDL.
Actually, you’re right, ClanLib does depend on Hermes. I didnt notice, since it was already installed in my distro. I talked to the authors in irc, and they plan to move Hermes into the sourcetree, so the only dependencies will be libjpeg, libpng and zlib (which all distroes come with, I think).
I’ve got to tell you that I downloaded Ltris and Lbreakout
and instaled on my computer at home. And what’s really funny
my parents play those great games everyday! So, thanx for the L games.
Whomever complains about dependencies is still in RPM dark ages and have never seen the dpkg lights as witnessed thru apt-get and dselect.
Seriously, it’s one of those cases of half-baked “industry standards” (RPM) carrying far too long over and beyond its capabilities, thus affecting and slowing down the whole industry.
It’s finally nice to read about somebody in linux development community that’s concerned about the end users install experience. Lbreakout2 is great and my 4yr old daughter loves lpairs and I can install them both in 10 minuets.
Suse is a great distribution, great documentation, support and updates. For those too cheap for Suse, try Gentoo Linux. Very good distribution but a lot of work to maintain. Makes you appricate what you paid for.
urpmi for Mandrake is much better than apt-get. e.g… I installed debian on my sparcstation the other day. I needed the development headers for PAM to compile and install OpenSSH (yes I know there’s a .deb, but that’s one of the packages I like to maintain myself).
Anyway, I tried “apt-get install pam”, “apt-get install pam-dev”, “apt-get install pam-devel”. Nothing worked. I finally searched google for “pam” and “debian”, and found what I was looking for – libpam-dev.
urpmi for Mandrake does pattern recognition on whatever you tell it to install, so if I say “urpmi pam”, urpmi will say “Here are the packages containing the string ‘pam’:”… then I figure out which one I want to install and do it.. i.e. “urpmi libpam-dev”.
Also, rpmdrake is a really nice graphical tool to look through available and installed packages. Much better than dselect.
” I found installing SDL (and other things a F/X-enriched file manager demanded) way too difficult (in fact, I gave up).”
What?! Are you using windows? If so all you do is drop the .dlls in the windows/system directory, come on that isnt that hard! I can give you step by step instructions if you need them. Seems pretty simple to me..
“I tried first SDL, but found actually ClanLib *ALOT* easier to compile under Windows than SDL.”
Well SDL has precompiled .dlls, unlike clanlib. I tried clanlib and gave up.. why should we be _required_ to compile ANY DLL?! First off its not compatible with every compiler, second its a pointless step.
When you distribute the game/demo are you going to make the home users compile your clanlib DLL before playing?! hehehe
Compiling the DLL shouldnt even be an issue, USING it is the real issue here, and to me clanlib seems much more complicated than SDL, you might as well just use DirectX!
SDL is great, now I dont even look at ClanLib or DirectX..
(Except for porting to SDL) ;D
“As things stand, 3D gaming on Linux will never take off big-time!”
Why not? Linux users cant go out and buy a 3D card like everyone else?! Wont SDL and opengl code run on Linux if they have a card installed? Is it really THAT complicated to install a 3d card on a linux machine?… if so, thats sad, and its no wonder why there are so many(too many) windows users..(hmm, should I pick plug and play, or 50 pages of complicated instructions, yea..)
Perhaps you might be interested in the ongoing LBreakout2 Theming Contest on happypenguin.org:
I’ve been happy with Slackware for a long time. I just like its simplicity and I’ve hardly ever had a problem with it. It seems very stable.
As for the Allegro/SDL/ClanLib thing, I think they all have their pros and cons. Allegro is very easy to learn and it has a great community, ClanLib is just a completely different concept with its C++-ness, and SDL is so simple. IMO, SDL shouldn’t add any of these addon packages into its base. That’s what makes SDL great–it’s simple, fast, and small. If you need something, you get the module. For Windows, it’s not like it’s hard to package all the required deps. For Linux, I’m hoping that SDL and most of its major packages start being included in distros. But SDL is very easy to install (in Linux).
Something else I’ve been experimenting with lately is pygame, which is based on SDL. It has some really amazing features, installation is a snap (you don’t have to compile in Windows), and it is python! Gotta love python, heh.
Maybe someday Linux can have some cool games, but I’m putting my money on WineX. They’re really doing a great job, and I think soon it will be a very legitable idea to play DirectX-based games under Linux (it already is for a lot of people). Now if only there was support for my blastest cheap WinModem chipset, heh.
Why would you want to do that? DirectX is so confusing and seems badly put together. And this will also require the user to buy the WineX product just to play your game, when you could have saved yourself and him the trouble simply by using SDL! Also what can possibly be the benefit of using a 3rd party application to run a game which is created with DirectX, a product that is not designed to run on your linux machine?!