Global

From the CreationKit Wiki
Jump to navigation Jump to search

For the use in functions, see Function Reference

A Global Variable is a numeric value stored by the game. Globals are often used to pass data between Scripts and Condition Functions or other code-driven systems.

Global Dialog[edit | edit source]

Globals can be found in an Object Window under Miscellaneous / Global.

  • ID: The Form's Editor ID.
  • Variable Type: The data type used to store the value (Short, Long, or Float).
    • Internally, all Globals are stored as 32-bit floating-point numbers. There is no difference between Short and Long.
    • The technical implementation of floating-point numbers means that they are inaccurate at very large or very small values (for example, all numbers from 2000000000 to 2000000064 are stored as 2000000000).
  • Value: The initial value of the Global.
  • Constant:
    • If checked, the Value of this Global is not expected to change during gameplay, and will not be saved with save game data.
    • If unchecked, the Value is expected to change, and will be saved.

Accessing Global Variables[edit | edit source]

Scripting[edit | edit source]

To access global variables in Papyrus scripts, the global variable must be passed into the script as a property. Then one needs to use the functions GetValue and SetValue

GlobalVariable Property GameHour  auto

float myhour = GameHour.GetValue()
GameHour.SetValue(10)

Console[edit | edit source]

In the Console global variables can be adressed directly:

set GameHour to 10
GetGlobalValue GameHour
show GameHour ; same effect as GetGlobalValue GameHour


Language: English  • 日本語