No announcement yet.

Compiling Quake/QW Engines

  • Filter
  • Time
  • Show
Clear All
new posts

  • Compiling Quake/QW Engines

    Okay, were do I start. I guess first would be that I am a complete n00b when it comes to programming and anything that relates to it.

    Secondly, I got Visual C++ 2005 Express Edition just to try and get my feet wet when it comes to programming and all the stuff that goes into it.

    What I figured would be a good starting point would be trying to compile source engines from what are already complete working packages. I could then go in and play around with the source code and see what different things do and recompile again. However, my newbieness pours out of me and I can't even figure out how to make the stuff compile.

    I load up the project files into VC++ and thought it would be as simple as clicking on the 'build ezquake' button and it would do it's thing and I would have a freshly made .exe dumped onto my hdd. Well, things didn't go so well and instead I ended up with 150 errors and warnings telling me I'm an idiot.

    So, this gets to my main point. Can any of you REAL programmers give someone like me a walkthrough on how to compile an engine source such as EzQuake or Qrack? Am I missing files? Do I need to download other stuff outside of the main source .zip file? I am completely lost and need some direction. I do realize that learning C++ is not something I will pick up in a week, but I really would like to dive into it and see if it's something that I can learn in time.



  • #2
    you won't be able to compile quake with VC2005 express, it's missing some required libraries.
    you will also need some libraries from the directx SDK (for qrack at least).


    • #3
      Here is an article on how to compile Quake with MS Visual C++ 6.0

      You need some .bin file included in BINS_DDK.EXE and I had to Google for it but found it. It is really easy once you get everything setup, you need the original Quake source code too (download) in most cases.

      There is this thread at

      RocketGuy has made his own versions of Qrack and like he posted above and he told me that Visual C++ 2005 Express Edition can't be used to compile Quake.

      The guys at are the best to ask about this kind of thing. - Being exactly one-half good and one-half evil has advantages. When a portal opens to the antimatter universe, my opposite is just me with a goatee.

      So while you guys all have to fight your anti-matter counterparts, me and my evil twin will be drinking a beer laughing at you guys ...


      • #4
        You can compile Darkplaces with Dev-C++ if you install the 2-3 necessary headers (they are included in some source archive and/or the directx sdk). ezQuake will probably work with Dev-C++ too. Go to #ezquake in or ask in their forums at sourceforge.
        Quake 1 Singleplayer Maps and Mods


        • #5
          May I recommend that if you really want to get a basic understanding of C(++), you should eventually learn to use a real compiler. And may I recommend that you start programming with

          a) a simple text editor that has syntax highlighting
          b) a compiler
          c) a good book from your friendly library.

          The widely-used C++ compiler by Borland is available _for free_ here:

          Borland C++ free download

          and if you want a very short, very good introduction to C programming, read this.

          To just compile a quake engine, you need close to zero programming knowledge, apart from how a compiler works and what files it uses to make a program. Find a forum devoted to programming or go to an appropriate newsgroup (using Google Groups or something.) They will help you.

          I regularly compile my own stuff (on Linux) including Quake and Quake2 engines. I am also modding for Nethack and Quake2 and doing some bash scripting.

          Games like Quake or Nethack are probably not a bad starting point. I learned a lot by looking at the Nethack source and going, "I wonder how this works" or "I wonder how I can change my character's starting inventory." Then first I would look where starting inventory was defined, and go from there.

          What has proven invaluable is learning how to search the source for keywords. For example, knowing which files contain the word "inventory" gives one better access than reading every file. Under Linux you use grep for this, but I'm sure Windows has a similar tool.

          All this is entirely technical stuff that doesn't require programming skills but is good to know.

          gl, hf.
          Scout's Journey
          Rune of Earth Magic


          • #6
            Thanks for the help guys! I finally figured out how to make Quake compile and have been playing around with source code a bit, but can't really make sense of 99% of it.

            Now comes the hard part of actually learning what all the algorithms do and implimenting my own ideas. I am going to buy a few C++ books and start reading and experimenting. Trial and error has always been my best teacher.

            I have heard from many college students and programmers in general that the Quake source is a great starting point for any aspiring programmer.