Oblivion:NPCs

The UESPWiki – Your source for The Elder Scrolls since 1995
Jump to: navigation, search

NPCs (standing for non-player characters) is a generic term for all the other humanoids of various races that are encountered while playing Oblivion. There are several significant differences between NPCs and the other creatures in the game, which are outlined below.

One key difference between NPCs and all other creatures is in trapping their souls: NPC souls cannot be trapped into ordinary Soul Gems; only Black Soul Gems can be used. Unlike in the previous game, Morrowind, the Oblivion NPC category includes the Dremora and Golden Saints, no longer classified as creatures, and thus require Black Soul Gems.

Named NPCs[edit]

There are many named NPCs in Oblivion. These people are all listed on the People page. All quest-givers, trainers, and merchants in the game, as well most of the people in cities and towns are named characters. Some named characters are deemed to be Essential ("unkillable"), and they are indicated by a crown-shaped icon when you talk to them. If these characters are attacked, they will go "unconscious" when they reach 0 Health (typically accompanied by a message on your screen). After a short interval, they will get back up and proceed as usual. However, most NPCs can be killed (with possible consequences later, i.e., if you kill off a master trainer, you will have no means to obtain high-level training in that skill).

Special categories include:

Generic NPCs[edit]

There are also many generic NPCs in the game, most of which are randomly generated. If one dies for whatever reason, the game will eventually generate a new random replacement. Some will always be of a particular race (i.e., Adventurers are always Orcs; Imperial Legion members are always Imperials). Others will have their race randomly selected.

Friendly NPCs include:

Enemy NPCs include:

Only with the Fighter's Stronghold official plug-in.
Only with the Knights of the Nine official plug-in.
§ Only with the Mehrunes Razor official plug-in.

NPC Statistics[edit]

NPCs all have statistics – analogous to those of your character – including race, gender, class, attributes, skills, health, magicka, and fatigue. There are several key differences in how these attributes are derived.

Most named NPCs have fixed statistics, that are set in the construction set and never vary. In particular, the level of these NPCs is always the same, even as your character levels up. The following sections describing how statistics are determined do not apply to these named NPCs.

On the other hand, for most generic NPCs their statistics will all vary depending upon your character's level. The level of these NPCs is at a fixed offset relative to your character; these offsets can range from −4 to +10, but are generally in the range −3 to +1. The minimum NPC level is 1. Therefore a bandit with a level offset of −3 will be at level 1 when your first start the game. That bandit will remain at level 1 until your character reaches level 5. For these generic NPCs, all other statistics are derived from the NPC's level.

Generic NPCs are usually equipped with random, leveled equipment (armor, weapons, potions, poisons, scrolls, gold, etc.) The level of the equipment is dictated by your character's level, not by the NPC's level. For example, the quality of an NPC's armor is leveled, meaning that you will not meet a bandit wearing glass armor until your character reaches level 20. Even in Rockmilk Cave, where the bandit bosses are 4 levels higher than your character, the bosses will not have glass armor any earlier than level 20.

Level 1 Statistics[edit]

The statistics of a generic NPC at level 1 are for the most part determined using a very similar system to that used for the player's character.

The similarities include:

  • Every NPC has a race and gender, that determine base attribute values, racial characteristics, and skill bonuses.
  • Every NPC has a class, which defines two preferred attributes, a specialization (combat, magic, or stealth), and seven major skills.
  • Therefore, the initial values of any NPC's attributes and skills are identical to those for a player character created using the same race, gender, and class.
  • The NPC's Fatigue is always calculated the same way as the player character's, namely as the sum of Endurance, Strength, Agility and Willpower.

Differences include:

  • There is one additional race available to NPCs, namely Dremora.
  • Most NPCs do not have Birthsigns. In cases where NPCs do have birthsigns, they are generally different birthsigns than those available to the player character.
  • There are a lot of NPC-specific default classes.
  • Initial NPC Health and Magicka are determined using a different set of formulas than those used for the player's character:
  • The initial NPC Health is calculated from:
Health = int ( (Strength + Endurance) / 10 ) * 2
  • NPC Magicka is always calculated from:
Magicka = 2.5 * Intelligence

Skills[edit]

The initial value for each NPC skill is set by their race, gender, and class, just as for the player character. The NPC then gains a fixed number of skill points at each level. The rate at which a skill increases is determined by whether or not the skill is a major skill, and whether or not it belongs to the class specialization:

Skill Type Points Gained Per Level
Minor 0.1
Specialization 0.6
Major 1.0
Major + Specialization 1.5

The skill values are rounded to a whole number.

The result is that an NPC gains on average 11.9 skill points every level. A key difference from the player character is that an NPC does not generally gain 10 points in major skills every level. If the major skills are all in the class specialization, an NPC will gain 10.5 points in major skills each level. But if none of the major skills are in the specialization, an NPC will only gain 7 points in major skills.

Attributes[edit]

Two NPC attributes are fixed and never increase with the NPC's level: Personality and Luck.

The other six attributes all increase at each level, at a rate dependent upon the number of major skills that are governed by that attribute (only the major skills matter; skills in the class specialization have no effect). The rates are:

Number of Skills Points Gained Per Level
0 0.6
1 1.4
2 2.2
3 3

Unlike the player character, these attribute increases are not dependent upon the number of skill points gained during that level. Also, the NPC can have six attributes increase on a single level up (unlike the player character who is limited to increasing just three attributes).

For example, an NPC in the Knight class would gain:

In total, an NPC will gain 6.8 to 9.2 attribute points each level (depending upon how many of the NPC's major skills are in "wasted" personality-governed skills). One implication is that as a player it is important to gain at least 10 attribute points each level. Otherwise, NPCs are benefiting more than your character when you level up.

Health[edit]

NPC health is determined very differently from the player's health; of all the statistics, this is the one that differs the most from the player's value. NPC health can be set manually, or autocalculated. When autocalculated, both Strength and Endurance determine base health, rather than just Endurance. The additional Health gained each level is based on the NPC's class, rather than being based upon the current value of Endurance.

The equation to calculate NPC health is:

NPC_Health = LevelFactor * ( (NPC_Level −1) * ClassFactor + (Strength + Endurance) / 2 )

All values are rounded down to the nearest integer.

ClassFactor is a value that ranges from 3 to 6, and is based upon the NPC's class. If the class specialization is Magic, ClassFactor is 3; for Stealth it is 4; and for Combat it is 5. If Endurance is one of the class attributes, ClassFactor is one larger. To provide some examples, for Mages and Battlemages this factor is 3; for Thieves and Sorcerers it is 4; for Barbarians and Acrobats it is 5; for Warriors it is 6.

Values of LevelFactor are as follows:

NPC Level LevelFactor
1 0.4
2 0.55
3 0.7
4 0.85
5+ 1

Because of LevelFactor, low level NPCs have very little health. At level 1, most NPC health ranges from just 12 to 20 (compared to the player's 60 to 130). The most important factor in determining level 1 health is the NPC race and gender.

From levels 1 to 5, NPC health increases fairly rapidly because of LevelFactor. At level 5, NPC health is in the range 44 to 90.

After level 5, the rate of health increase is dictated by the NPC's class: Class Factor is determined from the class specialization and attributes; increases in strength and endurance are dictated by the class major skills. Until strength and endurance both hit 100, total per level health increases range from 3 to 9. This is less than the per level health increases possible with the player character (3 to 10 without any endurance increases, but up to 20 with endurance increases).

Becuase health is set at NPC's spawn and doesn't need to be automatically calculated, Damage Endurance and Drain Endurance effects do not decrease an NPC's Health (and neither do Damage Strength and Drain Strength). This is very different from the player character, whose Health scales with current endurance.

Modifiable Settings[edit]

The equation in the previous section are applicable when playing vanilla Oblivion. However, the calculations use a number of modifiable settings, which can be altered by mods. For reference, this section provides the full version of the equation, including the variables that can be altered.

NPC_Health = fLowLevelNPCBaseHealthMult + (1 - fLowLevelNPCBaseHealthMult) * ((NPC_Level - 1) / (iLowLevelNPCMaxLevel +1) *
             ((Strength + Endurance) * fNPCAttributeHealthMult + 
              (iNPCBasePerLevelHealthMult - IS_SPEC_MAGIC + IS_SPEC_COMBAT + IS_END_PRIMARY) * (NPC_Level - 1))

The default values for the variables are:

  • fLowLevelNPCBaseHealthMult = 0.4
  • iLowLevelNPCMaxLevel = 4
  • fNPCAttributeHealthMult = 0.5
  • iNPCBasePerLevelHealthMult = 4

Properties that can not be modified are:

  • IS_SPEC_MAGIC = 1 if a class has magic specialization, 0 otherwise.
  • IS_SPEC_COMBAT = 1 if a class has combat specialization, 0 otherwise.
  • IS_END_PRIMARY = 1 if a class has Endurance as a primary stat, 0 otherwise.

fLowLevelBaseHealthMult scales level 1 NPC calculated health to that multiplier, and then scales linearly until the NPC is higher level than iLowLevelNPCMaxLevel.

iNPCBasePerLevelHealthMult can be modified from -1 to +2 depending on the combination of specialization and whether or not endurance is a primary stat. This is what causes the ClassFactor defined above to range from 3 to 6, but if you were to change iNPCBasePerLevelHealthMult to 10, this modified multiplier would range from 9 to 12 giving a smaller impact to scaling based on class. (With the defaults, a Mage gains 50% as much health per level as a Warrior. With iNPCBasePerLevelHealthMult at 10, a Mage will gain 75% as much health per level as a Warrior.)

Magicka[edit]

NPC Magicka is set to be 2.5 times the NPC's base (unfortified) Intelligence, at all levels. The most obvious difference from the player's character is that NPCs get 25% more Magicka.

Most magic-wielding NPCs are Altmer or Bretons, and therefore receive 100 or 50 point magicka bonuses, respectively. These bonuses are technically Fortify Magicka effects and therefore are not included if you look at the character's base magicka in the construction set; they are only apparent if you check the NPC statistics in-game. On the other hand, very few NPCs have a birthsign and therefore generic magic-wielding NPCs do not have additional magicka bonuses from their birthsign.

Damage Intelligence and Drain Intelligence effects do not decrease an NPC's magicka. The only way to decrease magicka is by using Damage Magicka, Drain Magicka, and Absorb Magicka effects. Conversely, Fortify Intelligence does not increase an NPC's magicka, either.

Fatigue[edit]

NPC Fatigue is calculated the exact same way as the player character's fatigue at all levels, namely as the sum of Endurance, Strength, Agility and Willpower.

The only known difference with NPCs is that, again, Damage, Drain, and Fortify Attribute effects on these attributes do not affect calculated NPC Fatigue, though a direct Drain Fatigue, etc., will affect that stat.

Encumbrance[edit]

NPC Encumbrance is calculated the exact same way as the player character's encumbrance at all levels, namely as five times Strength.

This derived statistic is reduced by Damage Strength and Drain Strength effects as expected. Decreasing an NPC's strength to 0 will always reduce their encumbrance to 0, and thus prevent them from moving.

Console IDs[edit]

All characters in the game have two distinct FormIDs that can be used in conjunction with Console commands: a BaseID and a RefID. Most console commands will accept only one of the two types of IDs: the BaseID is generally used in cases where you want to spawn a new copy of an object, whereas the RefID is generally used in cases where you want to interact with an existing copy of an object.

Although this RefID/BaseID distinction exists for all objects in the game, it is particularly important for all of the game's unique NPCs. Most of the game scripts use RefIDs (via the associated EditorID) to control unique NPCs. This means that if you use the placeatme command to spawn a new copy (with a new RefID) of, for example, Jauffre, the new copy of Jauffre will be ignored by most of the quest scripts. Your clone may have the correct dialogues and appearance, but many quest updates triggered by Jauffre will not be triggered by your clone. He won't open the chest in Weynon Priory for you during Weynon Priory; he won't cause the Cloud Ruler Temple gates to open during Find the Heir; etc.

Therefore, when using the console with unique NPCs you should always avoid the placeatme <BaseID> command. All of this site's NPC pages provide the NPC's RefID, which should be used to locate or modify the existing copy of the NPC. For example, to move a missing NPC to your location, use:

If the NPC is not visible after those commands, then the character may have been disabled, so type:

Or if the NPC is dead:

If you would prefer to move your character to the location of an NPC (instead of vice versa), you can instead use the command:

  • player.moveto <RefId>

The RefID and BaseID for objects from mods will all be shown by UESP as starting with "xx", as the value will vary from game to game. To determine the correct two digits, see this page.