Fix: CTD due to weird behaviour in IsKeywordOnArmorIndex
Remove: GetHighActorsHostileToActor. The GetActorsHostileToActor is an improved replacement
Version 1.11.1
Fix: Remove unfinished function
Version 1.11.0
Add: DrinkPotion to Actor
Version 1.10.0
Add: GetFormWeight to Form
Add: IncludesPrefix to String
Add: IncludesSubstring to String
Add: IncludesSuffix to String
Version 1.9.0
Add: UpdateBarterMenu to UI
Add: UpdateContainerMenu to UI
Note: UpdateContainerMenu may require a `UI.Invoke("ContainerMenu", "root1.FilterHolder_mc.Menu_mc.InvalidateLists")` call after it to see the update on the screen
Fix: CTD due to missing nullcheck in IsKeywordOnWeapon
Version 1.8.0
Add: SetKey to ObjectReference
Fix: Wrong code in IsPlayerDetectedByHostile
Version 1.7.3
Add: GetContainerFlags to Form
Fix: IsContainerFlagSet to now look for the correct flags
Version 1.7.2
Add: GetActorGunState to Actor
Add: GetFormByEditorID to Form - if you don't have BakaFramework installed then it will not work. BakaFramework IS NOT a requirement for Lighthouse!
Version 1.7.1
Add: IsKeywordOnArmorIndex to Actor
Fix: Potential CTD due to missing Keyword nullcheck in IsKeywordOnWeapon
Version 1.7.0
Add: GetParentCOBJs to Form
Add: ToLower to String
Add: ToUpper to String
Fix: CTDs related to GetVendorContainerRef
Version 1.6.0
Add: GetWeaponAmmoCapacity to Actor
Add: GetWeaponAmmoType to Actor
Add: GetWeaponMagCount to Actor
Add: RemoveScriptAddedLeveledObjects to LeveledList
Add: GetChildLocations to Location
Add: IsContainerFlagSet to ObjectReference
Remove: GetParentLocation from Location
Remove: SetParentLocation from Location
Both were duplicates of existing F4SE functions
Version 1.5.0
Add: GetArmorFormOnBipedSlot to Actor
Add: GetCommandedActors to Actor
Add: GetOffersServices to Actor
Add: GetRunningPackage to Actor
Add: GetVendorContainerRef to Actor
Add: HasActiveMagicEffect to Actor
Add: GetPerkCount to ActorBase
Add: SetPerkToAdd to Book
Add: New Faction section
Add: GetFactionVendorContainerRef to Faction
Add: GetFormEditorID to Form - if you don't have BakaFramework installed then it will return an empty string. BakaFramework IS NOT a requirement for Lighthouse!
Add: IsDynamicForm to Form
Add: IsFormInMod to Form
Add: GetNumActorsInHigh to Game
Add: New Hazard section
Add: ClearHazardFlag to Hazard
Add: GetHazardArt to Hazard
Add: GetHazardIMOD to Hazard
Add: GetHazardIMODRadius to Hazard
Add: GetHazardIPDS to Hazard
Add: GetHazardLifetime to Hazard
Add: GetHazardLight to Hazard
Add: GetHazardLimit to Hazard
Add: GetHazardRadius to Hazard
Add: GetHazardSound to Hazard
Add: GetHazardSpell to Hazard
Add: GetHazardTargetInterval to Hazard
Add: IsHazardFlagSet to Hazard
Add: SetHazardArt to Hazard
Add: SetHazardIMOD to Hazard
Add: SetHazardIMODRadius to Hazard
Add: SetHazardIPDS to Hazard
Add: SetHazardLifetime to Hazard
Add: SetHazardLight to Hazard
Add: SetHazardLimit to Hazard
Add: SetHazardRadius to Hazard
Add: SetHazardSound to Hazard
Add: SetHazardSpell to Hazard
Add: SetHazardTargetInterval to Hazard
Add: New filters to GetInventoryItemsAsArray
Other: The filters for GetInventoryItemsAsArray have been re-ordered to be less messy (check wiki for new order). Sorry! :( No mods use it to my knowing so nothing should break. Shouldn't happen again in the future
Other: Now includes the .pdb for debugging purposes. Only useful if you use alandtse's "Buffout 4 NG with PDB support"
Version 1.4.0
Add: SetWeaponAmmoCount to Actor
Add: StowWeapon to Actor
Add: AddItem32 to ObjectReference
Add: TogglePipBoyLight to PlayerCharacter
Remove: GetFormByEditorID from Form
Remove: GetFormEditorID from Form
Version 1.3.0
Add: FilterRefArrayByKeywords()
Add: GetAllMapMarkers()
Add: ClearRecordFlag()
Add: IsRecordFlagSet()
Add: SetRecordFlag()
Remove: FormHasFlag() has been replaced by IsRecordFlagSet()
This is an F4SE plugin that adds a fair amount of new functions to Papyrus. These range from data manipulation such as getting or setting internal values, to utility functions that open up advanced maths, conversion between different types, or otherwise accessing data that is not normally not available e.g. animation length and progress.
Currently, this plugin only provides new functions. New Papyrus events will come later once I learn how to create those.
Maintained by the Community!
Because no one likes to have dozens of requirements for their mods - especially when the requirements are frameworks that just sit there - this plugin is a collaborative effort by talented mod authors. If you'd like to contribute, you can do so via the GitHub repository. The goal for this is to have everything in one place to avoid cases where multiple plugins or forks of the same plugin do the same thing.
Documentation:
The official in-depth documentation can be found in the Independent Fallout Wiki under the functions' respective pages.
What's Inside
Spoiler:
Show
Functions:
There are currently 187 new functions added. The full list can be found in the Index page in the Independent Fallout Wiki.
New function requests can be made through the Forum post to make the request visible to everyone
Bug reports should be detailed with reproduction info and snippets of code that causes the bugs
Since some of the data exposed by the plugin can only be modified via manual plugin edits, the game might reset any changes made when a save is loaded or game is restarted. This is done for performance reasons by Bethesda and isn't a bug with the plugin