[This page is outdated! See instead the wiki page: https://wiki.project-tamriel.com/wiki/Tamriel_Data_ID_Guidelines]
These are ID naming conventions for the content files of Tamriel Rebuilt, such as TR_Mainland.esm and the in-development claims and release files that will be merged in it. This concerns new objects or scripts created when working on TR claims or section files -- objects that are typically unique or tied to a specific claim, rather than the generic objects used repeatedly throughout the entire mod.
These are NOT the more strict ID conventions for assets in Tamriel_Data, the unified BSA/ESM that Tamriel Rebuilt and Project Tamriel use. If you are creating CS objects for a TR asset, those will go in Tamriel_Data and use Tamriel_Data's naming scheme (starting with "T_", not with "TR_").
General pattern
TR_[map]_[location]_[...]_[what is it]
Ideally the ID of an object would tell you what it is, where it is, and what it's for, but IDs are limited to either 23 or 31 characters:
- up to 23 characters for NPCs, Creatures, Containers
- up to 31 characters for anything else
While in the Construction Set, you don't have to keep count of characters except for scripts and journals/topics -- the CS will truncate IDs if they go over the limit. Hence the character limit is something you only need to keep in mind for script or journal IDs or when using other editors like tes3cmd to modify IDs.
[Map]: see below.
[Location] may refer to the settlement (if available) or region, initials or a shortened version of the claim name, whatever is most convenient.
Other optional prefixes for specific object types are described in examples on this page -- they can show that the object is linked with a quest (_q_), linked to a faction (_MG_, _FG_...)...
Prefixes indicating object type (such as Container, Light) are not generally needed unless objects from different types could try to use the same ID: if an ID already says "chest", it has no need for a "_cont_" prefix. Again scripts and journals/topics are an exception as the CS lets you give them the same name as existing objects, which leads to errors later -- for scripts adding a _sc_ prefix or suffix is best.
Map
The map ("m0"/"m1" to "m7") division, pictured below, is an arbitrary geographic division roughly tied to the borders of Imperial districts. While it no longer corresponds to public release steps, it is used both for internal organisation and for wide dialogue filtering.
The map prefix gives a general idea of which part of the mod an object is linked to. The prefix is _m4_ if the object is located in map 4.
More rarely objects in the Vvardenfell area can use "m0", typically for TR content plugins such as TR_Factions.
For interiors, "_i" can also be used instead of "_m" and can show that the object was simply one added during the interior development phase.
Always add this prefix, even when something else in the ID already points to a more specific location. Think town initials are enough? Look at m1 journal IDs and see if you can guess where these quests take place.
Examples
These examples illustrate general guidelines. When making new object IDs, don't rely on the first TR objects you can see listed in the CS. Some old ones don't follow any convention and every now and then new incorrect IDs seep through.
New objects in Interior/Exterior claims
Notes: see the Interior modding tutorial for how to name the cell. You can also use that plus a map prefix as a basis for any new object IDs.
ID | ok? | |
---|---|---|
T_MwDe_andasdesk | no! | - IDs starting with "T_" are Tamriel_Data IDs |
TR_furn_andasdesk | no! | - missing map prefix |
TR_m4_andasdesk | ok | - could use more claim/location info |
TR_m4_andothren_andasdesk | too long | - would be ok if it weren't a container (character limit) |
TR_m4_andoth_andasdesk | good | |
TR_i4_andoth_andasdesk | good | - interiors may use "i" instead of m |
NPCs
Notes:
"_o_" - denotes a hostile NPC
"_s_" - a slave
"_q_" - quest NPCs, typically not present by default
ID | ok? | |
---|---|---|
T_Mw_Amelphia | no! | - IDs starting with "T_" are Tamriel_Data IDs |
TR_Amelphia | no! | - missing map prefix |
TR_m3_Amelphia | ok | - preferably add last name if there is one |
TR_m3_Amelphia_Tarramon | good | |
TR_m3_o_Amelphia | good | - a hostile NPC |
TR_m3_q_Amelphia | good | - a NPC enabled by a quest |
TR_m3_OE_MG_Amelphia | good | - a NPC with faction(MG)/location(OE) |
Script IDs
Notes:
The compiler doesn't verify that script IDs are different from object/journal IDs.
ID | ok? | |
---|---|---|
T_ScNpc_Mw_Map3_Amelphia | no! | - IDs starting with "T_" are Tamriel_Data IDs |
TR_Amelphia_Sc | no! | - missing map prefix |
TR_m3_Amelphia | no! | - can not be distinguished from the ID of the object/NPC it's on |
TR_m3_Amelphia_sc | good | |
TR_m3_sc_NPC_Amelphia | good | |
TR_m3_OE_MG_AmelphiaSC | good | |
TR_m3_OE_MG_q_AmelphiaTarramon_SC | no! | - over 31 characters |
Journal IDs
General pattern:
TR_[map]_[Faction initials if any]_[Settlement initials or "wil"derness otherwise]_[Quest title or Faction questgiver]
Notes:
The CS doesn't verify that journal IDs are different from object/script IDs. Just take care not to give any object the same ID as your journal.
ID | ok? | |
---|---|---|
TT_Foeburner | no! | - missing TR |
TR_Wil_Foeburner | no! | - missing map prefix |
TR_m3_Foeburner | no | - missing location or faction |
TR_m3_wil_Foeburner | good | - a misc quest started in the wilderness, in a dungeon... |
TR_m3_OE_Foeburner | good | - a misc quest started in Old Ebonheart |
TR_m3_TG_Foeburner | good | - a Thieves Guild quest |
TR_m3_TG_Fentus1 | good | - a Thieves Guild quest given by Fentus |
TR_m3_TG_OE_Fentus5_LostInChunzefk | no | - over 31 characters |
Quest object IDs
ID | ok? | |
---|---|---|
T_De_q_Pillow | no! | - IDs starting with "T_" are Tamriel_Data IDs |
TR_cheesegs | no! | - what the hell? |
TR_m3_cheesegs | ??? | - what's this? |
TR_m3_q_cheesegs | ??? | - it's a quest item, but...? |
TR_m3_OE_q_cheesegs | ok | - it's linked to a quest in OE |
TR_m3_OE_MG_cheesegs | good | - still don't know what's cheesegs, but it's in an OE Mages Guild quest |
Assets
What are you doing here? | no! | Go away! |