StartScriptProfiling - Debug: Difference between revisions
Jump to navigation
Jump to search
imported>Perdev No edit summary |
imported>Perdev |
||
| Line 25: | Line 25: | ||
== Notes == |
== Notes == |
||
Profiling requires the "bEnableProfiling" flag in the "[Papyrus]" section of the ini file to be set to 1. Consoles will never profile in release final builds. |
Profiling requires the "bEnableProfiling" flag in the "[Papyrus]" section of the ini file to be set to 1. Consoles will never profile in release final builds. |
||
=== Identifying latent functions === |
|||
It is possible to use this method to determine whether a function is [[:Category:Latent Functions|latent]] or not. For example in the following output we can see that the [[AddSpell - Actor]] function's call triggers a QUEUE_PUSH. This is because it is a latent function. On the hand, [[Trace - Debug|Debug.Trace]] does not trigger this instruction because it is not latent. |
|||
<pre> |
|||
26473:START:76 |
|||
26473:POP:76:1:None:Debug..StartStackProfiling |
|||
26473:PUSH:76:1:MyTestQuest (0B000D62):MyTestScript2..SomeCall |
|||
26473:PUSH:76:2:None:Debug..Trace |
|||
26473:POP:76:2:None:Debug..Trace |
|||
26473:QUEUE_PUSH:76:2:None:Game.??.getplayer |
|||
26955:PUSH:76:2:None:Game..getplayer |
|||
26955:POP:76:2:None:Game..getplayer |
|||
</pre> |
|||
== See Also == |
== See Also == |
||
Revision as of 10:43, 8 October 2012
Member of: Debug Script
Starts profiling a single Papyrus script. Child and parent scripts are not profiled. The profile files are stored in "<game folder>/Logs/Script/Profiling". This will also cycle the older profiling logs (so log 0 becomes 1, 1 becomes 2, etc). If the script is already profiled nothing will change. Profiling requests are not saved and will be reset if you load a save game.
Syntax
Function StartScriptProfiling(string asScriptName) native globalParameters
- asScriptName: The name of the script to start profiling.
Return Value
None.
Examples
; Starts profiling "MySlowScript"
Debug.StartScriptProfiling("MySlowScript")Notes
Profiling requires the "bEnableProfiling" flag in the "[Papyrus]" section of the ini file to be set to 1. Consoles will never profile in release final builds.