It is widely believed (among Firefox UD extension developers) that the inventory of each player is stored as a single string in a field of the user's line in the users table of the UD database. Only Kevan knows for sure, but so far nothing seems to invalidate this hypothesis.
Each item is stored in the inventory string as a letter, eventually followed by a number if the item needs extra info to be defined. This is so far the case for only three items: the shotgun, the pistol, and the radio.
The length of the string is used as “weight”. If a search is successful, the message You cannot carry any more. will appear if the string length is equal to or greater than 81 (was 51 pre-Encumbrance).
Actions that change the inventory
When a search is successful, the length of the inventory string is used as “weight” to check if the player can add an item to his inventory.
The message "You cannot carry any more" will appear if the string length is equal or greater to 51. Since shotguns and pistols require 2 characters, they count as two items. Since radios require 5 characters, they count as five items.
If the string length is 50 or less, the item code is appended at the end of the inventory string, possibly making it longer than 51 characters in the process.
Knowing this can be useful when finding unwanted items: The one you just found is at the very end of the Drop List.
Using an item
Some items disappear from your inventory when used. (Beer, Wine, Newspaper, Spray Can (if unlucky), etc.) Only the code of the item is sent to the server, not the actual position of the item you clicked. The item removed from your inventory string is the first encountered in the string that matches the sent code.
Dropping an item
Same as using it, only the item's code is sent. The first match in your inventory string will be removed. This can sometimes be confusing, when you drop the unwanted item you just found, clicking on the last value of the drop-down box (a second fire axe for example) and see first disappear instead. The associated number described above is sent too; so when you choose to drop an empty shotgun, you'll drop the first empty shotgun in your inventory.
Reloading doesn't send any extra information to the server. The game will find the weapon of that type with the lowest ammunition count and reload it. If there is more than one weapon with the same ammo count, the first will be reloaded. The ammunition itself will disappear in accordance with the usual rules given above.
When you fire at a target, only the type of weapon is sent to the server; you cannot specify the which of your pistols/shotguns you'd like to use. The weapon used is the first in the list that is of the correct type and has at least 1 shot left. This is not optimal in terms of inventory space. The ideal scenario would have been to fire the gun with the least shots left, providing it is not empty. Knowing this, you can plan your reloading more efficiently. For example, assuming your first pistol is empty and second has one shot left, it would be advisable to wait for next shot before reloading both guns. If you reloaded immediately, you would have to empty the entire pistol before being able to reload the second efficiently.
List of item codes
i.e. b6 = fully loaded pistol.)
|First Aid Kit
|Length of Pipe
|Pair of Wirecutters
i.e. s2 = fully loaded shotgun.)
|NecroTech Revivification Syringe
|BXXXX (XXXX = frequency,
i.e. B2710 = radio @ 27.10 MHz.)
|plastic Christmas tree
|red Christmas lights
|green Christmas lights
|white Christmas lights
|dead fir tree
|Museum Piece (in general)
|IXX, XX is a number
|Certain Museum Piece, (for example, I24 is a European Painting)
|Monroeville only item
The missing items
Note that the letter v is missing. Some think it's the letter for the Mark One revivification syringe. Others think there is a super-secret item, undocumented on the wiki. Should you own an item identified by v, please add the missing info here.
Letters E and H are now also missing.