PHP Bulletin Board Home
News About Home
Features of phpBB Test drive phpBB Downloads Support for phpBB The phpBB Community Styles for customising phpBB 3rd party modifications to phpBB

Support Home | Knowledge Base Home | Submit Article | Search Articles | Browse Articles
 What makes a good MOD 
Description: A guideline on creating good MOD's
Author: Swizec
Date: Sat Apr 23, 2005 1:59 am
Type: HowTo
Keywords: greatness, features, configurability, coding, functions
Category: MODifications
Many times when creating big complicated blobs of code even I could hardly understand I asked myself, "Why am I doing this like so, is there no easier way?", and the answer mostly was that there is an easier way, but now that I was so far along it would be way too time consuming to re-do all the code. So in time I came up with a few ideas on what makes a MOD good, and in what way to code it to be as simple as possible, for you and the user.

1. Simple installation

People like it when a MOD can be easily installed, even without EasyMOD. So how do you achieve that when your MOD modifies so much. Easy, use functions, or even better, objects. Use a function or an objec,t with many functins, for any part of code you will be using more than once. This way you avoid repetatively modifying the same code, and instead just have to change a line or two here and there, which from my experience brings 2000 lines of a .mod file down to 500, pretty neat.

2. Include files

This is another good way of reducing install times of your MOD's. By placing all of the functions you use in a file you replace 500 lines of code with just one that goes in the right place. And not only that, you don't have to go back to changing the .mod file everytime you change a function, since the file gets included anyways there is no need to give any special instructions, or code that needs to be pasted, for it's use.

3. Use the code you modify

Now this is a big one many forget. When you are modifying something, why bother with reinventing hot water, eerything is there for the picking, all you need is copy/paste/edit, and remember it's that trio that is your best friend when modifying code. Be careful though, lots of small hard to find errors occur like that.


So, already by doing those 3 you have split your work almost by half, and even more for the user, am not sure, but I think that for the MOD team aswell. But your MOD is now only coded great, it's still not great, what gives it the final nudge into greatness is appeal, so what you need is:

4. A good idea

Yes, I know this sounds redundant, but there are still many out there who just can't think of what to do and end up doing something only ghosts will use. If you thought up a MOD you'd need then it's half way to being usefull, if you can find atleast one more that would also use something like that, then it's guaranteed there are others and the MOD is worth spending time on.

5. Features

Pack your MOD's with as many features as you possibly can without spoiling them, people like it when they only have to install one MOD instead of 10, plus one big MOD instead of 10 small ones will surely work better because all the features will be designed to work together from the beginning and you don't have that many MOD collisions.

6. Configurability

As the old saying goes, "Choice is freedom", you should incorporate into your MOD's as much choice as possible. Make every feature possible to be configurable in as many ways as possible, the one people like most are permissions Wink . Do not be like Microsoft, no harm intended, and don't tell the users what they want, let them choose for themselves, but at the same time have good enough default settings for everyone to be able to use your MOD's because noone will want to use them if they cannot make them work like they want.


I think that basically sums it up, if you do all this I'm sure people will remember you for your good MOD's and hopefully this article will help atleast some of you to create better MOD's than now, I know it helped me atleast a bit.

Username: Password:
News | Features | Demo | Downloads | Support | Community | Styles | Mods | Links | Merchandise | About | Home
 © Copyright 2002 The phpBB Group.