Lutris' blog

Day 19 : Quake on Linux (1996)

by on Sep.14, 2010, under lutris

Hurray, today we have our first native game running in Lutris.

Quake on Lutris

Quake on Lutris

Native games are usually not very complicated to setup, but here we are going to make it even simpler !

I’ve done some work on Lutris’ installer and it is now possible to have Quake up and running simply by typing

lutris lutris:quake

on the command line or by clicking a link on the Website. Sadly, this functionnality is not for you guys yet because the new django website is still on my computer. A few more things to finish and I’ll upload it on ┬áthe main server soon, promise.

Anyway, when you call Lutris with this option, the program will fetch a quake.yml file from the server which describes how the game will be installed. Please note that the installer is still rudimentary and is subject to change at any moment.It doesn’t have a gui for the moment so it is advised to run the command from a terminal to follow the installation process.

Quake’s installer takes care of downloading the Darkplaces engine and Quake data and copying them in the appropriate directory and when everything is finished Quake is here in you game list, ready to play.

If you feel like hacking a bit, here’s the Quake installer in all it’s glory :

protocol: 1
version: Strider's Quake
name: Quake
runner: linux
exe: darkplaces-linux-686-glx

  - darkplaces-engine:
  - quake_files:
  - quake_config:

  - check_md5: { file: darkplaces-engine , value: 24e7e417b32cfb06ff915f6d8f251e80  }
  - check_md5: { file: quake_files , value: 24e7e417b32cfb06ff915f6d8f251e80  }
  - extract: { file: darkplaces-engine, destination: cache, newdir: quake }
  - extract: { file: quake_files, destination: cache, newdir: quake_data }
  - move: { src: 'quake/id1', dst: gamedir }
  - delete: { file: darkplaces-engine }
  - delete: { file: quake_files }
  - move: { src: quake_config, dst: homedir/.darkplaces/id1/ }

That’s pretty much all there is to it and the file should be self explanatory for a lot of you. Note how simpler it is to read than a script for PlayOnLinux ;) (this format is called yaml btw)

Also note the version string in the script showing that this is really my personnal way of installing the game, there is no Lutris official way and everyone is free to propose his own script. And now, of course you tell me, what if a natsy user publishes a script with viruses and such ? Don’t worry, the scripts will be reviewed, rated and the user accounts will gain karma points as they publish good scripts and are good community members, when they’ve gained enough karma they don’t need to have their scripts reviewed and can begin reviewing other people’s scripts.

In the files section you see that there is a link to quake’s data files on my own server, this is of course not good since it’s a game that is still being sold and it’s not the shareware version. But since it’s a pretty old game and it was for testing purposes, it’s kinda tolerable (you can find quake 1 on lot’s of abandonware websites). If you upload a script with a torrent link to starcraft 2, I can assure you it will be removed ;) However it is tolerable to put links to the game’s content if and only if the game is not being sold anymore, and I’m not talking about ebay here, the game publisher has to earn money when you buy it. If you can’t find it on the market, then sure, share your copy with the community. It would be silly to see old games disapear because no one would share them.

On a side note, for those who tried the darkplaces engine, you see I’ve chosen the OpenGL executable. I had a strange (and very annoying) bug with the SDL version, where the view would center back as if the lookspring option was activated no matter what options were given to the game. This may be a SDL issue and it may be caused by the Xserver upgrade in Ubuntu 10.10, I’ll have to check Launchpad for related bugs.

Quake, the father of all FPS

Quake, the father of all FPS

Leave a Reply

Looking for something?

Use the form below to search the site:

Still not finding what you're looking for? Drop a comment on a post or contact us so we can take care of it!


All entries, chronologically...