Difference between revisions of "Perk Entry Point"

3,563 bytes added ,  01:33, 23 February 2021
→‎Perk Entry Points: disassembly and, in some cases, cross-referencing with Skyrim.esm
imported>Quindraco
imported>DavidJCobb
(→‎Perk Entry Points: disassembly and, in some cases, cross-referencing with Skyrim.esm)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
A list of all the perk entry points.
A list of all the perk entry points.


== Entry Point Types ==
== Entry Point Functions ==
*Value Function: These functions allow you to modify a value. You can perform the following operations:
 
**Set Value: Sets the value to a specific number. value = X
{| class="wikitable"
**Add Value: Add a number to the value (can be negative). value = value + x
|+ Value Function: These functions allow you to modify the value specified by the entry point's type.
**Multiply Value: Multiply the value by a number. value = value * x
|-
**Add Range to Value: Add a random number in a specified range to the value. value = value + Random( X, Y )
! Name !! Value =
**Add Actor Value Mult: Add a specified Actor Value, times a specified multiplier, to the value. value = value + Actor Value X * Y
|-
**Set to Actor Value Mult: Set the value to the result of the specified Actor Value times a specified multiplier. value = Actor Value X * Y
| Absolute Value || <nowiki>|</nowiki>Value<nowiki>|</nowiki>
**Multiply Actor Value Mult: Multiply the value by the result of the specified Actor Value times a specified multiplier. value = value * Actor Value X * Y
|-
**Multiply 1 + Actor Value Mult: Multiply the value by the result of 1 plus the product of the specified Actor Value times a specified multiplier. value = value * ( 1 + Actor Value X * Y )
| Negative Absolute Value || -<nowiki>|</nowiki>Value<nowiki>|</nowiki>
**Absolute Value: Set the value to its absolute value (so that it is non-negative). value = abs( value )
|-
**Negative Absolute Value: Set the value to the negative of its absolute value (so that it is always negative). value = -abs( value )
| Set Value || X
|-
| Add Value || Value + X
|-
| Multiply Value || Value * X
|-
| Add Range to Value || Value + [[RandomFloat_-_Utility|Random]](X, Y)
|-
| Add Actor Value Mult || Value + [[actor value|A]] * X
|-
| Set to Actor Value Mult || [[actor value|A]] * X
|-
| Multiply Actor Value Mult || Value * [[actor value|A]] * X
|-
| Multiply 1 + Actor Value Mult || Value * (1+[[actor value|A]] * X)
|-
! colspan=2| X and Y are always ''fixed'' floating point numbers; A is always an [[Actor Value]], ''dynamically'' consulted.
|}


== Perk Entry Points ==
== Perk Entry Points ==
Line 37: Line 54:
|-
|-
|valign="top"|Adjust Limb Damage - Not Used
|valign="top"|Adjust Limb Damage - Not Used
|
|Scales the damage that a limb's actor value receives from an attack. Limbs are hardcoded, and while Skyrim still has the "limb condition" actor values from Fallout, it doesn't have the same limb list, so this isn't really usable in practice.
|-
|-
|valign="top"|Allow Mount Actor
|valign="top"|Allow Mount Actor
Line 57: Line 74:
|-
|-
|valign="top"|Apply Sneaking Spell
|valign="top"|Apply Sneaking Spell
|Applies a spell to the owner while sneaking. Beothia's Ebony Mail is a good example of this.
|Applies a spell to the owner while sneaking. Boethiah's Ebony Mail is a good example of this.
* Spell archetype must be Fire and Forget - Contact, Constant Effect - Contact, or Constant Effect - Self
* Spell archetype must be Fire and Forget - Contact, Constant Effect - Contact, or Constant Effect - Self
|-
|-
Line 71: Line 88:
|-
|-
|valign="top"|Calculate My Critical Hit Damage
|valign="top"|Calculate My Critical Hit Damage
|Adjusts the amount of damage a critical hit by the perk owner will inflict. Base critical damage without perks is determined by the weapon (a fixed value assigned to it, like its base damage) which is typically very close to floor(b/2), where b is the base damage.  Note that Critical Hit Damage is *not* affected by Tempering Health.
|Adjusts the amount of damage a critical hit by the perk owner will inflict. Base critical damage without perks is determined by the weapon (a fixed value assigned to it, like its base damage) which is typically very close to floor(b/2), where b is the base damage.  Note that Critical Hit Damage is ''not'' affected by Tempering Health.
|-
|-
|valign="top"|Calculate Weapon Damage
|valign="top"|Calculate Weapon Damage
Line 80: Line 97:
|-
|-
|valign="top"|Can Pickpocket Equipped Item
|valign="top"|Can Pickpocket Equipped Item
|
|If the result value is non-zero, then the actor will be allowed to pickpocket equipped items off of other actors. The condition subject will be the equipped item that the actor is attempting to pickpocket.
|-
|-
|valign="top"|Filter Activation
|valign="top"|Filter Activation
Line 95: Line 112:
|-
|-
|valign="top"|Ignore Running During Detection
|valign="top"|Ignore Running During Detection
|
|If this entry point produces a value other than 0, then the actor will be able to run without becoming easier to detect.
|-
|-
|valign="top"|Make Lockpicks Unbreakable
|valign="top"|Make Lockpicks Unbreakable
|
|If the result value is non-zero, then the player's lockpicks will be unbreakable.
|-
|-
|valign="top"|Mod # Applied Enchantments Allowed
|valign="top"|Mod # Applied Enchantments Allowed
Line 116: Line 133:
|-
|-
|valign="top"|Mod Detection Light
|valign="top"|Mod Detection Light
|
|Scales the influence of lighting conditions on how easily the actor can be detected. The input value computed from the actor's light level, detection lines of sight, and various game settings including the fDetectionNightEyeBonus, iLightLevelExteriorMod, iLightLevelInteriorMod, and iLightLevelMax game settings. The final result value (after all perks are checked) will be rounded to a signed integer. The Sneak and Invisibility actor values are applied after this entry point runs.
|-
|-
|valign="top"|Mod Detection Movement
|valign="top"|Mod Detection Movement
Line 137: Line 154:
|-
|-
|valign="top"|Mod Percent Blocked
|valign="top"|Mod Percent Blocked
|
|Modifies how much damage the actor will avoid taking when they block an incoming attack. Checked whenever an attack is blocked.
|-
|-
|valign="top"|Mod Player Intimidation
|valign="top"|Mod Player Intimidation
|
|Modifies how scary the player is. The player's scariness is computed using the formula
 
player level × (1.0 + max(-1.0, (player speech - target speech) ÷ 100))<sup>fIntimidateSpeechcraftCurve</sup>
 
That value can be modified using this perk entry point, and after that modification, it will be compared to the target's scariness, which is the target's level times the appropriate confidence multiplier, the latter value being one of the game settings that begins with <code>fIntimidateConfidenceMult</code>, chosen based on the target's Confidence actor value. If the player is scarier than the target, then the player will be able to intimidate the target.
|-
|-
|valign="top"|Mod Player Reputation
|valign="top"|Mod Player Reputation
Line 155: Line 176:
|-
|-
|valign="top"|Mod Secondary Value Weight
|valign="top"|Mod Secondary Value Weight
|
|Modifies how much the second actor value in a Dual Value Modifier effect is altered.
|-
|-
|valign="top"|Mod Shield Deflect Arrows
|valign="top"|Mod Shield Deflect Arrows
|
|Modify the percentage chance that the actor's equipped shield will deflect an incoming arrow. The result value will be clamped to a maximum of 100.
|-
|-
|valign="top"|Mod Shout OK
|valign="top"|Mod Shout OK
|Tells the game to allow the Player(or Werewolf) to shout.
|Tells the game to allow the player (or werewolf) to shout.
|-
|-
|valign="top"|Mod Soul Gem Enchanting
|valign="top"|Mod Soul Gem Enchanting
Line 170: Line 191:
|-
|-
|valign="top"|Mod Spell Casting Sound Event
|valign="top"|Mod Spell Casting Sound Event
|
|Checked when a spell is being cast; can be used to prevent NPCs from being able to hear the spell. The input value will be 1.0; change it to 0.0 to make the spell inaudible to NPCs.
|-
|-
|valign="top"|Mod Spell Cost
|valign="top"|Mod Spell Cost
Line 188: Line 209:
|-
|-
|valign="top"|Modify Addiction Chance
|valign="top"|Modify Addiction Chance
|
|When an actor drinks a potion, this modifies the chance that the actor will become addicted to the potion. Bethesda has stated that addiction data isn't used in Skyrim, but reverse-engineering indicates that there are calculations which check for an addiction, compute the chance, and attempt to apply the addiction effect; it's not clear what part of the system is no longer functional.
|-
|-
|valign="top"|Modify Addiction Duration
|valign="top"|Modify Addiction Duration
Line 233: Line 254:
|-
|-
|valign="top"|Modify Lockpicking Crime Chance
|valign="top"|Modify Lockpicking Crime Chance
|
|Modify the chance that the player will be caught committing a crime when picking locks while detected.
|-
|-
|valign="top"|Modify Lockpicking Key Reward Chance
|valign="top"|Modify Lockpicking Key Reward Chance
|
|Modify the chance that the player will be rewarded with the key to a lock if they successfully pick it.
|-
|-
|valign="top"|Modify Max Placeable Mines
|valign="top"|Modify Max Placeable Mines
Line 254: Line 275:
|-
|-
|valign="top"|Modify Recover Arrow Chance
|valign="top"|Modify Recover Arrow Chance
|
|Modify the likelihood that an arrow fired into a target will be recoverable from the target's corpse. The result value will be compared to a random integer between 0 and 100.
|-
|-
|valign="top"|Modify Recovered Health
|valign="top"|Modify Recovered Health
Line 263: Line 284:
|-
|-
|valign="top"|Modify Skill Use
|valign="top"|Modify Skill Use
|Adjusts the skill use factor, changing the amount of experience awarded for using skills. Usually used in combination with the condition function [[EPModSkillUsage_IsAdvanceSkill]]
|Adjusts the skill use factor, changing the amount of experience awarded for using skills. Usually used in combination with the condition function [[EPModSkillUsage_IsAdvanceSkill]].
|-
|-
|valign="top"|Modify Sneak Attack Mult
|valign="top"|Modify Sneak Attack Mult
Line 269: Line 290:
|-
|-
|valign="top"|Modify Soul Pct Captured To Weapon
|valign="top"|Modify Soul Pct Captured To Weapon
|Determines the percentage of the target's soul that will be applied to recharge an enchanted weapon when that weapon makes a killing blow on the target. Pct is calculated based on the default soul size of the target (i.e. the size soul gem it would fill if soul trapped).
|Determines the percentage of the target's soul that will be applied to recharge an enchanted weapon when that weapon makes a killing blow on the target. The percentage is calculated based on the default soul size of the target (i.e. the size soul gem it would fill if soul trapped).
|-
|-
|valign="top"|Modify Spell Range (Target Loc.)
|valign="top"|Modify Spell Range (Target Loc.)
|
|Modify the maximum range of spells that require the caster to target a location; for example, limiting this perk to rune spells would allow you to modify how far away a rune can be placed.
|-
|-
|valign="top"|Modify Telekinesis Damage
|valign="top"|Modify Telekinesis Damage
Line 305: Line 326:
|-
|-
|valign="top"|Set Sweep Attack
|valign="top"|Set Sweep Attack
|
|Checked when the actor is swinging a melee weapon. If this entry point returns a value other than 0, then the attacking actor will damage multiple enemies along the arc of the swing. Otherwise, the attack will use the game's default behavior, which is akin to firing a single invisible "bullet" that does melee damage.
|-
|-
|valign="top"|Should Apply Placed Item
|valign="top"|Should Apply Placed Item
|
|Checked when the player is using their pickpocketing skill to plant an item in another actor's inventory. If the item is a potion or poison and the perk's result value is 1, then the alchemy effects will be applied to the pickpocketed NPC. When this condition runs, the subject is the potion or poison being planted, so check ''Subject.IsPoison == 1'' to limit this effect to planted poisons.
|}
|}
Anonymous user