Creating an addon

From GMod Wiki

Jump to: navigation, search

An Addon is a folder with files in it that goes in the "username/garrysmod/garrysmod/addons" folder. When garrysmod is then started, every file in every folder in addons folder will be sent to the "username/garrysmod/garrysmod/" path instead. This is nothing noticeable, as you can't see the files in those folders. That's why this system is good. You can just remove the folder from your addons directory, and now, it doesn't exist anymore, so you don't need to search through every folder in "garrysmod/" directory for files.

However, if the addon ain't built correctly, nothing will happen at all. For garrysmod to take the stuff inside your folder, a info.txt needs to be located in the FIRST folder, the folder at "username/garrysmod/garrysmod/addons/MyAddon/". This info.txt contains information about the addon itself, read below how to set it up correctly.

REMEMBER, if the info.txt doesn't exist in your addon folder, it wont get loaded when garrysmod loads. This is the most common problem when installing wiremod and it won't work.

Contents

Addon Folder Structure

This is the structure of an addon folder.

Addons.jpg

Addon info.txt

This information is primarily for addon writers.

This needs to go into a file named info.txt in the folder for your addon.

"AddonInfo"
{

Start the file.

	"name"		"Cheese Balls"

The name of your addon.

	"version"	"1.3.3.7"

Version of your addon.

	"up_date"	"06/12/2007"

Release date; this is probably in MM/DD/YYYY format.

	"author_name"	"John Smith"

Your name/pseudonym.

	"author_email"	"[email protected]"

Optional; leave blank if you don't want to provide it

	"author_url"	"http://yourhomepage.com/youraddon.html"

Same as author_email; leave blank if you don't want to provide it.

	"info"		"Adds Cheese Ball models to Gmod."

A brief description of what your addon does.

}

Finish the file.

Clean version

This is for your own use.

"AddonInfo"
 {
 	"name"		""
 	"version"	""
 	"up_date"	""

 	"author_name"	""
 	"author_email"	""
 	"author_url"	""

 	"info"		""
 }

See Also

Personal tools
Namespaces
Variants
Actions
Navigation
Lua Scripting
Functions
Hooks
Toolbox