Difference between revisions of "Items"
Line 9: | Line 9: | ||
'''sortname''' is the shortened name, such as echo_drops. | '''sortname''' is the shortened name, such as echo_drops. | ||
− | '''stackSize''' determines if an item should stack, and how many should stack. The client acts a bit odd if you stack items that aren't supposed to be stacked, but generally will let you stack | + | '''stackSize''' determines if an item should stack, and how many should stack. The client acts a bit odd if you stack items that aren't supposed to be stacked, but generally will let you stack things like Frozen Giant Skulls if you want to improve the Dynamis experience, for example. |
'''flags''' needs to be investigated | '''flags''' needs to be investigated |
Revision as of 21:37, 2 February 2013
Contents
item_basic
Stores basic item information that is common to all items. For an item to exist, it must have an entry in this table.
item_id should match what is found in POLUtils or on ffxiah.com
name is the long name of an item, such as flask_of_echo_drops. If you're scripting a file, this is the filename you should use.
sortname is the shortened name, such as echo_drops.
stackSize determines if an item should stack, and how many should stack. The client acts a bit odd if you stack items that aren't supposed to be stacked, but generally will let you stack things like Frozen Giant Skulls if you want to improve the Dynamis experience, for example.
flags needs to be investigated
aH is the auction house category for the item.
NoSale determines if the item can be sold.
BaseSell is the value of the item when selling to an NPC, before fame modifier.
item_armor
Stores information regarding anything that can be worn; armor, accessory, and weapons, too.
itemId matches what is found in item_basic.
name needs to be investigated. Just for readability's sake?
level is what level the item can be equipped at.
jobs determines what jobs can equip the item, stored as a bitmask. Simply add the values together to set the jobs. WAR (1) + PLD (64) + DRK (128) = 193
Value | Job |
---|---|
1 | warrior |
2 | monk |
4 | white mage |
8 | black mage |
16 | red mage |
32 | thief |
64 | paladin |
128 | dark knight |
256 | beastmaster |
512 | bard |
1024 | ranger |
2048 | samurai |
4096 | ninja |
8192 | dragoon |
16384 | summoner |
32768 | blue mage |
65536 | corsair |
131072 | puppetmaster |
262144 | dancer |
524288 | scholar |
MId determines the appearance for the item. A guide for finding these is pending.
shieldSize is only used by shields, and determines how much damage they block, and how much damage they'll deal with Shield Bash.
scriptType needs to be investigated.
slot determines which slot(s) the item can be worn in, in a bitmask. main hand (1) + off hand (2) = 3.
Value | Valid Slot |
---|---|
1 | main hand |
2 | offhand |
4 | ranged |
8 | ammo |
16 | head |
32 | body |
64 | hands |
128 | legs |
256 | feet |
512 | neck |
1024 | belt |
2048 | l earring |
4096 | r earring |
8192 | l ring |
16384 | r ring |
32768 | cape |
rslot determines which single slot cannot be used while the item is equipped. For example, Vermillion Cloak would reserve the head slot, since head equipment cannot be used with it. This is not a bitmask, and only one value can be specified.
Value | Reserved Slot |
---|---|
0 | none |
1 | main hand |
2 | offhand |
3 | ranged |
4 | ammo |
5 | head |
6 | body |
7 | hands |
8 | legs |
9 | feet |
10 | neck |
11 | belt |
12 | l earring |
13 | r earring |
14 | l ring |
15 | r ring |
16 | cape |
17 | "SLOT_LINK" Linkshell? |
item_weapon
Stores common information for all weapons.
itemId links the table to item_basic and item_armor, and should match those tables.
name may just be for readability's sake.
skill determines which weapon proficiency should be used with the weapon.
Value | Weapon Type |
---|---|
1 | Hand-to-hand |
2 | Dagger |
3 | Sword |
4 | Greatsword |
5 | Axe |
6 | Great Axe |
7 | Scythe |
8 | Polearm |
9 | Katana |
10 | Great Katana |
11 | Club |
12 | Staff |
24 | Gun |
25 | Archery |
26 | Marksmanship |
27 | Throwing |
dmgType determines the type of damage dealt by the weapon. Note that only Hand-to-hand damage will use both hands for jobs such as Monk as of r2491.
Value | Damage Type |
---|---|
0 | Damage type "none" |
1 | Piercing |
2 | Slashing |
3 | Blunt |
4 | Hand-to-hand |
5 | Crossbow |
6 | Gun |
hit is only used for multihit weapons such as Joyeuse or Kraken Club.
delay determines the delay of the weapon. Ranged Weapons and Ammunition always have -240 their stated delay. For example, Expunger (Delay 360) is stored as 120 delay in the database.
dmg is the DMG stat for the equipment. Hand-to-hand weapons are always stored with their DMG stat +3. For example, Lizard Cesti has 5 instead of 2.
unlock_index probably refers to the in-progress weapon unlock system.
item_mods
Stores uncommon information, from Defense to "Enhances Dual Wield Effect."
item_mods is an unindexed table. As such, always keep in mind that it's possible to have duplicate values, which darkstar will cheerfully use without questioning them.
itemId links the table back to the item via item_basic, and should always match.
modId is what is being modified. A list of these values can be found in /scripts/globals/status.lua (listed in hexadecimal,) or in /src/map/modifier.h (listed in hexadecimal.) Remember to convert them to decimal for use in this table.
value is how much of the modifier to grant, and can be positive or negative. It's best to research any modifier you're unsure of, as some are stored and applied in unexpected ways, such as Magic Damage Taken being stored as amount/256, while Physical Damage Taken is stored as amount%.
item_furniture
Stores information regarding moghouse furniture.
itemId links back to item_basic, and should always match.
name may just be for readability's sake, and is the long name for the item.
storage is how much storage to grant for each item placed. The core will cap the total at 80.
moghancement needs to be researched.
element is the elemental alignment of the furniture.
aura needs to be researched (strength of effect?)
item_usable
Stores information regarding items that can be used. An item cannot be used unless it is in this table.
itemid links this table back to item_basic, and should match.
subid seems to primarily be used with spell scrolls, and probably just stores the spellid to be unlocked.
name may just be for readability's sake.
validTargets is a bitmask storing what the item can be used on. Being a bitmask, the values should be added for each valid target type.
Value | Valid target |
---|---|
1 | Self |
2 | Player in user's party |
4 | Enemy |
8 | Player in user's alliance |
16 | Players outside of user's party/alliance |
32 | Dead players |
64 | NPCs |
activation needs to be researched
animation determines which animation should be used with the item.
animation time needs to be researched, but probably determines how long the player can't move for the item usage to succeed.
maxCharges is the maximum number of usages.
useDelay is likely how long the item must be equipped before it can be used.
reuseDelay is likely how long must pass between item uses.
aoe is a simple binary on whether the item is AoE or not (0 = false, 1 = true.)
item_latents
Need to research this table.
item_weapon_unlock
Need to research this table. Looks like a mixture of item_weapon, and how many weapon skill "points" are required to unlock it.
item_puppet
The itemId, name, slot, and "element" of each automaton piece. As PUP isn't in use, this table may change substantially in the future.