Table of Contents

Namespace SkyrimForge.Papyrus

Classes

ActorBaseScript

Functions and comments from ActorBase.psc.

ActorScript

Functions and comments from Actor.psc.

Relationship functions use the following values: 4 - Lover 3 - Ally 2 - Confidant 1 - Friend 0 - Acquaintance -1 - Rival -2 - Foe -3 - Enemy -4 - Archnemesis

ActorValueInfoScript

Functions and comments from ActorValueInfo.psc.

AmmoScript

Functions and comments from Ammo.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

ApparatusScript

Functions and comments from Apparatus.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

ArmorAddonScript

Functions and comments from ArmorAddon.psc.

ArmorScript

Functions and comments from Armor.psc.

ArtScript

Functions and comments from Art.psc.

BookScript

Functions and comments from Book.psc.

CameraScript

Functions and comments from Camera.psc.

CellScript

Functions and comments from Cell.psc.

ColorComponentScript

Functions and comments from ColorComponent.psc.

ColorFormScript

Functions and comments from ColorForm.psc.

CombatStyleScript

Functions and comments from CombatStyle.psc.

ConstructibleObjectScript

Functions and comments from ConstructibleObject.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

DebugScript

Functions and comments from Debug.psc.

Note that these functions will do nothing in release console builds

DefaultObjectManagerScript

Functions and comments from DefaultObjectManager.psc.

EffectShaderScript

Functions and comments from EffectShader.psc.

EnchantmentScript

Functions and comments from Enchantment.psc.

EquipSlotScript

Functions and comments from EquipSlot.psc.

FactionScript

Functions and comments from Faction.psc.

FloraScript

Functions and comments from Flora.psc.

FormExtensions

Provides extension members for IForm.

FormListScript

Functions and comments from FormList.psc.

FormScript

Functions and comments from Form.psc.

GameDataScript

Functions and comments from GameData.psc.

GameScript

Functions and comments from Game.psc.

GlobalVariableScript

Functions and comments from GlobalVariable.psc.

HeadPartScript

Functions and comments from HeadPart.psc.

ImageSpaceModifierScript

Functions and comments from ImageSpaceModifier.psc.

IngredientScript

Functions and comments from Ingredient.psc.

InputScript

Functions and comments from Input.psc.

KeywordScript

Functions and comments from Keyword.psc.

LeveledActorScript

Functions and comments from LeveledActor.psc.

LeveledItemScript

Functions and comments from LeveledItem.psc.

LeveledSpellScript

Functions and comments from LeveledSpell.psc.

LightScript

Functions and comments from Light.psc.

LocationScript

Functions and comments from Location.psc.

MagicEffectScript

Functions and comments from MagicEffect.psc.

MathScript

Functions and comments from Math.psc.

MessageScript

Functions and comments from Message.psc.

ModEventScript

Functions and comments from ModEvent.psc.

ModEvent allows sending mod events with any number/type of arguments, unlike the more limited Form.SendModEvent.

MusicTypeScript

Functions and comments from MusicType.psc.

NetImmerseScript

Functions and comments from NetImmerse.psc.

Note that only local transforms can be set as the world transform is computed based on the entire hierarchy rather than a single node

ObjectReferenceScript

Functions and comments from ObjectReference.psc.

OutfitScript

Functions and comments from Outfit.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

PackageScript

Functions and comments from Package.psc.

PapyrusArguments

Arguments for a Papyrus call, built one at a time.

PapyrusEvent

One event a plugin publishes to Papyrus, and the objects registered to receive it.

Raising it enters every script attached to a registered object that declares the event, so the script that registered and the script that receives need not be the same one. Registrations are written into the co-save and come back with it. Registering an object already registered adds nothing and reports false, which a save restoring the set makes ordinary.

PapyrusFunctionRegistrarExtensions

Provides extension members for IPapyrusFunctionRegistrar.

PapyrusLatentCall

The suspended script a latent native left waiting, and the value that resumes it. A Return() overload resumes it.

PapyrusScriptAttribute

Marks a class whose public methods implement the native functions of the Papyrus script of the same name.

PapyrusScriptDispatcher

One script's name, bound so that a caller writes it once rather than at every call.

PapyrusScriptExtensions

Provides extension members for PapyrusScript<T>.

PapyrusScript<T>

A form with its Papyrus functions reachable on it, which form.Papyrus returns.

PapyrusSelfAttribute

Marks the first parameter of a method in a PapyrusScriptAttribute class as the form the script is attached to, making the method a non-global native function.

PerkScript

Functions and comments from Perk.psc.

PotionScript

Functions and comments from Potion.psc.

QuestScript

Functions and comments from Quest.psc.

non-native functions

RaceScript

Functions and comments from Race.psc.

SKSEScript

Functions and comments from SKSE.psc.

General SKSE-specific information

SceneScript

Functions and comments from Scene.psc.

ScrollScript

Functions and comments from Scroll.psc.

ShaderParticleGeometryScript

Functions and comments from ShaderParticleGeometry.psc.

ShoutScript

Functions and comments from Shout.psc.

SoulGemScript

Functions and comments from SoulGem.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

SoundCategoryScript

Functions and comments from SoundCategory.psc.

SoundDescriptorScript

Functions and comments from SoundDescriptor.psc.

SoundScript

Functions and comments from Sound.psc.

SpawnerTaskScript

Functions and comments from SpawnerTask.psc.

SpawnerTask allows to spawn and position an arbitrary number references in game world. It's effectively a batch combination of PlaceAtMe and SetPosition/MoveTo that smoothly executes in a single frame.

SpellScript

Functions and comments from Spell.psc.

StringUtilScript

Functions and comments from StringUtil.psc.

Note about the internal Skyrim implementation of the string classes used for scripting: the strings are case-insensitive. Each BSFixedString is managed in a cache and reused everywhere it is needed. This means that strings like "O" and "o" are technically equivalent; Which string is used depends greatly on which version is found first. We are investigating how to manage this, but for the time being be aware that the distinction between uppercase and lowercase may not exist. It also means that functions below returning an integer for the character may not correspond exactly. Also GetNthChar("Hello Skyrim!", 4) will return a string with either "O" or "o" depnding on which might be registered first. All my tests so far have it return the uppercase, eventhough in the string it is lowercase. We may solve this problem by switching back to returning an integer rather than a string for GetNthChar, but this will still have problems.

TextureSetScript

Functions and comments from TextureSet.psc.

SKSE64 additions built 2024-01-17 20:01:40.731000 UTC

TopicInfoScript

Functions and comments from TopicInfo.psc.

TopicScript

Functions and comments from Topic.psc.

TreeObjectScript

Functions and comments from TreeObject.psc.

UICallbackScript

Functions and comments from UICallback.psc.

UICallback allows passing arguments of different types to UI functions, unlike UI.Invoke*

UIScript

Functions and comments from UI.psc.

For functions that require a menuName, potential values are "InventoryMenu" "Console" "Dialogue Menu" "HUD Menu" "Main Menu" "MessageBoxMenu" "Cursor Menu" "Fader Menu" "MagicMenu" "Top Menu" "Overlay Menu" "Overlay Interaction Menu" "Loading Menu" "TweenMenu" "BarterMenu" "GiftMenu" "Debug Text Menu" "MapMenu" "Lockpicking Menu" "Quantity Menu" "StatsMenu" "ContainerMenu" "Sleep/Wait Menu" "LevelUp Menu" "Journal Menu" "Book Menu" "FavoritesMenu" "RaceSex Menu" "Crafting Menu" "Training Menu" "Mist Menu" "Tutorial Menu" "Credits Menu" "TitleSequence Menu" "Console Native UI Menu" "Kinect Menu"

UtilityScript

Functions and comments from Utility.psc.

VisualEffectScript

Functions and comments from VisualEffect.psc.

WeaponScript

Functions and comments from Weapon.psc.

WeatherScript

Functions and comments from Weather.psc.

WornObjectScript

Functions and comments from WornObject.psc.

These functions operate directly on worn items within the inventory Valid Hand Slot: 0 - Left 1 - Right Valid Slot Masks: See Armor.psc Use zero when using hand slot

Structs

PapyrusArray

The entries of a Papyrus array, each read as a PapyrusValue.

PapyrusCall

Arguments passed to a native Papyrus function and the variable for its return value.

PapyrusType

A type in a native function's signature, as the script declares it.

A scalar is one of the fixed kinds. An object declares a form type, from which the Papyrus VM resolves the script class at registration.

PapyrusValue

One Papyrus value, read as whichever type is requested: an argument a script passed, a value a function returned, or a property.

Interfaces

IPapyrusEvents

Publishes events to Papyrus. IPapyrusFunctionRegistrar lets a script call a plugin, and this lets a plugin reach the scripts that registered for it.

IPapyrusFunctionRegistrar

Provides a C# implementation for a native Papyrus function, so scripts can call into a plugin.