« Alarra's Opinion: ESOLore Lapses, Part VIII: Enric Milres »

Editor ID vs. Base/Ref ID (i.e. Why Thieving in Morrowind Sucks)

Editor ID vs. Base/Ref ID (i.e. Why Thieving in Morrowind Sucks)

  02:58:00 pm, by Damon   , 765 words  
Viewed 2259 times since 02/15/15
Categories: Programming, Elder Scrolls

This is a question that's put past me every so often or that I end up explaining, so I decided last night that I'd start writing a post on this, as I had my cookies and milk and was managing my Chelsea FC save in Football Manager... Because my mind gives me random information not relevant to things I'm doing...

Anyway, a question that sometimes comes past me is why the thieving in Morrowind is bugged and everything is flagged as stolen. Here's my easy-to-link-to long-winded explanation that I'll be able to refer people to when this is brought up.

I'll keep this as minimal on tech talk as possible. When items are created in Morrowind, they use an editor ID to identify the item and each instance of it in the Construction Set and in-game. Let's take an Imperial Broadsword, for example. A generic, easy to locate weapon that is favoured by the Imperial Legionnaires stationed on Vvardenfell. The Imperial Broadsword has the following editor ID: imperial broadsword. Every instance of the Imperial Broadsword in the game has that same ID, and every instance of the item only ever looks at that one ID. This point will be important later on, so keep that in mind and bear with me.

If we look at items in Oblivion and Skyrim, they have a Base ID and a Ref ID. The Base ID for every object is an initial static ID that is used to reference the object for the first time. For instance, the base ID of a generic iron longsword in Oblivion is 00000C0C. If you wanted to spawn an instance (copy) of an iron longsword with the console, you'd call for that ID, and that's the ID you'd search for the item by in the Oblivion Construction Set.

The Ref ID is a unique number that's given to each individual item that's placed down. Every item, including two of the same (for instance iron longsword 00000C0C) has a different RefID. Why is this important?

In Morrowind, if you take a stolen item, the only thing the game has to look at is that initial Editor ID. So, if I saw an Imperial Broadsword that belonged to General Darius of the Legion, it had an ownership flag on it, and I nicked it, then the game would process "Editor ID imperial broadsword was stolen" and it would put a stolen flag on that Editor ID. Therefore, every instance of the Imperial Broadsword becomes a stolen item, because the only ID to reference was the shared ID that each item had.

Because of this, if I picked up an Imperial Broadsword that had no ownership tag on it, or if I purchased one, it would still have the "ID imperial broadsword is stolen" flag, and even my legitimately owned broadsword would be siezed by guards when I'm arrested. It's not a "bug" or a "glitch" in the sense that there's only the one ID that is used in the entire engine to reference an item, so it does what it's supposed to by calling the only ID it has available to flag and was explicitly told to flag, but it's certainly less-than-ideal, given this obvious drawback.

Returning to Oblivion and Skyrim's Base/RefID system, let's assume I have lined up three iron longswords on the ground in Oblivion. Each longsword has the Base ID 00000C0C, but they each also have a unique RefID that isn't shared by any other item in the game, iron longswords included. Suppose one of them had an ownership flag and belonged to a random NPC. If you picked up that sword, the game processes "RefID [whatever its ID is] has just been stolen", and that unique RefID becomes a stolen item, without affecting the initial BaseID. Then, if I pick up the iron longsword that isn't owned, it would safely say "RefID [ID] has been picked up", and it would end it at that. The BaseID that is shared by similar items is never touched, and only the RefID specific to that given copy of the sword is looked at when it's picked up legitimately or stolen, and that's why you can carry a legitimately owned sword and a stolen one separately.

There's your little educational lesson for the day on why putting up with hard to remember number strings is better than easy-to-remember written names. And, that's why despite Morrowind being my favourite game and the only TES game for me with hours measuring into thousands, that I never made a thief, which is my favourite character type to play.

 Permalink

No feedback yet


Form is loading...