Tes4Mod:Cobl/Modding/Getting Started

For modders just getting started with Cobl, here's some tips on getting started.

How to Start Modding with Cobl?
When loading your mod in TESCS, just be sure to check Cobl Main.esm, just as you check Oblivion.esm. Note: Do not check any of the Cobl glue (esp) mods! With Oblivion.esm and Cobl Main.esm checked, you'll have access to items from both of those masters. And when you save, your mod will be marked as dependent on Cobl Main.esm just like it's dependent on Oblivion.esm.

How to Find Help for Cobl Features?
The best place to start is Cobl/Modding This page lists all of the major packages and includes links to subpages which cover more complicated topics. 

If this isn't enough, ask on the forums for additional help. (Do not post help requests on the wiki. Use the forums instead.)

Where do I find Testing Cells?
Generally, it's best to make your own testing cells. However, if you would like to visit Cobl's testing cell, coc to cobTestCell. Do not add anything to this room!

Is there anything I should be aware of while modding with Cobl?
There is one major rule - do not edit any of the Cobl objects or scripts. This is important because every edited object/script will:
#Always overwrite Cobl updates of that object/script
#Change the object/script that other mods use
If you need to edit an object or script, make a copy of it and modify and use the copy.
Be aware of what you're copying
#Your copy won't benefit from future updates of Cobl
#There are some scripts where a copy won't seem to change anything. This is generally true for the larger system of scripts. For instance, the Alchemical Sorters have one starting script (cobAlsTriggerOS) that runs/manages some 20 other scripts (not all at once :P). It will always run those original scripts, and there is no way to change which scripts it uses.
If a copy won't work, then please let us know on the appropriate Talk page or on the Bethesda Softworks forums.
Make sure you don't hit "Recompile Scripts". This also adds some 6-8 megs to your .esp size, so it should be pretty easy to spot.
If you do accidentally hit "Recompile Scripts", revert to an earlier save. If that's not an option, see the two options below.
When your mod is ready to be released, please make one last check to make sure no Cobl objects were edited. This is easy and short step, either:
#On the Mod loading screen, highlight your mod and click "Details". Click "EditorID" and look for any records with the prefix cob. You can highlight them and press   to remove the edit. You can use   and   to make mass selections.
#Use TES4Edit. The edits will be categorized by type (Activator, Script, etc.), but you can delete edits just as with the CS.
There are some scripts that can be edited - these will be clearly marked. Otherwise, assume you can't make an edit.

Should I Include Cobl with my Mod?
NO! Do not do this. Instead, you'll need to direct users to download Cobl and install it themselves. Keep in mind that many (if not most) users will already have Cobl installed. 

The reason for not including Cobl is so that Cobl can be indepedently updated of any mod that depends on it. And since Cobl is designed to be backward compatible with mods built on top of earlier versions of itself, there won't be any problem with incompatibilities.

Note that the independent updating of Cobl, means that behavior of Cobl components used in your mod will likely improve over time. E.g. Mods created in early 2006 to use Cobl's alchemical sorter have all benefitted from recent improvments in the sorter without requiring any update on their part.

How to Indicate Cobl Dependency?
You should clearly indicate in the readme for your mod that the mod requires Cobl (and what version of Cobl is required). In the installation instructions, you might want to link to the Cobl readme. A good point to link to is the   -- it's short and the install instructions are immediately beneath it.

Also, in the description field for your mod, should include two lines at the top: a Version line followed by a Requires line. E.g. for Wrye Shivering Death:
  Version: 05
  Requires: Cobl 1.18
  This changes the way you die after completing the Shivering Isles Main Quest. 
The Version line should be the internal version number of your mod. The Requires line should indicate the minimal version of Cobl required for your mod. 

When specifying the version of Cobl required, it's safe to specify the version of Cobl that you built on top of. However, if you know that all Cobl features that you're using were available in older versions of Cobl, you can specify that version instead. (E.g. if you're only using the alchemical sorter, you can specify Cobl version 1.00.)

Including version and requires info in the description is useful since it can be used by tools like Wrye Bash in mod list postings and to help debug load lists.