Inventory functionSE
SKSE's inventory function plug-in allows filtering inventory by Keyword. Originally filtered by Quad2Core, now updated to SKSE-64 (includes support for poisoning, and getting a filtered list of spells/shouts owned by an actor)
Screenshots 2 screenshots
About this mod Machine translation
SKSE's inventory function plug-in allows filtering inventory by Keyword. Originally filtered by Quad2Core, now updated to SKSE-64 (includes support for poisoning, and getting a filtered list of spells/screams owned by an actor)
This is an update of the excellent 'inventory functionality' SKSE plugin originally written by Quad2Core for 32-bit Skyrim and can be found here.
I first updated this for the final 32-bit SKSE (thankfully Q2C included a source file and also allowed re-use of the plugin - I contacted an administrator and they confirmed that I accepted it as an acceptable updated version). With the (alpha) release of SKSE64, I've updated and recompiled this, and assuming the original permissions are still there, I'm hosting it here for 64-bit users.
This is what's currently in the script:
Container Inventory feature; original feature from Q2C, updated for SKSE64
int function GetNumItemsWithKeyword(ObjectReference akObjRef, keyword akKeyword)
Form function GetNthFormWithKeyword(ObjectReference akObjRef, Keyword akKeyword, int aiItemIndex); added by Kalivore - type is SKSE itemType (e.g. 26 for armor, or 46 for potions);
int function GetNumItemsOfType(ObjectReference akObjRef, int aiType)
Form function GetNthFormOfType(ObjectReference akObjRef, int aiType, int aiItemIndex); Gets the sum of the base gold values of the items in the container; 'base' means ignore the additional value of enchantments/improvements to the item
int function GetTotalBaseGoldValue(ObjectReference akObjRef)
Poison function; Q2C's original poison function, updated for SKSE64; Please note that the format of the original 32-bit plugin from Q2C has changed slightly: Worn_PoisonWeapon has become WornObjectSetPoison, Worn_GetPoison has become WornObjectGetPoisonCharges, etc. Valid hand slots: 0 - left; 1 - right; This is already done by SKSE, so just forward to that version
potion function WornObjectGetPoison(actor akActor, int aiHandSlot, int aiSlotMask)
int Function WornObjectSetPoison(Actor akActor,int aiHandSlot,int aiSlotMask,Potion akPoison,int aiCharges = 1)
{
Apply akPoison to weapons in aiHandSlot. Note that the item must be a weapon, otherwise the function will fail and return -1
Returns: The amount of poison the weapon now has (should be the same as aiCharges)
If unsuccessful, return -1
}
Function WornObjectRemovePoison(Actor akActor, int aiHandSlot, int aiSlotMask)
{
Remove poison from weapons in aiHandSlot
}
int Function WornObjectGetPoisonCharges(Actor akActor,int aiHandSlot,int aiSlotMask)
{
Get the number of poisons on the weapon in aiHandSlot
Returns: number of fees, or -1 if unsuccessful for any reason
(e.g. the item is not a weapon, or does not have poison)
}
int FunctionWornObjectSetPoisonCharges(Actor akActor,int aiHandSlot,int aiSlotMask,int aiCharges = 1)
{
Set the amount of poison on the weapon in aiHandSlot
Returns: The current number of poisons on the weapon in aiHandSlot (should be the same as aiCharges)
or -1 if unsuccessful for any reason (e.g. the item is not a weapon, or no poison was applied)
};This is already done by SKSE, so just forward to that version
Potion function GetPoison(ObjectReference akObjRef)
int Function SetPoison(ObjectReference akObjRef,Potion akPoison,int aiCharges = 1)
{
Apply akPoison to akObjRef. Note that the item must be a weapon, otherwise the function will fail and return -1
Returns: The amount of poison the weapon now has (should be the same as aiCharges)
If unsuccessful, return -1
}
Function RemovePoison(ObjectReference akObjRef)
{
Remove poison from weapon akObjRef
}
int function GetPoisonCharges(ObjectReference akObjRef)
{
Get the number of poisons on akObjRef
Returns: number of fees, or -1 if unsuccessful for any reason
(e.g. the item is not a weapon, or does not have poison)
}
int FunctionSetPoisonCharges(ObjectReference akObjRef,int aiCharges = 1)
{
Set the number of poisons on akObjRef
Returns: The current number of poisons on the weapon in aiHandSlot (should be the same as aiC …
Install & use Install: follow the bundled instructions
- Unzip the archive from playbuff and read the bundled readme / instructions first.
- There is no universal mod manager for this game: some mods replace game files directly, some go into a game-specific Mods folder, and some need a game-specific community loader or tool first — follow the bundled readme.
- Place the files exactly as the readme says; mods with listed dependencies need those installed too.
- Launch the game to confirm it loaded; some games require enabling mods in settings or an in-game mod menu.
Install locations vary a lot between games and mods — the bundled readme is the most reliable guide.