Global

From the CreationKit Wiki
Revision as of 13:40, 11 December 2013 by imported>GigaPoint (→‎Scripting)
Jump to navigation Jump to search

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

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

Scripting

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

In the Console global variables can be adressed directly:

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


Language: English  • 日本語