# CVS: Last edit by $Author: rr9 $ on $Date: 2005/06/04 12:53:28 $
# File: e_info.txt


# This file is used to initialize the "lib/raw/e_info.raw" file, which is
# used to initialize the "ego-item" information for the Angband game.

# Do not modify this file unless you know exactly what you are doing,
# unless you wish to risk possible system crashes and broken savefiles.

# After modifying this file, delete the "lib/raw/e_info.raw" file.

# The ego-item indexes are defined in "defines.h", and must not be changed.

# Ego-items 1-63 are "armor", and 64-127 are "weapons"

# Note that every "ego-item" type has a different "index", and can only be
# created from items that belong to a certain "slot" in the equipment, if
# one assumes that "ammo" belongs to an imaginary slot (23).  However, it
# is possible for several "ego-item" types to have the same "textual name",
# such as with "Armor of Resistance" and "Shield of Resistance".

# === Understanding e_info.txt ===

# N: serial number : ego type
# X: ego type slot : rating
# C: max to-hit : max to-dam : max to-ac : pval
# W: depth : rarity : weight : cost
# F: flag | flag | etc

# 'N' indicates the beginning of an entry. The serial number must
# increase for each new item.

# 'X' is for extra information - inventory slot and rating. Slots
# range from 23 (for ammunition) to 35 (for boots). Rating affects
# level feelings.

# 'C' is for creation bonusses - maximum to-hit, to-dam, to-ac, and
# pval. Cursed ego-items will negate the given value.

# 'W' is for extra information. Depth is the depth the object is
# normally found at, rarity determines how common the object is,
# weight is in tenth-pounds and cost is the items value.

# 'F' is for flags. These are fairly self-explanatory. As many F:
# lines may be used as are needed to specify all the flags and flags
# are separated by the '|' symbol.

# Note that the value of any flags and bonuses is counted automatically;
# the cost is only needed if the item should have its cost adjusted from
# the calculated value.


# Version stamp (required)

V:2.7.5


### Body Armor ###

N:4:of Resist Acid
X:30:16
W:0:4:0:0
F:RES_ACID | IGNORE_ACID

N:5:of Resist Lightning
X:30:10
W:0:4:0:0
F:RES_ELEC | IGNORE_ELEC

N:6:of Resist Fire
X:30:14
W:0:4:0:0
F:RES_FIRE | IGNORE_FIRE

N:7:of Resist Cold
X:30:12
W:0:4:0:0
F:RES_COLD | IGNORE_COLD

N:8:of Resistance
X:30:20
W:15:8:0:1000
C:0:0:10:0
F:RES_ACID | RES_ELEC | RES_FIRE | RES_COLD | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	if (one_in_(4) ~= 0) then set_obj_flag(object, 1, TR1_RES_POIS) end
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

# OnePower

N:9:of Elvenkind
X:30:25
W:30:16:0:1000
C:0:0:10:3
F:STEALTH | 
F:RES_ACID | RES_ELEC | RES_FIRE | RES_COLD | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

# 10 (unused)

# OnePower

N:11:of Permanence
X:30:30
W:0:1:0:5000
C:0:0:10:0
F:SUST_STR | SUST_DEX | SUST_CON | SUST_INT | SUST_WIS | SUST_CHR | 
F:HOLD_LIFE | RES_ACID | RES_ELEC | RES_FIRE | RES_COLD | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

### Lites ###

N:12:of Everburning
X:29:10
W:0:2:0:0
C:0:0:0:0
F:LITE

N:13:of Warmth
X:29:13
W:0:3:0:0
C:0:0:0:0
F:RES_COLD

N:14:of Vision
X:29:15
W:18:10:0:0
C:0:0:0:6
F:SEE_INVIS | RES_BLIND | SENSE

N:15:of Radiance
X:29:13
W:15:10:0:0
C:0:0:0:4
F:RES_DARK | CHR


### Shields ###

N:16:of Resist Acid
X:32:16
W:0:4:0:0
F:RES_ACID | IGNORE_ACID

N:17:of Resist Lightning
X:32:10
W:0:2:0:0
F:RES_ELEC | IGNORE_ELEC

N:18:of Resist Fire
X:32:14
W:0:3:0:0
F:RES_FIRE | IGNORE_FIRE

N:19:of Resist Cold
X:32:12
W:0:2:0:0
F:RES_COLD | IGNORE_COLD

N:20:of Resistance
X:32:20
W:25:8:0:1000
C:0:0:10:0
F:RES_ACID | RES_ELEC | RES_FIRE | RES_COLD | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	if (one_in_(4) ~= 0) then set_obj_flag(object, 1, TR1_RES_POIS) end
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

N:21:of Reflection
X:32:20
W:50:8:0:0
C:0:0:5:0
F:REFLECT
F:IGNORE_ELEC | IGNORE_ACID | IGNORE_COLD | IGNORE_FIRE

# 22 (unused)

# 23 (unused)


### Crowns and Helms ###

N:24:of Intelligence
X:33:13
C:0:0:0:2
W:0:2:0:0
F:INT | SUST_INT

N:25:of Wisdom
X:33:13
W:0:2:0:00
C:0:0:0:2
F:WIS | SUST_WIS

N:26:of Beauty
X:33:8
W:0:2:0:0
C:0:0:0:4
F:CHR | SUST_CHR

N:27:of the Magi
X:21:15
W:60:2:0:0
C:0:0:0:3
F:INT | SUST_INT | SP
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)
L:MAKE:	add_ego_power(EGO_XTRA_ABILITY, object)

N:28:of Might
X:21:19
W:50:2:0:0
C:0:0:0:3
F:STR | DEX | CON | SUST_STR | SUST_DEX | SUST_CON | FREE_ACT
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

N:29:of Lordliness
X:21:17
W:20:2:0:0
C:0:0:0:3
F:WIS | CHR | SUST_WIS | SUST_CHR
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

N:30:of Seeing
X:33:8
W:30:2:0:0
C:0:0:0:5
F:SENSE | RES_BLIND | SEE_INVIS
L:MAKE:	if (one_in_(7) ~= 0) then set_obj_flag(object, 2, TR2_TELEPATHY) end

N:31:of Infravision
X:33:11
W:0:4:0:0
C:0:0:0:5
F:INFRA | HIDE_TYPE

N:32:of Light
X:33:6
W:0:2:0:0
F:LITE | RES_LITE

N:33:of Telepathy
X:21:20
W:30:2:0:10000
F:TELEPATHY

N:34:of Regeneration
X:21:10
W:0:2:0:0
F:REGEN

N:35:of Teleportation
X:33:0
W:0:2:0:-100
F:TELEPORT

N:36:of Stupidity
X:33:0
C:0:0:0:-5
W:0:2:0:-100
F:INT

N:37:of Naivety
X:33:0
C:0:0:0:-5
W:0:2:0:-100
F:WIS

N:38:of Ugliness
X:33:0
C:0:0:0:-5
W:0:2:0:-100
F:CHR

N:39:of Sickliness
X:33:0
C:0:0:0:-5
W:0:2:0:-100
F:STR | DEX | CON


### Cloaks ###

N:40:of Protection
X:31:10
W:0:1:0:0
C:0:0:10:0
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD

N:41:of Stealth
X:31:10
W:0:1:0:0
C:0:0:0:3
F:STEALTH

# OnePower

N:42:of Aman
X:31:20
W:50:8:0:0
C:0:0:20:3
F:STEALTH | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

# Aura, Fire
N:43:of Immolation
X:31:16
W:50:8:0:0
C:0:0:4:0
F:IGNORE_ACID | IGNORE_FIRE | SH_FIRE | RES_FIRE

N:44:of Enveloping
X:31:0
W:0:1:0:-100
C:-10:-10:0:0
F:SHOW_MODS

N:45:of Vulnerability
X:31:0
W:0:1:0:-100
C:0:0:-50:0
F:AGGRAVATE

N:46:of Irritation
X:31:0
W:0:1:0:-100
C:-15:-15:0:0
F:AGGRAVATE | SHOW_MODS

# Aura, Electricity
N:47:of Electricity
X:31:16
W:50:8:0:0
C:0:0:4:0
F:IGNORE_ACID | IGNORE_ELEC | SH_ELEC | RES_ELEC



### Gloves ###

N:48:of Free Action
X:34:11
F:FREE_ACT
W:0:1:0:0

N:49:of Slaying
X:34:17
W:30:2:0:1500
C:6:6:0:0
F:SHOW_MODS

N:50:of Agility
X:34:14
W:0:3:0:0
C:0:0:0:5
F:DEX | HIDE_TYPE

N:51:of Power
X:34:22
W:20:4:0:0
C:5:5:0:5
F:STR | SHOW_MODS | HIDE_TYPE
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

N:52:(Ghoul Touch)
X:34:22
W:40:4:0:0
C:6:6:0:0
F:GHOUL_TOUCH | SHOW_MODS

# 53 (unused)

N:54:of Weakness
X:34:0
W:0:1:0:-100
C:0:0:0:-10
F:STR

N:55:of Clumsiness
X:34:0
W:0:1:0:-100
C:0:0:0:-10
F:DEX


### Boots ###

N:56:of Levitation
X:35:7
W:30:4:0:0
F:FEATHER
L:MAKE:	if (one_in_(2) ~= 0) then add_ego_power(EGO_XTRA_HI_RESIST, object) end

N:57:of Stealth
X:35:16
W:0:1:0:0
C:0:0:0:8
F:STEALTH

N:58:of Free Action
X:35:15
W:20:1:0:0
F:FREE_ACT

N:59:of Speed
X:35:25
W:20:4:0:1000
C:0:0:0:10
F:SPEED | HIDE_TYPE

N:60:of the Wild
X:35:5
W:0:4:0:0
F:WILD_WALK

N:61:of Noise
X:35:0
W:0:1:0:-100
F:AGGRAVATE

N:62:of Slowness
X:35:0
W:20:4:0:-100
C:0:0:0:-5
F:SPEED

N:63:of Annoyance
X:35:0
W:35:1:0:-100
C:0:0:0:-10
F:SPEED | AGGRAVATE


### Weapons ###

# OneSustain

N:64:(Holy Avenger)
X:24:30
W:15:6:0:0
C:6:6:4:4
F:WIS | 
F:SLAY_EVIL | SLAY_UNDEAD | SLAY_DEMON | 
F:SEE_INVIS | BLESSED | RES_FEAR
L:MAKE:	if player.rp.pclass == CLASS_PALADIN then 
L:MAKE:		set_obj_flag(object, 3, TR3_LUCK_10) 
L:MAKE:		object.cost = object.cost - 3000
L:MAKE:	end
L:MAKE:	add_ego_power(EGO_XTRA_SUSTAIN, object)
L:MAKE:	if (one_in_(4) ~= 0) then
L:MAKE:		set_obj_flag(object, 0, TR0_BLOWS)
L:MAKE:		object.pval = randint1(4) - object.dd / 2
L:MAKE:		if object.pval < 1 then object.pval = 1 end
L:MAKE:	end

# OneSustain

N:65:(Defender)
X:24:25
W:15:6:0:0
C:4:4:8:4
F:STEALTH | 
F:FREE_ACT | SEE_INVIS | FEATHER | REGEN | 
F:RES_ACID | RES_ELEC | RES_FIRE | RES_COLD | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 1, TR1_RES_POIS) end
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)
L:MAKE:	add_ego_power(EGO_XTRA_SUSTAIN, object)

# OneAbility

N:66:(Blessed)
X:24:20
W:10:6:0:0
C:0:0:0:3
F:WIS | 
F:BLESSED
L:MAKE:	add_ego_power(EGO_XTRA_ABILITY, object)

# 67 (unused)

N:68:of Westernesse
X:24:20
W:15:6:0:0
C:5:5:0:2
F:STR | DEX | CON | 
F:SLAY_ORC | SLAY_TROLL | SLAY_GIANT | 
F:FREE_ACT | SEE_INVIS
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 1, TR1_RES_FEAR) end

N:69:of Extra Attacks
X:24:20
W:50:3:0:500
F:BLOWS
L:MAKE:	object.pval = randint1(3) - object.dd / 2
L:MAKE: if object.pval < 1 then object.pval = 1 end

N:70:of Slaying
X:24:15
W:75:3:0:0
L:MAKE:	object.ds = object.ds + (object.ds * randint1(5)) / 5
L:MAKE:	if (one_in_(5) ~= 0) then set_obj_flag(object, 0, TR0_BRAND_POIS) end


# 71 (unused)

# The "Elemental" brands (4) (6)

N:72:of Melting
X:24:15
W:10:6:0:0
F:BRAND_ACID | RES_ACID | IGNORE_ACID

N:73:of Shocking
X:24:20
W:0:6:0:0
F:BRAND_ELEC | RES_ELEC | IGNORE_ELEC

N:74:of Burning
X:24:20
W:0:6:0:-500
F:BRAND_FIRE | RES_FIRE | IGNORE_FIRE | LITE

N:75:of Freezing
X:24:15
W:10:6:0:0
F:BRAND_COLD | RES_COLD | IGNORE_COLD

N:76:of Venom
X:24:20
W:10:6:0:0
F:BRAND_POIS | RES_POIS

N:77:(Chaotic)
X:24:28
W:0:6:0:0
F:CHAOTIC | RES_CHAOS | PATRON | IGNORE_ELEC | IGNORE_ACID | IGNORE_FIRE
L:MAKE:	if player.rp.pclass == CLASS_CHAOS_WARRIOR then 
L:MAKE:		set_obj_flag(object, 0, TR0_SP) 
L:MAKE:		object.pval = 1
L:MAKE:		object.cost = object.cost - 2500
L:MAKE:	end
L:MAKE:	add_ego_power(EGO_XTRA_ANY_RESIST, object)

N:78:of Sharpness
X:24:20
W:50:2:0:0
F:VORPAL | TUNNEL
L:MAKE:	object.pval = m_bonus(5, level) + 1

N:79:of Earthquakes
X:24:20
W:50:2:0:0
F:TUNNEL | IMPACT
L:MAKE:	object.pval = m_bonus(3, level) + 3
L:MAKE:	if (one_in_(3) ~= 0) then
L:MAKE:		set_obj_flag(object, 0, TR0_BLOWS)
L:MAKE:		object.pval = object.pval - object.dd / 2
L:MAKE:		if object.pval < 1 then object.pval = 1 end
L:MAKE:	end

# The "Slay" brands (8)

N:80:of Slay Animal
X:24:18
W:30:3:0:0
F:SLAY_ANIMAL

N:81:of Slay Evil
X:24:18
W:20:3:0:0
F:SLAY_EVIL

N:82:of Slay Undead
X:24:18
W:20:3:0:0
F:SLAY_UNDEAD | HOLD_LIFE

N:83:of Slay Demon
X:24:14
W:30:2:0:0
F:SLAY_DEMON

N:84:of Slay Orc
X:24:10
W:0:2:0:0
F:SLAY_ORC

N:85:of Slay Troll
X:24:10
W:40:2:0:0
F:SLAY_TROLL

N:86:of Slay Giant
X:24:14
W:60:2:0:0
F:SLAY_GIANT

N:87:of Slay Dragon
X:24:18
W:40:3:0:0
F:SLAY_DRAGON
L:MAKE:	add_ego_power(EGO_XTRA_LO_RESIST, object)

# The "Kill" brands (8)

N:88:of *Slay* Animal
X:24:20
W:40:15:0:0
C:0:0:0:2
F:INT | SLAY_ANIMAL | REGEN

N:89:of *Slay* Evil
X:24:20
W:80:15:0:0
C:0:0:0:2
F:WIS | SLAY_EVIL | BLESSED | RES_FEAR

N:90:of *Slay* Undead
X:24:24
W:50:15:0:0
C:0:0:0:2
F:WIS | SLAY_UNDEAD | SEE_INVIS | RES_NETHER

N:91:of *Slay* Demon
X:24:16
W:40:10:0:0
C:0:0:0:2
F:INT | SLAY_DEMON

N:92:of *Slay* Orc
X:24:14
W:20:10:0:0
C:0:0:0:2
F:DEX | SLAY_ORC

N:93:of *Slay* Troll
X:24:14
W:50:10:0:0
C:0:0:0:2
F:STR | SLAY_TROLL

N:94:of *Slay* Giant
X:24:16
W:50:10:0:0
C:0:0:0:2
F:STR | SLAY_GIANT

N:95:of *Slay* Dragon
X:24:24
W:70:15:0:0
C:0:0:0:1
F:CON | SLAY_DRAGON | KILL_DRAGON
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 1, TR1_RES_POIS) end
L:MAKE:	add_ego_power(EGO_XTRA_LO_RESIST, object)
L:MAKE:	add_ego_power(EGO_XTRA_LO_RESIST, object)

N:96:(Vampiric)
X:24:25
W:70:3:0:0
F:VAMPIRIC | HOLD_LIFE

# 97 (unused)

N:98:(Trump Weapon)
X:24:22
W:30:3:0:500
C:4:4:0:2
F:SLAY_EVIL | TELEPORT | FREE_ACT | SENSE |
F:REGEN | SLOW_DIGEST | RES_NEXUS | ACTIVATE
L:USE:	msgf("Your weapon twists space around you...")
L:USE:	teleport_player(100)
L:USE:	object.timeout = rand_range(50, 100)
L:DESC:	return "teleport every 50-100 turns"
L:MAKE:	if (one_in_(5) ~= 0) then set_obj_flag(object, 0, TR0_SLAY_DEMON) end
L:MAKE:	if (one_in_(7) ~= 0) then add_ego_power(EGO_XTRA_ABILITY, object) end
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)


N:99:(Pattern Weapon)
X:24:26
W:50:6:0:0
C:6:6:0:2
F:STR | CON |
F:SLAY_EVIL | SLAY_DEMON | SLAY_UNDEAD |
F:FREE_ACT | SEE_INVIS |
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 1, TR1_HOLD_LIFE) end
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 0, TR0_DEX) end
L:MAKE:	if (one_in_(3) ~= 0) then set_obj_flag(object, 1, TR1_RES_FEAR) end
L:MAKE:	add_ego_power(EGO_XTRA_HI_RESIST, object)

N:100:of Digging
# Hack - digging items have a "slot" of 22
X:22:4
W:0:1:0:0
C:0:0:0:5
F:TUNNEL | BRAND_ACID | 
F:IGNORE_ACID | IGNORE_ELEC | IGNORE_FIRE | IGNORE_COLD

# 101 (unused)

N:102:of Morgul
X:24:0
W:5:1:0:0
C:-20:-20:-10:0
F:SEE_INVIS | AGGRAVATE | HEAVY_CURSE | CURSED

# 103 (unused)


### Missile Launchers ###

N:104:of Accuracy
X:25:10
W:0:1:0:50
C:15:5:0:0

N:105:of Velocity
X:25:10
W:20:1:0:50
C:5:15:0:0

N:106:of Hunting
X:25:10
W:0:4:0:0
C:8:8:0:0
F:WILD_SHOT | SLAY_ANIMAL

# 107 (unused)

N:108:of Extra Might
X:25:20
W:40:1:0:0
C:5:10:0:0
F:XTRA_MIGHT
L:MAKE:	add_ego_power(EGO_XTRA_ANY_RESIST, object)

N:109:of Extra Shots
X:25:20
C:10:5:0:0
W:50:1:0:0
F:XTRA_SHOTS

# 110 (unused)

# 111 (unused)


### Ammo ###

N:112:of Hurt Animal
X:23:10
W:0:1:0:0
F:SLAY_ANIMAL

N:113:of Hurt Evil
X:23:10
W:0:1:0:0
F:SLAY_EVIL

# 114 (unused)

# 115 (unused)

# 116 (unused)

N:117:of Returning
X:23:5
F:RETURN
W:0:1:0:0

N:118:of Explosion
X:23:10
F:EXPLODE
W:30:1:0:0

N:119:of Hurt Dragon
X:23:10
F:SLAY_DRAGON
W:0:1:0:0

N:120:of Slaying
X:23:15
W:0:1:0:0
C:12:12:0:0
L:MAKE:	object.ds = object.ds + (object.ds * randint1(5)) / 5

N:121:of Shocking
X:23:10
F:BRAND_ELEC | IGNORE_ELEC
W:0:1:0:0

N:122:of Flame
X:23:10
F:BRAND_FIRE | IGNORE_FIRE
W:0:1:0:0

N:123:of Frost
X:23:10
F:BRAND_COLD | IGNORE_COLD
W:0:1:0:0

N:124:of Wounding
X:23:5
W:0:1:0:20
C:6:6:0:0

N:125:of Backbiting
X:23:0
W:0:1:0:-100
C:-50:-50:0:0


### Special Broken Items ###

# Destroyed Weapon
N:126:(Shattered)
X:0:0
W:0:0:0:-100
C:-5:-5:0:0

# Destroyed Body Armor

N:127:(Blasted)
X:0:0
W:0:0:0:-100
C:0:0:-10:0
