PackVal should not be used since it's supposed to be only internal ( - Nergal ). It'd require some change to switch away from it, but it's relatively easy to iterate through keys without it.
Some logic should be moved so we can re-use the part from Weapons_SpawnFrame where we add the attributes.
On a side note: