In order to keep/make things as easy as possible for end-users, I thought it would be nice to have some guidelines set up that you can easily reference. Note that these are not requirements, but I do think they will improve the end-user experience.
- I suppose it would be easiest if the title looked something like "[<game>] <plugin name> (<version>, <date>)" ("[TF2] Team Scramble (v1.2, 2010-06-12)"). This way everybody can quickly see if their favorite plugin updated, or what game a plugin is for without even having to open the thread.
- A description of what the plugin does. Even though you might think "it's all in the title" it might still be unclear to users what it is exactly that your plugin adds to the game.
- Feature list
- A list of features isn't necessary, and can be part of the description, however if you have a lot of features, a separate list adds clarity.
- CVAR/Command list
- Users shouldn't have to browse through your code for hidden ConVars and commands, you better list them all, including a clear description of what they do.
- It is useful for users to see how active you are, when the last update has been released, what you have fixed/added/changed, therefore a changelog would be nice to have.
An example of a changelog can be:
* Improved the "algorithm".
* Cleaner code.
* Initial release.
- Installation instructions
- If your plugin is NOT of the type "click 'Get Plugin' button, place SMX in the plugins folder and you're done" I highly recommend to write installation and/or configuration instructions for your users.
- If your plugin has external dependencies (Extensions, other plugins) you have to tell the users this. Of course, most people do this, BUT there is also another type of dependencies, which are custom include files. Tell people why the web compiler doesn't work and supply them with your custom include files, or at least link them to the thread containing them. You could also include them in a special section in your file so the web compiler does work for everyone wanting to get it easily.
- Most people will file feature requests in your thread "Please add A", "Ohh I would love to see B". In order to keep the requests under control, you COULD add a "Plans" section in your post, so users don't have to requests features that you already plan on supporting in future versions.
- Of course, a description in text is one thing, but a picture (or even better, a video) says more than a thousand words (PER FRAME). Get people to want your plugin, to see what the advantage is of having it, and how awesome/easy it is to use.
If you have any suggestions regarding these guidelines, feel free to talk to me on IRC or send me a personal message on the forums.