"plug-in" and "plugin" are interchangeable on this site, but "plugin" will probably be used more frequently.
There are two types of plugins, ESM files and ESP files. There are some examples below, but there is already a very well-written article on the subject at TESCSWiki.
Plugin dependencies refers to how plugins, ESPs and ESMs, depend on other ESPs and ESMs.
Example: Make or Edit an ESP Dependent upon Other ESP(s)
- Launch Wrye Bash
- Right-click on the source plugin(s) and choose "esmify"
- Launch TESCS, preferably with OBSEOblivion Script Extender (default with Wrye Bash shortcut)
- Choose plugins (all source plugins should be esmified)
- Make changes, save and exit.
- Right-click on the modified (or new) plugin and choose "espify masters" (convenient in the case that multiple ESPs were esmified)>> notes: 1) always make sure to espify esmified plugins after finishing with them 2) esmified plugins are distinguished with blue text==if the plugin had an orange check box in Wrye Bash after saving it==
- Launch TES4Edit
- Have TES4Edit just load the plugin (TES4Edit will load its dependencies automatically)
- After it finishes loading, right-click on the modified plugin and choose "sort masters"
- Exit TES4Edit, making sure the plugin is checked to save the modifications
- Check to make sure the plugin's masterlist is green in Wrye Bash