0 of 0

File information

Last updated

Original upload

Created by

SoleVaultBoy

Uploaded by

SoleVaultBoy

Virus scan

Safe to use

About this mod

Provides a common set of tools to be used with Papyrus. Includes temporary global variables, 2D-arrays, maps, extensive file management, console interaction and more.

Requirements
Permissions and credits
Changelogs
Donations
Features
  • Offers over 1000 common functions to be used with Papyrus, the game's scripting language,
    with the goal of making it feel less like a language from the last century and enhancing its functionality
  • Filesystem management within the game's root folder and its subdirectories
  • Reflection to modify scripts at runtime
  • Restoration of EditorIDs - They can now be used in-game, via script commands, in the console,
    and with mods that require this feature, like Base Object Swapper and Spell Perk Item Distributor
  • A simple function runner is also included
    Spoiler:  
    Show
    Create a file with a ".ini" extension under "Data/PCL/Functions".

    Use the following template:
    [MyScript.OnGameStart]
    sEventName = OnGameStart
    sScriptName = MyScript
    sFunctionName = OnGameStart

    Change the values to your needs and be sure that the function in Papyrus has no arguments.
    You can have multiple function calls by adding new sections.
    Each section has to be unique and they are sorted alphabetically.

    Events:
    • OnGameStart: Runs once on game start
    • OnGameLoad: Runs on every game load
    • OnPostGameStart: Runs on every game load after game start
  • And a command runner too
    Spoiler:  
    Show
    Create a file with a ".txt" extension under "Data/PCL/Commands".
    In there, you can write any commands that the console would normally support
    and they get executed once the main menu is opened.
    To run multiple commands per file, separate them with a new line.

Included Scripts
  • IO
    • Directory - Read from and write to directories
    • File - Read from and write to files
    • INI - Read from and write to INI files
    • JSON - Serialize and deserialize any kind of data using the JSON format
    • Path - Queue paths: GetRelative, GetFileName, GetDirectoryName and more
  • Activator - Contains all of the game's activator functions
  • AimModel - Contains all of the game's aim model functions
  • Array - Includes Create, Copy, Repeat and modifications without the 127 size limit
  • Array2D - Represents immutable 2D-arrays
  • Book - Contains all of the game's book functions
  • Boolean - Has min and max values and string formatting for booleans
  • Cell - Contains all of SKSE's cell functions, with additions
  • Char - Has min and max values and string formatting for ASCII characters
  • Component - Contains all of the game's component functions
  • Console - Interaction with the in-game console: Executing commands, clearing the console, etc.
  • Container - Contains all of the game's container functions
  • Door - Contains all of the game's door functions
  • EncounterZone - Contains all of the game's encounter zone functions
  • Enumerable - Fluent API for arrays, heavily inspired by LINQ from C#
  • Events - Provides several events that can be registered to local and global callbacks
  • Enchantment - Contains all of SKSE's enchantment functions, with additions
  • Explosion - Contains all of the game's explosion functions
  • Faction - Contains all of the game's faction functions
  • Flora - Contains all of SKSE's flora functions, with additions
  • Form - Dynamically create and copy forms at runtime, filter by keywords and more
  • FormList - Retrieve all forms from form lists and those added by scripts
  • Game - Contains some game-related functions, like the current console ref and getting/setting INI settings
  • Holotape - Contains all of the game's holotape functions
  • Int32 - Has min and max values and string formatting for signed 32-bit integers
  • MagicEffect - Contains all of the game's magic effect functions
  • Map - Represents a collection of key-value pairs to simulate maps/dictionaries in other languages
  • Math - Has common constants like PI and E, many geometry functions, random number generators and more
  • MemVar - Represents temporary global variables, inspired by the ones from JIP LN NVSE
  • Message - Contains all of the game's message functions
  • MiscObject - Contains all of the game's misc object functions
  • Operator - Useful operators, like comparing any type, copying any variable, etc.
  • Outfit - Contains all of SKSE's outfit functions, with additions
  • Perk - Contains all of SKSE's perk functions, with additions
  • Potion - Contains all of SKSE's potion functions, with additions
  • Projectile - Contains all of the game's projectile functions
  • Regex - Regex-based string functions
  • ScriptObject - Create and copy any type of script object at runtime, allowing for true object-orientation
  • ScriptType - Provides all kind of type information and allows for modification of variables and properties at runtime
  • Set - Represents a collection of unique elements
  • Single - Has NaN, infinity, min and max values for single-precision floating point numbers
  • Spell - Contains all of SKSE's spell functions, with additions
  • Strings - Many common functions for strings, like getting the length, retrieving a substring, etc.
  • UInt32 - Has min and max values and string formatting for unsigned 32-bit integers
  • WorldSpace - Contains many of the game's world space functions

Notes
  • If you get compiler errors about arrays/structs not being allowed inside structs, install this compiler patch

Recommendations