Open main menu
Home
Random
Log in
Settings
About the CreationKit Wiki
Disclaimers
the CreationKit Wiki
Search
Editing
Form Script
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
Native base script for every [[Glossary#Form|form]] in the game. == Definition == <syntaxhighlight lang="papyrus"> ScriptName Form </syntaxhighlight> == Properties == None == Global Functions == None == Member Functions == :'''Int [[GetFormID - Form|GetFormID]]()''' :*Returns this form's form ID. :'''Int [[GetGoldValue - Form|GetGoldValue]]()''' :*Returns this form's value in gold. :'''Bool [[HasKeyword - Form|HasKeyword]](Keyword ''akKeyword'')''' :*Returns if this form has the specified [[Keyword Script|Keyword]] attached. :'''Bool [[PlayerKnows - Form|PlayerKnows]]()''' :*Is the "Known" flag set on the form? :'''[[RegisterForAnimationEvent - Form|RegisterForAnimationEvent]](ObjectReference ''akSender'', String ''asEventName'')''' :*Registers this form to receive the specified animation event from the specified object. :'''[[RegisterForLOS - Form|RegisterForLOS]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Registers this form to receive gain and lost LOS events between the viewer and the target. :'''[[RegisterForSingleLOSGain - Form|RegisterForSingleLOSGain]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Registers this form to receive a single LOS gain event when the viewer sees the target. :'''[[RegisterForSingleLOSLost - Form|RegisterForSingleLOSLost]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Registers this form to receive a single LOS lost event when the viewer loses sight of the target. :'''[[RegisterForSingleUpdate - Form|RegisterForSingleUpdate]](Float ''afInterval'')''' :*Registers this form to receive a single update event in the specified time. :'''[[RegisterForSingleUpdateGameTime - Form|RegisterForSingleUpdateGameTime]](Float ''afInterval'')''' :*Registers this form to receive a single update event in the specified number of game hours. :'''[[RegisterForSleep - Form|RegisterForSleep]]()''' :*Registers this form to receive sleep events for when the player goes to sleep or wakes up. :'''[[RegisterForTrackedStatsEvent - Form|RegisterForTrackedStatsEvent]]()''' :*Registers this form to receive tracked stats events for when tracked stats are updated. :'''[[RegisterForUpdate - Form|RegisterForUpdate]](Float ''afInterval'')''' :*Registers this form to receive update events with the specified interval, or changes the update interval. :'''[[RegisterForUpdateGameTime - Form|RegisterForUpdateGameTime]](Float ''afInterval'')''' :*Registers this form to receive update events with the specified interval in game time hours, or changes the update interval. :'''[[StartObjectProfiling - Form|StartObjectProfiling]]()''' :*Starts profiling all scripts attached to this form. :'''[[StopObjectProfiling - Form|StopObjectProfiling]]()''' :*Stops profiling all scripts attached to this form. :'''[[UnregisterForAnimationEvent - Form|UnregisterForAnimationEvent]](ObjectReference ''akSender'', String ''asEventName'')''' :*Unregisters this from from receiving the specified animation event from the specified object. :'''[[UnregisterForLOS - Form|UnregisterForLOS]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Unregisters this form from any LOS events between the viewer and target. :'''[[UnregisterForSleep - Form|UnregisterForSleep]]()''' :*Unregisters this form from sleep events. :'''[[UnregisterForTrackedStatsEvent - Form|UnregisterForTrackedStatsEvent]]()''' :*Unregisters this form from tracked stats events. :'''[[UnregisterForUpdate - Form|UnregisterForUpdate]]()''' :*Unregisters this form from update events. :'''[[UnregisterForUpdateGameTime - Form|UnregisterForUpdateGameTime]]()''' :*Unregisters this form from game time update events. == SKSE Member Functions == :'''Int [[GetType - Form|GetType]]()''' :*Returns this form's form typecode. :'''String [[GetName - Form|GetName]]()''' :*Returns this form's full name. :'''[[SetName - Form|SetName]](String ''name'')''' :*Sets this form's full name. :'''Float [[GetWeight - Form|GetWeight]]()''' :*Returns this form's weight. :'''[[SetWeight - Form|SetWeight]](Float ''weight'')''' :*Sets this form's weight. :'''[[SetGoldValue - Form|SetGoldValue]](Int ''value'')''' :*Sets this form's base gold value. :'''Int [[GetNumKeywords - Form|GetNumKeywords]]()''' :*Returns the number of keywords on this form. :'''Keyword [[GetNthKeyword - Form|GetNthKeyword]](Int ''index'')''' :*Returns the keyword specified by index on this form. :'''Bool [[HasKeywordString - Form|HasKeywordString]](String ''s'')''' :*Returns whether this form has a keyword with the specified string. :'''[[SetPlayerKnows - Form|SetPlayerKnows]](Bool ''knows'')''' :*Sets whether the player know this form. Should only be used For Magic Effects, Words of Power and Enchantments. :'''Bool [[IsPlayable - Form|IsPlayable]]()''' :*Returns if the form is marked playable or not. Only works on forms that have that flag, such as Armors. :'''Bool [[HasWorldModel - Form|HasWorldModel]]()''' :*Returns whether this form has a world model or not. :'''String [[GetWorldModelPath - Form|GetWorldModelPath]]()''' :*Gets this form's world model. :'''[[SetWorldModelPath - Form|SetWorldModelPath]](String ''path'')''' :*Sets this form's world model. :'''Int [[GetWorldModelNumTextureSets - Form|GetWorldModelNumTextureSets]]()''' :*Returns the number of texture sets the world model has. :'''TextureSet [[GetWorldModelNthTextureSet - Form|GetWorldModelNthTextureSet]](Int ''n'')''' :*Returns the Nth texture set of the forms world model. :'''[[SetWorldModelNthTextureSet - Form|SetWorldModelNthTextureSet]](TextureSet ''nSet'', Int ''n'')''' :*Sets the Nth texture set of the forms world model to the specified TextureSet. :'''[[RegisterForKey - Form|RegisterForKey]](Int ''keyCode'')''' :*Registers the given [[Input_Script#DXScanCodes|DXScanCode]] for OnKeyDown and OnKeyUp events. :'''[[UnregisterForKey - Form|UnregisterForKey]](Int ''keyCode'')''' :*Unregisters the given [[Input_Script#DXScanCodes|DXScanCode]] for OnKeyDown and OnKeyUp events. :'''[[UnregisterForAllKeys - Form|UnregisterForAllKeys]]()''' :*Unregisters all registered [[Input_Script#DXScanCodes|DXScanCodes]]. :'''[[RegisterForControl - Form|RegisterForControl]](String ''control'')''' :*Registers the given control for OnControlDown and OnControlUp events. :'''[[UnregisterForControl - Form|UnregisterForControl]](String ''control'')''' :*Unregisters the given control for OnControlDown and OnControlUp events. :'''[[UnregisterForAllControls - Form|UnregisterForAllControls]]()''' :*Unregisters all registered controls. :'''[[RegisterForMenu - Form|RegisterForMenu]](String ''menuName'')''' :*Registers for OnMenuOpen and OnMenuClose events for the given menu. :'''[[UnregisterForMenu - Form|UnregisterForMenu]](String ''menuName'')''' :*Unregisters for OnMenuOpen and OnMenuClose events for the given menu. :'''[[UnregisterForAllMenus - Form|UnregisterForAllMenus]]()''' :*Unregisters all registered menus. :'''[[RegisterForModEvent - Form|RegisterForModEvent]](String ''eventName'', String ''callbackName'')''' :*Registers a custom event callback for given event name. :'''[[SendModEvent|SendModEvent]](String ''eventName'', String ''strArg'', Float ''numArg'')''' :*Sends a custom event with given generic parameters. :'''[[UnregisterForModEvent - Form|UnregisterForModEvent]](String ''eventName'')''' :*Unregisters a custom event callback for given event name. :'''[[UnregisterForAllModEvents|UnregisterForAllModEvents]]()''' :*Unregisters all registered custom events. :'''Form [[TempClone - Form|TempClone]]()''' :*Returns a temporary clone of this form :'''[[RegisterForCameraState - Form|RegisterForCameraState]]()''' :*Registers for OnPlayerCameraState events. :'''[[UnregisterForCameraState - Form|UnregisterForCameraState]]()''' :*Unregisters for OnPlayerCameraState events. :'''[[RegisterForCrosshairRef - Form|RegisterForCrosshairRef]]()''' :*Registers for OnCrosshairRefChange events. :'''[[UnregisterForCrosshairRef - Form|UnregisterForCrosshairRef]]()''' :*Unregisters for OnCrosshairRefChange events. :'''[[RegisterForActorAction - Form|RegisterForActorAction]](Int ''actionType'')''' :*Registers for OnActorAction events. :'''[[UnregisterForActorAction - Form|UnregisterForActorAction]](Int ''actionType'')''' :*Unregisters for OnActorAction events. :'''[[RegisterForNiNodeUpdate]]()''' :*Registers the script for when a QueueNiNodeUpdate is called :'''[[UnregisterForNiNodeUpdate]]()''' :*Unregisters the script for when a QueueNiNodeUpdate is called == Events == :'''[[OnAnimationEvent - Form|OnAnimationEvent]](ObjectReference ''akSource'', String ''asEventName'')''' :*Received when one of animation events we are listening for is recieved. :'''[[OnAnimationEventUnregistered - Form|OnAnimationEventUnregistered]](ObjectReference ''akSource'', String ''asEventName'')''' :*Received when one of the animation events we are listening for has been automatically unregistered by the game due to the target animation graph unloading. :'''[[OnGainLOS - Form|OnGainLOS]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Received when the viewer goes from not seeing the target to seeing the target - if this form is registered. :'''[[OnLostLOS - Form|OnLostLOS]](Actor ''akViewer'', ObjectReference ''akTarget'')''' :*Received when the viewer goes from seeing the target to not seeing the target - if this form is registered. :'''[[OnSleepStart - Form|OnSleepStart]](Float ''afSleepStartTime'', Float ''afDesiredSleepEndTime'')''' :*Received when the player goes to sleep. :'''[[OnSleepStop - Form|OnSleepStop]](Bool ''abInterrupted'')''' :*Received when the player wakes up or is interrupted in sleep. :'''[[OnTrackedStatsEvent - Form|OnTrackedStatsEvent]](String ''asStat'', Int ''aiStatValue'')''' :*Received when tracked stats are updated. :'''[[OnUpdate - Form|OnUpdate]]()''' :*Received at periodic intervals, if the form is registered. :'''[[OnUpdateGameTime - Form|OnUpdateGameTime]]()''' :*Received at periodic intervals of game time, if the form is registered. == SKSE Events == :'''[[OnKeyDown - Form|OnKeyDown]](Int ''keyCode'')''' :*Received when key(s) registered via [[RegisterForKey - Form|RegisterForKey]] are pressed. :'''[[OnKeyUp - Form|OnKeyUp]](Int ''keyCode'', Float ''holdTime'')''' :*Received when key(s) registered via [[RegisterForKey - Form|RegisterForKey]] are released. :'''[[OnControlDown - Form|OnControlDown]](String ''control'')''' :*Received when control(s) registered via [[RegisterForControl - Form|RegisterForControl]] are pressed. :'''[[OnControlUp - Form|OnControlUp]](String ''control'', Float ''holdTime'')''' :*Received when control(s) registered via [[RegisterForControl - Form|RegisterForControl]] are released. :'''[[OnMenuOpen - Form|OnMenuOpen]](String ''menuName'')''' :*Received when menu(s) registered via [[RegisterForMenu - Form|RegisterForMenu]] are opened. :'''[[OnMenuClose - Form|OnMenuClose]](String ''menuName'')''' :*Received when menu(s) registered via [[RegisterForMenu - Form|RegisterForMenu]] are closed. :'''[[OnPlayerCameraState - Form|OnPlayerCameraState]](Int ''oldState'', Int ''newState'')''' :*Received when (player camera state changes?) when registered via [[RegisterForCameraState - Form|RegisterForCameraState]] :'''[[OnCrosshairRefChange - Form|OnCrosshairRefChange]](ObjectReference ''ref'')''' :*Received when player crosshair changes when registered via [[RegisterForCrosshairRef - Form|RegisterForCrosshairRef]] (Note: ref is none for no target)(Note:Crosshair uses activate pick) :'''[[OnActorAction - Form|OnActorAction]](Int ''actionType'', Actor ''akActor'', Form ''source'', Int ''slot'')''' :*Received when the Actor performs an action that is registered via [[RegisterForActorAction - Form|RegisterForActorAction]] :'''[[OnNiNodeUpdate]](ObjectReference ''akActor'')''' :*Received when a NINodeUpdate is performed. To recieve this the form must have been registered via [[RegisterForNiNodeUpdate - Form|RegisterForNiNodeUpdate]] [[Category:Scripting]] [[Category:Papyrus]] [[Category:Script Objects]] [[Category:SKSE]] [[Category:SKSE Script Objects]]
Summary:
Please note that all contributions to the CreationKit Wiki are considered to be released under the Creative Commons Attribution-ShareAlike (see
CreationKit:Copyrights
for details). If you do not want your writing to be edited mercilessly and redistributed at will, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource.
Do not submit copyrighted work without permission!
Cancel
Editing help
(opens in new window)