- For how to define an item, see Defining an item.
- For the effects that items have, see Item effects.
- For giving, taking and counting items in the Bag, see Manipulating items.
- For putting an item in a map for the player to pick up, see Item balls.
- For information about Poké Marts, see Poké Mart.
An item in the code is nothing more than an ID number. There is no difference between any two of the same item.
Mail can display custom messages. A mail's message (and related information) is saved as a property of the Pokémon holding the mail. The mail item and its message can be stored in the PC's Mailbox instead of the Bag. The message cannot exist otherwise.
An important item is one which the player should be able to obtain only one of throughout the game, and which they will not be able to get rid of (e.g. by tossing it, selling it or using it up). The quantity of such an item will not be shown in the Bag.
Key Items and HMs are classed as important items, in both cases by defining them as such. TMs can also behave as important items, by setting the variable
INFINITE_TMS in the script section Settings to TRUE. This makes TMs work as they do in the Gen 5+ games, where one TM can be used repeatedly. If the variable is FALSE, TMs are one-use-only consumable items like in older games.
Since important items cannot be sold, their price is (usually) irrelevant. If the price is non-zero, however, it can be sold by a Poké Mart. The reason the player cannot sell an important item is because it is classified as an important item, not because its price is 0 (although items with a price of 0 cannot be sold either).
It is worth noting that, although an important item's quantity is not shown in the Bag, it is possible to have multiple copies of them at once. Unless you have a specific purpose for doing so, though, you should check whether the player already has the important item before attempting to give it to them again.