Mod Making 101
Tutorial 1 - Mod Making 101
Hello and welcome to wonderful world of quake mods! Quake3 seems destined to be the best ever platform for mod making - we have the advantage of programming C in an industrial standard IDE (such as MSVC) and the security features of .qvm's. We also have the very best fps graphics engine to date. Not to mention out-of-the-box support for ctf and bots. That gives us a pretty solid platform to build from.
This first tutorial isn't really a tutorial (!?) - it just describes mod making basics (what is a mod, how does it work etc). If you're a mod making veteran (or you just want to get your hands dirty), jump right in at tutorial #2.
Still here ? Ok, the best way to learn q3coding is just like sex - practise practise practise ! So try coding all the tutorials on this site. Yep, that's right - don't just read them, go ahead and compile each one ! You'll learn heaps by browsing through the code and actually typing in the code modifications yourself. But first... some background.
What is a mod?
A quake3 modification or 'mod' is essentially a new game you can play in quake3, using modified rules / weapons / levels / characters / etc. Since the early days of quake1, id software have generously allowed the community to create their own mods. [In my opinion, it's these mods that have given quake it's longevity and fostered the great quake community we have today]. Who can forget Zoid's "Capture the Flag" (ctf) and TFS's "Team Fortress" for quake 1 ? If you haven't played a mod before, go and have a play at ctf. In fact, why not go and have a bash anyway... ?
(3 hours later)
... back already ? Ok. It's a great feeling (playing ctf) isn't it ? Who would have thought that a simple "run around and shoot everyone" game like quake could have been modified into such a classic ? There have been hundreds of mods and many classics. Have a browse through the mods section at planetquake.
My favourite all-time list of mods is [personal opinion, no flames - please !] : (1) Ctf (2) Team Fortress (3) Duel / Teamplay mods (4) Holy Wars (5) Rail Arena [shameless plug, sorry!]. Each one of these mods had it's own special 'feeling'. The best way to test a mod is to play it at a LAN party with your mates and observe everyone yelling and screaming at each other in the heat of the game... that's what makes a great mod, IMHO.
2. Who makes mods?
Well potentially, you (since you're already reading this, duh). If you are interested in making mods because you love the feeling of capturing the flag with your buddies and you reckon you can contribute something to the quake community - great ! If you want to get into the games industry yourself, mods are a great way to showpiece your skills. Who knows, create a killer mod and you could be the next Zoid (he nows works on contract id).
If you want to make a mod and sell it, you're in the wrong ball park - mods can only be given away (read the license agreement). You can't distribute your mods on cd either, they can only be distributed electronically.
3. How do you play a mod?
You'll find a mod you like either on a webpage somewhere, or possibly in your server browser (in-game or external e.g. GameSpy). If it's a "server side only mod" then all you need to do is connect to the server (you don't need to download anything). Bang, you're playing! Most mods however require a client download... you'll need to download some stuff and extract it to your quake3\mod_name directory. (As with downloading anything, be careful!).
We might see future q3a support for auto-downloading .qvm's, but until then we're stuck with a manual download. Once the mod is installed, find a server running that mod and go play! To run your own mod, run C:\quake3\quake3.exe +set fs_game mod_name (substitute your drive letter for C:, I'll leave it off from now on).
4. What's involved in making a mod?
- 1. A good idea
- 2. C programming skills
- 3. Knowledge of the q3a codebase
- 4. Team members to complement you (mappers, modellers, etc)
- 5. Go for it !
That's pretty much it. Get an idea, some coding experience and then get jiggy with your compiler. When you have created a playable version of your mod, ask your friends around for a LAN party to test it. If you find them screaming at each other ("You BASTARD !!!", "Get the flag, help me get the FLAAAG!" etc) then you've done well. Once all the bugs are out, release it on the net (contact firstname.lastname@example.org when you're ready) so that other people can enjoy it. Pop up your own server if you can (or maybe ask a server admin to run your mod for a while).
5. Your very own mod!
So you make a mod, release it on the net, it kicks up a storm and you become famous in the quake community. It's happened to many people after making many great mods. I still get emails every other week or so from people saying "I played your quake2 mod, it's great my friends and I had a blast - thanks!"... that makes it all worthwhile.
But the road can be rocky sometimes - be prepared to get heaps of constructive criticism (especially if you release a mod without really testing it 100%). Be prepared to get stuck for days trying to nut out why your game is crashing. Be prepared to have team members quit on you. Be prepared to have to make choices between quake and other people in your life (yes it's a big commitment, I once lost a girl to quake [and yes, it was the right choice!]). But most of all be prepared to have HEAPS of fun !
... Still here ? Great. Now go get coding, and "keep it real".