You are on page 1of 9

1.7.

3:
- added SpawnerTask for batch PlaceAtMe with positioning (see SpawnerTask.psc fo
r details)
- fixed chance of ModEvent/UICallback instances failing if the game was saved+lo
aded between their creation and execution
- added Spell.GetEffectMagnitudes/GetEffectAreas/GetEffectDurations/GetMagicEffe
cts
- added ObjectReference.GetContainerForms/GetReferenceAliases
- added WornObject.GetReferenceAliases
- added Form.GetKeywords
- added StringUtil.Split
- added Utility.ResizeArray
- added Actor.ResetAI (similar to console function)
- fixed ActorBase.GetIndexOf*
- fixed Utility.CreateArray initialization with empty Forms/Aliases
- added support for skse.ExtendData(true) to enchanting/alchemy/smithing/craftin
g menus
- added Ingredient/Potion/Scroll/Spell.GetIsNthEffectKnown/Magnitudes/Areas/Dura
tions/MagicEffects
- added Quest.GetAliasById/GetAliases
- fixed Armor.ModArmorRating to disallow underflow
- added FormList.ToArray/AddForms
- added experimental GameData functions
- TreeObject and Flora accept general forms as produce
- added diagnostic messages that help detecting the cause of common crashes or p
roblems.
(1) Shows which masterfile is missing when the game CTDs on startup.
(2) Lists the missing files in the removed content dialog when loading a
save.
Both are disabled by default; to enable them add this to \Data\SKSE\skse
.ini:
[General]
EnableDiagnostics=1
1.7.2:
- renamed Tree -> TreeObject, avoids conflicts with vanilla scripts
- container weight count takes stack size in to account
- added Actor.GetFactions
- added Cell.GetWaterLevel
- added Faction functions
- added ActorValueInfo.GetCurrent/Base/MaximumValue
- added Game.GetCurrentConsoleRef
- added many node manipulation functions to NetImmerse
- fixed SetHarvested to update the visual model as well as the object state
- added kMessage_NewGame to SKSEMessagingInterface
- added Enchantment.Get/SetKeywordRestrictions
- initial implementation of array return types
- fix crash caused by many simultaneous key tap/press/release commands
- add OnNiNodeUpdate event to ActiveMagicEffect, Alias, Form
- added experimental support for creating arrays larger than 128 entries
- added Game.SetPlayerLevel. Works analogously to console command SetLevel calle
d on the player
1.7.1:
- fixed IsValidRace for armor races
- added MagicEffect.GetCasting/DeliveryType
- fixed crash when calling UpdateWeight on non-facegen Actors
- GetTotalItemWeight computed correctly for non-players
- added Potion.IsPoison, GetUseSound
- added Weapon.GetTemplate

- added Ammo.IsBolt, GetProjectile, GetDamage


- added Game.GetDialogueTarget
- added SKSETaskInterface::AddUITask
- serialization understands deleted forms
- added SKSEMessagingInterface
- plugin messages sent on save, preload, postload, delete
- WornObject.GetDisplayName returns base form name if no display name is present
- added WornObject, ObjectReference.GetPoison
- DirectX SDK now required for compilation
- fixed WornObject slot/mask lookup
- added NetImmerse.SetNodePosition
- added Actor.GetFurnitureReference
- added Game.GetCurrentCrosshairRef
- added NetImmerse.GetRelativeNodePositionX/Y/Z
- added Actor.Set/ResetExpressionPhoneme/Modifier
- added Form.HasWorldModel, Get/SetWorldModelPath/NumTextureSets/NthTextureSet/S
etWorldModelNthTextureSet
- added HeadPart.IsExtraPart
- added Form.IsPlayable
- added ObjectReference.GetAllForms
1.7.0:
- added Game.GetFormEx that works for formIds >= 0x80000000
- added UI.Open/CloseCustomMenu
- added Actor.ReplaceHeadPart, ActorBase.GetNumOverlayHeadParts, GetNthOverlayHe
adPart, GetIndexOfOverlayHeadPartByType
- added Math.Log
- added Ingredient.GetIsNthEffectKnown
- fixed SetPlayerTintMaskColor alpha
- enabled previously-temporary Papyrus plugin API - it isn't what I wanted it to
be, but I don't think I have the time to do it the right way
- added ActiveMagicEffect.GetMagnitude
- added Art.Get/SetModelPath
- added many MagicEffect and Tree functions
- added ModEvent and UICallback, see associated .psc for details
- added ObjectReference.Get/SetDisplayName
- added Enchantment.SetNthEffectMagnitude/Area/Duration
- added Form.SetPlayerKnows
- added Enchantment.GetBaseEnchantment
- added Perk.GetNextPerk
- added ActorValueInfo, see ActorValueInfo.psc for details
- added LeveledActor/Item/Spell, see associated .psc for details
- added Game.Get/SetPlayerExperience, GetExperienceForLevel
- added ObjectReference.GetEnableParent, Get/Set/CreateEnchantment, GetNumRefere
nceAliases, GetNthReferenceAlias
- fixed Get/SetGoldValue for AlchemyItems
- added DefaultObjectManager
- thanks to sheson: added configuration of some initial pool sizes
[Memory]
DefaultHeapInitialAllocMB= <default heap initial allocation size in mega
bytes, vanilla size is 512>
ScrapHeapSizeMB= <scrap heap size in megabytes, vanilla size is 256>
1.6.16:
- fixed EquipItemById not properly handling stacks of items
- fixed crash when retrieving magic favorites
1.6.15:
- fixed EquipItemEx bug causing two items of the same type with different enhanc
ements unable to be equipped in both left and right

- fixed Game.UnbindObjectHotkey/GetHotkeyBoundObject/IsObjectFavorited (Could on


ly be used once until the hotkey was manually re-bound)
- bound all of the existing Scroll functions (They were defined but never native
ly bound)
- added Scroll.GetCastTime
- changed ActorAction slot value to match other functions 0-left 1-right 2-voice
- added Actor.EquipItemById/GetEquippedItemId/GetWornItemId
1.6.14:
- TESCombatStyle now properly cloned by TempClone (uses our implementation inste
ad of bethesda's)
- minidump reporting ignores 'known' crash on exit (a bug in the game engine) to
avoid creating useless minidumps
- added ObjectReference.IsOffLimits, fixed Actor.GetNthSpell (generic Actor::Spe
llArray access), thanks to himika
- hook up plugin serialization API
- added Actor.GetEquippedObject, returns the base form of the object equipped in
the left, right, and voice slots
- HasKeywordString returns false when the keyword is not found
- added Game.IsObjectFavorited/UnbindObjectHotkey/GetHotkeyBoundObject to check
if an item/spell has been favorited by the player, unbind a hotkeyed item/spell,
or get the hotkeyed item/spell
- added ActionScript functions StoreIndices/LoadIndices to keep state-related in
dices between menu sessions
- tweaked ActionScript function GetActivePlayerEffects to ignore hidden and inac
tive effects
- added SKSE.GetPluginVersion
- added Actor IsSwimming/SheatheWeapon/IsAIEnabled
- added Game.GetPlayerMovementMode (Control mode)
- added ActorBase.GetTemplate (Returns the root template of the ActorBase)
- added Race/ActorBase.Get/SetSkin/Far
- added ActorAction events (see Form.psc for full list)
- added Weapon.Get/SetEquipType/Skill/Resist/CritEffect/CritEffectOnDeath/CritMu
ltiplier/EnchantmentValue/EquippedModel
- hook up plugin task API (For processing heavy NetImmerse tasks)
1.6.13:
- fix crash in UpdateHairColor
1.6.12:
- support for beta runtime 1.9.32
- translations no longer treat characters like 0x4E0A as a newline terminator
- added Game.Get/SetSkillLegendaryLevel
1.6.11:
- fixed bug that would prevent sleep event registrations from being saved
- add Book.IsTakeable
- support for beta runtime 1.9.29 (later released as a final version)
1.6.10:
- support for beta runtime 1.9.26
- HeadPart.GetHeadPart, Actor.ChangeHeadPart
- Game.SetPlayersLastRiddenHorse
- fixed result of ColorComponent.Set* functions
- ClearInvalidRegistrations now cleans OnUpdateGameTime registrations as well
1.6.9:
- properly updated NetImmerse papyrus functions, make sure to update RaceMenu at
the same time
- ActorBase.Get/SetVoiceType

1.6.8:
- back out partially committed change to NetImmerse papyrus functions, fixes Rac
eMenu
1.6.7:
- removed Game.GetMiscStat (use vanilla badly-named QueryStat)
- add console command ClearInvalidRegistrations to remove invalid OnUpdate() reg
istrations
This prevents orphaned OnUpdate() events and the resulting bloated/broke
n saves when removing certain mods.
When applied to an already bloated save, it will stop growing further an
d instead shrink over time
as the game processes all queued events. This may take hours depending o
n the amount of bloat.
To execute automatically after each reload, add this to \Data\SKSE\skse.
ini:
[General]
ClearInvalidRegistrations=1
- add Spell.GetEffectiveMagickaCost to get actual spell cost after applying perk
modifiers etc.
- loader can set runtime's processor affinity: pass "-affinity <mask>" as a comm
and line argument
- add Actor.Equip/UnequipItemEx to equip/unequip an item in a specific hand
- add Form/Alias/ActiveMagicEffect.RegisterForCameraState to receive OnPlayerCam
eraState events
- add Form/Alias/ActiveMagicEffect.RegisterForCrosshairRef to receive OnCrosshai
rRefChange events
- add ActionScript functions: ShowOnMap, EnableMapMenuMouseWheel
- fixed SKSE key events not being generated until a game had been loaded at leas
t once
- fixed TESModelTextureSwap structure (solves a crash in Get/SetModelNthTexture
when requesting swaps past the first)
- added SKSE.GetScriptVersionRelease, a function stored in the psc/pex returning
the current release version. this may be used to detect if a user has mismatche
d scripts and runtime.
- ActorBase.GetIndexOfHeadPartsByType
- fixed crashdump logger
- fixed Book.IsRead
- moved tintmask update handler to increase stability
- add Game.GetCameraState
- add Flora.Get/SetIngredient/SoundDescriptor
- added Perk functions (see Perk.psc)
1.6.6:
- fix Potion.IsFood
- fix crash in Actor.GetNthSpell when called on actors with no spells
- cosaves are deleted properly when overwriting existing saves
- cosave path now respects sLocalSavePath config setting
- steam_loader no longer uses current working directory
- automatic translation loader correctly derives current language
- set [Debug] WriteMinidumps=1 in the .ini file to write a minidump to <My Docum
ents>\My Games\Skyrim\SKSE\Minidumps\ when the game crashes
- set [Display] iTintTextureResolution=<number> to pick the size of dynamically
built tint textures (default is 256)
- ActiveEffects may now register for and send events
- Alias.SendModEvent
- Game.Get/SetMiscStat
- Race.GetRace, Race.Get/SetDefaultVoiceType
- Game.UpdateTintMaskColors, UpdateHairColor

TextureSet.Get/SetNthTexturePath
ActorBase.Get/SetFaceTextureSet
Book.IsRead
added NetImmerse class with various NiNode manipulation functions

1.6.5:
- add ActionScript function GetLastKeycode to return the last pressed/released S
KSE keycode
- disabled non-delayed execution for UI.Get/Set/IsMenuOpen because of stability
issues
- updated Game.psc and Actor.psc scripts to include new 1.8.151 functions
- ObjectReference.GetNiNodePositionX/Y/Z, Get/SetNiNodeScale
1.6.4:
- fix crash on startup when a line in plugins.txt does not contain a period
- some other stuff
1.6.3:
- support for runtime version 1.8.151
- fix co-save files not being removed when deleting savegames with the in-game i
nterface
- enabled non-delayed execution for several functions (Math, UI, Utility, String
Util, ...)
- some other stuff
1.6.2:
- add Input.GetMappedControl to return name of control bound to given keycode
- fix Game.Save/LoadGame
- fix UI.Invoke* stability issues when called during menu open/close
- add Form/Alias.RegisterForControl to receive OnControlDown/Up events
For a list of valid control names, see Data/Scripts/Source/Input.psc
- add ActionScript function GetLastControl to return the name of the last presse
d/released control
- support for runtime version 1.8.145
1.6.1:
- corrected build error; I forgot to sync to latest before releasing 1.6.0
1.6.0:
- fix RemoveSlotFromMask
- add UI.IsTextInputEnabled, ObjectReference.SetHarvested, Book.GetSkill, Game.S
ave/LoadGame, ObjectReference.ResetInventory
- add UI.Get*/Set* for direct UI data manipluation
- add UI.Invoke* to call ActionScript functions
- add Form/Alias.RegisterForMenu etc to receive menu open/close events
- add Form/Alias.RegisterForModEvent etc, Form/Alias.SendModEvent
Mods can register callbacks for custom events:
RegisterForModEvent("MYPREFIX_myCustomEvent", "MyModEventCallbac
k")
Prefix your event names if you want them to be unique!
See Form.psc for more details
- add Form/Alias.RegisterForKey to receive OnKeyDown/Up events
For a list of keycodes, see
http://fose.silverlock.org/fose_command_doc.html#DirectX_Scancod
es
Supported GamePad buttons:
266: DPAD_UP
267: DPAD_DOWN
268: DPAD_LEFT
269: DPAD_RIGHT

270: START
271: BACK
272: LEFT_THUMB
273: RIGHT_THUMB
274: LEFT_SHOULDER
275: RIGHT_SHOULDER
276: A
277: B
278: X
279: Y
280: LT
281: RT
- support for additional interface translation files (same as Translate_ENGLISH.
txt)
If your mod is named MyMod.esp, place files in Data/Interface/Translatio
ns/MyMod_<LANGUAGE>.txt,
i.e. MyMod_RUSSIAN.txt
Files must use the same encoding as the original Translate_*: UTF16 LE w
ith BOM aka UCS-2 LE
and contain $key<TAB>value pairs. Loading them from .BSA files i
s supported, too
- introduced co-save to hold event registrations for SKSE-added event types
- add ActionScript functions: SendModEvent, RequestActivePlayerEffects, ExtendFo
rm, RequestActorValue, GetMappedKey, StartRemapMode
see skse_docs.txt for details
- Form.TempClone. Not all types support this - you may get back a valid form wit
h initialized data rather than data copied from the source.
- add Input.GetMappedKey to return keycode bound to given control and device
- locked out some unsafe scaleform functions from being called while the game is
loading/reloading (crash avoidance)
1.5.11
- BGSBipedObjectForm changed size in 1.7.7, fixed TESRace, TESObjectARMO/ARMA fu
nctions
- moved SetGameSetting functions to Game from Utility to match
- more item/spell data exposed to scaleform
- fix crash when pushing data to scaleform variables that have no data yet
- updated docs for UI/Form functions
1.5.10
- show SKSE version in system menu
- SKSE version/runtime/release idx table added to skse_docs.txt
- add more weapon data to Scaleform
- add race flag functions
- add ModInfo functions to Game.psc
- add SetGameSettingFloat/Int/Bool/String
- log files written to <My Documents>\My Games\Skyrim\SKSE\
- support for runtime 1.7.7.0
1.5.9
- hook up Race functions.
- support for runtime 1.6.89.0
1.5.8:
- Fix size of enchantable class so that Weapon and Armor functions work again.
- Fix other various bugs in previous version.
- Temporarily add missing native function definitions in Actor.psc, ObjectRefere
nce.psc, Spell.psc and Game.psc.
1.5.7:

- Fix bugs with SetName and really hook up Input.GetNumKeysPressed and GetNthKey
Pressed
- support for runtime 1.6.87.0
1.5.6:
- Add Form.HasKeywordString(string)
- Add Weapon IsBattleaxe and similar functions
- Add Armor: IsCuirass, IsLight/HeavyArmor, IsClothing, IsClothingBody and simil
ar functions
- Add Armor: Get/Set Model/Icon/MessageIcon paths
- Properly hook up Armor functions
- Fix sundry typos and bugs
1.5.5:
- Add Book functions (thanks PurpleLunchbox)
- Add Input: GetNumKeysPressed, GetNthKeyPressed
- Add Weapon: Get/SetCritDamage, Get/SetMin/MaxRange
1.5.4:
- Add ability to pass, return strings.
- Add Form.Get/SetName, Keyword.GetString, Weapon.Get/Set Model/Icon/MessageIcon
paths
- Add Armor SlotMask functions (Get/SetSlotMask, AddTo/RemoveFromSlotMask, GetMa
skForSlot)
- Add StringUtil.psc (Find, Substring, GetLength, GetNthChar, Char-functions: Is
Digit, IsLetter etc.)
1.5.3:
- fix all Actor.psc functionality, Add GetWornForm
- add Potion.psc and Spell.psc along with magicitem effect walking code
1.5.2:
- additional papyrus functionality (Input, SKSE version functions, IsHarvested)
1.5.1:
- loader is now compatible with the windows 8 exe loader
- papyrus support!
1.4.15:
- support for runtime 1.5.26.0
1.4.14:
- support for runtime 1.5.24.0
1.4.13:
- more info reported to the UI for objects (see skse_docs.txt)
- accidentally left some debug code on in 1.4.12 that would cause mouse problems
, fixed
1.4.12:
- support for runtime 1.4.27.0
- more papyrus
1.4.11:
- hooked favorites menu item list
- loader can retrieve name of runtime from .ini
add \Data\SKSE\skse.ini containing:
[Loader]
RuntimeName=TESV.exe
- support for runtime 1.4.26.0

- pass -launchsteam to the loader to attempt to launch steam


- initial papyrus hooks
1.4.10:
- fix GFxValue destruction (this was causing the instability)
- fix GetConfigOption (makes .ini configuration work)
1.4.9:
- forced container categorization now configurable via .ini
add \Data\SKSE\skse.ini containing:
[Interface]
EnableContainerCategorization=1
- possible refcounting fix for scaleform objects
- cache GFxFunctionHandler objects
1.4.8:
- scaleform ForceContainerCategorization
- support for runtime 1.4.21.0
1.4.7:
- support for runtime 1.4.20.0
1.4.6:
- added optional extensions for item cards (see skse_docs.txt for details)
1.4.5
- support for runtime 1.4.15.0
1.4.4:
- additional form docs
1.4.3:
- when running a Steam-wrapped executable, make sure Steam is running
- fix conflict with logging system and UAC
1.4.2:
- scaleform: GetINISetting
- support for runtime 1.3.10.0
1.4.1:
- more docs
- scaleform: CloseMenu
- preliminary scaleform plugin API
1.4.0:
- hooked scaleform vm
- scaleform: AllowTextInput, Log, SetINISetting, OpenMenu, skse.version
1.3.0:
- support for runtime 1.3.7.0
- hooked classic script interpreter
1.2.1:
- fix the new bug in runtime 1.2.12.0 regarding spell resistance
1.2.0:
- lots of form docs
- support for runtime 1.2.12.0
1.1.0:

- everything!
- plugin manager
- lots of scaleform docs
- some papyrus docs
- the obscript code is pretty much the same so there isn't much interesting ther
e yet. will get to patching the runtime table if there are reasons to not use pa
pyrus all the time

You might also like