Namespace SkyrimForge
Classes
- BytePatch
Replaces bytes within the expected bytes, such as the constant of one instruction.
- BytePattern
A byte sequence in which some positions match any byte, written as hexadecimal pairs separated by spaces, such as "48 8D 0D ?? ?? ?? ??".
- CallPatch
Replaces whole instructions with a call to Target, after which the code following the expected bytes runs.
- CodePatch
A patch ICodePatcher applies to code once the bytes at its address match the expected ones.
- ConsoleCommandRegistrarExtensions
Provides extension members for IConsoleCommandRegistrar.
- DialogueTopic
A player dialogue topic in a dialogue branch that IDialogueBranchFactory creates.
- EnumerableExtensions
Provides extension members for IEnumerable<T>.
- GameEventExtensions
Provides extension members for IGameEvent<TArgs> of FrameEventArgs.
- GameEvent<TArgs>
The subscribers behind an IGameEvent<TArgs>. Whoever raises the event uses this concrete type.
- GameEventsExtensions
Provides extension members for IGameEvents.
- GameTarget
The game hosted in this process, through which a plugin accesses the player and the game's singleton managers. The framework constructs it and supplies it to a plugin.
- InputEventArgsExtensions
Provides extension members for InputEventArgs.
- InsertionPatch
Inserts machine code at an address. The expected bytes become a jump to allocated memory, which runs the code and the displaced instructions, then jumps back.
- InstructionHook
Runs a handler on each thread that reaches the instruction at Address, before that instruction runs.
- LinkedRefPackage
A package record whose location or target is the linked reference of the actor running it, with the keyword of that link.
- PluginIdentityAttribute
States the name under which a plugin's saved state and log file are stored, the plugin being an IPlugin class or a class marked
[PapyrusScript].
- QuestAlias
A named placeholder of a quest, the base of QuestReferenceAlias and QuestLocationAlias.
- QuestLocationAlias
A named placeholder for a location, equivalent to a Creation Kit location alias.
- QuestLocationAliasExtensions
Provides extension members for QuestLocationAlias.
- QuestObjective
An objective that a QuestStage displays, completes, or fails.
- QuestReferenceAlias
A named placeholder for a reference, equivalent to a Creation Kit reference alias.
- QuestReferenceAliasExtensions
Provides extension members for QuestReferenceAlias.
- QuestScene
A scene of a runtime quest, made of phases played in order.
- QuestStage
A stage of a quest, which SetAsync() sets once.
- SavedStateEntriesExtensions
Provides extension members for ISavedStateEntries.
- SceneAction
One action of a ScenePhase, such as a SceneLine, a SceneTimer, or a ScenePackage.
- SceneActorSettings
The flags and behaviors of one actor of a QuestScene. An actor the scene lists none for has the defaults.
- SceneConversation
A conversation the actor filling an alias opens with the player in a ScenePhase.
- SceneLine
A dialogue action of a ScenePhase, in which the actor filling an alias says responses.
- SceneLineLoop
The repetition of a SceneLine, said again after a delay from MinimumDelay to MaximumDelay until its phase ends.
- ScenePackage
An AI package the actor filling an alias runs in a ScenePhase.
- ScenePhase
A phase of a QuestScene, whose actions start together.
- SceneTimer
A timer action of a ScenePhase, which does not end before the timer has elapsed.
- SessionValue<T>
A value created anew for each game, whether from a new character or a loaded save.
- TaskExtensions
Provides extension members for Task.
- TopicResponse
One response a speaker says, shown as a subtitle, in reply to a DialogueTopic the player chooses or in a SceneLine.
- UtilityExtensions
Provides extension members for IUtility.
Structs
- ActionEventArgs
Arguments for OnAction, SKSE's ActionEvent.
- ActivateEventArgs
Arguments for OnActivate, the game's TESActivateEvent.
- ActiveEffectApplyRemoveEventArgs
Arguments for OnActiveEffectApplyRemove, the game's TESActiveEffectApplyRemoveEvent.
- ActorCellEventArgs
Arguments for OnActorCell, the game's BGSActorCellEvent.
- ActorDeathEventArgs
Arguments for OnActorDeath, the game's BGSActorDeathEvent, for which CommonLib declares no public fields.
- ActorKillEventArgs
Arguments for OnActorKill, the game's ActorKill::Event.
- ActorLocationChangeEventArgs
Arguments for OnActorLocationChange, the game's TESActorLocationChangeEvent.
- AnimationEventArgs
One annotation on an actor's animation, matching the game's BSAnimationGraphEvent.
- BookReadEventArgs
Arguments for OnBookRead, the game's TESBookReadEvent.
- BooksReadEventArgs
Arguments for OnBooksRead, the game's BooksRead::Event.
- CalendarTimerElapsedEventArgs
Arguments for OnElapsed.
- CameraEventArgs
Arguments for OnCamera, SKSE's CameraEvent.
- CellAttachDetachEventArgs
Arguments for OnCellAttachDetach, the game's TESCellAttachDetachEvent.
- CellFullyLoadedEventArgs
Arguments for OnCellFullyLoaded, the game's TESCellFullyLoadedEvent.
- CellReadyToApplyDecalsEventArgs
Arguments for OnCellReadyToApplyDecals, the game's TESCellReadyToApplyDecalsEvent, for which CommonLib declares no public fields.
- ChestsLootedEventArgs
Arguments for OnChestsLooted, the game's ChestsLooted::Event, for which CommonLib declares no public fields.
- CombatEventArgs
Arguments for OnCombat, the game's TESCombatEvent.
- ContainerChangedEventArgs
Arguments for OnContainerChanged, the game's TESContainerChangedEvent.
- ConversationEndEventArgs
Arguments for OnConversationEnd.
- CpuContext
The registers of a thread that reached an InstructionHook, as they are before the hooked instruction runs.
- CriticalHitEventArgs
Arguments for OnCriticalHit, the game's CriticalHit::Event.
- CrosshairRefEventArgs
Arguments for OnCrosshairRef, SKSE's CrosshairRefEvent.
- DataLoadedEventArgs
The game has loaded its data files.
- DeathEventArgs
Arguments for OnDeath, the game's TESDeathEvent.
- DestructionStageChangedEventArgs
Arguments for OnDestructionStageChanged, the game's TESDestructionStageChangedEvent, for which CommonLib declares no public fields.
- DisarmedEventArgs
Arguments for OnDisarmed, the game's DisarmedEvent::Event.
- DragonSoulsGainedEventArgs
Arguments for OnDragonSoulsGained, the game's DragonSoulsGained::Event.
- EnterBleedoutEventArgs
Arguments for OnEnterBleedout, the game's TESEnterBleedoutEvent.
- EquipEventArgs
Arguments for OnEquip, the game's TESEquipEvent.
- EventProcessedEventArgs
Arguments for OnEventProcessed, the game's BGSEventProcessedEvent, for which CommonLib declares no public fields.
- FormDeleteEventArgs
Arguments for OnFormDelete, the game's TESFormDeleteEvent.
- FrameEventArgs
Arguments for OnFrame.
- FurnitureEventArgs
Arguments for OnFurniture, the game's TESFurnitureEvent.
- GameFunction
A game function, by its Address Library identifier on each runtime.
- GameOffset
How far into a function an instruction sits, in bytes, stated separately for each runtime.
- GameVariable
A game variable, by its Address Library identifier on each runtime.
- GrabReleaseEventArgs
Arguments for OnGrabRelease, the game's TESGrabReleaseEvent.
- HitEventArgs
Arguments for OnHit, the game's TESHitEvent.
- InitScriptEventArgs
Arguments for OnInitScript, the game's TESInitScriptEvent.
- InputEventArgs
Arguments for OnInput, the game's InputEvent.
- InputLoadedEventArgs
The game has loaded its input. The event has no other data.
- InventoryEventArgs
Arguments for OnInventory, the game's Inventory::Event.
- ItemCraftedEventArgs
Arguments for OnItemCrafted, the game's ItemCrafted::Event.
- ItemHarvestedEventArgs
Arguments for OnItemHarvested, the game's TESHarvestedEvent::ItemHarvested.
- ItemsPickpocketedEventArgs
Arguments for OnItemsPickpocketed, the game's ItemsPickpocketed::Event.
- LevelIncreaseEventArgs
Arguments for OnLevelIncrease, the game's LevelIncrease::Event.
- LoadGameEventArgs
Arguments for OnLoadGame, the game's TESLoadGameEvent, for which CommonLib declares no public fields.
- LocationClearedEventArgs
Arguments for OnLocationCleared, the game's LocationCleared::Event, for which CommonLib declares no public fields.
- LocationDiscoveryEventArgs
Arguments for OnLocationDiscovery, the game's LocationDiscovery::Event.
- LockChangedEventArgs
Arguments for OnLockChanged, the game's TESLockChangedEvent.
- MagicEffectApplyEventArgs
Arguments for OnMagicEffectApply, the game's TESMagicEffectApplyEvent.
- MagicWardHitEventArgs
Arguments for OnMagicWardHit, the game's TESMagicWardHitEvent, for which CommonLib declares no public fields.
- MenuModeChangeEventArgs
Arguments for OnMenuModeChange, the game's MenuModeChangeEvent.
- MenuOpenCloseEventArgs
Arguments for OnMenuOpenClose, the game's MenuOpenCloseEvent.
- ModCallbackEventArgs
Arguments for OnModCallback, SKSE's ModCallbackEvent.
- MoveAttachDetachEventArgs
Arguments for OnMoveAttachDetach, the game's TESMoveAttachDetachEvent.
- NewGameEventArgs
A new character was made. The event has no other data.
- NewGameOrSaveLoadingEventArgs
A new game started or a save started loading. The event has no other data.
- NiNodeUpdateEventArgs
Arguments for OnNiNodeUpdate, SKSE's NiNodeUpdateEvent.
- NoteReadEventArgs
Arguments for OnRead.
- ObjectLoadedEventArgs
Arguments for OnObjectLoaded, the game's TESObjectLoadedEvent.
- ObjectREFRTranslationEventArgs
Arguments for OnObjectREFRTranslation, the game's TESObjectREFRTranslationEvent, for which CommonLib declares no public fields.
- ObjectiveStateEventArgs
Arguments for OnObjectiveState, the game's ObjectiveState::Event.
- OpenCloseEventArgs
Arguments for OnOpenClose, the game's TESOpenCloseEvent.
- PackageEventArgs
Arguments for OnPackage, the game's TESPackageEvent, for which CommonLib declares no public fields.
- PapyrusLogEventArgs
Arguments for OnPapyrusLog, the game's LogEvent.
- PapyrusStatsEventArgs
Arguments for OnPapyrusStats, the game's StatsEvent.
- PerkEntryRunEventArgs
Arguments for OnPerkEntryRun, the game's TESPerkEntryRunEvent, for which CommonLib declares no public fields.
- PlayerBowShotEventArgs
Arguments for OnPlayerBowShot, the game's TESPlayerBowShotEvent.
- PlayerLocationEnterEventArgs
Arguments for OnEnter.
- PositionPlayerEventArgs
Arguments for OnPositionPlayer, the game's PositionPlayerEvent.
- PostLoadEventArgs
Every SKSE plugin has been loaded. The event has no other data.
- PostPostLoadEventArgs
Every SKSE plugin has received OnPostLoad. The event has no other data.
- QuestInitEventArgs
Arguments for OnQuestInit, the game's TESQuestInitEvent.
- QuestSceneActionEndEventArgs
Arguments for OnActionEnd.
- QuestSceneBeginEventArgs
Arguments for OnBegin.
- QuestSceneEndEventArgs
Arguments for OnEnd.
- QuestSceneLineEventArgs
Arguments for OnLineBegin and OnLineEnd.
- QuestScenePhaseEventArgs
Arguments for OnPhaseBegin and OnPhaseEnd.
- QuestStageContext
Arguments for OnSet.
- QuestStageEventArgs
Arguments for OnQuestStage, the game's TESQuestStageEvent.
- QuestStageItemDoneEventArgs
Arguments for OnQuestStageItemDone, the game's TESQuestStageItemDoneEvent, for which CommonLib declares no public fields.
- QuestStartStopEventArgs
Arguments for OnQuestStartStop, the game's TESQuestStartStopEvent.
- QuestStatusEventArgs
Arguments for OnQuestStatus, the game's QuestStatus::Event.
- ResetEventArgs
Arguments for OnReset, the game's TESResetEvent.
- ResolveNPCTemplatesEventArgs
Arguments for OnResolveNPCTemplates, the game's TESResolveNPCTemplatesEvent.
- SaveEventArgs
The save that OnSaveLoading, OnSaveWriting, or OnSaveDeleted concerns.
- SaveLoadedEventArgs
The game has finished trying to read a save. The event has no other data.
- ScaleformMovieCreatedEventArgs
Arguments for OnMovieCreated.
- SceneActionEventArgs
Arguments for OnSceneAction, the game's TESSceneActionEvent, for which CommonLib declares no public fields.
- SceneEventArgs
Arguments for OnScene, the game's TESSceneEvent, for which CommonLib declares no public fields.
- ScenePhaseEventArgs
Arguments for OnScenePhase, the game's TESScenePhaseEvent, for which CommonLib declares no public fields.
- SellEventArgs
Arguments for OnSell, the game's TESSellEvent, for which CommonLib declares no public fields.
- ShoutAttackEventArgs
Arguments for OnShoutAttack, the game's ShoutAttack::Event.
- SkillIncreaseEventArgs
Arguments for OnSkillIncrease, the game's SkillIncrease::Event.
- SksePluginMessage
A message one SKSE plugin sends another.
- SleepStartEventArgs
Arguments for OnSleepStart, the game's TESSleepStartEvent, for which CommonLib declares no public fields.
- SleepStopEventArgs
Arguments for OnSleepStop, the game's TESSleepStopEvent.
- SoulsTrappedEventArgs
Arguments for OnSoulsTrapped, the game's SoulsTrapped::Event.
- SpawnPosition
A position FindSpawnPosition(float, float, IEnumerable<NiPoint3>?) finds.
- SpellCastEventArgs
Arguments for OnSpellCast, the game's TESSpellCastEvent.
- SpellsLearnedEventArgs
Arguments for OnSpellsLearned, the game's SpellsLearned::Event.
- StoryEventArgs
Arguments for OnStoryEvent.
- StoryEventValue
One value of a story event, named as the game names it and read as its kind directs.
- SwitchRaceCompleteEventArgs
Arguments for OnSwitchRaceComplete, the game's TESSwitchRaceCompleteEvent.
- TopicInfoEventArgs
Arguments for OnTopicInfo, the game's TESTopicInfoEvent.
- TrackedStatsEventArgs
Arguments for OnTrackedStats, the game's TESTrackedStatsEvent.
- TrapHitEventArgs
Arguments for OnTrapHit, the game's TESTrapHitEvent, for which CommonLib declares no public fields.
- TriggerEnterEventArgs
Arguments for OnTriggerEnter, the game's TESTriggerEnterEvent.
- TriggerEventArgs
Arguments for OnTrigger, the game's TESTriggerEvent.
- TriggerLeaveEventArgs
Arguments for OnTriggerLeave, the game's TESTriggerLeaveEvent.
- UniqueIDChangeEventArgs
Arguments for OnUniqueIDChange, the game's TESUniqueIDChangeEvent.
- UserEventEnabledEventArgs
Arguments for OnUserEventEnabled, the game's UserEventEnabled.
- WaitStartEventArgs
Arguments for OnWaitStart, the game's TESWaitStartEvent, for which CommonLib declares no public fields.
- WaitStopEventArgs
Arguments for OnWaitStop, the game's TESWaitStopEvent.
- Xmm
One 128-bit SSE register, as an InstructionHandler reads and changes it through CpuContext.
Interfaces
- IAnimationEvents
An actor's animation events, which are the annotations on its animations. Each is raised on the frame the animation arrives at it.
- IBookMenuPresenter
Shows runtime text in the book menu.
- ICalendarTimer
A timer on the game's calendar that ICalendarTimerFactory creates.
- ICalendarTimerFactory
Creates timers on the game's calendar that are saved with the game.
- ICodePatcher
Changes the machine code of the game, or of a native SKSE plugin, where it matches the bytes each patch expects.
- IConsole
Writes to the game's console, which the player opens with the console key.
- IConsoleCommandRegistrar
Adds console commands that run managed handlers.
- IConsoleCommands
Runs the console commands the game declares, and reports the arguments one of them declares.
- ICooldown
A span of UnpausedTime from each start, which a plugin tests to prevent an action, such as a reaction to a hit, from repeating within it. A new game or a save load ends it.
- ICourier
Sends items to the player by the game's courier.
- ICustomMenuRegistrar
Registers a menu of the plugin's own, which the game then constructs, shows, and drives as it does its own.
- IDebug
The game's debug functions, which surface information while it runs.
- IDialogueBranch
A dialogue branch created by IDialogueBranchFactory.
- IDialogueBranchFactory
Creates dialogue branches at runtime, without an .esp file, from DialogueTopic trees.
- IFollowers
Sets and dismisses the player's follower and animal through the game's DialogueFollower quest (000750BA).
- IForceGreet
Makes an actor walk to the player and start a conversation, using the game's force-greet package.
- IFunctionHooks
Hooks a game function at a virtual method table entry, a call instruction, or the function's entry.
- IGameEvent<TArgs>
A game event to which a plugin can subscribe.
- IGameEvents
The game events the framework exposes to plugins.
- IGameFileSystem
The files under the game's Data folder, whether loose or packed in a .bsa archive. A loose file is read in preference to an archived one at the same path.
- IGameSession
The current game, from a new character or a loaded save until the next one.
- IGreetingSilencer
Silences the greetings an actor says as a conversation with the player opens and to the player nearby outside one, and the remarks it says unprompted outside a conversation: idle chatter and the lines said on noticing a corpse.
- ILog
A destination for log lines from the framework or a plugin.
- IMessageBoxPrompter
Puts a question on the screen and reports which button was pressed.
- IModEvents
Sends mod events. Every registration for an event's name receives it, including the sending plugin's own.
- IPerPluginSavedState
A plugin's state between sessions, stored in the SKSE co-save beside the player's save file rather than in a file of the plugin's own.
- IPlayerLocationEvents
Events for the location the player is in.
- IPlayerPositionHistory
The positions the player has stood on in the loaded game, and the search for a position near the player to place an actor.
- IPlugin
A unit of behavior loaded into a game.
- IPluginCollection
A collection of IPlugin. Allows one IPlugin to look up another to access its public members.
- IPluginServiceSource
Adds a library's services so plugins can declare them as constructor parameters for dependency injection.
- IQuestLocationAliasEvents
The game's events about the player and the location a QuestLocationAlias is filled with.
- IQuestObjectives
The objectives of an IRuntimeQuest.
- IQuestReferenceAliasEvents
The events of IGameEvents that name the reference a QuestReferenceAlias is filled with at the time of the raise.
- IQuestSceneEvents
The events of one scene or of every scene of a quest.
- IQuestScenes
The scenes of an IRuntimeQuest as a group.
- IQuestStages
The stages of an IRuntimeQuest.
- IReadableNotes
Makes references readable notes whose pages a plugin writes at runtime.
- IRuntimeQuest
A quest created by IRuntimeQuestFactory.
- IRuntimeQuestFactory
Creates quests that the journal lists, at runtime and without an .esp file.
- ISavedStateDictionary<TKey, TValue>
A dictionary in a saved-state store whose values are stored as text.
- ISavedStateEntries
The text and form IDs a plugin stores under keys it chooses.
- ISavedStateEntriesDictionary<TKey>
A dictionary in a saved-state store whose values are stores of their own.
- ISavedStateFormPair<TForm>
One form ID in a saved-state store, with the key beside it so a caller names it once.
- ISavedStateList
A list in a saved-state store, whose elements are stores of their own.
- ISavedStatePair<T>
One entry of a saved-state store, with the key beside it so a caller names it once and reads and writes it as
T.
- ISavedStateRecordPair<T>
One record in a saved-state store, read and written as
Tunder one key.
- ISavedStateStringPair
One text entry in a saved-state store.
- ISavedStateStringSet
A set of text in a saved-state store.
- IScaleformFunctionRegistrar
Puts a function on a Scaleform movie that ActionScript calls and this plugin implements, which is the direction ICustomMenuRegistrar and
ScaleformValuedo not cover: those reach into a movie, and this lets the movie reach back.
- IServiceRegistrar
Registers services for dependency injection.
- ISkseLogDirectory
The folder that receives SKSE's logs for the running game, SkyrimForge's own log among them.
- ISksePluginMessenger
Sends messages to the other SKSE plugins in the load order and receives what they send.
This is one of the two ways a plugin reaches another. The commoner is an exported function the publisher names and the consumer finds through its module, which needs nothing from the framework:
NativeLibrary.TryGetExportreaches it and a function pointer calls it. This is the other way, and it is the only one by which another plugin reaches a plugin here unprompted.
- IStoryEvents
The story manager's events: crafting, arrest, a killing, a relationship changing, and every other kind the game registers.
- ISubscription
A handle to one registration a plugin made, such as a handler subscribed to an event or a package added to an alias.
- ITaskQueue
Queues work to run at a moment the game is stopped for it, which is how a plugin calls the game from a thread of its own.
- ITriggerZone
A zone ITriggerZoneFactory creates.
- ITriggerZoneFactory
Creates zones around references that raise events as the player enters and leaves them.
- IUnvoicedSpeech
Shows dialogue lines that have no voice recording as subtitles under the speaker, with a timed mouth animation.
- IUtility
Waits and cooldowns measured by UnpausedTime.
- IWorldMapMarkers
Adds markers to the world map at runtime, each a place the player can fast travel to.
Enums
- ConversationEndReason
The way a conversation that showed a dialogue branch ended.
- DisplacedPlacement
The order of an InsertionPatch's code and the instructions it displaces.
- QuestOutcome
How a QuestStage ends the quest or its open objectives.
- QuestSceneEndReason
The way a QuestScene ended.
- QuestSceneStartResult
The result of Start(int) and ForceStart(int).
- SceneInterruption
The effect an event involving a scene's actor has on the scene.
- ScenePlayerControls
The player controls a QuestScene disables while it plays. Each member is named for a parameter of Papyrus's Game.DisablePlayerControls.
- SpawnPositionSource
The source a SpawnPosition was found in, in the order FindSpawnPosition(float, float, IEnumerable<NiPoint3>?) tests them.
- StoryEventValueKind
The type of one value of a story event.
Delegates
- AsyncGameEventHandler<TArgs>
Handles a game event asynchronously. The game waits for the handler to return its task.
- GameEventHandler<TArgs>
Handles a game event. The game waits for the handler to return.
- InstructionHandler
Runs on a thread that reaches an InstructionHook, before the hooked instruction.