Mod:Creation Kit/F4SE

Papyrus
Adds all new native Mod:Creation Kit/Papyrus script objects.

Native Plugin API
Allows authors to extend Fallout 4 by writing c++ code.

Console Commands
Running Mod:Creation Kit/GetF4SEVersion from the console will print the current version of F4SE. The currently installed version of F4SE is also shown in the PauseMenu next to the game version.

Logging
F4SE log files will be written to. These files contain useful information such as version information, loaded plugins, and debug messages.

Optionally, logging from Scaleform may be enabled by adding  to the   section of your F4SE.ini. Create  if it doesn't exist.

Key Mappings
Customization of internal key mappings. Copy CustomControlMap.txt to. Edit that file to set your bindings. The format is the same as Skyrim, it's a space-separated file. The first column is the name of the internal keybind. The second column is the keyboard scan code that should activate the bind in hex, or  if unbound. Use google to find a table of scan codes. The third column is for mice, the fourth for controllers. The next three columns control whether or not a control should be written to the user's config file. The final column specifies which input layer the bind is associated with - you will probably not want to change that.

Scaleform
Scaleform is the middleware between Fallout 4 and Mod:Creation Kit/Adobe Flash. This is the technology behind the games Mod:Creation Kit/User Interface.

Translation Injection
F4SE adds support for Scaleform translation injection. Create your own translation file by adding a text file that matches your mod name to. For example, the mod  may add English translations by creating.

Menu Code Object
F4SE also provides a Scaleform code interface by installing a code object to the root of any registered menu. To acquire the F4SE code object in AS3, use  or.

There are some cases when the installed F4SE code object on a menu root may be unreachable from your display object class. With F4SE v0.6.8 and greater the code object may be received by implementing the  function on your display object class. This function is called on the menu root document as well as first-level children.

Code Object
It is a good idea to wrap calls to the F4SE code object in a Try/Catch block.