2. Filename Conventions

Not open for further replies.
Taken from SRB2 Message Board

These are the filename conventions for all .WADs and .PK3s, going into detail regarding mod prefixes.
If your mod does not follow these guidelines, your mod cannot be approved, and you will be instructed to change the filename(s) appropriately.
Mods comprised of only a .lua or .soc file do not use prefixes.

  • All files require a mod type prefix identifying the game, gametypes (if maps are included), and a few other criteria to appear at the beginning of the filename, separated by an underscore. (_)
    • For custom gametypes, check the release thread for the base mod for the appropriate prefix(es). If you're creating a custom gametype, the prefix your mod will use will be decided on during the submissions process.
  • All files require a version suffix which appears at the end of the filename. It is preferred to use an underscore (_) or hyphen (-) followed by "v[number]", but as long as it is clear that your file has a version number at the end, it's fine.
  • Prefixes and Version suffixes are not case sensitive. It's generally preferred to keep prefixes as all caps for the sake of consistency, but not required.
  • Files ported from 2.1 or earlier must be at least a full version number higher than the earlier edition of the mod.
  • Add-on filenames may not use apostrophes (') or spaces. These interfere with scripts and some OS functions.

EG, (ModType Prefix)_(Addon Name)_(version number).(filetype)



SRB2 mod type prefixes:
S (SP, Co-op, Competition)
R (Race-only, particularly circuit)
M (Match, Tag, H&S)
C (Characters)
L (Lua)

When a file fits multiple criteria, they are listed in the same order shown above.

For maps, each map typically has a "primary" gametype which is often also playable in other gametypes. For example, singleplayer stages can almost always be played in race mode, CTF stages are typically functional in match mode. However, for the purpose of a mod prefix, you typically only consider a map's "primary" mode, with other gametypes that incidentally happen to work being implied.

Thus, a wad with multiple maps is usually the reason you would use multiple map gametype letters like SRMF.

If you had a wad with maps and features fitting all of these criteria, then you'd name it SRMFCL_toomanygametypes-v1.wad. If your wad has a Match map and a CTF map, it would be MF_mapname-v1.wad, and so on and so forth.

Lua does not refer to other scripting elements such as SOC or console scripts. It has a prefix mainly because having any Lua scripts loaded causes a noticeable increase in lag.

While some maps may support Singleplayer but not Coop or Race, these are rare and the exceptions can be pointed out in their release thread.

If your mod is a custom gametype that adds a new tab on the gametype menu and requires its own maps, then you must suggest what your prefix for it will be, as all addons for your gametype will need to share it. For example, a mod based on Basketball could be prefixed something like "Bball_" or "BB_", preferably something short. Avoid prefixes that are already being used.

Version Suffixes:
Version suffixes state the version of the file, typically using a v (for version) followed by a decimal number, and separated from the rest of the filename by an underscore (_) or hyphen (-).

If the add-on is a port of something from 2.1 or earlier, the version number must be incremented by at least a full number. If the file previously did not have a version number, then use v2.


SRB2 Persona Prefixes

For mods that only work in Persona, they should start with a P. The prefixes are otherwise the same as standard SRB2.


SRB2Kart Prefixes:

Due to how different SRB2Kart is from vanilla SRB2, different prefixes are required for SRB2Kart mods.

SRB2Kart add-on type prefixes:
K (Required for all SRB2Kart files)
R (Race)
B (Battle)
C (Characters)
L (Lua)


Race is always listed first, then Battle, then Character, and finally Lua, if your file contains all four.

Cross-Mod Prefix

For mods that can be used for both SRB2 as well as SRB2Kart, you need to add an "X" at the beginning, even if its just a ".lua" file.

Not open for further replies.