From OpenMW Wiki
Jump to: navigation, search

The world-model terminology is confusing. We have

  • the original terminology (MW), which is rather unintuitive and partially overlaps with the C++ language terminology, which creates additional ambiguity.
  • and the new terminology (NEW), which is reasonable, but incompatible with MM and overlaps even stronger with the C++ language terminology, which creates even more additional ambiguity.

The current state of OpenMW (code and comments) is an unhealthy mix between these two.

A certain type of item, which is internally represented as a record. Each ID is identified by a unique string. IDs are immutable. Example: katana_goldbrand_unique
Reference (MW)
An instance of an ID, that exists either somewhere in the world or in a container/inventory. A reference consists of the name of its ID and some additional data. References are mutable. Not to be confused with C++ references.
Example: The sword Goldbrand that you have in your inventory after finishing the Boethiah quest in Morrowind.
Class (NEW)
New name for IDs (MW). Not to be confused with C++ classes. We don't have a C++ class per Class (NEW). We have however a C++ class per type of Class (NEW), e.g. Weapon, Misc, Static.
Object (NEW)
New name for references (MW). Not to be confused with C++ objects.
Instance (NEW)
Synonym for Object