You are here

Part 10 - A Note About SourceMod and Mani Admin Plug-in

What is SourceMod? As with Metamod:Source, I'll let their website (http://www.sourcemod.com/) handle this:

SourceMod is server modification for any game that runs on the Half-Life 2 engine. It is a powerful, highly optimized platform for scripting plug-ins and handling server administration. The default package comes with a base set of plug-ins, but there are over 450 plug-ins in the community.

In my opinion, SourceMod has become the replacement for the previous combination of Mani Admin Plug-in and Eventscripts. It offers basic server administration and ultimate flexibility when it comes to customization.

So what's Mani Admin Plug-in then? Again, from their website (http://www.mani-admin-plugin.com/):

Mani Admin Plug-in is a feature rich menu driven administration tool for games based on the Source Engine.

While not a very long description, the key phrase there is feature rich. Mani Admin Plug-in was one of the first administrative plug-ins for the Source engine and continues to be one of the most widely-used. It contains dozens of features built-in to the package. Whereas SourceMod focuses on providing an environment for outside developers to provide plug-ins that extra functionality, Mani provides a high level of functionality out of the box.

The history of Mani Admin Plug-in includes a period where the lead developers did not update the package. They provided their source code to the SourceMod team. After some time a new development group emerged and they have been updating Mani Admin Plug-in once again.

So this leaves a very important question - which administrative "mod" (plug-in) should I use? Should I choose SourceMod? Or should I choose Mani?

There's no easy answer to this question. SourceMod is the newest environment. It supports plug-ins/scripts where Mani does not. Mani provides functionality not found as part of the base SourceMod package. They both have web modules.

At some point, I will update this section to include a table of a full breakdown of the feature differences. Until then please download both plug-ins and perform your own testing to see which one is best for you.

Two follow-up questions. (1), why are you talking to yourself in the third person? And (2), what are you running?

After a couple years at this I still prefer Mani as my main administrative plug-in. It is the environment I am most familiar with and I believe still provides the best feature set.

At one point earlier this year I had a couple of server admins throw out Mani thinking it was responsible for vulnerabilities that left their servers hacked and unusable. It turned out an unpatched security hole in the Source engine itself was to blame.

The result of switching from Mani to SourceMod was mostly positive (the server admins were able to find enough plug-ins to match most of the functionality they needed), but the experience was far from perfect:

  • Out of the box, SourceMod lacks an equivalent ma_admins command to see if admins are in the server
  • SourceMod plug-ins have conflicted which each other causing one or more plug-ins to fail
  • There are many plug-ins that perform the same task in SourceMod (and choosing the right one which provides the needed functionality without adding additional/unwanted features or causing disruption/crashes is difficult)
  • The last SourceMod plug-in one of my server admins tried to gain much of the "fun" functionality from Mani (give, teleport, etc) ended up crashing the server too frequently. The alternative was using multiple plug-ins where features, admin levels, and immunities were not consistent.

Hey, asshole! What are you actually running?

For my last Surf server build, I ended up running both plug-ins. I used SourceMod for security and as a replacement for Eventscripts (NoBlock, Knife Syphon, etc), then used Mani Admin Plug-in for player administration.

The next 3 sections assume the same setup - SourceMod will be used as the security and scripting environment while Mani Admin Plug-in will be used as the administrative environment.