Garry's Mod Wiki

Revision Difference

Addon_Creation#568325

<cat>Dev.Workshop</cat> <title>Addon Creation</title> # What are Addons? Addons are modifications (mods) that Garry's Mod automatically loads during the process of loading a map or connecting to a server. Addons can add things like maps, sounds, and enemies. They might also change existing parts of Garry's Mod or even other Addons. # Creating a New Addon All Addons, even those downloaded from the Steam Workshop, start as a folder placed in the `garrysmod/addons/` folder of the Garry's Mod installation. Your Addon's folder should be named using lowercase letters, numbers, underscores, and dashes. | Addon Folder Path | Issues | |-------------------------------------|-------------------------------------------------------| | `garrysmod/addons/cool_space_laser` | None! | | `garrysmod/addons/1990s_nostalgia` | None! | | `garrysmod/addons/My Cool Addon!` | Capital letters, spaces, and special characters (`!`) | | `garrysmod/rocket_car` | Placed outside of the `addons/` folder | | `garrysmod/addons/rocket_car` | None! | ## Where is Garry's Mod installed? You can find your Garry's Mod installation location using the `Manage > Browse local files` context (right click) menu option on Garry's Mod in the Steam library. <image src="b2b4c/8df14ed8fb8f4ab.png" size="117380" name="BrowseLocalFiles.png" /> # Addon Folder Structure Addons must follow a predefined folder structure in order to work properly. Each Addon's folder structure mimics the folder structure of the core game's files which can be seen in the `garrysmod/` folder. Files in Addons (and in the core game files) are grouped together into folders based on file type. The folders you can add to your Addon folder are: | Folder Name | Note |⤶ |-------------------------|-------------------------------------------------------------------------------------------|⤶ | `backgrounds` | |⤶ | `data_static` | | | `gamemodes` | For more information, see <page text="Gamemode Creation">Gamemode_Creation</page> | | `lua` | For more information, see <page text="Lua Folder Structure">Lua_Folder_Structure</page> | | `maps` | | | `materials` | | | `models` | | | `particles` | | | `resource` | | | `resource/fonts` | For more information, see <page text="Font Usage Guide">Finding_the_Font_Name</page> | | `resource/localization` | For more information, see <page text="Addon Localization">Addon_Localization</page> | | `scenes` | | | `scripts` | | | `scripts/vehicles` | For more information, see <page text="Vehicle Scripts">Vehicle_Scripts_Information</page> | | `sound` | Unlike other folder names, `sound` is not plural and does not end in an "s" | | Folder Name | Note | File Types | Tools ⤶ |-------------------------|-------------------------------------------------------------------------------------------|--------------------|⤶ | `backgrounds` | Startup images on main menu | png, jpg | Any graphic tool⤶ | `data_static` | Files that contains data for your script that won't change | <page text="Allowed Files">file.Write#arguments</page> | | `gamemodes` | For more information, see <page text="Gamemode Creation">Gamemode_Creation</page> | | | `lua` | For more information, see <page text="Lua Folder Structure">Lua_Folder_Structure</page> | lua | <page text="Code Editors">Lua_Editors</page> | | `maps` | Game Levels | bsp, nav, txt, lmp | hammer and hammer++ | | `materials` | Textures and materials for your maps, UI and models | vmt, vtf, tga, png | Photoshop, Gimp, VTFEdit | | `models` | Model assets | mdl, vtx, phy | Blender, 3Ds Max | | `particles` | Particle Effects | pcf | Particle Editor (-tools) | | `resource` | | | | `resource/fonts` | For more information, see <page text="Font Usage Guide">Finding_the_Font_Name</page> | ttf | | `resource/localization` | For more information, see <page text="Addon Localization">Addon_Localization</page> | txt | | `scenes` | | vcd | | `scripts` | | | | `scripts/vehicles` | For more information, see <page text="Vehicle Scripts">Vehicle_Scripts_Information</page> | txt | | `sound` | Unlike other folder names, `sound` is not plural and does not end in an "s" | wav, ogg, mp3 | <note> Addons only need to include the folders that they actually have files in. Empty folders don't serve a purpose and should be removed. </note> # Publishing Addons to the Steam A full guide on Steam Workshop publishing <page text="can be found here">Workshop_Addon_Creation</page>