Jump to content

Help understanding Pipboy internal object values in xSE and AS3

Recommended Posts

I'm trying to devise a way to remove items from the player's inventory via the pipboy and place them into another storage container.  For the most part, this works with the exception of leveled items like weapons and armor.  Since weapons and armor are kept as persistent object references, simply calling RemoveItem() will not correctly work.  RemoveItem removes a random item of that base type from the inventory instead of the currently selected item.  I tested this by adding 10 randomized laser guns to inventory and then parse them one at a time.  A random laser gun would be removed instead of the selected one in the pipboy.  Additionally, since I'm dealing in base forms, the laser guns are re-randomized.  Basically, one needs the object reference used for persistence to be able to perform this function.


In my injected ActionScript, I polled the currently selected item object to get all of the storage values.  And this is what was returned

favorite = true
taggedForSearch = false
isLegendary = false
count = 1
nodeID = 19798   //0x4D56
filterFlag = 3
equipState = 0
text = 10mm Pistol
clipIndex = 0
formID = 18466   //0x4822
canFavorite = true

This was polling the starter 10mm pistol from Vault 111.  Obviously, the ID fields are in decimal and not hex for the report.  The one value of interest is 'nodeID'.  If you drop the weapon and then retrieve it, 'nodeID' will change, so I'm assuming this is the value used as a persistent reference.  The thing, though, is that it's internal to the pipboy.  Rectifying this value either through xSE or papyrus results in no form or reference retrieved.  I'm guessing this value is internal to the pipboy structure, which is unfortunately not very well exposed in xSE currently.  When you use commands such as Drop in the pipboy, the entire object is sent back to the EXE, so I'm guessing the EXE uses the values listed in the entry list item to remove the persistent reference and drop it into the game world as a generated object reference.


So I'm hoping someone here has some insight on how best to use the values available to create the correct ObjectReference so that I can more easily make my transfer.


Thanks in advance!

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

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