Jump to content

Scripting the PC inventory


AlaricMod

Recommended Posts

I am trying to build an item sorter for a player home and after a ton of looking around I have some questions I haven't found the answer to. If anybody can help with any of these questions please chime in. If it helps any, my end goals for the sorter are as follows:

  • Basic vanilla sorter
    • Sorts out all inventory items based on custom form lists
    • Doesn't change the condition of items sorted out
    • When loading out items gives the best condition version of the item in the container to the PC
    • Assigns items to hotkeys as they are loaded out to PC
    • Loads out ammo needed for any weapons that have been loaded out.

    [*]Sorter with FOSE (enhanced sorter) does all the vanilla sorter does plus:

    • Detects automatically if FOSE is loaded and, if so, uses the enhanced sorter
    • Uses a script (or scripts) to build custom form lists so that every inventory item in the game is accounted for - even if not part of the base game.
    • Allows the user to customize load out quantities of ammo (for use with ammo weight mods)
    • Dynamically build list of needed ammo from weapons loaded out (so ammo is correct even with re-chamber mods)
    • Allows Player to build and save several custom "load-out" profiles, including hot-key assignments, for quick restock.
    • Allows Player to build a "do not touch" list so that any desired inventory items always stay in inventory and are ignored by the sorter (quest items, food purifier, etc.)

 

The question list...

 

Is there a way to move via a script from a terminal the actual item carried by the Player Character (PC) into a container? Note I say actual item because I have found sorters that replace the items as they take them (ie find a 10mm pistol in character's inventory - create new 10mm pistol in container - delete 10mm pistol from PCs inventory) but I dont want this - if you have a busted up pistol I want it to stay a busted up pistol.

 

Is there a way without FOSE that I can, with a script, sort items (like that 10mm pistol) in a container based on name then condition and then pick the first occurance of that item (so if I have 3 10mm pistols in the container - I pick out the best one (or worst one) first?

 

Is there a way for me to do a conditional check to see if FOSE is loaded and change the programming of a terminal (or even the terminal itself) based on that check? This way I could build a base item sorter that only sorts the vanilla items that came with the game and if FOSE is loaded then use a more dynamic version that could possibly sort anything the PC might have.

 

How would I check the PCs inventory against a form list?

 

If I understood it correctly, I read that with FOSE I can dynamically build a form list with a script. How would I do this to create lists for different types of weapons, armor, items, etc.?

 

Lastly, is there a way with a script to automatically assign items placed into inventory to a hotkey?

Link to comment
Share on other sites

Wow. Sorting anything without FOSE would be like a one-legged man at a butt-kicking contest. Not only impossible, but laughably so.

 

The only command I can recall off hand that uses form lists is RemoveItem, although supposedly GetItemCount will as well. Their usefulness is pretty limited as you can see for yourself.

 

ListAddReference lets you build a form list using FOSE, although as you can see from the docs it takes the calling reference and adds that to the list (which is probably not what you were hoping for).

 

GetHotkeyItem is the only function I'm aware of that references what a hot key is assigned to, but that's obviously not what you want, either.

 

Proper traversal through a player's inventory is simply not possible. Might want to wait till the next major revision of FOSE.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...