Equipment Quality Analyzer (script)

From Elanthipedia
Revision as of 18:43, 4 March 2016 by ISHARON (talk | contribs)
Jump to navigation Jump to search
Equipment Quality Analyzer (script)
Category information
Front-end Genie
Author Isharon


Description

This script appraises weapons, shields, and armor and analyzes their quality. It exports a spreadsheet-friendly lists of the item's quality scores, aggregate stats, and raw stats.

If you are using the shop inventory version, the spreadsheet-friendly stat log includes the price and store. If you are using the held/worn inventory version, it will list your character name as the source and "owned" as the price.

Caveats/Disclaimers

The default formulas are designed from an "everyman's" point of view. It goes without saying that each player's individual circumstances and preferences could affect the weights assigned to different factors. There are instructions at the top of the script for customizing the formulas if you have different ideas about what's important.

This script does not consider the user's stats and skills. No player has sufficient knowledge of the mechanics to do anything but speculate about the exact interplay between stats, fatigue, roundtime, etc.

This script assumes that the user has some understanding of his character and combat. This is particularly true with respect to the item weights that your character can effectively handle.

The pause between the appraisal and the computation of stats is normal. This is to ensure that all of the variables are set before stats are computed.

This script cannot analyze more than one "mode" of a swappable weapon at a time.
Quality scores for brawling weapons should be taken with a grain of salt due to the wonkiness of "damage increase" items.

The numbers in front of the item types and coverage areas are not an indication of quality. They're just for sorting in an order that I like.

Instructions

Syntax for Held/Worn Items

.ISTATS [ITEM]

If you are using the held/worn item version, simply specify the item that you want to analyze. For example, .ISTATS GREATSWORD. A menu will prompt you to select the type of item that you're analyzing.

ITEM TYPE:

1:	Weapon: Melee/Thrown

2:	Weapon: Ranged

3:	Weapon: Ammunition

4:	Weapon: Brawling

5:	Weapon: Parry Stick

6:	Shield

7:	Armor

Enter Type Number:

Syntax for Shop Inventory

.ISTATS [ITEM]

Running the shop inventory version is similar except that you need to use the shop surface and preposition aliases and triggers below.

For example, if you want to appraise a greatsword on a cedar rack, type SV CEDAR RACK to set the shop surface variable and SV SHS to set the preposition variable.

Syntax for Manual Data Entry

.ISTATM

Simply follow the prompts.

Required Genie Settings

Aliases

You must install and use this alias to set the shop surface variable.

#alias {shs} {shop;shop $shop}
#alias {sv} {#var shop $0}


The "shop surface" is the thing on which the item is placed (for example, table, second rack, or oak shelf). Every time you change shop surfaces (via the sv alias), you need to use the shs alias to set the preposition.

Triggers

You must install these triggers to set the preposition variable. (Use the shs alias to set it every time you change shop surfaces.)

#trigger {^Behind .+, you see:$} {#var preposition behind}
#trigger {^In .+, you see:$} {#var preposition in}
#trigger {^On .+, you see:$} {#var preposition on}
#trigger {^Under .+, you see:$} {#var preposition under}

The following triggers set global variables for your skillset placements. These variables may be used in future versions that assign stat weights based on skillset placement.

#trigger {^Name:.+Guild:\s+Barbarian} {#var skillset_weapon primary;#var skillset_armor secondary;#var skillset_survival secondary;#var skillset_lore tertiary;#var skillset_magic tertiary}
#trigger {^Name:.+Guild:\s+Bard} {#var skillset_lore primary;#var skillset_magic secondary;#var skillset_weapon secondary;#var skillset_survival tertiary;#var skillset_armor tertiary}
#trigger {^Name:.+Guild:\s+Cleric} {#var skillset_magic primary;#var skillset_lore secondary;#var skillset_weapon secondary;#var skillset_armor tertiary;#var skillset_survival tertiary}
#trigger {^Name:.+Guild:\s+Commoner} {#var skillset_armor secondary;#var skillset_weapon secondary;#var skillset_magic secondary;#var skillset_survival secondary;#var skillset_lore secondary}
#trigger {^Name:.+Guild:\s+Empath} {#var skillset_lore primary;#var skillset_magic secondary;#var skillset_survival secondary;#var skillset_armor tertiary;#var skillset_weapon tertiary}
#trigger {^Name:.+Guild:\s+Moon Mage} {#var skillset_magic primary;#var skillset_lore secondary;#var skillset_survival secondary;#var skillset_armor tertiary;#var skillset_weapon tertiary}
#trigger {^Name:.+Guild:\s+Necromancer} {#var skillset_survival primary;#var skillset_magic secondary;#var skillset_lore secondary;#var skillset_weapon tertiary;#var skillset_armor tertiary}
#trigger {^Name:.+Guild:\s+Paladin} {#var skillset_armor primary;#var skillset_weapon secondary;#var skillset_lore secondary;#var skillset_magic tertiary;#var skillset_survival tertiary}
#trigger {^Name:.+Guild:\s+Ranger} {#var skillset_survival primary;#var skillset_weapon secondary;#var skillset_armor secondary;#var skillset_lore tertiary;#var skillset_magic tertiary}
#trigger {^Name:.+Guild:\s+Thief} {#var skillset_survival primary;#var skillset_weapon secondary;#var skillset_lore secondary;#var skillset_armor tertiary;#var skillset_magic tertiary}
#trigger {^Name:.+Guild:\s+Trader} {#var skillset_lore primary;#var skillset_survival secondary;#var skillset_armor secondary;#var skillset_weapon tertiary;#var skillset_magic tertiary}
#trigger {^Name:.+Guild:\s+Warrior Mage} {#var skillset_magic primary;#var skillset_weapon secondary;#var skillset_lore secondary;#var skillset_armor tertiary;#var skillset_survival tertiary}

Spreadsheet

The script creates a log of each item's stats in your Logs folder. You can copy and paste from this file to a spreadsheet for easier comparison.

Here is a blank spreadsheet with labels and proper formatting. (Page 1 is for weapons. Page 2 is for shields. Page 3 is for armor.)

Sample Output

Melee/Thrown Weapon

A kertig scimitar is a medium edged melee-ranged weapon.
A kertig scimitar trains the small edged skill.

You are certain that it could do:
low (3/26) puncture damage
great (11/26) slice damage
somewhat moderate (6/26) impact damage
no (0/26) fire damage
no (0/26) cold damage
no (0/26) electric damage

The scimitar is poorly (3/17) designed for improving the force of your attacks.

You are certain that the scimitar is fairly (5/17) balanced and is soundly (8/17) suited to gaining extra attack power from your strength.

You are certain that the scimitar is unusually resilient to damage (16/18), and is in pristine condition (98-100%).

The scimitar is made with metal.
You are certain that the metal in the scimitar has a quality of 90, placing it at 'somewhat pure' on the official Trader's Scale.
You are certain that the metal in the scimitar has a hardness of 95, placing it at 'absurdly hard' on the official Trader's Scale.
You are certain that the metal in the scimitar has a durability of 70, placing it at 'good durability' on the official Trader's Scale.
You are certain that the metal in the scimitar has a workability of 5, placing it at 'unbelievably difficult to work with' on the official Trader's Scale.
You are certain that the metal in the scimitar has an electrical resistance of 40, placing it at 'a very good conductor of electricity' on the official Trader's Scale.
You are certain that the metal in the scimitar has a thermal resistance of 55, placing it at 'good at transferring heat and cold' on the official Trader's Scale.
You are certain that the metal in the scimitar has a physical resistance of 90, placing it at 'incredibly good at repelling physical blows' on the official Trader's Scale.
You are certain that the scimitar weighs exactly 45 stones.
You are certain that the scimitar is worth exactly 361065 Kronars.

Stats for kertig scimitar

Total Weapon Damage: 20 (mean: 3.3)
Total Physical Damage: 20 (mean: 6.7)
Total Elemental Damage: 0 (mean: 0)

Melee Weapon Quality: 64.5 (2*physical damage(20) + 2*elemental damage(0) + 1*force(3) + 1.5*balance(5) + 1.25*power(8) + .25*construction(16) + range bonus(0))

Melee Weapon Quality/Weight: 2.9 (weapon quality(64.5) / (.5*weight(45)))

OOC Numeric Appraisal: melee-ranged 05-ME (45 stones): damage: 3/11/6, force/balance/power: 3/5/8, construction: 16

6250045	Nice Guy Vaahn's, Sales Floor	05-ME	04-SE	kertig scimitar	64.5	2.9	45	20	20	0	3	5	8	16	3.3	6.7	0	3	11	6	0	0	0

Ranged Weapon

A compact ironwood riot crossbow with a yew lath is a heavy crossbow type weapon.
A compact ironwood riot crossbow with a yew lath trains the crossbow skill.

The riot crossbow is perfectly designed for improving the force of your attacks.

You are certain that the crossbow is fairly (5/17) balanced and is not (0/17) suited to gaining extra attack power from your strength.

You are certain that the riot crossbow is appreciably susceptible to damage (7/18), and is in pristine condition (98-100%).

It appears that the riot crossbow can be slung over one shoulder.
You are certain that the riot crossbow weighs exactly 150 stones.
You are certain that the riot crossbow is worth exactly 5625 Kronars.

Stats for compact ironwood riot crossbow with a yew lath

Ranged Weapon Quality: 26.2 (1*force(17) + 1.5*balance(5) + 1.25*power(0) + .25*construction(7))

Ranged Weapon Quality/Weight: 0.3 (weapon quality(26.2) / (.5*weight(150)))

OOC Numeric Appraisal: 15-HX (150 stones): force/balance/power: 17/5/0, construction: 7

150000000	Hooked On Acronyx, Sales Floor	15-HX	11-Xbow	compact ironwood riot crossbow with a yew lath	26.2	0.3	150	N/A	N/A	N/A	17	5	0	7	N/A	N/A	N/A	N/A	N/A	N/A	N/A	N/A	N/A

Ranged Weapon Ammunition

You are certain that it could do:
heavy (9/26) puncture damage
fair (5/26) slice damage
moderate (7/26) impact damage
no (0/26) fire damage
no (0/26) cold damage
no (0/26) electric damage

The sleek quadrellos is poorly (3/17) designed for improving the force of your attacks.

You are certain that the sleek quadrellos are appreciably susceptible to damage (7/18), and are in pristine condition (98-100%).

The sleek quadrellos are made with metal.
You are certain that the sleek quadrellos weighs exactly 2 stones.
You are certain that the sleek quadrellos are worth exactly 112500 Kronars.

Stats for sleek quadrellos

Total Ammo Damage: 21 (mean: 3.5)
Total Physical Damage: 21 (mean: 7)
Total Elemental Damage: 0 (mean: 0)

Ammo Quality: 46.8 (2*physical damage(21) + 2*elemental damage(0) + 1*force(3) + .25*construction(7))

Ammo Quality/Weight: 46.8 (ammo quality(46.8) / (.5*weight(2)))

OOC Numeric Appraisal: 11-crossbow ammo (2 stones): damage: 9/5/7, force: 3, construction: 7

3250000	Nice Guy Vaahn's, Sales Floor	11-crossbow ammo	11-crossbow ammo	sleek quadrellos	46.8	46.8	2	21	21	0	3	N/A	N/A	7	3.5	7	0	9	5	7	0	0	0

Brawling Weapon

Some haralun knee spikes are a brawling type weapon.
Some haralun knee spikes trains the brawling skill.

You are certain that it could do:
a lot of puncture damage
no slice damage increase
a lot of impact damage

The knee spikes is not (0/17) designed for improving the force of your attacks.

You are certain that the knee spikes are very strong against damage (14/18), and are in pristine condition (98-100%).

The knee spikes are made with metal.
You are certain that the metal in the knee spikes has a quality of 90, placing it at 'somewhat pure' on the official Trader's Scale.
You are certain that the metal in the knee spikes has a hardness of 95, placing it at 'absurdly hard' on the official Trader's Scale.
You are certain that the metal in the knee spikes has a durability of 60, placing it at 'good durability' on the official Trader's Scale.
You are certain that the metal in the knee spikes has a workability of 20, placing it at 'difficulty to work with' on the official Trader's Scale.
You are certain that the metal in the knee spikes has an electrical resistance of 70, placing it at 'not a very good conductor of electricity' on the official Trader's Scale.
You are certain that the metal in the knee spikes has a thermal resistance of 75, placing it at 'not very good at transferring heat and cold' on the official Trader's Scale.
You are certain that the metal in the knee spikes has a physical resistance of 80, placing it at 'exceptionally good at repelling physical blows' on the official Trader's Scale.
It appears that the knee spikes can be worn strapped to the knees.
You are certain that the knee spikes weighs exactly 30 stones.
You are certain that the knee spikes are worth exactly 139358 Kronars.

Stats for haralun knee spikes

Total Weapon Damage: 8 (mean: 2.7)

Brawling Weapon Quality: 19.5 (2*physical damage(8) + 1*force(0) + .25*construction(14))

Brawling Weapon Quality/Weight: 1.3 (weapon quality(19.5) / (.5*weight(30)))

OOC Numeric Appraisal: brawling-4knee (30 stones): damage: 4/0/4, construction: 14

5000030	Tiddeggur's House Of Pain, Sales Floor	22-brawl-4knee	14-brawl-4knee	haralun knee spikes	19.5	1.3	30	8	8	N/A	0	N/A	N/A	14	2.7	2.7	N/A	4	0	4	N/A	N/A	N/A

Parry Stick

A silver-hued parry stick with reinforced silken straps is a brawling type weapon.
A silver-hued parry stick with reinforced silken straps trains the brawling skill.

You are certain that the stick is a purely defensive item.

You are certain that the stick is soundly (8/17) balanced and is poorly (3/17) suited to gaining extra attack power from your strength.

You are certain that the parry stick is marginally vulnerable to damage (8/18), and is in pristine condition (98-100%).

The parry stick is made with metal.
It appears that the parry stick can be worn on the right arm.
You are certain that the parry stick weighs exactly 35 stones.
You are certain that the parry stick is worth exactly 62500 Kronars.

Stats for silver-hued parry stick with reinforced silken straps

Parry Stick Quality: 14 (1.5*balance(8) + .25*construction(8))

Parry Stick Quality/Weight: 0.8 (weapon quality(14) / (.5*weight(35)))

OOC Numeric Appraisal: parry stick (35 stones): balance: 8, construction: 8

owned	Isharon	22-brawl-1parry	14-brawl-1parry	silver-hued parry stick with reinforced silken straps	14	0.8	35	N/A	N/A	N/A	N/A	8	3	8	N/A	N/A	N/A	N/A	N/A	N/A	N/A	N/A	N/A

Shield

You are certain that it imposes great (11/15) maneuvering hindrance.

This shield is large in size.

Your experience with shields allows a better appraisal of the protection capabilities.

You are certain that the shield offers better than fair (9/26) to impressive (20/26) protection.

You are certain that it could do:
no (0/26) puncture damage
no (0/26) slice damage
very severe (14/26) impact damage
no (0/26) fire damage
no (0/26) cold damage
no (0/26) electric damage

You are certain that the shield is fairly (5/17) balanced and is reasonably (7/17) suited to gaining extra attack power from your strength.

You are certain that the tower shield is extremely resistant to damage (15/18), and is in pristine condition (98-100%).

The tower shield is made with metal.
You are certain that the metal in the tower shield has a quality of 96, placing it at 'very pure' on the official Trader's Scale.
You are certain that the metal in the tower shield has a hardness of 80, placing it at 'quite hard' on the official Trader's Scale.
You are certain that the metal in the tower shield has a durability of 70, placing it at 'good durability' on the official Trader's Scale.
You are certain that the metal in the tower shield has a workability of 10, placing it at 'very difficult to work with' on the official Trader's Scale.
You are certain that the metal in the tower shield has an electrical resistance of 90, placing it at 'not a conductor of electricity' on the official Trader's Scale.
You are certain that the metal in the tower shield has a thermal resistance of 40, placing it at 'very good at transferring heat and cold' on the official Trader's Scale.
You are certain that the metal in the tower shield has a physical resistance of 95, placing it at 'incredibly good at repelling physical blows' on the official Trader's Scale.
It appears that the tower shield can be worn on the left arm.
You are certain that the tower shield weighs exactly 251 stones.
You are certain that the tower shield is worth exactly 1597535 Kronars.

Stats for damite tower shield

Total Shield Protection: 29

Shield Quality: 44.2 (1.5*min.protection(9) + 2*max.protection(20) + .25*construction(15) - 1*hindrance(11) - size factor(2))

Shield Quality/Weight: 0.4 (shield quality(44.2) / (.5*weight(251)))

OOC Numeric Appraisal: large shield (251 stones): protection: 9/20, hindrance: 11, construction: 15

35000000	Abrasax's Magic Emporium, Sales Floor	large	damite tower shield	44.2	0.4	251	29	9	20	11	15	14	5	7

Armor

The padded hauberk is light armor.

The hauberk looks like it offers protection for the following areas:

right arm
left arm
right leg
left leg
chest
abdomen
back

You feel certain that a padded fine titanese hauberk with a reinforced design appears to impose great (11/15) maneuvering hindrance and fair (5/15) stealth hindrance, offering:
very high (8/15) protection and good (7/18) damage absorption for puncture attacks.
high (7/15) protection and very good (8/18) damage absorption for slice attacks.
great (9/15) protection and good (7/18) damage absorption for impact attacks.
very good (6/15) protection and fair (5/18) damage absorption for fire attacks.
good (5/15) protection and moderate (6/18) damage absorption for cold attacks.
good (5/15) protection and fair (5/18) damage absorption for electrical attacks.

If you were only wearing a padded fine titanese hauberk with a reinforced design you could expect your maneuvering to be minimally (2/14) hindered and your stealth to be insignificantly (3/14) hindered.

You are certain that the padded hauberk is practically invulnerable to damage (18/18), and is in pristine condition (98-100%).

The padded hauberk is extremely soft.
You are certain that the padded hauberk weighs exactly 220 stones.
You are certain that the padded hauberk is worth exactly 490050 Kronars.

Stats for padded fine titanese hauberk with a reinforced design

Total Armor Defense + Absorption: 78
Total Armor Protection: 40 (mean: 6.7)
Total Armor Absorption: 38 (mean: 6.3)
Total Physical Defense: 46 (mean: 7.7)
Total Elemental Defense: 32 (mean: 5.3)
Total Armor Hindrance: 16 (mean: 8)

Armor Quality: 330.5 (2*total protection(40) + 2.5*total absorption(38) + 3*total physical defense(46) + 1*total elemental defense(32) + .25*construction(18) - 1.5*maneuvering hindrance(11) - .5*stealth hindrance(5))

Armor Quality/Weight: 3 (armor quality(330.5) / (.5*weight(220)))

OOC Numeric Appraisal: 4-light (220 stones): puncture: 8/7, slice: 7/8, impact: 9/7, fire: 6/5, cold: 5/6, electric: 5/5, hindrance: 11/5, construction: 18

88000220	RKM Leather And Cloth Outfitters, Sales Floor	4-light	08-torso/arms/legs	padded fine titanese hauberk with a reinforced design	330.5	3	220	78	40	38	46	32	11	5	18	16	6.7	6.3	7.7	5.3	8	8	7	7	8	9	7	6	5	5	6	5	5

Changelog

2/26/2016

  • Updated output

9/15/2015

  • Added support for bows (including draw strength)
  • Added shown items version
  • Divided weapon output into melee and ranged/ammo
  • Fixed ammo type and skill recognition
  • Fixed construction level 1
  • Fixed damage scale
  • Fixed recognition of neck-only coverage area (for example, aventails)
  • Taps are quietly set by glancing (instead of tapping)

7/9/2015

  • Changed some variable names in the output
  • Added user-friendly stat calculations to "ItemStatsReader" log

4/15/2015

  • Added manual data entry version (for getting quality scores and stat totals from appraisals you found online)
  • Removed mean stats from the spreadsheet output (but left them in the echoed summary) -- the means don't really add a lot but clutter when you already have the stat totals.

12/6/2014

  • Added version for items that another player SHOWs to you
  • added support for containers (held items only)
  • added appraisal value (in Kronars)
  • added auto-recognition of crafted and altered items
  • added source for marked crafter's items

10/11/2014

  • fixed spacing of output

Scripts

Held/Worn Items

########################################################
##STAT QUALITY WEIGHTS
##Edit this section if you want to change the weights that the quality formulas assign to each stat.
##sumpd: physical damage (puncture + slice + impact)
##sumed: elemental damage (fire + cold + electric)
##foi: force of impact (determines likelihood of stunning, unbalancing, and knocking back)
##balance: weapon balance (determines how well a weapon takes advantage of your agility when attacking and parrying)
##power: weapon power/suitability (determines how well a weapon takes advantage of your strength when attacking)
##smin: shield's minimum or "basic" defense (the minimum protection a shield offers, regardless of skill)
##smax: shield's maximum or "full" defense (the maximum protection a shield can offer if you have sufficient shield skill)
##shdhindrance: shield's maneuvering and stealth hindrance (All shields impose equal maneuvering and stealth hindrance, which may be reduced with skill.)
##sumpro: armor's total protection (reduces incoming damage by a flat amount -- best for light hits and requires more armor skill)
##sumabs: armor's total absorption (reduces incoming damage by a static percentage -- best for heavy hits and requires less armor skill)
##sumpdef: armor's total physical defense (protection + absorption)
##sumedef: armor's total elemental defense (protection + absorption)
##mhindrance: armor's maneuvering hindrance (determines penalties to defenses, which may be reduced with skill.)
##shindrance: armor's stealth hindrance (determines penalties to stealth, which may be reduced with skill.)
##construction: item's construction (determines how easily damaged an item is and therefore how often it will need to be repaired)
##weight: the item's weight in stones
##Weapon Quality Formula: %sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor
##Shield Quality Formula: %smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor
##Armor Quality Formula: %sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance
var sumpd_weight 2
var sumed_weight 2
var foi_weight 1
var balance_weight 1.5
var power_weight 1.25
var smin_weight 1.5
var smax_weight 2
var shdhindrance_weight 1
var sumpro_weight 2
var sumabs_weight 2.5
var sumpdef_weight 3
var sumedef_weight 1
var mhindrance_weight 1.5
var shindrance_weight .5
var construction_weight .25
var weight_weight .5
##DEFAULT VALUES
##var sumpd_weight 2
##var sumed_weight 2
##var foi_weight 1
##var balance_weight 1.5
##var power_weight 1.25
##var smin_weight 1.5
##var smax_weight 2
##var shdhindrance_weight 1
##var sumpro_weight 2
##var sumabs_weight 2.5
##var sumpdef_weight 3
##var sumedef_weight 1
##var mhindrance_weight 1.5
##var shindrance_weight .5
##var construction_weight .25
##var weight_weight .5
########################################################
put #class joust off
put #class racial off
var short $lefthand
var noun $lefthandnoun
var short $righthand
var noun $righthandnoun
var appcostl 0
var appcostd 0
var source $charactername

action setvariable sourcetype 07-crafting when ^You .+ a quality of \d+, placing it at .+ on the official Trader's Scale\.$|^You.+the \S+ in the .+ is of .+ quality\.$|You see the initials? \"(.+)\" impressed into the surface of the \S+\.
action setvariable sourcetype altered when ^The .+ looks? to be custom-made\.$
action setvariable source $1 when ^You see the initials? \"(.+)\" impressed into the surface of the \S+\.$
action setvariable tap $2 when ^In your left hand, you are carrying (an?|some|the) (.+)\.$
action setvariable tap $2 when ^In your right hand, you are carrying (an?|some|the) (.+)\.$
action setvariable wtype1 01-pike when (is a|are a|and) pike .+ weapon
action setvariable wtype1 02-halberd when (is a|are a|and) halberd .+ weapon
action setvariable wtype1 03-2HE when (is a|are a|and) two-handed edged .+ weapon
action setvariable wtype1 04-HE when (is a|are a|and) heavy edged .+ weapon
action setvariable wtype1 05-ME when (is a|are a|and) medium edged .+ weapon
action setvariable wtype1 06-LtE when (is a|are a|and) light edged .+ weapon
action setvariable wtype1 07-2HB when (is a|are a|and) two-handed blunt .+ weapon
action setvariable wtype1 08-HB when (is a|are a|and) heavy blunt .+ weapon
action setvariable wtype1 09-MB when (is a|are a|and) medium blunt .+ weapon
action setvariable wtype1 10-LtBl when (is a|are a|and) light blunt .+ weapon
action setvariable wtype1 13-QS when (is a|are a|and) quarter staff .+ weapon
action setvariable wtype1 14-SS when (is a|are a|and) short staff .+ weapon
action setvariable wtype1 15-HX when (is|are) a heavy crossbow .+ weapon
action setvariable wtype1 16-LX when (is|are) a light crossbow .+ weapon
action setvariable wtype1 17-comp bow when (is|are) a composite bow .+ weapon
action setvariable wtype1 18-long bow when (is|are) a long bow .+ weapon
action setvariable wtype1 19-short bow when (is|are) a short bow .+ weapon
action setvariable wtype1 20-staff sling when (is|are) a staff sling .+ weapon
action setvariable wtype1 21-sling when (is|are) a sling .+ weapon
action setvariable wtype2 11-HT when (is|are) a heavy thrown and .+ weapon
action setvariable wtype2 12-LT when (is|are) a light thrown and .+ weapon
action setvariable range melee when melee-ranged weapon
action setvariable range pole when pole-ranged weapon
action setvariable puncture 0 when ^\s+no puncture damage
action setvariable puncture 1 when ^\s+dismal puncture damage
action setvariable puncture 2 when ^\s+poor puncture damage
action setvariable puncture 3 when ^\s+low puncture damage
action setvariable puncture 4 when ^\s+somewhat fair puncture damage
action setvariable puncture 5 when ^\s+fair puncture damage
action setvariable puncture 6 when ^\s+somewhat moderate puncture damage
action setvariable puncture 7 when ^\s+moderate puncture damage
action setvariable puncture 8 when ^\s+somewhat heavy puncture damage
action setvariable puncture 9 when ^\s+heavy puncture damage
action setvariable puncture 10 when ^\s+very heavy puncture damage
action setvariable puncture 11 when ^\s+great puncture damage
action setvariable puncture 12 when ^\s+very great puncture damage
action setvariable puncture 13 when ^\s+severe puncture damage
action setvariable puncture 14 when ^\s+very severe puncture damage
action setvariable puncture 15 when ^\s+extreme puncture damage
action setvariable puncture 16 when ^\s+very extreme puncture damage
action setvariable puncture 17 when ^\s+mighty puncture damage
action setvariable puncture 18 when ^\s+very mighty puncture damage
action setvariable puncture 19 when ^\s+bone-crushing puncture damage
action setvariable puncture 20 when ^\s+very bone-crushing puncture damage
action setvariable puncture 21 when ^\s+dev[ae]stating puncture damage
action setvariable puncture 22 when ^\s+very dev[ae]stating puncture damage
action setvariable puncture 23 when ^\s+overwhelming puncture damage
action setvariable puncture 24 when ^\s+annihilating puncture damage
action setvariable puncture 25 when ^\s+obliterating puncture damage
action setvariable puncture 26 when ^\s+demolishing puncture damage
action setvariable puncture 27 when ^\s+catastrophic puncture damage
action setvariable slice 0 when ^\s+no slice damage
action setvariable slice 1 when ^\s+dismal slice damage
action setvariable slice 2 when ^\s+poor slice damage
action setvariable slice 3 when ^\s+low slice damage
action setvariable slice 4 when ^\s+somewhat fair slice damage
action setvariable slice 5 when ^\s+fair slice damage
action setvariable slice 6 when ^\s+somewhat moderate slice damage
action setvariable slice 7 when ^\s+moderate slice damage
action setvariable slice 8 when ^\s+somewhat heavy slice damage
action setvariable slice 9 when ^\s+heavy slice damage
action setvariable slice 10 when ^\s+very heavy slice damage
action setvariable slice 11 when ^\s+great slice damage
action setvariable slice 12 when ^\s+very great slice damage
action setvariable slice 13 when ^\s+severe slice damage
action setvariable slice 14 when ^\s+very severe slice damage
action setvariable slice 15 when ^\s+extreme slice damage
action setvariable slice 16 when ^\s+very extreme slice damage
action setvariable slice 17 when ^\s+mighty slice damage
action setvariable slice 18 when ^\s+very mighty slice damage
action setvariable slice 19 when ^\s+bone-crushing slice damage
action setvariable slice 20 when ^\s+very bone-crushing slice damage
action setvariable slice 21 when ^\s+dev[ae]stating slice damage
action setvariable slice 22 when ^\s+very dev[ae]stating slice damage
action setvariable slice 23 when ^\s+overwhelming slice damage
action setvariable slice 24 when ^\s+annihilating slice damage
action setvariable slice 25 when ^\s+obliterating slice damage
action setvariable slice 26 when ^\s+demolishing slice damage
action setvariable slice 27 when ^\s+catastrophic slice damage
action setvariable impact 0 when ^\s+no impact damage
action setvariable impact 1 when ^\s+dismal impact damage
action setvariable impact 2 when ^\s+poor impact damage
action setvariable impact 3 when ^\s+low impact damage
action setvariable impact 4 when ^\s+somewhat fair impact damage
action setvariable impact 5 when ^\s+fair impact damage
action setvariable impact 6 when ^\s+somewhat moderate impact damage
action setvariable impact 7 when ^\s+moderate impact damage
action setvariable impact 8 when ^\s+somewhat heavy impact damage
action setvariable impact 9 when ^\s+heavy impact damage
action setvariable impact 10 when ^\s+very heavy impact damage
action setvariable impact 11 when ^\s+great impact damage
action setvariable impact 12 when ^\s+very great impact damage
action setvariable impact 13 when ^\s+severe impact damage
action setvariable impact 14 when ^\s+very severe impact damage
action setvariable impact 15 when ^\s+extreme impact damage
action setvariable impact 16 when ^\s+very extreme impact damage
action setvariable impact 17 when ^\s+mighty impact damage
action setvariable impact 18 when ^\s+very mighty impact damage
action setvariable impact 19 when ^\s+bone-crushing impact damage
action setvariable impact 20 when ^\s+very bone-crushing impact damage
action setvariable impact 21 when ^\s+dev[ae]stating impact damage
action setvariable impact 22 when ^\s+very dev[ae]stating impact damage
action setvariable impact 23 when ^\s+overwhelming impact damage
action setvariable impact 24 when ^\s+annihilating impact damage
action setvariable impact 25 when ^\s+obliterating impact damage
action setvariable impact 26 when ^\s+demolishing impact damage
action setvariable impact 27 when ^\s+catastrophic impact damage
action setvariable puncture 0 when ^\s+no puncture damage$
action setvariable puncture 1 when ^\s+a little puncture damage$
action setvariable puncture 2 when ^\s+some puncture damage$
action setvariable puncture 3 when ^\s+quite a bit of puncture damage$
action setvariable puncture 4 when ^\s+a lot of puncture damage$
action setvariable slice 0 when ^\s+no slice damage$
action setvariable slice 1 when ^\s+a little slice damage$
action setvariable slice 2 when ^\s+some slice damage$
action setvariable slice 3 when ^\s+quite a bit of slice damage$
action setvariable slice 4 when ^\s+a lot of slice damage$
action setvariable impact 0 when ^\s+no impact damage$
action setvariable impact 1 when ^\s+a little impact damage$
action setvariable impact 2 when ^\s+some impact damage$
action setvariable impact 3 when ^\s+quite a bit of impact damage$
action setvariable impact 4 when ^\s+a lot of impact damage$
action setvariable fire 0 when ^\s+no fire damage
action setvariable fire 1 when ^\s+dismal fire damage
action setvariable fire 2 when ^\s+poor fire damage
action setvariable fire 3 when ^\s+low fire damage
action setvariable fire 4 when ^\s+somewhat fair fire damage
action setvariable fire 5 when ^\s+fair fire damage
action setvariable fire 6 when ^\s+somewhat moderate fire damage
action setvariable fire 7 when ^\s+moderate fire damage
action setvariable fire 8 when ^\s+somewhat heavy fire damage
action setvariable fire 9 when ^\s+heavy fire damage
action setvariable fire 10 when ^\s+very heavy fire damage
action setvariable fire 11 when ^\s+great fire damage
action setvariable fire 12 when ^\s+very great fire damage
action setvariable fire 13 when ^\s+severe fire damage
action setvariable fire 14 when ^\s+very severe fire damage
action setvariable fire 15 when ^\s+extreme fire damage
action setvariable fire 16 when ^\s+very extreme fire damage
action setvariable fire 17 when ^\s+mighty fire damage
action setvariable fire 18 when ^\s+very mighty fire damage
action setvariable fire 19 when ^\s+bone-crushing fire damage
action setvariable fire 20 when ^\s+very bone-crushing fire damage
action setvariable fire 21 when ^\s+dev[ae]stating fire damage
action setvariable fire 22 when ^\s+very dev[ae]stating fire damage
action setvariable fire 23 when ^\s+overwhelming fire damage
action setvariable fire 24 when ^\s+annihilating fire damage
action setvariable fire 25 when ^\s+obliterating fire damage
action setvariable fire 26 when ^\s+demolishing fire damage
action setvariable fire 27 when ^\s+catastrophic fire damage
action setvariable cold 0 when ^\s+no cold damage
action setvariable cold 1 when ^\s+dismal cold damage
action setvariable cold 2 when ^\s+poor cold damage
action setvariable cold 3 when ^\s+low cold damage
action setvariable cold 4 when ^\s+somewhat fair cold damage
action setvariable cold 5 when ^\s+fair cold damage
action setvariable cold 6 when ^\s+somewhat moderate cold damage
action setvariable cold 7 when ^\s+moderate cold damage
action setvariable cold 8 when ^\s+somewhat heavy cold damage
action setvariable cold 9 when ^\s+heavy cold damage
action setvariable cold 10 when ^\s+very heavy cold damage
action setvariable cold 11 when ^\s+great cold damage
action setvariable cold 12 when ^\s+very great cold damage
action setvariable cold 13 when ^\s+severe cold damage
action setvariable cold 14 when ^\s+very severe cold damage
action setvariable cold 15 when ^\s+extreme cold damage
action setvariable cold 16 when ^\s+very extreme cold damage
action setvariable cold 17 when ^\s+mighty cold damage
action setvariable cold 18 when ^\s+very mighty cold damage
action setvariable cold 19 when ^\s+bone-crushing cold damage
action setvariable cold 20 when ^\s+very bone-crushing cold damage
action setvariable cold 21 when ^\s+dev[ae]stating cold damage
action setvariable cold 22 when ^\s+very dev[ae]stating cold damage
action setvariable cold 23 when ^\s+overwhelming cold damage
action setvariable cold 24 when ^\s+annihilating cold damage
action setvariable cold 25 when ^\s+obliterating cold damage
action setvariable cold 26 when ^\s+demolishing cold damage
action setvariable cold 27 when ^\s+catastrophic cold damage
action setvariable electric 0 when ^\s+no electric damage
action setvariable electric 1 when ^\s+dismal electric damage
action setvariable electric 2 when ^\s+poor electric damage
action setvariable electric 3 when ^\s+low electric damage
action setvariable electric 4 when ^\s+somewhat fair electric damage
action setvariable electric 5 when ^\s+fair electric damage
action setvariable electric 6 when ^\s+somewhat moderate electric damage
action setvariable electric 7 when ^\s+moderate electric damage
action setvariable electric 8 when ^\s+somewhat heavy electric damage
action setvariable electric 9 when ^\s+heavy electric damage
action setvariable electric 10 when ^\s+very heavy electric damage
action setvariable electric 11 when ^\s+great electric damage
action setvariable electric 12 when ^\s+very great electric damage
action setvariable electric 13 when ^\s+severe electric damage
action setvariable electric 14 when ^\s+very severe electric damage
action setvariable electric 15 when ^\s+extreme electric damage
action setvariable electric 16 when ^\s+very extreme electric damage
action setvariable electric 17 when ^\s+mighty electric damage
action setvariable electric 18 when ^\s+very mighty electric damage
action setvariable electric 19 when ^\s+bone-crushing electric damage
action setvariable electric 20 when ^\s+very bone-crushing electric damage
action setvariable electric 21 when ^\s+dev[ae]stating electric damage
action setvariable electric 22 when ^\s+very dev[ae]stating electric damage
action setvariable electric 23 when ^\s+overwhelming electric damage
action setvariable electric 24 when ^\s+annihilating electric damage
action setvariable electric 25 when ^\s+obliterating electric damage
action setvariable electric 26 when ^\s+demolishing electric damage
action setvariable electric 27 when ^\s+catastrophic electric damage
action setvariable fire 0 when ^\s+no fire damage$
action setvariable fire 1 when ^\s+a little fire damage$
action setvariable fire 2 when ^\s+some fire damage$
action setvariable fire 3 when ^\s+quite a bit of fire damage$
action setvariable fire 4 when ^\s+a lot of fire damage$
action setvariable cold 0 when ^\s+no cold damage$
action setvariable cold 1 when ^\s+a little cold damage$
action setvariable cold 2 when ^\s+some cold damage$
action setvariable cold 3 when ^\s+quite a bit of cold damage$
action setvariable cold 4 when ^\s+a lot of cold damage$
action setvariable electric 0 when ^\s+no electric damage$
action setvariable electric 1 when ^\s+a little electric damage$
action setvariable electric 2 when ^\s+some electric damage$
action setvariable electric 3 when ^\s+quite a bit of electric damage$
action setvariable electric 4 when ^\s+a lot of electric damage$
action setvariable foi 0 when (is|are) not designed for improving the force of your attacks\.$
action setvariable foi 1 when (is|are) terribly designed for improving the force of your attacks\.$
action setvariable foi 2 when (is|are) dismally designed for improving the force of your attacks\.$
action setvariable foi 3 when (is|are) poorly designed for improving the force of your attacks\.$
action setvariable foi 4 when (is|are) inadequately designed for improving the force of your attacks\.$
action setvariable foi 5 when (is|are) fairly designed for improving the force of your attacks\.$
action setvariable foi 6 when (is|are) decently designed for improving the force of your attacks\.$
action setvariable foi 7 when (is|are) reasonably designed for improving the force of your attacks\.$
action setvariable foi 8 when (is|are) soundly designed for improving the force of your attacks\.$
action setvariable foi 9 when (is|are) well designed for improving the force of your attacks\.$
action setvariable foi 10 when (is|are) very well designed for improving the force of your attacks\.$
action setvariable foi 11 when (is|are) extremely well designed for improving the force of your attacks\.$
action setvariable foi 12 when (is|are) excellently designed for improving the force of your attacks\.$
action setvariable foi 13 when (is|are) superbly designed for improving the force of your attacks\.$
action setvariable foi 14 when (is|are) incredibly designed for improving the force of your attacks\.$
action setvariable foi 15 when (is|are) amazingly designed for improving the force of your attacks\.$
action setvariable foi 16 when (is|are) unbelieve?ably designed for improving the force of your attacks\.$
action setvariable foi 17 when (is|are) perfectly designed for improving the force of your attacks\.$
action setvariable balance 0 when ^You are certain that .+ (is|are) not balanced and
action setvariable balance 1 when ^You are certain that .+ (is|are) terribly balanced and
action setvariable balance 2 when ^You are certain that .+ (is|are) dismally balanced and
action setvariable balance 3 when ^You are certain that .+ (is|are) poorly balanced and
action setvariable balance 4 when ^You are certain that .+ (is|are) inadequately balanced and
action setvariable balance 5 when ^You are certain that .+ (is|are) fairly balanced and
action setvariable balance 6 when ^You are certain that .+ (is|are) decently balanced and
action setvariable balance 7 when ^You are certain that .+ (is|are) reasonably balanced and
action setvariable balance 8 when ^You are certain that .+ (is|are) soundly balanced and
action setvariable balance 9 when ^You are certain that .+ (is|are) well balanced and
action setvariable balance 10 when ^You are certain that .+ (is|are) very well balanced and
action setvariable balance 11 when ^You are certain that .+ (is|are) extremely well balanced and
action setvariable balance 12 when ^You are certain that .+ (is|are) excellently balanced and
action setvariable balance 13 when ^You are certain that .+ (is|are) superbly balanced and
action setvariable balance 14 when ^You are certain that .+ (is|are) incredibly balanced and
action setvariable balance 15 when ^You are certain that .+ (is|are) amazingly balanced and
action setvariable balance 16 when ^You are certain that .+ (is|are) unbelieve?ably balanced and
action setvariable balance 17 when ^You are certain that .+ (is|are) perfectly balanced and
action setvariable power 0 when ^You are certain that.+balanced and (is|are) not suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 1 when ^You are certain that.+balanced and (is|are) terribly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 2 when ^You are certain that.+balanced and (is|are) dismally suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 3 when ^You are certain that.+balanced and (is|are) poorly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 4 when ^You are certain that.+balanced and (is|are) inadequately suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 5 when ^You are certain that.+balanced and (is|are) fairly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 6 when ^You are certain that.+balanced and (is|are) decently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 7 when ^You are certain that.+balanced and (is|are) reasonably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 8 when ^You are certain that.+balanced and (is|are) soundly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 9 when ^You are certain that.+balanced and (is|are) well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 10 when ^You are certain that.+balanced and (is|are) very well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 11 when ^You are certain that.+balanced and (is|are) extremely well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 12 when ^You are certain that.+balanced and (is|are) excellently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 13 when ^You are certain that.+balanced and (is|are) superbly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 14 when ^You are certain that.+balanced and (is|are) incredibly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 15 when ^You are certain that.+balanced and (is|are) amazingly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 16 when ^You are certain that.+balanced and (is|are) unbelieve?ably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 17 when ^You are certain that.+balanced and (is|are) perfectly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable drawstrength 1 when ^The.+appears set for a draw strength that is extremely low for a bow of this type\.$
action setvariable drawstrength 2 when ^The.+appears set for a draw strength that is very low for a bow of this type\.$
action setvariable drawstrength 3 when ^The.+appears set for a draw strength that is somewhat low for a bow of this type\.$
action setvariable drawstrength 4 when ^The.+appears set for a draw strength that is average for a bow of this type\.$
action setvariable drawstrength 5 when ^The.+appears set for a draw strength that is somewhat high for a bow of this type\.$
action setvariable drawstrength 6 when ^The.+appears set for a draw strength that is very high for a bow of this type\.$
action setvariable drawstrength 7 when ^The.+appears set for a draw strength that is exceptionally high for a bow of this type\.$
action setvariable drawstrength 8 when ^The.+appears set for a draw strength that is extremely high for a bow of this type\.$
action setvariable adjdraw no when ^The.+does not appear to have an adjustable draw strength\.$
action setvariable adjdraw yes when ^The.+appears to have an adjustable draw strength\.$

action setvariable atype 4-plate when (is|are) plate armor\.$
action setvariable atype 3-brigandine when (is|are) brigandine armor\.$
action setvariable atype 2-chain when (is|are) chain armor\.$
action setvariable atype 1-light when (is|are) light armor\.$
action setvariable covershead yes when ^\s+head$
action setvariable coverseyes yes when ^\s+(right|left) eye$
action setvariable coversneck yes when ^\s+neck$
action setvariable coverschest yes when ^\s+chest$
action setvariable coversabdomen yes when ^\s+abdomen$
action setvariable coversback yes when ^\s+back$
action setvariable coversarms yes when ^\s+(right|left) arm$
action setvariable covershands yes when ^\s+(right|left) hand$
action setvariable coverslegs yes when ^\s+(right|left) leg$

action setvariable stype $1 when is (\w+) in size\.$
action setvariable shdhindrance 0 when ^You are certain that it imposes no maneuvering hindrance\.$
action setvariable shdhindrance 1 when ^You are certain that it imposes insignificant maneuvering hindrance\.$
action setvariable shdhindrance 2 when ^You are certain that it imposes trivial maneuvering hindrance\.$
action setvariable shdhindrance 3 when ^You are certain that it imposes light maneuvering hindrance\.$
action setvariable shdhindrance 4 when ^You are certain that it imposes minor maneuvering hindrance\.$
action setvariable shdhindrance 5 when ^You are certain that it imposes fair maneuvering hindrance\.$
action setvariable shdhindrance 6 when ^You are certain that it imposes mild maneuvering hindrance\.$
action setvariable shdhindrance 7 when ^You are certain that it imposes moderate maneuvering hindrance\.$
action setvariable shdhindrance 8 when ^You are certain that it imposes noticeable maneuvering hindrance\.$
action setvariable shdhindrance 9 when ^You are certain that it imposes high maneuvering hindrance\.$
action setvariable shdhindrance 10 when ^You are certain that it imposes significant maneuvering hindrance\.$
action setvariable shdhindrance 11 when ^You are certain that it imposes great maneuvering hindrance\.$
action setvariable shdhindrance 12 when ^You are certain that it imposes extreme maneuvering hindrance\.$
action setvariable shdhindrance 13 when ^You are certain that it imposes debilitating maneuvering hindrance\.$
action setvariable shdhindrance 14 when ^You are certain that it imposes overwhelming maneuvering hindrance\.$
action setvariable shdhindrance 15 when ^You are certain that it imposes insane maneuvering hindrance\.$
action setvariable smin 0 when ^You are certain that .+ offers no to
action setvariable smin 1 when ^You are certain that .+ offers extremely terrible to
action setvariable smin 2 when ^You are certain that .+ offers terrible to
action setvariable smin 3 when ^You are certain that .+ offers dismal to
action setvariable smin 4 when ^You are certain that .+ offers very poor to
action setvariable smin 5 when ^You are certain that .+ offers poor to
action setvariable smin 6 when ^You are certain that .+ offers rather low to
action setvariable smin 7 when ^You are certain that .+ offers low to
action setvariable smin 8 when ^You are certain that .+ offers fair to
action setvariable smin 9 when ^You are certain that .+ offers better than fair to
action setvariable smin 10 when ^You are certain that .+ offers moderate to
action setvariable smin 11 when ^You are certain that .+ offers moderately good to
action setvariable smin 12 when ^You are certain that .+ offers good to
action setvariable smin 13 when ^You are certain that .+ offers very good to
action setvariable smin 14 when ^You are certain that .+ offers high to
action setvariable smin 15 when ^You are certain that .+ offers very high to
action setvariable smin 16 when ^You are certain that .+ offers great to
action setvariable smin 17 when ^You are certain that .+ offers very great to
action setvariable smin 18 when ^You are certain that .+ offers exceptional to
action setvariable smin 19 when ^You are certain that .+ offers very exceptional to
action setvariable smin 20 when ^You are certain that .+ offers impressive to
action setvariable smin 21 when ^You are certain that .+ offers very impressive to
action setvariable smin 22 when ^You are certain that .+ offers amazing to
action setvariable smin 23 when ^You are certain that .+ offers incredible to
action setvariable smin 24 when ^You are certain that .+ offers tremendous to
action setvariable smin 25 when ^You are certain that .+ offers unbelievable to
action setvariable smin 26 when ^You are certain that .+ offers god-like to
action setvariable smax 0 when ^You are certain that.+offers.+ to no protection\.$
action setvariable smax 1 when ^You are certain that.+offers.+ to extremely terrible protection\.$
action setvariable smax 2 when ^You are certain that.+offers.+ to terrible protection\.$
action setvariable smax 3 when ^You are certain that.+offers.+ to dismal protection\.$
action setvariable smax 4 when ^You are certain that.+offers.+ to very poor protection\.$
action setvariable smax 5 when ^You are certain that.+offers.+ to poor protection\.$
action setvariable smax 6 when ^You are certain that.+offers.+ to rather low protection\.$
action setvariable smax 7 when ^You are certain that.+offers.+ to low protection\.$
action setvariable smax 8 when ^You are certain that.+offers.+ to fair protection\.$
action setvariable smax 9 when ^You are certain that.+offers.+ to better than fair protection\.$
action setvariable smax 10 when ^You are certain that.+offers.+ to moderate protection\.$
action setvariable smax 11 when ^You are certain that.+offers.+ to moderately good protection\.$
action setvariable smax 12 when ^You are certain that.+offers.+ to good protection\.$
action setvariable smax 13 when ^You are certain that.+offers.+ to very good protection\.$
action setvariable smax 14 when ^You are certain that.+offers.+ to high protection\.$
action setvariable smax 15 when ^You are certain that.+offers.+ to very high protection\.$
action setvariable smax 16 when ^You are certain that.+offers.+ to great protection\.$
action setvariable smax 17 when ^You are certain that.+offers.+ to very great protection\.$
action setvariable smax 18 when ^You are certain that.+offers.+ to exceptional protection\.$
action setvariable smax 19 when ^You are certain that.+offers.+ to very exceptional protection\.$
action setvariable smax 20 when ^You are certain that.+offers.+ to impressive protection\.$
action setvariable smax 21 when ^You are certain that.+offers.+ to very impressive protection\.$
action setvariable smax 22 when ^You are certain that.+offers.+ to amazing protection\.$
action setvariable smax 23 when ^You are certain that.+offers.+ to incredible protection\.$
action setvariable smax 24 when ^You are certain that.+offers.+ to tremendous protection\.$
action setvariable smax 25 when ^You are certain that.+offers.+ to unbelievable protection\.$
action setvariable smax 26 when ^You are certain that.+offers.+ to god-like protection\.$

action setvariable mhindrance 0 when ^You feel certain that .+ appears? to impose no maneuvering hindrance
action setvariable mhindrance 1 when ^You feel certain that .+ appears? to impose insignificant maneuvering hindrance
action setvariable mhindrance 2 when ^You feel certain that .+ appears? to impose trivial maneuvering hindrance
action setvariable mhindrance 3 when ^You feel certain that .+ appears? to impose light maneuvering hindrance
action setvariable mhindrance 4 when ^You feel certain that .+ appears? to impose minor maneuvering hindrance
action setvariable mhindrance 5 when ^You feel certain that .+ appears? to impose fair maneuvering hindrance
action setvariable mhindrance 6 when ^You feel certain that .+ appears? to impose mild maneuvering hindrance
action setvariable mhindrance 7 when ^You feel certain that .+ appears? to impose moderate maneuvering hindrance
action setvariable mhindrance 8 when ^You feel certain that .+ appears? to impose noticeable maneuvering hindrance
action setvariable mhindrance 9 when ^You feel certain that .+ appears? to impose high maneuvering hindrance
action setvariable mhindrance 10 when ^You feel certain that .+ appears? to impose significant maneuvering hindrance
action setvariable mhindrance 11 when ^You feel certain that .+ appears? to impose great maneuvering hindrance
action setvariable mhindrance 12 when ^You feel certain that .+ appears? to impose extreme maneuvering hindrance
action setvariable mhindrance 13 when ^You feel certain that .+ appears? to impose debilitating maneuvering hindrance
action setvariable mhindrance 14 when ^You feel certain that .+ appears? to impose overwhelming maneuvering hindrance
action setvariable mhindrance 15 when ^You feel certain that .+ appears? to impose insane maneuvering hindrance
action setvariable shindrance 0 when ^You feel certain that.+maneuvering hindrance and no stealth hindrance, offering:
action setvariable shindrance 1 when ^You feel certain that.+maneuvering hindrance and insignificant stealth hindrance, offering:
action setvariable shindrance 2 when ^You feel certain that.+maneuvering hindrance and trivial stealth hindrance, offering:
action setvariable shindrance 3 when ^You feel certain that.+maneuvering hindrance and light stealth hindrance, offering:
action setvariable shindrance 4 when ^You feel certain that.+maneuvering hindrance and minor stealth hindrance, offering:
action setvariable shindrance 5 when ^You feel certain that.+maneuvering hindrance and fair stealth hindrance, offering:
action setvariable shindrance 6 when ^You feel certain that.+maneuvering hindrance and mild stealth hindrance, offering:
action setvariable shindrance 7 when ^You feel certain that.+maneuvering hindrance and moderate stealth hindrance, offering:
action setvariable shindrance 8 when ^You feel certain that.+maneuvering hindrance and noticeable stealth hindrance, offering:
action setvariable shindrance 9 when ^You feel certain that.+maneuvering hindrance and high stealth hindrance, offering:
action setvariable shindrance 10 when ^You feel certain that.+maneuvering hindrance and significant stealth hindrance, offering:
action setvariable shindrance 11 when ^You feel certain that.+maneuvering hindrance and great stealth hindrance, offering:
action setvariable shindrance 12 when ^You feel certain that.+maneuvering hindrance and extreme stealth hindrance, offering:
action setvariable shindrance 13 when ^You feel certain that.+maneuvering hindrance and debilitating stealth hindrance, offering:
action setvariable shindrance 14 when ^You feel certain that.+maneuvering hindrance and overwhelming stealth hindrance, offering:
action setvariable shindrance 15 when ^You feel certain that.+maneuvering hindrance and insane stealth hindrance, offering:
action setvariable puncturep 1 when ^\s+poor protection and.+absorption for puncture attacks
action setvariable puncturep 2 when ^\s+low protection and.+absorption for puncture attacks
action setvariable puncturep 3 when ^\s+fair protection and.+absorption for puncture attacks
action setvariable puncturep 4 when ^\s+moderate protection and.+absorption for puncture attacks
action setvariable puncturep 5 when ^\s+good protection and.+absorption for puncture attacks
action setvariable puncturep 6 when ^\s+very good protection and.+absorption for puncture attacks
action setvariable puncturep 7 when ^\s+high protection and.+absorption for puncture attacks
action setvariable puncturep 8 when ^\s+very high protection and.+absorption for puncture attacks
action setvariable puncturep 9 when ^\s+great protection and.+absorption for puncture attacks
action setvariable puncturep 10 when ^\s+very great protection and.+absorption for puncture attacks
action setvariable puncturep 11 when ^\s+extreme protection and.+absorption for puncture attacks
action setvariable puncturep 12 when ^\s+exceptional protection and.+absorption for puncture attacks
action setvariable puncturep 13 when ^\s+incredible protection and.+absorption for puncture attacks
action setvariable puncturep 14 when ^\s+amazing protection and.+absorption for puncture attacks
action setvariable puncturep 15 when ^\s+unbelieve?able protection and.+absorption for puncture attacks
action setvariable puncturea 1 when ^\s.+protection and very poor damage absorption for puncture attacks
action setvariable puncturea 2 when ^\s.+protection and poor damage absorption for puncture attacks
action setvariable puncturea 3 when ^\s.+protection and low damage absorption for puncture attacks
action setvariable puncturea 4 when ^\s.+protection and somewhat fair damage absorption for puncture attacks
action setvariable puncturea 5 when ^\s.+protection and fair damage absorption for puncture attacks
action setvariable puncturea 6 when ^\s.+protection and moderate damage absorption for puncture attacks
action setvariable puncturea 7 when ^\s.+protection and good damage absorption for puncture attacks
action setvariable puncturea 8 when ^\s.+protection and very good damage absorption for puncture attacks
action setvariable puncturea 9 when ^\s.+protection and high damage absorption for puncture attacks
action setvariable puncturea 10 when ^\s.+protection and very high damage absorption for puncture attacks
action setvariable puncturea 11 when ^\s.+protection and great damage absorption for puncture attacks
action setvariable puncturea 12 when ^\s.+protection and very great damage absorption for puncture attacks
action setvariable puncturea 13 when ^\s.+protection and extreme damage absorption for puncture attacks
action setvariable puncturea 14 when ^\s.+protection and exceptional damage absorption for puncture attacks
action setvariable puncturea 15 when ^\s.+protection and incredible damage absorption for puncture attacks
action setvariable puncturea 16 when ^\s.+protection and outstanding damage absorption for puncture attacks
action setvariable puncturea 17 when ^\s.+protection and amazing damage absorption for puncture attacks
action setvariable puncturea 18 when ^\s.+protection and unbelievable damage absorption for puncture attacks
action setvariable slicep 1 when ^\s+poor protection and.+absorption for slice attacks
action setvariable slicep 2 when ^\s+low protection and.+absorption for slice attacks
action setvariable slicep 3 when ^\s+fair protection and.+absorption for slice attacks
action setvariable slicep 4 when ^\s+moderate protection and.+absorption for slice attacks
action setvariable slicep 5 when ^\s+good protection and.+absorption for slice attacks
action setvariable slicep 6 when ^\s+very good protection and.+absorption for slice attacks
action setvariable slicep 7 when ^\s+high protection and.+absorption for slice attacks
action setvariable slicep 8 when ^\s+very high protection and.+absorption for slice attacks
action setvariable slicep 9 when ^\s+great protection and.+absorption for slice attacks
action setvariable slicep 10 when ^\s+very great protection and.+absorption for slice attacks
action setvariable slicep 11 when ^\s+extreme protection and.+absorption for slice attacks
action setvariable slicep 12 when ^\s+exceptional protection and.+absorption for slice attacks
action setvariable slicep 13 when ^\s+incredible protection and.+absorption for slice attacks
action setvariable slicep 14 when ^\s+amazing protection and.+absorption for slice attacks
action setvariable slicep 15 when ^\s+unbelieve?able protection and.+absorption for slice attacks
action setvariable slicea 1 when ^\s.+protection and very poor damage absorption for slice attacks
action setvariable slicea 2 when ^\s.+protection and poor damage absorption for slice attacks
action setvariable slicea 3 when ^\s.+protection and low damage absorption for slice attacks
action setvariable slicea 4 when ^\s.+protection and somewhat fair damage absorption for slice attacks
action setvariable slicea 5 when ^\s.+protection and fair damage absorption for slice attacks
action setvariable slicea 6 when ^\s.+protection and moderate damage absorption for slice attacks
action setvariable slicea 7 when ^\s.+protection and good damage absorption for slice attacks
action setvariable slicea 8 when ^\s.+protection and very good damage absorption for slice attacks
action setvariable slicea 9 when ^\s.+protection and high damage absorption for slice attacks
action setvariable slicea 10 when ^\s.+protection and very high damage absorption for slice attacks
action setvariable slicea 11 when ^\s.+protection and great damage absorption for slice attacks
action setvariable slicea 12 when ^\s.+protection and very great damage absorption for slice attacks
action setvariable slicea 13 when ^\s.+protection and extreme damage absorption for slice attacks
action setvariable slicea 14 when ^\s.+protection and exceptional damage absorption for slice attacks
action setvariable slicea 15 when ^\s.+protection and incredible damage absorption for slice attacks
action setvariable slicea 16 when ^\s.+protection and outstanding damage absorption for slice attacks
action setvariable slicea 17 when ^\s.+protection and amazing damage absorption for slice attacks
action setvariable slicea 18 when ^\s.+protection and unbelievable damage absorption for slice attacks
action setvariable impactp 1 when ^\s+poor protection and.+absorption for impact attacks
action setvariable impactp 2 when ^\s+low protection and.+absorption for impact attacks
action setvariable impactp 3 when ^\s+fair protection and.+absorption for impact attacks
action setvariable impactp 4 when ^\s+moderate protection and.+absorption for impact attacks
action setvariable impactp 5 when ^\s+good protection and.+absorption for impact attacks
action setvariable impactp 6 when ^\s+very good protection and.+absorption for impact attacks
action setvariable impactp 7 when ^\s+high protection and.+absorption for impact attacks
action setvariable impactp 8 when ^\s+very high protection and.+absorption for impact attacks
action setvariable impactp 9 when ^\s+great protection and.+absorption for impact attacks
action setvariable impactp 10 when ^\s+very great protection and.+absorption for impact attacks
action setvariable impactp 11 when ^\s+extreme protection and.+absorption for impact attacks
action setvariable impactp 12 when ^\s+exceptional protection and.+absorption for impact attacks
action setvariable impactp 13 when ^\s+incredible protection and.+absorption for impact attacks
action setvariable impactp 14 when ^\s+amazing protection and.+absorption for impact attacks
action setvariable impactp 15 when ^\s+unbelieve?able protection and.+absorption for impact attacks
action setvariable impacta 1 when ^\s.+protection and very poor damage absorption for impact attacks
action setvariable impacta 2 when ^\s.+protection and poor damage absorption for impact attacks
action setvariable impacta 3 when ^\s.+protection and low damage absorption for impact attacks
action setvariable impacta 4 when ^\s.+protection and somewhat fair damage absorption for impact attacks
action setvariable impacta 5 when ^\s.+protection and fair damage absorption for impact attacks
action setvariable impacta 6 when ^\s.+protection and moderate damage absorption for impact attacks
action setvariable impacta 7 when ^\s.+protection and good damage absorption for impact attacks
action setvariable impacta 8 when ^\s.+protection and very good damage absorption for impact attacks
action setvariable impacta 9 when ^\s.+protection and high damage absorption for impact attacks
action setvariable impacta 10 when ^\s.+protection and very high damage absorption for impact attacks
action setvariable impacta 11 when ^\s.+protection and great damage absorption for impact attacks
action setvariable impacta 12 when ^\s.+protection and very great damage absorption for impact attacks
action setvariable impacta 13 when ^\s.+protection and extreme damage absorption for impact attacks
action setvariable impacta 14 when ^\s.+protection and exceptional damage absorption for impact attacks
action setvariable impacta 15 when ^\s.+protection and incredible damage absorption for impact attacks
action setvariable impacta 16 when ^\s.+protection and outstanding damage absorption for impact attacks
action setvariable impacta 17 when ^\s.+protection and amazing damage absorption for impact attacks
action setvariable impacta 18 when ^\s.+protection and unbelievable damage absorption for impact attacks
action setvariable firep 1 when ^\s+poor protection and.+absorption for fire attacks
action setvariable firep 2 when ^\s+low protection and.+absorption for fire attacks
action setvariable firep 3 when ^\s+fair protection and.+absorption for fire attacks
action setvariable firep 4 when ^\s+moderate protection and.+absorption for fire attacks
action setvariable firep 5 when ^\s+good protection and.+absorption for fire attacks
action setvariable firep 6 when ^\s+very good protection and.+absorption for fire attacks
action setvariable firep 7 when ^\s+high protection and.+absorption for fire attacks
action setvariable firep 8 when ^\s+very high protection and.+absorption for fire attacks
action setvariable firep 9 when ^\s+great protection and.+absorption for fire attacks
action setvariable firep 10 when ^\s+very great protection and.+absorption for fire attacks
action setvariable firep 11 when ^\s+extreme protection and.+absorption for fire attacks
action setvariable firep 12 when ^\s+exceptional protection and.+absorption for fire attacks
action setvariable firep 13 when ^\s+incredible protection and.+absorption for fire attacks
action setvariable firep 14 when ^\s+amazing protection and.+absorption for fire attacks
action setvariable firep 15 when ^\s+unbelieve?able protection and.+absorption for fire attacks
action setvariable firea 1 when ^\s.+protection and very poor damage absorption for fire attacks
action setvariable firea 2 when ^\s.+protection and poor damage absorption for fire attacks
action setvariable firea 3 when ^\s.+protection and low damage absorption for fire attacks
action setvariable firea 4 when ^\s.+protection and somewhat fair damage absorption for fire attacks
action setvariable firea 5 when ^\s.+protection and fair damage absorption for fire attacks
action setvariable firea 6 when ^\s.+protection and moderate damage absorption for fire attacks
action setvariable firea 7 when ^\s.+protection and good damage absorption for fire attacks
action setvariable firea 8 when ^\s.+protection and very good damage absorption for fire attacks
action setvariable firea 9 when ^\s.+protection and high damage absorption for fire attacks
action setvariable firea 10 when ^\s.+protection and very high damage absorption for fire attacks
action setvariable firea 11 when ^\s.+protection and great damage absorption for fire attacks
action setvariable firea 12 when ^\s.+protection and very great damage absorption for fire attacks
action setvariable firea 13 when ^\s.+protection and extreme damage absorption for fire attacks
action setvariable firea 14 when ^\s.+protection and exceptional damage absorption for fire attacks
action setvariable firea 15 when ^\s.+protection and incredible damage absorption for fire attacks
action setvariable firea 16 when ^\s.+protection and outstanding damage absorption for fire attacks
action setvariable firea 17 when ^\s.+protection and amazing damage absorption for fire attacks
action setvariable firea 18 when ^\s.+protection and unbelievable damage absorption for fire attacks
action setvariable coldp 1 when ^\s+poor protection and.+absorption for cold attacks
action setvariable coldp 2 when ^\s+low protection and.+absorption for cold attacks
action setvariable coldp 3 when ^\s+fair protection and.+absorption for cold attacks
action setvariable coldp 4 when ^\s+moderate protection and.+absorption for cold attacks
action setvariable coldp 5 when ^\s+good protection and.+absorption for cold attacks
action setvariable coldp 6 when ^\s+very good protection and.+absorption for cold attacks
action setvariable coldp 7 when ^\s+high protection and.+absorption for cold attacks
action setvariable coldp 8 when ^\s+very high protection and.+absorption for cold attacks
action setvariable coldp 9 when ^\s+great protection and.+absorption for cold attacks
action setvariable coldp 10 when ^\s+very great protection and.+absorption for cold attacks
action setvariable coldp 11 when ^\s+extreme protection and.+absorption for cold attacks
action setvariable coldp 12 when ^\s+exceptional protection and.+absorption for cold attacks
action setvariable coldp 13 when ^\s+incredible protection and.+absorption for cold attacks
action setvariable coldp 14 when ^\s+amazing protection and.+absorption for cold attacks
action setvariable coldp 15 when ^\s+unbelieve?able protection and.+absorption for cold attacks
action setvariable colda 1 when ^\s.+protection and very poor damage absorption for cold attacks
action setvariable colda 2 when ^\s.+protection and poor damage absorption for cold attacks
action setvariable colda 3 when ^\s.+protection and low damage absorption for cold attacks
action setvariable colda 4 when ^\s.+protection and somewhat fair damage absorption for cold attacks
action setvariable colda 5 when ^\s.+protection and fair damage absorption for cold attacks
action setvariable colda 6 when ^\s.+protection and moderate damage absorption for cold attacks
action setvariable colda 7 when ^\s.+protection and good damage absorption for cold attacks
action setvariable colda 8 when ^\s.+protection and very good damage absorption for cold attacks
action setvariable colda 9 when ^\s.+protection and high damage absorption for cold attacks
action setvariable colda 10 when ^\s.+protection and very high damage absorption for cold attacks
action setvariable colda 11 when ^\s.+protection and great damage absorption for cold attacks
action setvariable colda 12 when ^\s.+protection and very great damage absorption for cold attacks
action setvariable colda 13 when ^\s.+protection and extreme damage absorption for cold attacks
action setvariable colda 14 when ^\s.+protection and exceptional damage absorption for cold attacks
action setvariable colda 15 when ^\s.+protection and incredible damage absorption for cold attacks
action setvariable colda 16 when ^\s.+protection and outstanding damage absorption for cold attacks
action setvariable colda 17 when ^\s.+protection and amazing damage absorption for cold attacks
action setvariable colda 18 when ^\s.+protection and unbelievable damage absorption for cold attacks
action setvariable electricp 1 when ^\s+poor protection and.+absorption for electrical attacks
action setvariable electricp 2 when ^\s+low protection and.+absorption for electrical attacks
action setvariable electricp 3 when ^\s+fair protection and.+absorption for electrical attacks
action setvariable electricp 4 when ^\s+moderate protection and.+absorption for electrical attacks
action setvariable electricp 5 when ^\s+good protection and.+absorption for electrical attacks
action setvariable electricp 6 when ^\s+very good protection and.+absorption for electrical attacks
action setvariable electricp 7 when ^\s+high protection and.+absorption for electrical attacks
action setvariable electricp 8 when ^\s+very high protection and.+absorption for electrical attacks
action setvariable electricp 9 when ^\s+great protection and.+absorption for electrical attacks
action setvariable electricp 10 when ^\s+very great protection and.+absorption for electrical attacks
action setvariable electricp 11 when ^\s+extreme protection and.+absorption for electrical attacks
action setvariable electricp 12 when ^\s+exceptional protection and.+absorption for electrical attacks
action setvariable electricp 13 when ^\s+incredible protection and.+absorption for electrical attacks
action setvariable electricp 14 when ^\s+amazing protection and.+absorption for electrical attacks
action setvariable electricp 15 when ^\s+unbelieve?able protection and.+absorption for electrical attacks
action setvariable electrica 1 when ^\s.+protection and very poor damage absorption for electrical attacks
action setvariable electrica 2 when ^\s.+protection and poor damage absorption for electrical attacks
action setvariable electrica 3 when ^\s.+protection and low damage absorption for electrical attacks
action setvariable electrica 4 when ^\s.+protection and somewhat fair damage absorption for electrical attacks
action setvariable electrica 5 when ^\s.+protection and fair damage absorption for electrical attacks
action setvariable electrica 6 when ^\s.+protection and moderate damage absorption for electrical attacks
action setvariable electrica 7 when ^\s.+protection and good damage absorption for electrical attacks
action setvariable electrica 8 when ^\s.+protection and very good damage absorption for electrical attacks
action setvariable electrica 9 when ^\s.+protection and high damage absorption for electrical attacks
action setvariable electrica 10 when ^\s.+protection and very high damage absorption for electrical attacks
action setvariable electrica 11 when ^\s.+protection and great damage absorption for electrical attacks
action setvariable electrica 12 when ^\s.+protection and very great damage absorption for electrical attacks
action setvariable electrica 13 when ^\s.+protection and extreme damage absorption for electrical attacks
action setvariable electrica 14 when ^\s.+protection and exceptional damage absorption for electrical attacks
action setvariable electrica 15 when ^\s.+protection and incredible damage absorption for electrical attacks
action setvariable electrica 16 when ^\s.+protection and outstanding damage absorption for electrical attacks
action setvariable electrica 17 when ^\s.+protection and amazing damage absorption for electrical attacks
action setvariable electrica 18 when ^\s.+protection and unbelievable damage absorption for electrical attacks

action setvariable construction 1 when ^You are certain that.+(is|are) extremely weak and easily damaged, and
action setvariable construction 2 when ^You are certain that.+(is|are) very delicate and easily damaged, and
action setvariable construction 3 when ^You are certain that.+(is|are) quite fragile and easily damaged, and
action setvariable construction 4 when ^You are certain that.+(is|are) rather flimsy and easily damaged, and
action setvariable construction 5 when ^You are certain that.+(is|are) particularly weak against damage, and
action setvariable construction 6 when ^You are certain that.+(is|are) somewhat unsound against damage, and
action setvariable construction 7 when ^You are certain that.+(is|are) appreciably sus?ceptible to damage, and
action setvariable construction 8 when ^You are certain that.+(is|are) marginally vulnerable to damage, and
action setvariable construction 9 when ^You are certain that.+(is|are) of average construction, and
action setvariable construction 10 when ^You are certain that.+(is|are) a bit safeguarded against damage, and
action setvariable construction 11 when ^You are certain that.+(is|are) rather reinforced against damage, and
action setvariable construction 12 when ^You are certain that.+(is|are) quite guarded against damage, and
action setvariable construction 13 when ^You are certain that.+(is|are) highly protected against damage, and
action setvariable construction 14 when ^You are certain that.+(is|are) very strong against damage, and
action setvariable construction 15 when ^You are certain that.+(is|are) extremely resistant to damage, and
action setvariable construction 16 when ^You are certain that.+(is|are) unusually resilient to damage, and
action setvariable construction 17 when ^You are certain that.+(is|are) nearly impervious to damage, and
action setvariable construction 18 when ^You are certain that.+(is|are) practically invulnerable to damage, and
action setvariable weight $1 when ^You are certain that .+ weighs exactly (\d+) (stones?)\.$
action setvariable wearloc 02-shield when ^This shield is \S+ in size\.$
action setvariable wearloc armor when ^The .+ looks? like (it|they) offers? protection for the following areas:$
action setvariable wearloc brawl when brawling type weapon\.$
action setvariable wearloc 03-head when ^It appears that the .+ can be worn on the head\.$
action setvariable wearloc 04-hair-placed when ^It appears that .+ can be worn in the hair\.$
action setvariable wearloc 06-right eye when ^It appears that .+ can be worn on the right eye\.$
action setvariable wearloc 07-left eye when ^It appears that .+ can be worn on the left eye\.$
action setvariable wearloc 08-ear when ^It appears that .+ can be worn in one ear
action setvariable wearloc 09-ears when ^It appears that .+ can be worn in both ears
action setvariable wearloc 10-nose when ^It appears that .+ can be worn on the nose\.$
action setvariable wearloc 11-neck when ^It appears that .+ can be worn around the neck\.$
action setvariable wearloc 12-body when ^It appears that .+ can be worn\.$
action setvariable wearloc 13-shirt+ when ^It appears that .+ can be worn as a shirt or robe, even with armor\.$
action setvariable wearloc 14-shirt- when ^It appears that .+ can be worn like a shirt or robe\.$
action setvariable wearloc 15-shoulders when ^It appears that .+ can be draped over the shoulders\.$
action setvariable wearloc 16-shoulder when ^It appears that .+ can be slung over one shoulder\.$
action setvariable wearloc 17-back when ^It appears that .+ can be worn on the back\.$
action setvariable wearloc 18-upper arm when ^It appears that .+ can be worn on the upper ?arm\.$
action setvariable wearloc 19-wrist when ^It appears that .+ can be worn on the wrist\.$
action setvariable wearloc 20-hands when ^It appears that .+ can be worn on the hands\.$
action setvariable wearloc 21-finger when ^It appears that .+ can be worn around the finger\.$
action setvariable wearloc 22-waist when ^It appears that .+ can be worn around the waist\.$
action setvariable wearloc 23-belt when ^It appears that .+ can be worn attached to a belt\.$
action setvariable wearloc 23-belt when ^The gem pouch is made for easy storage of gems
action setvariable wearloc 24-tail when ^It appears that .+ can be worn around the tail\.$
action setvariable wearloc 25-pants when ^It appears that .+ can be worn like pants or a skirt\.$
action setvariable wearloc 26-thigh when ^It appears that .+ can be worn on the thigh\.$
action setvariable wearloc 27-ankle when ^It appears that .+ can be worn around the ankle\.$
action setvariable wearloc 28-feet when ^It appears that .+ can be worn on the feet\.$
action setvariable wearloc 1-parry when ^You are certain that the .+ is a purely defensive item\.$
action setvariable appcostk $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:kronars)\.$
action setvariable appcostk 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:kronar)\.$
action setvariable appcostk 0 when ^You are certain that .+ (is|are) worth exactly nothing\.$
action setvariable appcostk 0 when ^There doesn't appear to be anything in the gem pouch\.$
action setvariable appcostl $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:lirums)\.$
action setvariable appcostl 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:lirum)\.$
action setvariable appcostd $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:dokoras)\.$
action setvariable appcostd 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:dokora)\.$

action setvariable ilsize $1;setvariable iwsize $2;setvariable ihsize $3;setvariable csize $4 when ^You compare your .+ with the .+ yardstick several times and are certain the interior length measures (\S+) spans?, the interior width measures (\S+) spans?, the interior height measures (\S+) spans? and the .+ appears capable of holding about (\d+) stones of weight\.$

echo
echo ITEM TYPE:
echo
echo 1:	Weapon: Melee/Thrown
echo
echo 2:	Weapon: Ranged
echo
echo 3:	Weapon: Ammunition
echo
echo 4:	Weapon: Brawling
echo
echo 5:	Weapon: Parry Stick
echo
echo 6:	Shield
echo
echo 7:	Armor
echo
echo 8:	Container (requires yardstick)
echo
echo Enter Type Number:

matchre WeaponApp1 ^1
matchre WeaponApp2 ^2
matchre WeaponApp3 ^3
matchre WeaponApp4 ^4
matchre WeaponApp5 ^5
matchre ShieldApp ^6
matchre ArmorApp ^7
matchre ContainerApp ^8
matchwait

WeaponApp1:
var formtype weapon1
var logtype WeaponMelee
goto appraise

WeaponApp2:
var formtype weapon2
var logtype WeaponRanged
goto appraise

WeaponApp3:
var formtype weapon3
var logtype WeaponRanged
goto appraise

WeaponApp4:
var formtype weapon4
var logtype WeaponMelee
goto appraise

WeaponApp5:
var formtype weapon5
var logtype WeaponMelee
goto appraise

ShieldApp:
var formtype shield
var logtype Shield
goto appraise

ArmorApp:
var formtype armor
var logtype Armor
goto appraise

ContainerApp:
var formtype container
var logtype Container
goto appraise

appraise:
gosub VarBlank
send inventory held
waitforre ^In your (right|left) hand
send look my %1 %2
pause
send appraise my %1 %2 careful
wait
pause .5
if %appcostl > 0 then evalmath appcostk round(%appcostl/0.8)
if %appcostd > 0 then evalmath appcostk round(%appcostd/0.7216)
gosub %formtype

VarBlank:
var sourcetype 10-unknown
var wtype1 ERROR
var wtype2 ERROR
var wtrains ERROR
var wtrains2 ERROR
var brawltype ERROR
var range ERROR
var rangefactor ERROR
var puncture ERROR
var slice ERROR
var impact ERROR
var fire ERROR
var cold ERROR
var electric ERROR
var foi ERROR
var balance ERROR
var power ERROR
var atype ERROR
var covershead no
var coverseyes no
var coversneck no
var coverschest no
var coversabdomen no
var coversback no
var coversarms no
var covershands no
var coverslegs no
var area ERROR
var stype ERROR
var sizefactor ERROR
var smin ERROR
var smax ERROR
var shdhindrance ERROR
var mhindrance ERROR
var shindrance ERROR
var slicep ERROR
var slicea ERROR
var puncturep ERROR
var puncturea ERROR
var impactp ERROR
var impacta ERROR
var firep ERROR
var firea ERROR
var coldp ERROR
var colda ERROR
var electricp ERROR
var electrica ERROR
var construction ERROR
var sumd ERROR
var sumpd ERROR
var sumed ERROR
var meand ERROR
var meanpd ERROR
var meaned ERROR
var sumshield ERROR
var sumpro ERROR
var sumabs ERROR
var sumpdef ERROR
var sumedef ERROR
var sumdef ERROR
var sumhin ERROR
var meanpro ERROR
var meanabs ERROR
var meanpdef ERROR
var meanedef ERROR
var meanhin ERROR
var qpointsw ERROR
var qpointss ERROR
var qpointsa ERROR
var qpointsww ERROR
var qpointssw ERROR
var qpointsaw ERROR
var ilsize ERROR
var iwsize ERROR
var ihsize ERROR
var wearloc -
return

weapon1:
if (matchre ("%wtype1", "(pike|halberd)")) then var wtrains 01-pole
if (matchre ("%wtype1", "(HE)")) then var wtrains 03-LrE
if (matchre ("%wtype1", "(2HE)")) then var wtrains 02-2HE
if (matchre ("%wtype1", "(ME|LtE)")) then var wtrains 04-SE
if (matchre ("%wtype1", "(HB)")) then var wtrains 06-LrBl
if (matchre ("%wtype1", "(2HB)")) then var wtrains 05-2HB
if (matchre ("%wtype1", "(MB|LtBl)")) then var wtrains 07-SBl
if (matchre ("%wtype1", "(QS|SS)")) then var wtrains 10-staff
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype2", "(HT)")) then var wtrains2 08-HT
if (matchre ("%wtype2", "(LT)")) then var wtrains2 09-LT
if %range = pole then var rangefactor 1
if %range = melee then var rangefactor 0
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

if %wtype2 = ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}
if %wtype2 != ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}

weapon2:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(HX|LX)")) then var drawstrength N/A
if (matchre ("%wtype1", "(HX|LX)")) then var adjdraw N/A
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype1", "(sling)")) then var drawstrength N/A
if (matchre ("%wtype1", "(sling)")) then var adjdraw N/A
evalmath qpointsw round((%foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
echo
echo Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon3:
var foi N/A
var balance N/A
var power N/A
var drawstrength N/A
var adjdraw N/A
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammotype 16-Xbow
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammoskill 11-Xbow
if (matchre ("%tapnoun", "(arrows?)")) then var ammotype 19-bow
if (matchre ("%tapnoun", "(arrows?)")) then var ammoskill 12-bow
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammotype 21-sling
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammoskill 13-sling
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Ammo Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Ammo Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon4:
var fire N/A
var cold N/A
var electric N/A
var sumed N/A
var meaned N/A
var balance N/A
var power N/A
if (matchre ("%tap", "(claws|handwraps?|knuckleguards?|knuckles?)")) then var brawltype 3hand
if (matchre ("%tap", "(elbow)")) then var brawltype 2elbow
if (matchre ("%tap", "(knee)")) then var brawltype 4knee
if (matchre ("%tap", "(footwraps?)")) then var brawltype 5foot
if %impact != ERROR then
{
evalmath sumd %puncture + %slice + %impact
evalmath sumpd %puncture + %slice + %impact
evalmath meand round((%sumpd/3),1)
evalmath meanpd round((%sumpd/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
if %impact = ERROR then
{
var impact N/A
evalmath sumd %puncture + %slice
evalmath sumpd %puncture + %slice
evalmath meand round((%sumpd/2),1)
evalmath meanpd round((%sumpd/2),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo
echo Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon5:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
var foi N/A
evalmath qpointsw round((%balance_weight*%balance + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
echo
echo Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

shield:
if %stype = large then var sizefactor 2
if %stype = medium then var sizefactor 1
if %stype = small then var sizefactor 0
evalmath sumshield %smin + %smax
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointss round((%smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor),1)
evalmath qpointssw round((%qpointss/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Shield Protection: %sumshield
echo
echo Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
echo
echo Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Shield Protection: %sumshield
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

armor:
evalmath sumpro %puncturep + %slicep + %impactp + %firep + %coldp + %electricp
evalmath sumabs %puncturea + %slicea + %impacta + %firea + %colda + %electrica
evalmath sumpdef %puncturep + %slicep + %impactp + %puncturea + %slicea + %impacta
evalmath sumedef %firep + %coldp + %electricp + %firea + %colda + %electrica
evalmath sumdef %sumpro + %sumabs
evalmath sumhin %mhindrance + %shindrance
evalmath meanpro round((%sumpro/6),1)
evalmath meanabs round((%sumabs/6),1)
evalmath meanpdef round((%sumpdef/6),1)
evalmath meanedef round((%sumedef/6),1)
evalmath meanhin round((%sumhin/2),1)
evalmath qpointsa round((%sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance),1)
evalmath qpointsaw round((%qpointsa/(%weight_weight*%weight)),1)
if %covershead = yes && %coverseyes = yes && %coversneck = yes then var area 01-head/eyes/neck
if %covershead = yes && %coverseyes = yes && %coversneck = no then var area 02-head/eyes
if %covershead = yes && %coverseyes = no && %coversneck = yes then var area 03-head/neck
if %covershead = yes && %coverseyes = no && %coversneck = no then var area 04-head
if %covershead = no && %coverseyes = yes && %coversneck = no then var area 05-eyes
if %coversneck = yes && %coverschest = yes && %coversback = yes then var area 06-neck/chest/back
if %covershead = no && %coverseyes = no && %coversneck = yes && %coverschest = no && %coversback = no then var area 07-neck
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = yes then var area 08-torso/arms/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = no then var area 09-torso/arms
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = yes then var area 10-torso/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = no then var area 11-torso
if %coverschest = yes && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 12-chest/back
if %coverschest = yes && %coversabdomen = no && %coversback = no && %coversarms = no && %coverslegs = no then var area 13-chest
if %coverschest = no && %coversabdomen = yes && %coversback = no && %coversarms = no && %coverslegs = no then var area 14-abdomen
if %coverschest = no && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 15-back
if %coversarms = yes && %covershands = yes then var area 16-arms/hands
if %coverschest = no && %coversarms = yes && %covershands = no then var area 17-arms
if %coverschest = no && %coversarms = no && %covershands = yes then var area 18-hands
if %coverschest = no && %coversarms = no && %coverslegs = yes then var area 19-legs

echo
echo Stats for %tap
echo
echo Total Armor Protection + Absorption: %sumdef
echo Total Armor Protection: %sumpro (mean: %meanpro)
echo Total Armor Absorption: %sumabs (mean: %meanabs)
echo Total Physical Defense: %sumpdef (mean: %meanpdef)
echo Total Elemental Defense: %sumedef (mean: %meanedef)
echo Total Armor Hindrance: %sumhin (mean: %meanhin)
echo
echo Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
echo
echo Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection + Absorption: %sumdef
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection: %sumpro (mean: %meanpro)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Absorption: %sumabs (mean: %meanabs)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Defense: %sumpdef (mean: %meanpdef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Defense: %sumedef (mean: %meanedef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Hindrance: %sumhin (mean: %meanhin)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

container:
send get my yardstick
waitforre ^You glance|^You get|^You quietly get|^You are already holding that
send open my %1 %2
pause 1
send measure my %1 %2 with yardstick
wait
pause .5
gosub Dimensionset
evalmath volume %ilsize * %iwsize * %ihsize
echo
echo Stats for %tap
echo
echo interior length: %ilsize
echo interior width: %iwsize
echo interior height: %ihsize
echo carrying capacity: %csize stones
echo volume: %volume (%ilsize * %iwsize * %ihsize)
echo
echo
echo %appcostk	%sourcetype	%source	%tap	%ilsize	%iwsize	%ihsize	%csize	%volume	%wearloc	%weight	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%tap	%ilsize	%iwsize	%ihsize	%csize	%volume	%wearloc	%weight	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt interior length: %ilsize
put #log >ItemStatsReader-%logtype-$charactername.txt interior width: %iwsize
put #log >ItemStatsReader-%logtype-$charactername.txt interior height: %ihsize
put #log >ItemStatsReader-%logtype-$charactername.txt carrying capacity: %csize stones
put #log >ItemStatsReader-%logtype-$charactername.txt volume: %volume (%ilsize * %iwsize * %ihsize)
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

Dimensionset:
if %ilsize = one then var ilsize 1
if %ilsize = two then var ilsize 2
if %ilsize = three then var ilsize 3
if %ilsize = four then var ilsize 4
if %ilsize = five then var ilsize 5
if %ilsize = six then var ilsize 6
if %ilsize = seven then var ilsize 7
if %ilsize = eight then var ilsize 8
if %ilsize = nine then var ilsize 9
if %ilsize = ten then var ilsize 10
if %ilsize = eleven then var ilsize 11
if %ilsize = twelve then var ilsize 12
if %ilsize = thirteen then var ilsize 13
if %ilsize = fourteen then var ilsize 14
if %ilsize = fifteen then var ilsize 15
if %ilsize = sixteen then var ilsize 16
if %ilsize = seventeen then var ilsize 17
if %ilsize = eighteen then var ilsize 18
if %ilsize = nineteen then var ilsize 19
if %ilsize = twenty then var ilsize 20
if %ilsize = twenty-one then var ilsize 21
if %ilsize = twenty-two then var ilsize 22
if %ilsize = twenty-three then var ilsize 23
if %ilsize = twenty-four then var ilsize 24
if %ilsize = twenty-five then var ilsize 25
if %ilsize = twenty-six then var ilsize 26
if %ilsize = twenty-seven then var ilsize 27
if %ilsize = twenty-eight then var ilsize 28
if %ilsize = twenty-nine then var ilsize 29
if %ilsize = thirty then var ilsize 30
if %iwsize = one then var iwsize 1
if %iwsize = two then var iwsize 2
if %iwsize = three then var iwsize 3
if %iwsize = four then var iwsize 4
if %iwsize = five then var iwsize 5
if %iwsize = six then var iwsize 6
if %iwsize = seven then var iwsize 7
if %iwsize = eight then var iwsize 8
if %iwsize = nine then var iwsize 9
if %iwsize = ten then var iwsize 10
if %iwsize = eleven then var iwsize 11
if %iwsize = twelve then var iwsize 12
if %iwsize = thirteen then var iwsize 13
if %iwsize = fourteen then var iwsize 14
if %iwsize = fifteen then var iwsize 15
if %iwsize = sixteen then var iwsize 16
if %iwsize = seventeen then var iwsize 17
if %iwsize = eighteen then var iwsize 18
if %iwsize = nineteen then var iwsize 19
if %iwsize = twenty then var iwsize 20
if %iwsize = twenty-one then var iwsize 21
if %iwsize = twenty-two then var iwsize 22
if %iwsize = twenty-three then var iwsize 23
if %iwsize = twenty-four then var iwsize 24
if %iwsize = twenty-five then var iwsize 25
if %iwsize = twenty-six then var iwsize 26
if %iwsize = twenty-seven then var iwsize 27
if %iwsize = twenty-eight then var iwsize 28
if %iwsize = twenty-nine then var iwsize 29
if %iwsize = thirty then var iwsize 30
if %ihsize = one then var ihsize 1
if %ihsize = two then var ihsize 2
if %ihsize = three then var ihsize 3
if %ihsize = four then var ihsize 4
if %ihsize = five then var ihsize 5
if %ihsize = six then var ihsize 6
if %ihsize = seven then var ihsize 7
if %ihsize = eight then var ihsize 8
if %ihsize = nine then var ihsize 9
if %ihsize = ten then var ihsize 10
if %ihsize = eleven then var ihsize 11
if %ihsize = twelve then var ihsize 12
if %ihsize = thirteen then var ihsize 13
if %ihsize = fourteen then var ihsize 14
if %ihsize = fifteen then var ihsize 15
if %ihsize = sixteen then var ihsize 16
if %ihsize = seventeen then var ihsize 17
if %ihsize = eighteen then var ihsize 18
if %ihsize = nineteen then var ihsize 19
if %ihsize = twenty then var ihsize 20
if %ihsize = twenty-one then var ihsize 21
if %ihsize = twenty-two then var ihsize 22
if %ihsize = twenty-three then var ihsize 23
if %ihsize = twenty-four then var ihsize 24
if %ihsize = twenty-five then var ihsize 25
if %ihsize = twenty-six then var ihsize 26
if %ihsize = twenty-seven then var ihsize 27
if %ihsize = twenty-eight then var ihsize 28
if %ihsize = twenty-nine then var ihsize 29
if %ihsize = thirty then var ihsize 30
return

return:
return

end:
put #class racial on
put #play ScriptEnd
put #flash
put #parse SCRIPT DONE
exit

Shop Inventory

########################################################
##STAT QUALITY WEIGHTS
##Edit this section if you want to change the weights that the quality formulas assign to each stat.
##sumpd: physical damage (puncture + slice + impact)
##sumed: elemental damage (fire + cold + electric)
##foi: force of impact (determines likelihood of stunning, unbalancing, and knocking back)
##balance: weapon balance (determines how well a weapon takes advantage of your agility when attacking and parrying)
##power: weapon power/suitability (determines how well a weapon takes advantage of your strength when attacking)
##smin: shield's minimum or "basic" defense (the minimum protection a shield offers, regardless of skill)
##smax: shield's maximum or "full" defense (the maximum protection a shield can offer if you have sufficient shield skill)
##shdhindrance: shield's maneuvering and stealth hindrance (All shields impose equal maneuvering and stealth hindrance, which may be reduced with skill.)
##sumpro: armor's total protection (reduces incoming damage by a flat amount -- best for light hits and requires more armor skill)
##sumabs: armor's total absorption (reduces incoming damage by a static percentage -- best for heavy hits and requires less armor skill)
##sumpdef: armor's total physical defense (protection + absorption)
##sumedef: armor's total elemental defense (protection + absorption)
##mhindrance: armor's maneuvering hindrance (determines penalties to defenses, which may be reduced with skill.)
##shindrance: armor's stealth hindrance (determines penalties to stealth, which may be reduced with skill.)
##construction: item's construction (determines how easily damaged an item is and therefore how often it will need to be repaired)
##weight: the item's weight in stones
##Weapon Quality Formula: %sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor
##Shield Quality Formula: %smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor
##Armor Quality Formula: %sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance
var sumpd_weight 2
var sumed_weight 2
var foi_weight 1
var balance_weight 1.5
var power_weight 1.25
var smin_weight 1.5
var smax_weight 2
var shdhindrance_weight 1
var sumpro_weight 2
var sumabs_weight 2.5
var sumpdef_weight 3
var sumedef_weight 1
var mhindrance_weight 1.5
var shindrance_weight .5
var construction_weight .25
var weight_weight .5
##DEFAULT VALUES
##var sumpd_weight 2
##var sumed_weight 2
##var foi_weight 1
##var balance_weight 1.5
##var power_weight 1.25
##var smin_weight 1.5
##var smax_weight 2
##var shdhindrance_weight 1
##var sumpro_weight 2
##var sumabs_weight 2.5
##var sumpdef_weight 3
##var sumedef_weight 1
##var mhindrance_weight 1.5
##var shindrance_weight .5
##var construction_weight .25
##var weight_weight .5
########################################################

put #class rp on
put #class arrive off
put #class combat off
put #class joust off
put #class racial off
put #class shop off
var appcostl 0
var appcostd 0
var source $roomname

action goto end when ^I could not find what (you|you were) referring to\.$
var numbers first|second|third|fourth|fifth|sixth|seventh|eighth|ninth|tenth|eleventh
var numbers.index 0

action setvariable sourcetype 07-crafting when ^You .+ a quality of \d+, placing it at .+ on the official Trader's Scale\.$|^You.+the \S+ in the .+ is of .+ quality\.$|You see the initials? \"(.+)\" impressed into the surface of the \S+\.
#action setvariable sourcetype altered when ^The .+ looks? to be custom-made\.$
action setvariable source $1 when ^Look:  You see the initials? \"(.+)\" impressed into the surface of the \S+\.$
action setvariable tap $2 when ^You glance at (a|an|some|the) (.+)\.$
action setvariable tap $2 when ^You quietly examine (a|an|some|the) (.+) and notice a price tag indicating
action setvariable short $2 when ^Short: (a|an|some|the) (.+)
action setvariable look $1 when ^Look:  (.+)
action setvariable look - when ^Look:  You see nothing unusual\.$
action setvariable read $1 when ^Read:\s+(.+)$
action setvariable cost $1 when ^Cost:  (\d+)
action setvariable wtype1 01-pike when (is a|are a|and) pike .+ weapon
action setvariable wtype1 02-halberd when (is a|are a|and) halberd .+ weapon
action setvariable wtype1 03-2HE when (is a|are a|and) two-handed edged .+ weapon
action setvariable wtype1 04-HE when (is a|are a|and) heavy edged .+ weapon
action setvariable wtype1 05-ME when (is a|are a|and) medium edged .+ weapon
action setvariable wtype1 06-LtE when (is a|are a|and) light edged .+ weapon
action setvariable wtype1 07-2HB when (is a|are a|and) two-handed blunt .+ weapon
action setvariable wtype1 08-HB when (is a|are a|and) heavy blunt .+ weapon
action setvariable wtype1 09-MB when (is a|are a|and) medium blunt .+ weapon
action setvariable wtype1 10-LtBl when (is a|are a|and) light blunt .+ weapon
action setvariable wtype1 13-QS when (is a|are a|and) quarter staff .+ weapon
action setvariable wtype1 14-SS when (is a|are a|and) short staff .+ weapon
action setvariable wtype1 15-HX when (is|are) a heavy crossbow .+ weapon
action setvariable wtype1 16-LX when (is|are) a light crossbow .+ weapon
action setvariable wtype1 17-comp bow when (is|are) a composite bow .+ weapon
action setvariable wtype1 18-long bow when (is|are) a long bow .+ weapon
action setvariable wtype1 19-short bow when (is|are) a short bow .+ weapon
action setvariable wtype1 20-staff sling when (is|are) a staff sling .+ weapon
action setvariable wtype1 21-sling when (is|are) a sling .+ weapon
action setvariable wtype2 11-HT when (is|are) a heavy thrown and .+ weapon
action setvariable wtype2 12-LT when (is|are) a light thrown and .+ weapon
action setvariable range melee when melee-ranged weapon
action setvariable range pole when pole-ranged weapon
action setvariable puncture 0 when ^\s+no puncture damage
action setvariable puncture 1 when ^\s+dismal puncture damage
action setvariable puncture 2 when ^\s+poor puncture damage
action setvariable puncture 3 when ^\s+low puncture damage
action setvariable puncture 4 when ^\s+somewhat fair puncture damage
action setvariable puncture 5 when ^\s+fair puncture damage
action setvariable puncture 6 when ^\s+somewhat moderate puncture damage
action setvariable puncture 7 when ^\s+moderate puncture damage
action setvariable puncture 8 when ^\s+somewhat heavy puncture damage
action setvariable puncture 9 when ^\s+heavy puncture damage
action setvariable puncture 10 when ^\s+very heavy puncture damage
action setvariable puncture 11 when ^\s+great puncture damage
action setvariable puncture 12 when ^\s+very great puncture damage
action setvariable puncture 13 when ^\s+severe puncture damage
action setvariable puncture 14 when ^\s+very severe puncture damage
action setvariable puncture 15 when ^\s+extreme puncture damage
action setvariable puncture 16 when ^\s+very extreme puncture damage
action setvariable puncture 17 when ^\s+mighty puncture damage
action setvariable puncture 18 when ^\s+very mighty puncture damage
action setvariable puncture 19 when ^\s+bone-crushing puncture damage
action setvariable puncture 20 when ^\s+very bone-crushing puncture damage
action setvariable puncture 21 when ^\s+dev[ae]stating puncture damage
action setvariable puncture 22 when ^\s+very dev[ae]stating puncture damage
action setvariable puncture 23 when ^\s+overwhelming puncture damage
action setvariable puncture 24 when ^\s+annihilating puncture damage
action setvariable puncture 25 when ^\s+obliterating puncture damage
action setvariable puncture 26 when ^\s+demolishing puncture damage
action setvariable puncture 27 when ^\s+catastrophic puncture damage
action setvariable slice 0 when ^\s+no slice damage
action setvariable slice 1 when ^\s+dismal slice damage
action setvariable slice 2 when ^\s+poor slice damage
action setvariable slice 3 when ^\s+low slice damage
action setvariable slice 4 when ^\s+somewhat fair slice damage
action setvariable slice 5 when ^\s+fair slice damage
action setvariable slice 6 when ^\s+somewhat moderate slice damage
action setvariable slice 7 when ^\s+moderate slice damage
action setvariable slice 8 when ^\s+somewhat heavy slice damage
action setvariable slice 9 when ^\s+heavy slice damage
action setvariable slice 10 when ^\s+very heavy slice damage
action setvariable slice 11 when ^\s+great slice damage
action setvariable slice 12 when ^\s+very great slice damage
action setvariable slice 13 when ^\s+severe slice damage
action setvariable slice 14 when ^\s+very severe slice damage
action setvariable slice 15 when ^\s+extreme slice damage
action setvariable slice 16 when ^\s+very extreme slice damage
action setvariable slice 17 when ^\s+mighty slice damage
action setvariable slice 18 when ^\s+very mighty slice damage
action setvariable slice 19 when ^\s+bone-crushing slice damage
action setvariable slice 20 when ^\s+very bone-crushing slice damage
action setvariable slice 21 when ^\s+dev[ae]stating slice damage
action setvariable slice 22 when ^\s+very dev[ae]stating slice damage
action setvariable slice 23 when ^\s+overwhelming slice damage
action setvariable slice 24 when ^\s+annihilating slice damage
action setvariable slice 25 when ^\s+obliterating slice damage
action setvariable slice 26 when ^\s+demolishing slice damage
action setvariable slice 27 when ^\s+catastrophic slice damage
action setvariable impact 0 when ^\s+no impact damage
action setvariable impact 1 when ^\s+dismal impact damage
action setvariable impact 2 when ^\s+poor impact damage
action setvariable impact 3 when ^\s+low impact damage
action setvariable impact 4 when ^\s+somewhat fair impact damage
action setvariable impact 5 when ^\s+fair impact damage
action setvariable impact 6 when ^\s+somewhat moderate impact damage
action setvariable impact 7 when ^\s+moderate impact damage
action setvariable impact 8 when ^\s+somewhat heavy impact damage
action setvariable impact 9 when ^\s+heavy impact damage
action setvariable impact 10 when ^\s+very heavy impact damage
action setvariable impact 11 when ^\s+great impact damage
action setvariable impact 12 when ^\s+very great impact damage
action setvariable impact 13 when ^\s+severe impact damage
action setvariable impact 14 when ^\s+very severe impact damage
action setvariable impact 15 when ^\s+extreme impact damage
action setvariable impact 16 when ^\s+very extreme impact damage
action setvariable impact 17 when ^\s+mighty impact damage
action setvariable impact 18 when ^\s+very mighty impact damage
action setvariable impact 19 when ^\s+bone-crushing impact damage
action setvariable impact 20 when ^\s+very bone-crushing impact damage
action setvariable impact 21 when ^\s+dev[ae]stating impact damage
action setvariable impact 22 when ^\s+very dev[ae]stating impact damage
action setvariable impact 23 when ^\s+overwhelming impact damage
action setvariable impact 24 when ^\s+annihilating impact damage
action setvariable impact 25 when ^\s+obliterating impact damage
action setvariable impact 26 when ^\s+demolishing impact damage
action setvariable impact 27 when ^\s+catastrophic impact damage
action setvariable puncture 0 when ^\s+no puncture damage$
action setvariable puncture 1 when ^\s+a little puncture damage$
action setvariable puncture 2 when ^\s+some puncture damage$
action setvariable puncture 3 when ^\s+quite a bit of puncture damage$
action setvariable puncture 4 when ^\s+a lot of puncture damage$
action setvariable slice 0 when ^\s+no slice damage$
action setvariable slice 1 when ^\s+a little slice damage$
action setvariable slice 2 when ^\s+some slice damage$
action setvariable slice 3 when ^\s+quite a bit of slice damage$
action setvariable slice 4 when ^\s+a lot of slice damage$
action setvariable impact 0 when ^\s+no impact damage$
action setvariable impact 1 when ^\s+a little impact damage$
action setvariable impact 2 when ^\s+some impact damage$
action setvariable impact 3 when ^\s+quite a bit of impact damage$
action setvariable impact 4 when ^\s+a lot of impact damage$
action setvariable fire 0 when ^\s+no fire damage
action setvariable fire 1 when ^\s+dismal fire damage
action setvariable fire 2 when ^\s+poor fire damage
action setvariable fire 3 when ^\s+low fire damage
action setvariable fire 4 when ^\s+somewhat fair fire damage
action setvariable fire 5 when ^\s+fair fire damage
action setvariable fire 6 when ^\s+somewhat moderate fire damage
action setvariable fire 7 when ^\s+moderate fire damage
action setvariable fire 8 when ^\s+somewhat heavy fire damage
action setvariable fire 9 when ^\s+heavy fire damage
action setvariable fire 10 when ^\s+very heavy fire damage
action setvariable fire 11 when ^\s+great fire damage
action setvariable fire 12 when ^\s+very great fire damage
action setvariable fire 13 when ^\s+severe fire damage
action setvariable fire 14 when ^\s+very severe fire damage
action setvariable fire 15 when ^\s+extreme fire damage
action setvariable fire 16 when ^\s+very extreme fire damage
action setvariable fire 17 when ^\s+mighty fire damage
action setvariable fire 18 when ^\s+very mighty fire damage
action setvariable fire 19 when ^\s+bone-crushing fire damage
action setvariable fire 20 when ^\s+very bone-crushing fire damage
action setvariable fire 21 when ^\s+dev[ae]stating fire damage
action setvariable fire 22 when ^\s+very dev[ae]stating fire damage
action setvariable fire 23 when ^\s+overwhelming fire damage
action setvariable fire 24 when ^\s+annihilating fire damage
action setvariable fire 25 when ^\s+obliterating fire damage
action setvariable fire 26 when ^\s+demolishing fire damage
action setvariable fire 27 when ^\s+catastrophic fire damage
action setvariable cold 0 when ^\s+no cold damage
action setvariable cold 1 when ^\s+dismal cold damage
action setvariable cold 2 when ^\s+poor cold damage
action setvariable cold 3 when ^\s+low cold damage
action setvariable cold 4 when ^\s+somewhat fair cold damage
action setvariable cold 5 when ^\s+fair cold damage
action setvariable cold 6 when ^\s+somewhat moderate cold damage
action setvariable cold 7 when ^\s+moderate cold damage
action setvariable cold 8 when ^\s+somewhat heavy cold damage
action setvariable cold 9 when ^\s+heavy cold damage
action setvariable cold 10 when ^\s+very heavy cold damage
action setvariable cold 11 when ^\s+great cold damage
action setvariable cold 12 when ^\s+very great cold damage
action setvariable cold 13 when ^\s+severe cold damage
action setvariable cold 14 when ^\s+very severe cold damage
action setvariable cold 15 when ^\s+extreme cold damage
action setvariable cold 16 when ^\s+very extreme cold damage
action setvariable cold 17 when ^\s+mighty cold damage
action setvariable cold 18 when ^\s+very mighty cold damage
action setvariable cold 19 when ^\s+bone-crushing cold damage
action setvariable cold 20 when ^\s+very bone-crushing cold damage
action setvariable cold 21 when ^\s+dev[ae]stating cold damage
action setvariable cold 22 when ^\s+very dev[ae]stating cold damage
action setvariable cold 23 when ^\s+overwhelming cold damage
action setvariable cold 24 when ^\s+annihilating cold damage
action setvariable cold 25 when ^\s+obliterating cold damage
action setvariable cold 26 when ^\s+demolishing cold damage
action setvariable cold 27 when ^\s+catastrophic cold damage
action setvariable electric 0 when ^\s+no electric damage
action setvariable electric 1 when ^\s+dismal electric damage
action setvariable electric 2 when ^\s+poor electric damage
action setvariable electric 3 when ^\s+low electric damage
action setvariable electric 4 when ^\s+somewhat fair electric damage
action setvariable electric 5 when ^\s+fair electric damage
action setvariable electric 6 when ^\s+somewhat moderate electric damage
action setvariable electric 7 when ^\s+moderate electric damage
action setvariable electric 8 when ^\s+somewhat heavy electric damage
action setvariable electric 9 when ^\s+heavy electric damage
action setvariable electric 10 when ^\s+very heavy electric damage
action setvariable electric 11 when ^\s+great electric damage
action setvariable electric 12 when ^\s+very great electric damage
action setvariable electric 13 when ^\s+severe electric damage
action setvariable electric 14 when ^\s+very severe electric damage
action setvariable electric 15 when ^\s+extreme electric damage
action setvariable electric 16 when ^\s+very extreme electric damage
action setvariable electric 17 when ^\s+mighty electric damage
action setvariable electric 18 when ^\s+very mighty electric damage
action setvariable electric 19 when ^\s+bone-crushing electric damage
action setvariable electric 20 when ^\s+very bone-crushing electric damage
action setvariable electric 21 when ^\s+dev[ae]stating electric damage
action setvariable electric 22 when ^\s+very dev[ae]stating electric damage
action setvariable electric 23 when ^\s+overwhelming electric damage
action setvariable electric 24 when ^\s+annihilating electric damage
action setvariable electric 25 when ^\s+obliterating electric damage
action setvariable electric 26 when ^\s+demolishing electric damage
action setvariable electric 27 when ^\s+catastrophic electric damage
action setvariable fire 0 when ^\s+no fire damage$
action setvariable fire 1 when ^\s+a little fire damage$
action setvariable fire 2 when ^\s+some fire damage$
action setvariable fire 3 when ^\s+quite a bit of fire damage$
action setvariable fire 4 when ^\s+a lot of fire damage$
action setvariable cold 0 when ^\s+no cold damage$
action setvariable cold 1 when ^\s+a little cold damage$
action setvariable cold 2 when ^\s+some cold damage$
action setvariable cold 3 when ^\s+quite a bit of cold damage$
action setvariable cold 4 when ^\s+a lot of cold damage$
action setvariable electric 0 when ^\s+no electric damage$
action setvariable electric 1 when ^\s+a little electric damage$
action setvariable electric 2 when ^\s+some electric damage$
action setvariable electric 3 when ^\s+quite a bit of electric damage$
action setvariable electric 4 when ^\s+a lot of electric damage$
action setvariable foi 0 when (is|are) not designed for improving the force of your attacks\.$
action setvariable foi 1 when (is|are) terribly designed for improving the force of your attacks\.$
action setvariable foi 2 when (is|are) dismally designed for improving the force of your attacks\.$
action setvariable foi 3 when (is|are) poorly designed for improving the force of your attacks\.$
action setvariable foi 4 when (is|are) inadequately designed for improving the force of your attacks\.$
action setvariable foi 5 when (is|are) fairly designed for improving the force of your attacks\.$
action setvariable foi 6 when (is|are) decently designed for improving the force of your attacks\.$
action setvariable foi 7 when (is|are) reasonably designed for improving the force of your attacks\.$
action setvariable foi 8 when (is|are) soundly designed for improving the force of your attacks\.$
action setvariable foi 9 when (is|are) well designed for improving the force of your attacks\.$
action setvariable foi 10 when (is|are) very well designed for improving the force of your attacks\.$
action setvariable foi 11 when (is|are) extremely well designed for improving the force of your attacks\.$
action setvariable foi 12 when (is|are) excellently designed for improving the force of your attacks\.$
action setvariable foi 13 when (is|are) superbly designed for improving the force of your attacks\.$
action setvariable foi 14 when (is|are) incredibly designed for improving the force of your attacks\.$
action setvariable foi 15 when (is|are) amazingly designed for improving the force of your attacks\.$
action setvariable foi 16 when (is|are) unbelieve?ably designed for improving the force of your attacks\.$
action setvariable foi 17 when (is|are) perfectly designed for improving the force of your attacks\.$
action setvariable balance 0 when ^You are certain that .+ (is|are) not balanced and
action setvariable balance 1 when ^You are certain that .+ (is|are) terribly balanced and
action setvariable balance 2 when ^You are certain that .+ (is|are) dismally balanced and
action setvariable balance 3 when ^You are certain that .+ (is|are) poorly balanced and
action setvariable balance 4 when ^You are certain that .+ (is|are) inadequately balanced and
action setvariable balance 5 when ^You are certain that .+ (is|are) fairly balanced and
action setvariable balance 6 when ^You are certain that .+ (is|are) decently balanced and
action setvariable balance 7 when ^You are certain that .+ (is|are) reasonably balanced and
action setvariable balance 8 when ^You are certain that .+ (is|are) soundly balanced and
action setvariable balance 9 when ^You are certain that .+ (is|are) well balanced and
action setvariable balance 10 when ^You are certain that .+ (is|are) very well balanced and
action setvariable balance 11 when ^You are certain that .+ (is|are) extremely well balanced and
action setvariable balance 12 when ^You are certain that .+ (is|are) excellently balanced and
action setvariable balance 13 when ^You are certain that .+ (is|are) superbly balanced and
action setvariable balance 14 when ^You are certain that .+ (is|are) incredibly balanced and
action setvariable balance 15 when ^You are certain that .+ (is|are) amazingly balanced and
action setvariable balance 16 when ^You are certain that .+ (is|are) unbelieve?ably balanced and
action setvariable balance 17 when ^You are certain that .+ (is|are) perfectly balanced and
action setvariable power 0 when ^You are certain that.+balanced and (is|are) not suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 1 when ^You are certain that.+balanced and (is|are) terribly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 2 when ^You are certain that.+balanced and (is|are) dismally suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 3 when ^You are certain that.+balanced and (is|are) poorly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 4 when ^You are certain that.+balanced and (is|are) inadequately suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 5 when ^You are certain that.+balanced and (is|are) fairly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 6 when ^You are certain that.+balanced and (is|are) decently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 7 when ^You are certain that.+balanced and (is|are) reasonably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 8 when ^You are certain that.+balanced and (is|are) soundly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 9 when ^You are certain that.+balanced and (is|are) well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 10 when ^You are certain that.+balanced and (is|are) very well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 11 when ^You are certain that.+balanced and (is|are) extremely well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 12 when ^You are certain that.+balanced and (is|are) excellently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 13 when ^You are certain that.+balanced and (is|are) superbly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 14 when ^You are certain that.+balanced and (is|are) incredibly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 15 when ^You are certain that.+balanced and (is|are) amazingly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 16 when ^You are certain that.+balanced and (is|are) unbelieve?ably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 17 when ^You are certain that.+balanced and (is|are) perfectly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable drawstrength 1 when ^The.+appears set for a draw strength that is extremely low for a bow of this type\.$
action setvariable drawstrength 2 when ^The.+appears set for a draw strength that is very low for a bow of this type\.$
action setvariable drawstrength 3 when ^The.+appears set for a draw strength that is somewhat low for a bow of this type\.$
action setvariable drawstrength 4 when ^The.+appears set for a draw strength that is average for a bow of this type\.$
action setvariable drawstrength 5 when ^The.+appears set for a draw strength that is somewhat high for a bow of this type\.$
action setvariable drawstrength 6 when ^The.+appears set for a draw strength that is very high for a bow of this type\.$
action setvariable drawstrength 7 when ^The.+appears set for a draw strength that is exceptionally high for a bow of this type\.$
action setvariable drawstrength 8 when ^The.+appears set for a draw strength that is extremely high for a bow of this type\.$
action setvariable adjdraw no when ^The.+does not appear to have an adjustable draw strength\.$
action setvariable adjdraw yes when ^The.+appears to have an adjustable draw strength\.$

action setvariable atype 4-plate when (is|are) plate armor\.$
action setvariable atype 3-brigandine when (is|are) brigandine armor\.$
action setvariable atype 2-chain when (is|are) chain armor\.$
action setvariable atype 1-light when (is|are) light armor\.$
action setvariable covershead yes when ^\s+head$
action setvariable coverseyes yes when ^\s+(right|left) eye$
action setvariable coversneck yes when ^\s+neck$
action setvariable coverschest yes when ^\s+chest$
action setvariable coversabdomen yes when ^\s+abdomen$
action setvariable coversback yes when ^\s+back$
action setvariable coversarms yes when ^\s+(right|left) arm$
action setvariable covershands yes when ^\s+(right|left) hand$
action setvariable coverslegs yes when ^\s+(right|left) leg$

action setvariable stype $1 when is (\w+) in size\.$
action setvariable shdhindrance 0 when ^You are certain that it imposes no maneuvering hindrance\.$
action setvariable shdhindrance 1 when ^You are certain that it imposes insignificant maneuvering hindrance\.$
action setvariable shdhindrance 2 when ^You are certain that it imposes trivial maneuvering hindrance\.$
action setvariable shdhindrance 3 when ^You are certain that it imposes light maneuvering hindrance\.$
action setvariable shdhindrance 4 when ^You are certain that it imposes minor maneuvering hindrance\.$
action setvariable shdhindrance 5 when ^You are certain that it imposes fair maneuvering hindrance\.$
action setvariable shdhindrance 6 when ^You are certain that it imposes mild maneuvering hindrance\.$
action setvariable shdhindrance 7 when ^You are certain that it imposes moderate maneuvering hindrance\.$
action setvariable shdhindrance 8 when ^You are certain that it imposes noticeable maneuvering hindrance\.$
action setvariable shdhindrance 9 when ^You are certain that it imposes high maneuvering hindrance\.$
action setvariable shdhindrance 10 when ^You are certain that it imposes significant maneuvering hindrance\.$
action setvariable shdhindrance 11 when ^You are certain that it imposes great maneuvering hindrance\.$
action setvariable shdhindrance 12 when ^You are certain that it imposes extreme maneuvering hindrance\.$
action setvariable shdhindrance 13 when ^You are certain that it imposes debilitating maneuvering hindrance\.$
action setvariable shdhindrance 14 when ^You are certain that it imposes overwhelming maneuvering hindrance\.$
action setvariable shdhindrance 15 when ^You are certain that it imposes insane maneuvering hindrance\.$
action setvariable smin 0 when ^You are certain that .+ offers no to
action setvariable smin 1 when ^You are certain that .+ offers extremely terrible to
action setvariable smin 2 when ^You are certain that .+ offers terrible to
action setvariable smin 3 when ^You are certain that .+ offers dismal to
action setvariable smin 4 when ^You are certain that .+ offers very poor to
action setvariable smin 5 when ^You are certain that .+ offers poor to
action setvariable smin 6 when ^You are certain that .+ offers rather low to
action setvariable smin 7 when ^You are certain that .+ offers low to
action setvariable smin 8 when ^You are certain that .+ offers fair to
action setvariable smin 9 when ^You are certain that .+ offers better than fair to
action setvariable smin 10 when ^You are certain that .+ offers moderate to
action setvariable smin 11 when ^You are certain that .+ offers moderately good to
action setvariable smin 12 when ^You are certain that .+ offers good to
action setvariable smin 13 when ^You are certain that .+ offers very good to
action setvariable smin 14 when ^You are certain that .+ offers high to
action setvariable smin 15 when ^You are certain that .+ offers very high to
action setvariable smin 16 when ^You are certain that .+ offers great to
action setvariable smin 17 when ^You are certain that .+ offers very great to
action setvariable smin 18 when ^You are certain that .+ offers exceptional to
action setvariable smin 19 when ^You are certain that .+ offers very exceptional to
action setvariable smin 20 when ^You are certain that .+ offers impressive to
action setvariable smin 21 when ^You are certain that .+ offers very impressive to
action setvariable smin 22 when ^You are certain that .+ offers amazing to
action setvariable smin 23 when ^You are certain that .+ offers incredible to
action setvariable smin 24 when ^You are certain that .+ offers tremendous to
action setvariable smin 25 when ^You are certain that .+ offers unbelievable to
action setvariable smin 26 when ^You are certain that .+ offers god-like to
action setvariable smax 0 when ^You are certain that.+offers.+ to no protection\.$
action setvariable smax 1 when ^You are certain that.+offers.+ to extremely terrible protection\.$
action setvariable smax 2 when ^You are certain that.+offers.+ to terrible protection\.$
action setvariable smax 3 when ^You are certain that.+offers.+ to dismal protection\.$
action setvariable smax 4 when ^You are certain that.+offers.+ to very poor protection\.$
action setvariable smax 5 when ^You are certain that.+offers.+ to poor protection\.$
action setvariable smax 6 when ^You are certain that.+offers.+ to rather low protection\.$
action setvariable smax 7 when ^You are certain that.+offers.+ to low protection\.$
action setvariable smax 8 when ^You are certain that.+offers.+ to fair protection\.$
action setvariable smax 9 when ^You are certain that.+offers.+ to better than fair protection\.$
action setvariable smax 10 when ^You are certain that.+offers.+ to moderate protection\.$
action setvariable smax 11 when ^You are certain that.+offers.+ to moderately good protection\.$
action setvariable smax 12 when ^You are certain that.+offers.+ to good protection\.$
action setvariable smax 13 when ^You are certain that.+offers.+ to very good protection\.$
action setvariable smax 14 when ^You are certain that.+offers.+ to high protection\.$
action setvariable smax 15 when ^You are certain that.+offers.+ to very high protection\.$
action setvariable smax 16 when ^You are certain that.+offers.+ to great protection\.$
action setvariable smax 17 when ^You are certain that.+offers.+ to very great protection\.$
action setvariable smax 18 when ^You are certain that.+offers.+ to exceptional protection\.$
action setvariable smax 19 when ^You are certain that.+offers.+ to very exceptional protection\.$
action setvariable smax 20 when ^You are certain that.+offers.+ to impressive protection\.$
action setvariable smax 21 when ^You are certain that.+offers.+ to very impressive protection\.$
action setvariable smax 22 when ^You are certain that.+offers.+ to amazing protection\.$
action setvariable smax 23 when ^You are certain that.+offers.+ to incredible protection\.$
action setvariable smax 24 when ^You are certain that.+offers.+ to tremendous protection\.$
action setvariable smax 25 when ^You are certain that.+offers.+ to unbelievable protection\.$
action setvariable smax 26 when ^You are certain that.+offers.+ to god-like protection\.$

action setvariable mhindrance 0 when ^You feel certain that .+ appears? to impose no maneuvering hindrance
action setvariable mhindrance 1 when ^You feel certain that .+ appears? to impose insignificant maneuvering hindrance
action setvariable mhindrance 2 when ^You feel certain that .+ appears? to impose trivial maneuvering hindrance
action setvariable mhindrance 3 when ^You feel certain that .+ appears? to impose light maneuvering hindrance
action setvariable mhindrance 4 when ^You feel certain that .+ appears? to impose minor maneuvering hindrance
action setvariable mhindrance 5 when ^You feel certain that .+ appears? to impose fair maneuvering hindrance
action setvariable mhindrance 6 when ^You feel certain that .+ appears? to impose mild maneuvering hindrance
action setvariable mhindrance 7 when ^You feel certain that .+ appears? to impose moderate maneuvering hindrance
action setvariable mhindrance 8 when ^You feel certain that .+ appears? to impose noticeable maneuvering hindrance
action setvariable mhindrance 9 when ^You feel certain that .+ appears? to impose high maneuvering hindrance
action setvariable mhindrance 10 when ^You feel certain that .+ appears? to impose significant maneuvering hindrance
action setvariable mhindrance 11 when ^You feel certain that .+ appears? to impose great maneuvering hindrance
action setvariable mhindrance 12 when ^You feel certain that .+ appears? to impose extreme maneuvering hindrance
action setvariable mhindrance 13 when ^You feel certain that .+ appears? to impose debilitating maneuvering hindrance
action setvariable mhindrance 14 when ^You feel certain that .+ appears? to impose overwhelming maneuvering hindrance
action setvariable mhindrance 15 when ^You feel certain that .+ appears? to impose insane maneuvering hindrance
action setvariable shindrance 0 when ^You feel certain that.+maneuvering hindrance and no stealth hindrance, offering:
action setvariable shindrance 1 when ^You feel certain that.+maneuvering hindrance and insignificant stealth hindrance, offering:
action setvariable shindrance 2 when ^You feel certain that.+maneuvering hindrance and trivial stealth hindrance, offering:
action setvariable shindrance 3 when ^You feel certain that.+maneuvering hindrance and light stealth hindrance, offering:
action setvariable shindrance 4 when ^You feel certain that.+maneuvering hindrance and minor stealth hindrance, offering:
action setvariable shindrance 5 when ^You feel certain that.+maneuvering hindrance and fair stealth hindrance, offering:
action setvariable shindrance 6 when ^You feel certain that.+maneuvering hindrance and mild stealth hindrance, offering:
action setvariable shindrance 7 when ^You feel certain that.+maneuvering hindrance and moderate stealth hindrance, offering:
action setvariable shindrance 8 when ^You feel certain that.+maneuvering hindrance and noticeable stealth hindrance, offering:
action setvariable shindrance 9 when ^You feel certain that.+maneuvering hindrance and high stealth hindrance, offering:
action setvariable shindrance 10 when ^You feel certain that.+maneuvering hindrance and significant stealth hindrance, offering:
action setvariable shindrance 11 when ^You feel certain that.+maneuvering hindrance and great stealth hindrance, offering:
action setvariable shindrance 12 when ^You feel certain that.+maneuvering hindrance and extreme stealth hindrance, offering:
action setvariable shindrance 13 when ^You feel certain that.+maneuvering hindrance and debilitating stealth hindrance, offering:
action setvariable shindrance 14 when ^You feel certain that.+maneuvering hindrance and overwhelming stealth hindrance, offering:
action setvariable shindrance 15 when ^You feel certain that.+maneuvering hindrance and insane stealth hindrance, offering:
action setvariable puncturep 1 when ^\s+poor protection and.+absorption for puncture attacks
action setvariable puncturep 2 when ^\s+low protection and.+absorption for puncture attacks
action setvariable puncturep 3 when ^\s+fair protection and.+absorption for puncture attacks
action setvariable puncturep 4 when ^\s+moderate protection and.+absorption for puncture attacks
action setvariable puncturep 5 when ^\s+good protection and.+absorption for puncture attacks
action setvariable puncturep 6 when ^\s+very good protection and.+absorption for puncture attacks
action setvariable puncturep 7 when ^\s+high protection and.+absorption for puncture attacks
action setvariable puncturep 8 when ^\s+very high protection and.+absorption for puncture attacks
action setvariable puncturep 9 when ^\s+great protection and.+absorption for puncture attacks
action setvariable puncturep 10 when ^\s+very great protection and.+absorption for puncture attacks
action setvariable puncturep 11 when ^\s+extreme protection and.+absorption for puncture attacks
action setvariable puncturep 12 when ^\s+exceptional protection and.+absorption for puncture attacks
action setvariable puncturep 13 when ^\s+incredible protection and.+absorption for puncture attacks
action setvariable puncturep 14 when ^\s+amazing protection and.+absorption for puncture attacks
action setvariable puncturep 15 when ^\s+unbelieve?able protection and.+absorption for puncture attacks
action setvariable puncturea 1 when ^\s.+protection and very poor damage absorption for puncture attacks
action setvariable puncturea 2 when ^\s.+protection and poor damage absorption for puncture attacks
action setvariable puncturea 3 when ^\s.+protection and low damage absorption for puncture attacks
action setvariable puncturea 4 when ^\s.+protection and somewhat fair damage absorption for puncture attacks
action setvariable puncturea 5 when ^\s.+protection and fair damage absorption for puncture attacks
action setvariable puncturea 6 when ^\s.+protection and moderate damage absorption for puncture attacks
action setvariable puncturea 7 when ^\s.+protection and good damage absorption for puncture attacks
action setvariable puncturea 8 when ^\s.+protection and very good damage absorption for puncture attacks
action setvariable puncturea 9 when ^\s.+protection and high damage absorption for puncture attacks
action setvariable puncturea 10 when ^\s.+protection and very high damage absorption for puncture attacks
action setvariable puncturea 11 when ^\s.+protection and great damage absorption for puncture attacks
action setvariable puncturea 12 when ^\s.+protection and very great damage absorption for puncture attacks
action setvariable puncturea 13 when ^\s.+protection and extreme damage absorption for puncture attacks
action setvariable puncturea 14 when ^\s.+protection and exceptional damage absorption for puncture attacks
action setvariable puncturea 15 when ^\s.+protection and incredible damage absorption for puncture attacks
action setvariable puncturea 16 when ^\s.+protection and outstanding damage absorption for puncture attacks
action setvariable puncturea 17 when ^\s.+protection and amazing damage absorption for puncture attacks
action setvariable puncturea 18 when ^\s.+protection and unbelievable damage absorption for puncture attacks
action setvariable slicep 1 when ^\s+poor protection and.+absorption for slice attacks
action setvariable slicep 2 when ^\s+low protection and.+absorption for slice attacks
action setvariable slicep 3 when ^\s+fair protection and.+absorption for slice attacks
action setvariable slicep 4 when ^\s+moderate protection and.+absorption for slice attacks
action setvariable slicep 5 when ^\s+good protection and.+absorption for slice attacks
action setvariable slicep 6 when ^\s+very good protection and.+absorption for slice attacks
action setvariable slicep 7 when ^\s+high protection and.+absorption for slice attacks
action setvariable slicep 8 when ^\s+very high protection and.+absorption for slice attacks
action setvariable slicep 9 when ^\s+great protection and.+absorption for slice attacks
action setvariable slicep 10 when ^\s+very great protection and.+absorption for slice attacks
action setvariable slicep 11 when ^\s+extreme protection and.+absorption for slice attacks
action setvariable slicep 12 when ^\s+exceptional protection and.+absorption for slice attacks
action setvariable slicep 13 when ^\s+incredible protection and.+absorption for slice attacks
action setvariable slicep 14 when ^\s+amazing protection and.+absorption for slice attacks
action setvariable slicep 15 when ^\s+unbelieve?able protection and.+absorption for slice attacks
action setvariable slicea 1 when ^\s.+protection and very poor damage absorption for slice attacks
action setvariable slicea 2 when ^\s.+protection and poor damage absorption for slice attacks
action setvariable slicea 3 when ^\s.+protection and low damage absorption for slice attacks
action setvariable slicea 4 when ^\s.+protection and somewhat fair damage absorption for slice attacks
action setvariable slicea 5 when ^\s.+protection and fair damage absorption for slice attacks
action setvariable slicea 6 when ^\s.+protection and moderate damage absorption for slice attacks
action setvariable slicea 7 when ^\s.+protection and good damage absorption for slice attacks
action setvariable slicea 8 when ^\s.+protection and very good damage absorption for slice attacks
action setvariable slicea 9 when ^\s.+protection and high damage absorption for slice attacks
action setvariable slicea 10 when ^\s.+protection and very high damage absorption for slice attacks
action setvariable slicea 11 when ^\s.+protection and great damage absorption for slice attacks
action setvariable slicea 12 when ^\s.+protection and very great damage absorption for slice attacks
action setvariable slicea 13 when ^\s.+protection and extreme damage absorption for slice attacks
action setvariable slicea 14 when ^\s.+protection and exceptional damage absorption for slice attacks
action setvariable slicea 15 when ^\s.+protection and incredible damage absorption for slice attacks
action setvariable slicea 16 when ^\s.+protection and outstanding damage absorption for slice attacks
action setvariable slicea 17 when ^\s.+protection and amazing damage absorption for slice attacks
action setvariable slicea 18 when ^\s.+protection and unbelievable damage absorption for slice attacks
action setvariable impactp 1 when ^\s+poor protection and.+absorption for impact attacks
action setvariable impactp 2 when ^\s+low protection and.+absorption for impact attacks
action setvariable impactp 3 when ^\s+fair protection and.+absorption for impact attacks
action setvariable impactp 4 when ^\s+moderate protection and.+absorption for impact attacks
action setvariable impactp 5 when ^\s+good protection and.+absorption for impact attacks
action setvariable impactp 6 when ^\s+very good protection and.+absorption for impact attacks
action setvariable impactp 7 when ^\s+high protection and.+absorption for impact attacks
action setvariable impactp 8 when ^\s+very high protection and.+absorption for impact attacks
action setvariable impactp 9 when ^\s+great protection and.+absorption for impact attacks
action setvariable impactp 10 when ^\s+very great protection and.+absorption for impact attacks
action setvariable impactp 11 when ^\s+extreme protection and.+absorption for impact attacks
action setvariable impactp 12 when ^\s+exceptional protection and.+absorption for impact attacks
action setvariable impactp 13 when ^\s+incredible protection and.+absorption for impact attacks
action setvariable impactp 14 when ^\s+amazing protection and.+absorption for impact attacks
action setvariable impactp 15 when ^\s+unbelieve?able protection and.+absorption for impact attacks
action setvariable impacta 1 when ^\s.+protection and very poor damage absorption for impact attacks
action setvariable impacta 2 when ^\s.+protection and poor damage absorption for impact attacks
action setvariable impacta 3 when ^\s.+protection and low damage absorption for impact attacks
action setvariable impacta 4 when ^\s.+protection and somewhat fair damage absorption for impact attacks
action setvariable impacta 5 when ^\s.+protection and fair damage absorption for impact attacks
action setvariable impacta 6 when ^\s.+protection and moderate damage absorption for impact attacks
action setvariable impacta 7 when ^\s.+protection and good damage absorption for impact attacks
action setvariable impacta 8 when ^\s.+protection and very good damage absorption for impact attacks
action setvariable impacta 9 when ^\s.+protection and high damage absorption for impact attacks
action setvariable impacta 10 when ^\s.+protection and very high damage absorption for impact attacks
action setvariable impacta 11 when ^\s.+protection and great damage absorption for impact attacks
action setvariable impacta 12 when ^\s.+protection and very great damage absorption for impact attacks
action setvariable impacta 13 when ^\s.+protection and extreme damage absorption for impact attacks
action setvariable impacta 14 when ^\s.+protection and exceptional damage absorption for impact attacks
action setvariable impacta 15 when ^\s.+protection and incredible damage absorption for impact attacks
action setvariable impacta 16 when ^\s.+protection and outstanding damage absorption for impact attacks
action setvariable impacta 17 when ^\s.+protection and amazing damage absorption for impact attacks
action setvariable impacta 18 when ^\s.+protection and unbelievable damage absorption for impact attacks
action setvariable firep 1 when ^\s+poor protection and.+absorption for fire attacks
action setvariable firep 2 when ^\s+low protection and.+absorption for fire attacks
action setvariable firep 3 when ^\s+fair protection and.+absorption for fire attacks
action setvariable firep 4 when ^\s+moderate protection and.+absorption for fire attacks
action setvariable firep 5 when ^\s+good protection and.+absorption for fire attacks
action setvariable firep 6 when ^\s+very good protection and.+absorption for fire attacks
action setvariable firep 7 when ^\s+high protection and.+absorption for fire attacks
action setvariable firep 8 when ^\s+very high protection and.+absorption for fire attacks
action setvariable firep 9 when ^\s+great protection and.+absorption for fire attacks
action setvariable firep 10 when ^\s+very great protection and.+absorption for fire attacks
action setvariable firep 11 when ^\s+extreme protection and.+absorption for fire attacks
action setvariable firep 12 when ^\s+exceptional protection and.+absorption for fire attacks
action setvariable firep 13 when ^\s+incredible protection and.+absorption for fire attacks
action setvariable firep 14 when ^\s+amazing protection and.+absorption for fire attacks
action setvariable firep 15 when ^\s+unbelieve?able protection and.+absorption for fire attacks
action setvariable firea 1 when ^\s.+protection and very poor damage absorption for fire attacks
action setvariable firea 2 when ^\s.+protection and poor damage absorption for fire attacks
action setvariable firea 3 when ^\s.+protection and low damage absorption for fire attacks
action setvariable firea 4 when ^\s.+protection and somewhat fair damage absorption for fire attacks
action setvariable firea 5 when ^\s.+protection and fair damage absorption for fire attacks
action setvariable firea 6 when ^\s.+protection and moderate damage absorption for fire attacks
action setvariable firea 7 when ^\s.+protection and good damage absorption for fire attacks
action setvariable firea 8 when ^\s.+protection and very good damage absorption for fire attacks
action setvariable firea 9 when ^\s.+protection and high damage absorption for fire attacks
action setvariable firea 10 when ^\s.+protection and very high damage absorption for fire attacks
action setvariable firea 11 when ^\s.+protection and great damage absorption for fire attacks
action setvariable firea 12 when ^\s.+protection and very great damage absorption for fire attacks
action setvariable firea 13 when ^\s.+protection and extreme damage absorption for fire attacks
action setvariable firea 14 when ^\s.+protection and exceptional damage absorption for fire attacks
action setvariable firea 15 when ^\s.+protection and incredible damage absorption for fire attacks
action setvariable firea 16 when ^\s.+protection and outstanding damage absorption for fire attacks
action setvariable firea 17 when ^\s.+protection and amazing damage absorption for fire attacks
action setvariable firea 18 when ^\s.+protection and unbelievable damage absorption for fire attacks
action setvariable coldp 1 when ^\s+poor protection and.+absorption for cold attacks
action setvariable coldp 2 when ^\s+low protection and.+absorption for cold attacks
action setvariable coldp 3 when ^\s+fair protection and.+absorption for cold attacks
action setvariable coldp 4 when ^\s+moderate protection and.+absorption for cold attacks
action setvariable coldp 5 when ^\s+good protection and.+absorption for cold attacks
action setvariable coldp 6 when ^\s+very good protection and.+absorption for cold attacks
action setvariable coldp 7 when ^\s+high protection and.+absorption for cold attacks
action setvariable coldp 8 when ^\s+very high protection and.+absorption for cold attacks
action setvariable coldp 9 when ^\s+great protection and.+absorption for cold attacks
action setvariable coldp 10 when ^\s+very great protection and.+absorption for cold attacks
action setvariable coldp 11 when ^\s+extreme protection and.+absorption for cold attacks
action setvariable coldp 12 when ^\s+exceptional protection and.+absorption for cold attacks
action setvariable coldp 13 when ^\s+incredible protection and.+absorption for cold attacks
action setvariable coldp 14 when ^\s+amazing protection and.+absorption for cold attacks
action setvariable coldp 15 when ^\s+unbelieve?able protection and.+absorption for cold attacks
action setvariable colda 1 when ^\s.+protection and very poor damage absorption for cold attacks
action setvariable colda 2 when ^\s.+protection and poor damage absorption for cold attacks
action setvariable colda 3 when ^\s.+protection and low damage absorption for cold attacks
action setvariable colda 4 when ^\s.+protection and somewhat fair damage absorption for cold attacks
action setvariable colda 5 when ^\s.+protection and fair damage absorption for cold attacks
action setvariable colda 6 when ^\s.+protection and moderate damage absorption for cold attacks
action setvariable colda 7 when ^\s.+protection and good damage absorption for cold attacks
action setvariable colda 8 when ^\s.+protection and very good damage absorption for cold attacks
action setvariable colda 9 when ^\s.+protection and high damage absorption for cold attacks
action setvariable colda 10 when ^\s.+protection and very high damage absorption for cold attacks
action setvariable colda 11 when ^\s.+protection and great damage absorption for cold attacks
action setvariable colda 12 when ^\s.+protection and very great damage absorption for cold attacks
action setvariable colda 13 when ^\s.+protection and extreme damage absorption for cold attacks
action setvariable colda 14 when ^\s.+protection and exceptional damage absorption for cold attacks
action setvariable colda 15 when ^\s.+protection and incredible damage absorption for cold attacks
action setvariable colda 16 when ^\s.+protection and outstanding damage absorption for cold attacks
action setvariable colda 17 when ^\s.+protection and amazing damage absorption for cold attacks
action setvariable colda 18 when ^\s.+protection and unbelievable damage absorption for cold attacks
action setvariable electricp 1 when ^\s+poor protection and.+absorption for electrical attacks
action setvariable electricp 2 when ^\s+low protection and.+absorption for electrical attacks
action setvariable electricp 3 when ^\s+fair protection and.+absorption for electrical attacks
action setvariable electricp 4 when ^\s+moderate protection and.+absorption for electrical attacks
action setvariable electricp 5 when ^\s+good protection and.+absorption for electrical attacks
action setvariable electricp 6 when ^\s+very good protection and.+absorption for electrical attacks
action setvariable electricp 7 when ^\s+high protection and.+absorption for electrical attacks
action setvariable electricp 8 when ^\s+very high protection and.+absorption for electrical attacks
action setvariable electricp 9 when ^\s+great protection and.+absorption for electrical attacks
action setvariable electricp 10 when ^\s+very great protection and.+absorption for electrical attacks
action setvariable electricp 11 when ^\s+extreme protection and.+absorption for electrical attacks
action setvariable electricp 12 when ^\s+exceptional protection and.+absorption for electrical attacks
action setvariable electricp 13 when ^\s+incredible protection and.+absorption for electrical attacks
action setvariable electricp 14 when ^\s+amazing protection and.+absorption for electrical attacks
action setvariable electricp 15 when ^\s+unbelieve?able protection and.+absorption for electrical attacks
action setvariable electrica 1 when ^\s.+protection and very poor damage absorption for electrical attacks
action setvariable electrica 2 when ^\s.+protection and poor damage absorption for electrical attacks
action setvariable electrica 3 when ^\s.+protection and low damage absorption for electrical attacks
action setvariable electrica 4 when ^\s.+protection and somewhat fair damage absorption for electrical attacks
action setvariable electrica 5 when ^\s.+protection and fair damage absorption for electrical attacks
action setvariable electrica 6 when ^\s.+protection and moderate damage absorption for electrical attacks
action setvariable electrica 7 when ^\s.+protection and good damage absorption for electrical attacks
action setvariable electrica 8 when ^\s.+protection and very good damage absorption for electrical attacks
action setvariable electrica 9 when ^\s.+protection and high damage absorption for electrical attacks
action setvariable electrica 10 when ^\s.+protection and very high damage absorption for electrical attacks
action setvariable electrica 11 when ^\s.+protection and great damage absorption for electrical attacks
action setvariable electrica 12 when ^\s.+protection and very great damage absorption for electrical attacks
action setvariable electrica 13 when ^\s.+protection and extreme damage absorption for electrical attacks
action setvariable electrica 14 when ^\s.+protection and exceptional damage absorption for electrical attacks
action setvariable electrica 15 when ^\s.+protection and incredible damage absorption for electrical attacks
action setvariable electrica 16 when ^\s.+protection and outstanding damage absorption for electrical attacks
action setvariable electrica 17 when ^\s.+protection and amazing damage absorption for electrical attacks
action setvariable electrica 18 when ^\s.+protection and unbelievable damage absorption for electrical attacks

action setvariable construction 1 when ^You are certain that.+(is|are) extremely weak and easily damaged, and
action setvariable construction 2 when ^You are certain that.+(is|are) very delicate and easily damaged, and
action setvariable construction 3 when ^You are certain that.+(is|are) quite fragile and easily damaged, and
action setvariable construction 4 when ^You are certain that.+(is|are) rather flimsy and easily damaged, and
action setvariable construction 5 when ^You are certain that.+(is|are) particularly weak against damage, and
action setvariable construction 6 when ^You are certain that.+(is|are) somewhat unsound against damage, and
action setvariable construction 7 when ^You are certain that.+(is|are) appreciably sus?ceptible to damage, and
action setvariable construction 8 when ^You are certain that.+(is|are) marginally vulnerable to damage, and
action setvariable construction 9 when ^You are certain that.+(is|are) of average construction, and
action setvariable construction 10 when ^You are certain that.+(is|are) a bit safeguarded against damage, and
action setvariable construction 11 when ^You are certain that.+(is|are) rather reinforced against damage, and
action setvariable construction 12 when ^You are certain that.+(is|are) quite guarded against damage, and
action setvariable construction 13 when ^You are certain that.+(is|are) highly protected against damage, and
action setvariable construction 14 when ^You are certain that.+(is|are) very strong against damage, and
action setvariable construction 15 when ^You are certain that.+(is|are) extremely resistant to damage, and
action setvariable construction 16 when ^You are certain that.+(is|are) unusually resilient to damage, and
action setvariable construction 17 when ^You are certain that.+(is|are) nearly impervious to damage, and
action setvariable construction 18 when ^You are certain that.+(is|are) practically invulnerable to damage, and
action setvariable weight $1 when ^You are certain that .+ weighs exactly (\d+) (stones?)\.$
action setvariable appcostk $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:kronars)\.$
action setvariable appcostk 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:kronar)\.$
action setvariable appcostk 0 when ^You are certain that .+ (is|are) worth exactly nothing\.$
action setvariable appcostk 0 when ^There doesn't appear to be anything in the gem pouch\.$
action setvariable appcostl $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:lirums)\.$
action setvariable appcostl 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:lirum)\.$
action setvariable appcostd $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:dokoras)\.$
action setvariable appcostd 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:dokora)\.$

echo
echo ITEM TYPE:
echo
echo 1:	Weapon: Melee/Thrown
echo
echo 2:	Weapon: Ranged
echo
echo 3:	Weapon: Ammunition
echo
echo 4:	Weapon: Brawling
echo
echo 5:	Weapon: Parry Stick
echo
echo 6:	Shield
echo
echo 7:	Armor
echo
echo Enter Type Number:

matchre WeaponApp1 ^1
matchre WeaponApp2 ^2
matchre WeaponApp3 ^3
matchre WeaponApp4 ^4
matchre WeaponApp5 ^5
matchre ShieldApp ^6
matchre ArmorApp ^7
matchwait

WeaponApp1:
gosub VarBlank
var formtype weapon1
var logtype WeaponMelee
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto WeaponApp1

WeaponApp2:
gosub VarBlank
var formtype weapon2
var logtype WeaponRanged
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto WeaponApp2

WeaponApp3:
gosub VarBlank
var formtype weapon3
var logtype WeaponRanged
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto WeaponApp3

WeaponApp4:
gosub VarBlank
var formtype weapon4
var logtype WeaponMelee
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto WeaponApp4

WeaponApp5:
gosub VarBlank
var formtype weapon5
var logtype WeaponMelee
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto WeaponApp5

ShieldApp:
gosub VarBlank
var formtype shield
var logtype Shield
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto ShieldApp

ArmorApp:
gosub VarBlank
var formtype armor
var logtype Armor
var number %numbers(%numbers.index)
gosub appraise
gosub %formtype
math numbers.index add 1
if %numbers.index > 11 then goto end
goto ArmorApp

appraise:
send glance %number %1 $preposition $shop
waitforre ^You glance|^You quietly
send shop %number %1 $preposition $shop
waitforre ^Short:
send appraise %number %1 $preposition $shop careful
wait
pause 1
if %appcostl > 0 then evalmath appcostk round(%appcostl/0.8)
if %appcostd > 0 then evalmath appcostk round(%appcostd/0.7216)
return

VarBlank:
var source $roomname
var sourcetype NOTSET
var wtype1 ERROR
var wtype2 ERROR
var wtrains ERROR
var wtrains2 ERROR
var brawltype ERROR
var range ERROR
var rangefactor ERROR
var puncture ERROR
var slice ERROR
var impact ERROR
var fire ERROR
var cold ERROR
var electric ERROR
var foi ERROR
var balance ERROR
var power ERROR
var atype ERROR
var covershead no
var coverseyes no
var coversneck no
var coverschest no
var coversabdomen no
var coversback no
var coversarms no
var covershands no
var coverslegs no
var area ERROR
var stype ERROR
var sizefactor ERROR
var smin ERROR
var smax ERROR
var shdhindrance ERROR
var mhindrance ERROR
var shindrance ERROR
var slicep ERROR
var slicea ERROR
var puncturep ERROR
var puncturea ERROR
var impactp ERROR
var impacta ERROR
var firep ERROR
var firea ERROR
var coldp ERROR
var colda ERROR
var electricp ERROR
var electrica ERROR
var construction ERROR
var sumd ERROR
var sumpd ERROR
var sumed ERROR
var meand ERROR
var meanpd ERROR
var meaned ERROR
var sumshield ERROR
var sumpro ERROR
var sumabs ERROR
var sumpdef ERROR
var sumedef ERROR
var sumdef ERROR
var sumhin ERROR
var meanpro ERROR
var meanabs ERROR
var meanpdef ERROR
var meanedef ERROR
var meanhin ERROR
var qpointsw ERROR
var qpointss ERROR
var qpointsa ERROR
var qpointsww ERROR
var qpointssw ERROR
var qpointsaw ERROR
return

weapon1:
if (matchre ("%wtype1", "(pike|halberd)")) then var wtrains 01-pole
if (matchre ("%wtype1", "(HE)")) then var wtrains 03-LrE
if (matchre ("%wtype1", "(2HE)")) then var wtrains 02-2HE
if (matchre ("%wtype1", "(ME|LtE)")) then var wtrains 04-SE
if (matchre ("%wtype1", "(HB)")) then var wtrains 06-LrBl
if (matchre ("%wtype1", "(2HB)")) then var wtrains 05-2HB
if (matchre ("%wtype1", "(MB|LtBl)")) then var wtrains 07-SBl
if (matchre ("%wtype1", "(QS|SS)")) then var wtrains 10-staff
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype2", "(HT)")) then var wtrains2 08-HT
if (matchre ("%wtype2", "(LT)")) then var wtrains2 09-LT
if %range = pole then var rangefactor 1
if %range = melee then var rangefactor 0
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

if %wtype2 = ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return
}
if %wtype2 != ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return
}

weapon2:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(HX|LX)")) then var drawstrength N/A
if (matchre ("%wtype1", "(HX|LX)")) then var adjdraw N/A
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype1", "(sling)")) then var drawstrength N/A
if (matchre ("%wtype1", "(sling)")) then var adjdraw N/A
evalmath qpointsw round((%foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
echo
echo Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

weapon3:
var foi N/A
var balance N/A
var power N/A
var drawstrength N/A
var adjdraw N/A
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammotype 16-Xbow
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammoskill 11-Xbow
if (matchre ("%tapnoun", "(arrows?)")) then var ammotype 19-bow
if (matchre ("%tapnoun", "(arrows?)")) then var ammoskill 12-bow
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammotype 21-sling
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammoskill 13-sling
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Ammo Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Ammo Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

weapon4:
var fire N/A
var cold N/A
var electric N/A
var sumed N/A
var meaned N/A
var balance N/A
var power N/A
if (matchre ("%tap", "(claws|handwraps?|knuckleguards?|knuckles?)")) then var brawltype 3hand
if (matchre ("%tap", "(elbow)")) then var brawltype 2elbow
if (matchre ("%tap", "(knee)")) then var brawltype 4knee
if (matchre ("%tap", "(footwraps?)")) then var brawltype 5foot
if %impact != ERROR then
{
evalmath sumd %puncture + %slice + %impact
evalmath sumpd %puncture + %slice + %impact
evalmath meand round((%sumpd/3),1)
evalmath meanpd round((%sumpd/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
if %impact = ERROR then
{
var impact N/A
evalmath sumd %puncture + %slice
evalmath sumpd %puncture + %slice
evalmath meand round((%sumpd/2),1)
evalmath meanpd round((%sumpd/2),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo
echo Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

weapon5:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
var foi N/A
evalmath qpointsw round((%balance_weight*%balance + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
echo
echo Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

shield:
if %stype = large then var sizefactor 2
if %stype = medium then var sizefactor 1
if %stype = small then var sizefactor 0
evalmath sumshield %smin + %smax
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointss round((%smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor),1)
evalmath qpointssw round((%qpointss/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Shield Protection: %sumshield
echo
echo Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
echo
echo Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Shield Protection: %sumshield
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

armor:
evalmath sumpro %puncturep + %slicep + %impactp + %firep + %coldp + %electricp
evalmath sumabs %puncturea + %slicea + %impacta + %firea + %colda + %electrica
evalmath sumpdef %puncturep + %slicep + %impactp + %puncturea + %slicea + %impacta
evalmath sumedef %firep + %coldp + %electricp + %firea + %colda + %electrica
evalmath sumdef %sumpro + %sumabs
evalmath sumhin %mhindrance + %shindrance
evalmath meanpro round((%sumpro/6),1)
evalmath meanabs round((%sumabs/6),1)
evalmath meanpdef round((%sumpdef/6),1)
evalmath meanedef round((%sumedef/6),1)
evalmath meanhin round((%sumhin/2),1)
evalmath qpointsa round((%sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance),1)
evalmath qpointsaw round((%qpointsa/(%weight_weight*%weight)),1)
if %covershead = yes && %coverseyes = yes && %coversneck = yes then var area 01-head/eyes/neck
if %covershead = yes && %coverseyes = yes && %coversneck = no then var area 02-head/eyes
if %covershead = yes && %coverseyes = no && %coversneck = yes then var area 03-head/neck
if %covershead = yes && %coverseyes = no && %coversneck = no then var area 04-head
if %covershead = no && %coverseyes = yes && %coversneck = no then var area 05-eyes
if %coversneck = yes && %coverschest = yes && %coversback = yes then var area 06-neck/chest/back
if %covershead = no && %coverseyes = no && %coversneck = yes && %coverschest = no && %coversback = no then var area 07-neck
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = yes then var area 08-torso/arms/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = no then var area 09-torso/arms
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = yes then var area 10-torso/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = no then var area 11-torso
if %coverschest = yes && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 12-chest/back
if %coverschest = yes && %coversabdomen = no && %coversback = no && %coversarms = no && %coverslegs = no then var area 13-chest
if %coverschest = no && %coversabdomen = yes && %coversback = no && %coversarms = no && %coverslegs = no then var area 14-abdomen
if %coverschest = no && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 15-back
if %coversarms = yes && %covershands = yes then var area 16-arms/hands
if %coverschest = no && %coversarms = yes && %covershands = no then var area 17-arms
if %coverschest = no && %coversarms = no && %covershands = yes then var area 18-hands
if %coverschest = no && %coversarms = no && %coverslegs = yes then var area 19-legs

echo
echo Stats for %tap
echo
echo Total Armor Protection + Absorption: %sumdef
echo Total Armor Protection: %sumpro (mean: %meanpro)
echo Total Armor Absorption: %sumabs (mean: %meanabs)
echo Total Physical Defense: %sumpdef (mean: %meanpdef)
echo Total Elemental Defense: %sumedef (mean: %meanedef)
echo Total Armor Hindrance: %sumhin (mean: %meanhin)
echo
echo Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
echo
echo Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection + Absorption: %sumdef
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection: %sumpro (mean: %meanpro)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Absorption: %sumabs (mean: %meanabs)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Defense: %sumpdef (mean: %meanpdef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Defense: %sumedef (mean: %meanedef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Hindrance: %sumhin (mean: %meanhin)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
return

end:
send shop
waitfor [Type SHOP [ITEM] to see what's on it.]
send shop $shop
waitfor [Type SHOP [GOOD] to see some details about it.]
echo Last noun: %1 %2 ($preposition $shop)
put #class racial on
put #play ScriptEnd
put #flash
put #parse SCRIPT DONE
exit

Shown Items

########################################################
##STAT QUALITY WEIGHTS
##Edit this section if you want to change the weights that the quality formulas assign to each stat.
##sumpd: physical damage (puncture + slice + impact)
##sumed: elemental damage (fire + cold + electric)
##foi: force of impact (determines likelihood of stunning, unbalancing, and knocking back)
##balance: weapon balance (determines how well a weapon takes advantage of your agility when attacking and parrying)
##power: weapon power/suitability (determines how well a weapon takes advantage of your strength when attacking)
##smin: shield's minimum or "basic" defense (the minimum protection a shield offers, regardless of skill)
##smax: shield's maximum or "full" defense (the maximum protection a shield can offer if you have sufficient shield skill)
##shdhindrance: shield's maneuvering and stealth hindrance (All shields impose equal maneuvering and stealth hindrance, which may be reduced with skill.)
##sumpro: armor's total protection (reduces incoming damage by a flat amount -- best for light hits and requires more armor skill)
##sumabs: armor's total absorption (reduces incoming damage by a static percentage -- best for heavy hits and requires less armor skill)
##sumpdef: armor's total physical defense (protection + absorption)
##sumedef: armor's total elemental defense (protection + absorption)
##mhindrance: armor's maneuvering hindrance (determines penalties to defenses, which may be reduced with skill.)
##shindrance: armor's stealth hindrance (determines penalties to stealth, which may be reduced with skill.)
##construction: item's construction (determines how easily damaged an item is and therefore how often it will need to be repaired)
##weight: the item's weight in stones
##Weapon Quality Formula: %sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor
##Shield Quality Formula: %smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor
##Armor Quality Formula: %sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance
var sumpd_weight 2
var sumed_weight 2
var foi_weight 1
var balance_weight 1.5
var power_weight 1.25
var smin_weight 1.5
var smax_weight 2
var shdhindrance_weight 1
var sumpro_weight 2
var sumabs_weight 2.5
var sumpdef_weight 3
var sumedef_weight 1
var mhindrance_weight 1.5
var shindrance_weight .5
var construction_weight .25
var weight_weight .5
##DEFAULT VALUES
##var sumpd_weight 2
##var sumed_weight 2
##var foi_weight 1
##var balance_weight 1.5
##var power_weight 1.25
##var smin_weight 1.5
##var smax_weight 2
##var shdhindrance_weight 1
##var sumpro_weight 2
##var sumabs_weight 2.5
##var sumpdef_weight 3
##var sumedef_weight 1
##var mhindrance_weight 1.5
##var shindrance_weight .5
##var construction_weight .25
##var weight_weight .5
########################################################
put #class joust off
put #class racial off
var short $lefthand
var noun $lefthandnoun
var short $righthand
var noun $righthandnoun
var appcostl 0
var appcostd 0
var source %1

action setvariable sourcetype 07-crafting when ^You .+ a quality of \d+, placing it at .+ on the official Trader's Scale\.$|^You.+the \S+ in the .+ is of .+ quality\.$|You see the initials? \"(.+)\" impressed into the surface of the \S+\.
action setvariable sourcetype altered when ^The .+ looks? to be custom-made\.$
action setvariable source $1 when ^\w+ shows you.+You see the initials? \"(.+)\" impressed into the surface of the mark\.$
action setvariable tap $2;setvariable look - when ^\w+ shows you (an?|some|the) (.+)\.$
action setvariable tap $2;setvariable look $3 when ^\w+ shows you (an?|some|the) (.+?)\.\s+(.+)
action setvariable wtype1 01-pike when (is a|are a|and) pike .+ weapon
action setvariable wtype1 02-halberd when (is a|are a|and) halberd .+ weapon
action setvariable wtype1 03-2HE when (is a|are a|and) two-handed edged .+ weapon
action setvariable wtype1 04-HE when (is a|are a|and) heavy edged .+ weapon
action setvariable wtype1 05-ME when (is a|are a|and) medium edged .+ weapon
action setvariable wtype1 06-LtE when (is a|are a|and) light edged .+ weapon
action setvariable wtype1 07-2HB when (is a|are a|and) two-handed blunt .+ weapon
action setvariable wtype1 08-HB when (is a|are a|and) heavy blunt .+ weapon
action setvariable wtype1 09-MB when (is a|are a|and) medium blunt .+ weapon
action setvariable wtype1 10-LtBl when (is a|are a|and) light blunt .+ weapon
action setvariable wtype1 13-QS when (is a|are a|and) quarter staff .+ weapon
action setvariable wtype1 14-SS when (is a|are a|and) short staff .+ weapon
action setvariable wtype1 15-HX when (is|are) a heavy crossbow .+ weapon
action setvariable wtype1 16-LX when (is|are) a light crossbow .+ weapon
action setvariable wtype1 17-comp bow when (is|are) a composite bow .+ weapon
action setvariable wtype1 18-long bow when (is|are) a long bow .+ weapon
action setvariable wtype1 19-short bow when (is|are) a short bow .+ weapon
action setvariable wtype1 20-staff sling when (is|are) a staff sling .+ weapon
action setvariable wtype1 21-sling when (is|are) a sling .+ weapon
action setvariable wtype2 11-HT when (is|are) a heavy thrown and .+ weapon
action setvariable wtype2 12-LT when (is|are) a light thrown and .+ weapon
action setvariable range melee when melee-ranged weapon
action setvariable range pole when pole-ranged weapon
action setvariable puncture 0 when ^\s+no puncture damage
action setvariable puncture 1 when ^\s+dismal puncture damage
action setvariable puncture 2 when ^\s+poor puncture damage
action setvariable puncture 3 when ^\s+low puncture damage
action setvariable puncture 4 when ^\s+somewhat fair puncture damage
action setvariable puncture 5 when ^\s+fair puncture damage
action setvariable puncture 6 when ^\s+somewhat moderate puncture damage
action setvariable puncture 7 when ^\s+moderate puncture damage
action setvariable puncture 8 when ^\s+somewhat heavy puncture damage
action setvariable puncture 9 when ^\s+heavy puncture damage
action setvariable puncture 10 when ^\s+very heavy puncture damage
action setvariable puncture 11 when ^\s+great puncture damage
action setvariable puncture 12 when ^\s+very great puncture damage
action setvariable puncture 13 when ^\s+severe puncture damage
action setvariable puncture 14 when ^\s+very severe puncture damage
action setvariable puncture 15 when ^\s+extreme puncture damage
action setvariable puncture 16 when ^\s+very extreme puncture damage
action setvariable puncture 17 when ^\s+mighty puncture damage
action setvariable puncture 18 when ^\s+very mighty puncture damage
action setvariable puncture 19 when ^\s+bone-crushing puncture damage
action setvariable puncture 20 when ^\s+very bone-crushing puncture damage
action setvariable puncture 21 when ^\s+dev[ae]stating puncture damage
action setvariable puncture 22 when ^\s+very dev[ae]stating puncture damage
action setvariable puncture 23 when ^\s+overwhelming puncture damage
action setvariable puncture 24 when ^\s+annihilating puncture damage
action setvariable puncture 25 when ^\s+obliterating puncture damage
action setvariable puncture 26 when ^\s+demolishing puncture damage
action setvariable puncture 27 when ^\s+catastrophic puncture damage
action setvariable slice 0 when ^\s+no slice damage
action setvariable slice 1 when ^\s+dismal slice damage
action setvariable slice 2 when ^\s+poor slice damage
action setvariable slice 3 when ^\s+low slice damage
action setvariable slice 4 when ^\s+somewhat fair slice damage
action setvariable slice 5 when ^\s+fair slice damage
action setvariable slice 6 when ^\s+somewhat moderate slice damage
action setvariable slice 7 when ^\s+moderate slice damage
action setvariable slice 8 when ^\s+somewhat heavy slice damage
action setvariable slice 9 when ^\s+heavy slice damage
action setvariable slice 10 when ^\s+very heavy slice damage
action setvariable slice 11 when ^\s+great slice damage
action setvariable slice 12 when ^\s+very great slice damage
action setvariable slice 13 when ^\s+severe slice damage
action setvariable slice 14 when ^\s+very severe slice damage
action setvariable slice 15 when ^\s+extreme slice damage
action setvariable slice 16 when ^\s+very extreme slice damage
action setvariable slice 17 when ^\s+mighty slice damage
action setvariable slice 18 when ^\s+very mighty slice damage
action setvariable slice 19 when ^\s+bone-crushing slice damage
action setvariable slice 20 when ^\s+very bone-crushing slice damage
action setvariable slice 21 when ^\s+dev[ae]stating slice damage
action setvariable slice 22 when ^\s+very dev[ae]stating slice damage
action setvariable slice 23 when ^\s+overwhelming slice damage
action setvariable slice 24 when ^\s+annihilating slice damage
action setvariable slice 25 when ^\s+obliterating slice damage
action setvariable slice 26 when ^\s+demolishing slice damage
action setvariable slice 27 when ^\s+catastrophic slice damage
action setvariable impact 0 when ^\s+no impact damage
action setvariable impact 1 when ^\s+dismal impact damage
action setvariable impact 2 when ^\s+poor impact damage
action setvariable impact 3 when ^\s+low impact damage
action setvariable impact 4 when ^\s+somewhat fair impact damage
action setvariable impact 5 when ^\s+fair impact damage
action setvariable impact 6 when ^\s+somewhat moderate impact damage
action setvariable impact 7 when ^\s+moderate impact damage
action setvariable impact 8 when ^\s+somewhat heavy impact damage
action setvariable impact 9 when ^\s+heavy impact damage
action setvariable impact 10 when ^\s+very heavy impact damage
action setvariable impact 11 when ^\s+great impact damage
action setvariable impact 12 when ^\s+very great impact damage
action setvariable impact 13 when ^\s+severe impact damage
action setvariable impact 14 when ^\s+very severe impact damage
action setvariable impact 15 when ^\s+extreme impact damage
action setvariable impact 16 when ^\s+very extreme impact damage
action setvariable impact 17 when ^\s+mighty impact damage
action setvariable impact 18 when ^\s+very mighty impact damage
action setvariable impact 19 when ^\s+bone-crushing impact damage
action setvariable impact 20 when ^\s+very bone-crushing impact damage
action setvariable impact 21 when ^\s+dev[ae]stating impact damage
action setvariable impact 22 when ^\s+very dev[ae]stating impact damage
action setvariable impact 23 when ^\s+overwhelming impact damage
action setvariable impact 24 when ^\s+annihilating impact damage
action setvariable impact 25 when ^\s+obliterating impact damage
action setvariable impact 26 when ^\s+demolishing impact damage
action setvariable impact 27 when ^\s+catastrophic impact damage
action setvariable puncture 0 when ^\s+no puncture damage$
action setvariable puncture 1 when ^\s+a little puncture damage$
action setvariable puncture 2 when ^\s+some puncture damage$
action setvariable puncture 3 when ^\s+quite a bit of puncture damage$
action setvariable puncture 4 when ^\s+a lot of puncture damage$
action setvariable slice 0 when ^\s+no slice damage$
action setvariable slice 1 when ^\s+a little slice damage$
action setvariable slice 2 when ^\s+some slice damage$
action setvariable slice 3 when ^\s+quite a bit of slice damage$
action setvariable slice 4 when ^\s+a lot of slice damage$
action setvariable impact 0 when ^\s+no impact damage$
action setvariable impact 1 when ^\s+a little impact damage$
action setvariable impact 2 when ^\s+some impact damage$
action setvariable impact 3 when ^\s+quite a bit of impact damage$
action setvariable impact 4 when ^\s+a lot of impact damage$
action setvariable fire 0 when ^\s+no fire damage
action setvariable fire 1 when ^\s+dismal fire damage
action setvariable fire 2 when ^\s+poor fire damage
action setvariable fire 3 when ^\s+low fire damage
action setvariable fire 4 when ^\s+somewhat fair fire damage
action setvariable fire 5 when ^\s+fair fire damage
action setvariable fire 6 when ^\s+somewhat moderate fire damage
action setvariable fire 7 when ^\s+moderate fire damage
action setvariable fire 8 when ^\s+somewhat heavy fire damage
action setvariable fire 9 when ^\s+heavy fire damage
action setvariable fire 10 when ^\s+very heavy fire damage
action setvariable fire 11 when ^\s+great fire damage
action setvariable fire 12 when ^\s+very great fire damage
action setvariable fire 13 when ^\s+severe fire damage
action setvariable fire 14 when ^\s+very severe fire damage
action setvariable fire 15 when ^\s+extreme fire damage
action setvariable fire 16 when ^\s+very extreme fire damage
action setvariable fire 17 when ^\s+mighty fire damage
action setvariable fire 18 when ^\s+very mighty fire damage
action setvariable fire 19 when ^\s+bone-crushing fire damage
action setvariable fire 20 when ^\s+very bone-crushing fire damage
action setvariable fire 21 when ^\s+dev[ae]stating fire damage
action setvariable fire 22 when ^\s+very dev[ae]stating fire damage
action setvariable fire 23 when ^\s+overwhelming fire damage
action setvariable fire 24 when ^\s+annihilating fire damage
action setvariable fire 25 when ^\s+obliterating fire damage
action setvariable fire 26 when ^\s+demolishing fire damage
action setvariable fire 27 when ^\s+catastrophic fire damage
action setvariable cold 0 when ^\s+no cold damage
action setvariable cold 1 when ^\s+dismal cold damage
action setvariable cold 2 when ^\s+poor cold damage
action setvariable cold 3 when ^\s+low cold damage
action setvariable cold 4 when ^\s+somewhat fair cold damage
action setvariable cold 5 when ^\s+fair cold damage
action setvariable cold 6 when ^\s+somewhat moderate cold damage
action setvariable cold 7 when ^\s+moderate cold damage
action setvariable cold 8 when ^\s+somewhat heavy cold damage
action setvariable cold 9 when ^\s+heavy cold damage
action setvariable cold 10 when ^\s+very heavy cold damage
action setvariable cold 11 when ^\s+great cold damage
action setvariable cold 12 when ^\s+very great cold damage
action setvariable cold 13 when ^\s+severe cold damage
action setvariable cold 14 when ^\s+very severe cold damage
action setvariable cold 15 when ^\s+extreme cold damage
action setvariable cold 16 when ^\s+very extreme cold damage
action setvariable cold 17 when ^\s+mighty cold damage
action setvariable cold 18 when ^\s+very mighty cold damage
action setvariable cold 19 when ^\s+bone-crushing cold damage
action setvariable cold 20 when ^\s+very bone-crushing cold damage
action setvariable cold 21 when ^\s+dev[ae]stating cold damage
action setvariable cold 22 when ^\s+very dev[ae]stating cold damage
action setvariable cold 23 when ^\s+overwhelming cold damage
action setvariable cold 24 when ^\s+annihilating cold damage
action setvariable cold 25 when ^\s+obliterating cold damage
action setvariable cold 26 when ^\s+demolishing cold damage
action setvariable cold 27 when ^\s+catastrophic cold damage
action setvariable electric 0 when ^\s+no electric damage
action setvariable electric 1 when ^\s+dismal electric damage
action setvariable electric 2 when ^\s+poor electric damage
action setvariable electric 3 when ^\s+low electric damage
action setvariable electric 4 when ^\s+somewhat fair electric damage
action setvariable electric 5 when ^\s+fair electric damage
action setvariable electric 6 when ^\s+somewhat moderate electric damage
action setvariable electric 7 when ^\s+moderate electric damage
action setvariable electric 8 when ^\s+somewhat heavy electric damage
action setvariable electric 9 when ^\s+heavy electric damage
action setvariable electric 10 when ^\s+very heavy electric damage
action setvariable electric 11 when ^\s+great electric damage
action setvariable electric 12 when ^\s+very great electric damage
action setvariable electric 13 when ^\s+severe electric damage
action setvariable electric 14 when ^\s+very severe electric damage
action setvariable electric 15 when ^\s+extreme electric damage
action setvariable electric 16 when ^\s+very extreme electric damage
action setvariable electric 17 when ^\s+mighty electric damage
action setvariable electric 18 when ^\s+very mighty electric damage
action setvariable electric 19 when ^\s+bone-crushing electric damage
action setvariable electric 20 when ^\s+very bone-crushing electric damage
action setvariable electric 21 when ^\s+dev[ae]stating electric damage
action setvariable electric 22 when ^\s+very dev[ae]stating electric damage
action setvariable electric 23 when ^\s+overwhelming electric damage
action setvariable electric 24 when ^\s+annihilating electric damage
action setvariable electric 25 when ^\s+obliterating electric damage
action setvariable electric 26 when ^\s+demolishing electric damage
action setvariable electric 27 when ^\s+catastrophic electric damage
action setvariable fire 0 when ^\s+no fire damage$
action setvariable fire 1 when ^\s+a little fire damage$
action setvariable fire 2 when ^\s+some fire damage$
action setvariable fire 3 when ^\s+quite a bit of fire damage$
action setvariable fire 4 when ^\s+a lot of fire damage$
action setvariable cold 0 when ^\s+no cold damage$
action setvariable cold 1 when ^\s+a little cold damage$
action setvariable cold 2 when ^\s+some cold damage$
action setvariable cold 3 when ^\s+quite a bit of cold damage$
action setvariable cold 4 when ^\s+a lot of cold damage$
action setvariable electric 0 when ^\s+no electric damage$
action setvariable electric 1 when ^\s+a little electric damage$
action setvariable electric 2 when ^\s+some electric damage$
action setvariable electric 3 when ^\s+quite a bit of electric damage$
action setvariable electric 4 when ^\s+a lot of electric damage$
action setvariable foi 0 when (is|are) not designed for improving the force of your attacks\.$
action setvariable foi 1 when (is|are) terribly designed for improving the force of your attacks\.$
action setvariable foi 2 when (is|are) dismally designed for improving the force of your attacks\.$
action setvariable foi 3 when (is|are) poorly designed for improving the force of your attacks\.$
action setvariable foi 4 when (is|are) inadequately designed for improving the force of your attacks\.$
action setvariable foi 5 when (is|are) fairly designed for improving the force of your attacks\.$
action setvariable foi 6 when (is|are) decently designed for improving the force of your attacks\.$
action setvariable foi 7 when (is|are) reasonably designed for improving the force of your attacks\.$
action setvariable foi 8 when (is|are) soundly designed for improving the force of your attacks\.$
action setvariable foi 9 when (is|are) well designed for improving the force of your attacks\.$
action setvariable foi 10 when (is|are) very well designed for improving the force of your attacks\.$
action setvariable foi 11 when (is|are) extremely well designed for improving the force of your attacks\.$
action setvariable foi 12 when (is|are) excellently designed for improving the force of your attacks\.$
action setvariable foi 13 when (is|are) superbly designed for improving the force of your attacks\.$
action setvariable foi 14 when (is|are) incredibly designed for improving the force of your attacks\.$
action setvariable foi 15 when (is|are) amazingly designed for improving the force of your attacks\.$
action setvariable foi 16 when (is|are) unbelieve?ably designed for improving the force of your attacks\.$
action setvariable foi 17 when (is|are) perfectly designed for improving the force of your attacks\.$
action setvariable balance 0 when ^You are certain that .+ (is|are) not balanced and
action setvariable balance 1 when ^You are certain that .+ (is|are) terribly balanced and
action setvariable balance 2 when ^You are certain that .+ (is|are) dismally balanced and
action setvariable balance 3 when ^You are certain that .+ (is|are) poorly balanced and
action setvariable balance 4 when ^You are certain that .+ (is|are) inadequately balanced and
action setvariable balance 5 when ^You are certain that .+ (is|are) fairly balanced and
action setvariable balance 6 when ^You are certain that .+ (is|are) decently balanced and
action setvariable balance 7 when ^You are certain that .+ (is|are) reasonably balanced and
action setvariable balance 8 when ^You are certain that .+ (is|are) soundly balanced and
action setvariable balance 9 when ^You are certain that .+ (is|are) well balanced and
action setvariable balance 10 when ^You are certain that .+ (is|are) very well balanced and
action setvariable balance 11 when ^You are certain that .+ (is|are) extremely well balanced and
action setvariable balance 12 when ^You are certain that .+ (is|are) excellently balanced and
action setvariable balance 13 when ^You are certain that .+ (is|are) superbly balanced and
action setvariable balance 14 when ^You are certain that .+ (is|are) incredibly balanced and
action setvariable balance 15 when ^You are certain that .+ (is|are) amazingly balanced and
action setvariable balance 16 when ^You are certain that .+ (is|are) unbelieve?ably balanced and
action setvariable balance 17 when ^You are certain that .+ (is|are) perfectly balanced and
action setvariable power 0 when ^You are certain that.+balanced and (is|are) not suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 1 when ^You are certain that.+balanced and (is|are) terribly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 2 when ^You are certain that.+balanced and (is|are) dismally suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 3 when ^You are certain that.+balanced and (is|are) poorly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 4 when ^You are certain that.+balanced and (is|are) inadequately suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 5 when ^You are certain that.+balanced and (is|are) fairly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 6 when ^You are certain that.+balanced and (is|are) decently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 7 when ^You are certain that.+balanced and (is|are) reasonably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 8 when ^You are certain that.+balanced and (is|are) soundly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 9 when ^You are certain that.+balanced and (is|are) well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 10 when ^You are certain that.+balanced and (is|are) very well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 11 when ^You are certain that.+balanced and (is|are) extremely well suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 12 when ^You are certain that.+balanced and (is|are) excellently suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 13 when ^You are certain that.+balanced and (is|are) superbly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 14 when ^You are certain that.+balanced and (is|are) incredibly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 15 when ^You are certain that.+balanced and (is|are) amazingly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 16 when ^You are certain that.+balanced and (is|are) unbelieve?ably suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable power 17 when ^You are certain that.+balanced and (is|are) perfectly suited (to gaining extra|for adding) attack power from (your|its draw) strength.$
action setvariable drawstrength 1 when ^The.+appears set for a draw strength that is extremely low for a bow of this type\.$
action setvariable drawstrength 2 when ^The.+appears set for a draw strength that is very low for a bow of this type\.$
action setvariable drawstrength 3 when ^The.+appears set for a draw strength that is somewhat low for a bow of this type\.$
action setvariable drawstrength 4 when ^The.+appears set for a draw strength that is average for a bow of this type\.$
action setvariable drawstrength 5 when ^The.+appears set for a draw strength that is somewhat high for a bow of this type\.$
action setvariable drawstrength 6 when ^The.+appears set for a draw strength that is very high for a bow of this type\.$
action setvariable drawstrength 7 when ^The.+appears set for a draw strength that is exceptionally high for a bow of this type\.$
action setvariable drawstrength 8 when ^The.+appears set for a draw strength that is extremely high for a bow of this type\.$
action setvariable adjdraw no when ^The.+does not appear to have an adjustable draw strength\.$
action setvariable adjdraw yes when ^The.+appears to have an adjustable draw strength\.$

action setvariable atype 4-plate when (is|are) plate armor\.$
action setvariable atype 3-brigandine when (is|are) brigandine armor\.$
action setvariable atype 2-chain when (is|are) chain armor\.$
action setvariable atype 1-light when (is|are) light armor\.$
action setvariable covershead yes when ^\s+head$
action setvariable coverseyes yes when ^\s+(right|left) eye$
action setvariable coversneck yes when ^\s+neck$
action setvariable coverschest yes when ^\s+chest$
action setvariable coversabdomen yes when ^\s+abdomen$
action setvariable coversback yes when ^\s+back$
action setvariable coversarms yes when ^\s+(right|left) arm$
action setvariable covershands yes when ^\s+(right|left) hand$
action setvariable coverslegs yes when ^\s+(right|left) leg$

action setvariable stype $1 when is (\w+) in size\.$
action setvariable shdhindrance 0 when ^You are certain that it imposes no maneuvering hindrance\.$
action setvariable shdhindrance 1 when ^You are certain that it imposes insignificant maneuvering hindrance\.$
action setvariable shdhindrance 2 when ^You are certain that it imposes trivial maneuvering hindrance\.$
action setvariable shdhindrance 3 when ^You are certain that it imposes light maneuvering hindrance\.$
action setvariable shdhindrance 4 when ^You are certain that it imposes minor maneuvering hindrance\.$
action setvariable shdhindrance 5 when ^You are certain that it imposes fair maneuvering hindrance\.$
action setvariable shdhindrance 6 when ^You are certain that it imposes mild maneuvering hindrance\.$
action setvariable shdhindrance 7 when ^You are certain that it imposes moderate maneuvering hindrance\.$
action setvariable shdhindrance 8 when ^You are certain that it imposes noticeable maneuvering hindrance\.$
action setvariable shdhindrance 9 when ^You are certain that it imposes high maneuvering hindrance\.$
action setvariable shdhindrance 10 when ^You are certain that it imposes significant maneuvering hindrance\.$
action setvariable shdhindrance 11 when ^You are certain that it imposes great maneuvering hindrance\.$
action setvariable shdhindrance 12 when ^You are certain that it imposes extreme maneuvering hindrance\.$
action setvariable shdhindrance 13 when ^You are certain that it imposes debilitating maneuvering hindrance\.$
action setvariable shdhindrance 14 when ^You are certain that it imposes overwhelming maneuvering hindrance\.$
action setvariable shdhindrance 15 when ^You are certain that it imposes insane maneuvering hindrance\.$
action setvariable smin 0 when ^You are certain that .+ offers no to
action setvariable smin 1 when ^You are certain that .+ offers extremely terrible to
action setvariable smin 2 when ^You are certain that .+ offers terrible to
action setvariable smin 3 when ^You are certain that .+ offers dismal to
action setvariable smin 4 when ^You are certain that .+ offers very poor to
action setvariable smin 5 when ^You are certain that .+ offers poor to
action setvariable smin 6 when ^You are certain that .+ offers rather low to
action setvariable smin 7 when ^You are certain that .+ offers low to
action setvariable smin 8 when ^You are certain that .+ offers fair to
action setvariable smin 9 when ^You are certain that .+ offers better than fair to
action setvariable smin 10 when ^You are certain that .+ offers moderate to
action setvariable smin 11 when ^You are certain that .+ offers moderately good to
action setvariable smin 12 when ^You are certain that .+ offers good to
action setvariable smin 13 when ^You are certain that .+ offers very good to
action setvariable smin 14 when ^You are certain that .+ offers high to
action setvariable smin 15 when ^You are certain that .+ offers very high to
action setvariable smin 16 when ^You are certain that .+ offers great to
action setvariable smin 17 when ^You are certain that .+ offers very great to
action setvariable smin 18 when ^You are certain that .+ offers exceptional to
action setvariable smin 19 when ^You are certain that .+ offers very exceptional to
action setvariable smin 20 when ^You are certain that .+ offers impressive to
action setvariable smin 21 when ^You are certain that .+ offers very impressive to
action setvariable smin 22 when ^You are certain that .+ offers amazing to
action setvariable smin 23 when ^You are certain that .+ offers incredible to
action setvariable smin 24 when ^You are certain that .+ offers tremendous to
action setvariable smin 25 when ^You are certain that .+ offers unbelievable to
action setvariable smin 26 when ^You are certain that .+ offers god-like to
action setvariable smax 0 when ^You are certain that.+offers.+ to no protection\.$
action setvariable smax 1 when ^You are certain that.+offers.+ to extremely terrible protection\.$
action setvariable smax 2 when ^You are certain that.+offers.+ to terrible protection\.$
action setvariable smax 3 when ^You are certain that.+offers.+ to dismal protection\.$
action setvariable smax 4 when ^You are certain that.+offers.+ to very poor protection\.$
action setvariable smax 5 when ^You are certain that.+offers.+ to poor protection\.$
action setvariable smax 6 when ^You are certain that.+offers.+ to rather low protection\.$
action setvariable smax 7 when ^You are certain that.+offers.+ to low protection\.$
action setvariable smax 8 when ^You are certain that.+offers.+ to fair protection\.$
action setvariable smax 9 when ^You are certain that.+offers.+ to better than fair protection\.$
action setvariable smax 10 when ^You are certain that.+offers.+ to moderate protection\.$
action setvariable smax 11 when ^You are certain that.+offers.+ to moderately good protection\.$
action setvariable smax 12 when ^You are certain that.+offers.+ to good protection\.$
action setvariable smax 13 when ^You are certain that.+offers.+ to very good protection\.$
action setvariable smax 14 when ^You are certain that.+offers.+ to high protection\.$
action setvariable smax 15 when ^You are certain that.+offers.+ to very high protection\.$
action setvariable smax 16 when ^You are certain that.+offers.+ to great protection\.$
action setvariable smax 17 when ^You are certain that.+offers.+ to very great protection\.$
action setvariable smax 18 when ^You are certain that.+offers.+ to exceptional protection\.$
action setvariable smax 19 when ^You are certain that.+offers.+ to very exceptional protection\.$
action setvariable smax 20 when ^You are certain that.+offers.+ to impressive protection\.$
action setvariable smax 21 when ^You are certain that.+offers.+ to very impressive protection\.$
action setvariable smax 22 when ^You are certain that.+offers.+ to amazing protection\.$
action setvariable smax 23 when ^You are certain that.+offers.+ to incredible protection\.$
action setvariable smax 24 when ^You are certain that.+offers.+ to tremendous protection\.$
action setvariable smax 25 when ^You are certain that.+offers.+ to unbelievable protection\.$
action setvariable smax 26 when ^You are certain that.+offers.+ to god-like protection\.$

action setvariable mhindrance 0 when ^You feel certain that .+ appears? to impose no maneuvering hindrance
action setvariable mhindrance 1 when ^You feel certain that .+ appears? to impose insignificant maneuvering hindrance
action setvariable mhindrance 2 when ^You feel certain that .+ appears? to impose trivial maneuvering hindrance
action setvariable mhindrance 3 when ^You feel certain that .+ appears? to impose light maneuvering hindrance
action setvariable mhindrance 4 when ^You feel certain that .+ appears? to impose minor maneuvering hindrance
action setvariable mhindrance 5 when ^You feel certain that .+ appears? to impose fair maneuvering hindrance
action setvariable mhindrance 6 when ^You feel certain that .+ appears? to impose mild maneuvering hindrance
action setvariable mhindrance 7 when ^You feel certain that .+ appears? to impose moderate maneuvering hindrance
action setvariable mhindrance 8 when ^You feel certain that .+ appears? to impose noticeable maneuvering hindrance
action setvariable mhindrance 9 when ^You feel certain that .+ appears? to impose high maneuvering hindrance
action setvariable mhindrance 10 when ^You feel certain that .+ appears? to impose significant maneuvering hindrance
action setvariable mhindrance 11 when ^You feel certain that .+ appears? to impose great maneuvering hindrance
action setvariable mhindrance 12 when ^You feel certain that .+ appears? to impose extreme maneuvering hindrance
action setvariable mhindrance 13 when ^You feel certain that .+ appears? to impose debilitating maneuvering hindrance
action setvariable mhindrance 14 when ^You feel certain that .+ appears? to impose overwhelming maneuvering hindrance
action setvariable mhindrance 15 when ^You feel certain that .+ appears? to impose insane maneuvering hindrance
action setvariable shindrance 0 when ^You feel certain that.+maneuvering hindrance and no stealth hindrance, offering:
action setvariable shindrance 1 when ^You feel certain that.+maneuvering hindrance and insignificant stealth hindrance, offering:
action setvariable shindrance 2 when ^You feel certain that.+maneuvering hindrance and trivial stealth hindrance, offering:
action setvariable shindrance 3 when ^You feel certain that.+maneuvering hindrance and light stealth hindrance, offering:
action setvariable shindrance 4 when ^You feel certain that.+maneuvering hindrance and minor stealth hindrance, offering:
action setvariable shindrance 5 when ^You feel certain that.+maneuvering hindrance and fair stealth hindrance, offering:
action setvariable shindrance 6 when ^You feel certain that.+maneuvering hindrance and mild stealth hindrance, offering:
action setvariable shindrance 7 when ^You feel certain that.+maneuvering hindrance and moderate stealth hindrance, offering:
action setvariable shindrance 8 when ^You feel certain that.+maneuvering hindrance and noticeable stealth hindrance, offering:
action setvariable shindrance 9 when ^You feel certain that.+maneuvering hindrance and high stealth hindrance, offering:
action setvariable shindrance 10 when ^You feel certain that.+maneuvering hindrance and significant stealth hindrance, offering:
action setvariable shindrance 11 when ^You feel certain that.+maneuvering hindrance and great stealth hindrance, offering:
action setvariable shindrance 12 when ^You feel certain that.+maneuvering hindrance and extreme stealth hindrance, offering:
action setvariable shindrance 13 when ^You feel certain that.+maneuvering hindrance and debilitating stealth hindrance, offering:
action setvariable shindrance 14 when ^You feel certain that.+maneuvering hindrance and overwhelming stealth hindrance, offering:
action setvariable shindrance 15 when ^You feel certain that.+maneuvering hindrance and insane stealth hindrance, offering:
action setvariable puncturep 1 when ^\s+poor protection and.+absorption for puncture attacks
action setvariable puncturep 2 when ^\s+low protection and.+absorption for puncture attacks
action setvariable puncturep 3 when ^\s+fair protection and.+absorption for puncture attacks
action setvariable puncturep 4 when ^\s+moderate protection and.+absorption for puncture attacks
action setvariable puncturep 5 when ^\s+good protection and.+absorption for puncture attacks
action setvariable puncturep 6 when ^\s+very good protection and.+absorption for puncture attacks
action setvariable puncturep 7 when ^\s+high protection and.+absorption for puncture attacks
action setvariable puncturep 8 when ^\s+very high protection and.+absorption for puncture attacks
action setvariable puncturep 9 when ^\s+great protection and.+absorption for puncture attacks
action setvariable puncturep 10 when ^\s+very great protection and.+absorption for puncture attacks
action setvariable puncturep 11 when ^\s+extreme protection and.+absorption for puncture attacks
action setvariable puncturep 12 when ^\s+exceptional protection and.+absorption for puncture attacks
action setvariable puncturep 13 when ^\s+incredible protection and.+absorption for puncture attacks
action setvariable puncturep 14 when ^\s+amazing protection and.+absorption for puncture attacks
action setvariable puncturep 15 when ^\s+unbelieve?able protection and.+absorption for puncture attacks
action setvariable puncturea 1 when ^\s.+protection and very poor damage absorption for puncture attacks
action setvariable puncturea 2 when ^\s.+protection and poor damage absorption for puncture attacks
action setvariable puncturea 3 when ^\s.+protection and low damage absorption for puncture attacks
action setvariable puncturea 4 when ^\s.+protection and somewhat fair damage absorption for puncture attacks
action setvariable puncturea 5 when ^\s.+protection and fair damage absorption for puncture attacks
action setvariable puncturea 6 when ^\s.+protection and moderate damage absorption for puncture attacks
action setvariable puncturea 7 when ^\s.+protection and good damage absorption for puncture attacks
action setvariable puncturea 8 when ^\s.+protection and very good damage absorption for puncture attacks
action setvariable puncturea 9 when ^\s.+protection and high damage absorption for puncture attacks
action setvariable puncturea 10 when ^\s.+protection and very high damage absorption for puncture attacks
action setvariable puncturea 11 when ^\s.+protection and great damage absorption for puncture attacks
action setvariable puncturea 12 when ^\s.+protection and very great damage absorption for puncture attacks
action setvariable puncturea 13 when ^\s.+protection and extreme damage absorption for puncture attacks
action setvariable puncturea 14 when ^\s.+protection and exceptional damage absorption for puncture attacks
action setvariable puncturea 15 when ^\s.+protection and incredible damage absorption for puncture attacks
action setvariable puncturea 16 when ^\s.+protection and outstanding damage absorption for puncture attacks
action setvariable puncturea 17 when ^\s.+protection and amazing damage absorption for puncture attacks
action setvariable puncturea 18 when ^\s.+protection and unbelievable damage absorption for puncture attacks
action setvariable slicep 1 when ^\s+poor protection and.+absorption for slice attacks
action setvariable slicep 2 when ^\s+low protection and.+absorption for slice attacks
action setvariable slicep 3 when ^\s+fair protection and.+absorption for slice attacks
action setvariable slicep 4 when ^\s+moderate protection and.+absorption for slice attacks
action setvariable slicep 5 when ^\s+good protection and.+absorption for slice attacks
action setvariable slicep 6 when ^\s+very good protection and.+absorption for slice attacks
action setvariable slicep 7 when ^\s+high protection and.+absorption for slice attacks
action setvariable slicep 8 when ^\s+very high protection and.+absorption for slice attacks
action setvariable slicep 9 when ^\s+great protection and.+absorption for slice attacks
action setvariable slicep 10 when ^\s+very great protection and.+absorption for slice attacks
action setvariable slicep 11 when ^\s+extreme protection and.+absorption for slice attacks
action setvariable slicep 12 when ^\s+exceptional protection and.+absorption for slice attacks
action setvariable slicep 13 when ^\s+incredible protection and.+absorption for slice attacks
action setvariable slicep 14 when ^\s+amazing protection and.+absorption for slice attacks
action setvariable slicep 15 when ^\s+unbelieve?able protection and.+absorption for slice attacks
action setvariable slicea 1 when ^\s.+protection and very poor damage absorption for slice attacks
action setvariable slicea 2 when ^\s.+protection and poor damage absorption for slice attacks
action setvariable slicea 3 when ^\s.+protection and low damage absorption for slice attacks
action setvariable slicea 4 when ^\s.+protection and somewhat fair damage absorption for slice attacks
action setvariable slicea 5 when ^\s.+protection and fair damage absorption for slice attacks
action setvariable slicea 6 when ^\s.+protection and moderate damage absorption for slice attacks
action setvariable slicea 7 when ^\s.+protection and good damage absorption for slice attacks
action setvariable slicea 8 when ^\s.+protection and very good damage absorption for slice attacks
action setvariable slicea 9 when ^\s.+protection and high damage absorption for slice attacks
action setvariable slicea 10 when ^\s.+protection and very high damage absorption for slice attacks
action setvariable slicea 11 when ^\s.+protection and great damage absorption for slice attacks
action setvariable slicea 12 when ^\s.+protection and very great damage absorption for slice attacks
action setvariable slicea 13 when ^\s.+protection and extreme damage absorption for slice attacks
action setvariable slicea 14 when ^\s.+protection and exceptional damage absorption for slice attacks
action setvariable slicea 15 when ^\s.+protection and incredible damage absorption for slice attacks
action setvariable slicea 16 when ^\s.+protection and outstanding damage absorption for slice attacks
action setvariable slicea 17 when ^\s.+protection and amazing damage absorption for slice attacks
action setvariable slicea 18 when ^\s.+protection and unbelievable damage absorption for slice attacks
action setvariable impactp 1 when ^\s+poor protection and.+absorption for impact attacks
action setvariable impactp 2 when ^\s+low protection and.+absorption for impact attacks
action setvariable impactp 3 when ^\s+fair protection and.+absorption for impact attacks
action setvariable impactp 4 when ^\s+moderate protection and.+absorption for impact attacks
action setvariable impactp 5 when ^\s+good protection and.+absorption for impact attacks
action setvariable impactp 6 when ^\s+very good protection and.+absorption for impact attacks
action setvariable impactp 7 when ^\s+high protection and.+absorption for impact attacks
action setvariable impactp 8 when ^\s+very high protection and.+absorption for impact attacks
action setvariable impactp 9 when ^\s+great protection and.+absorption for impact attacks
action setvariable impactp 10 when ^\s+very great protection and.+absorption for impact attacks
action setvariable impactp 11 when ^\s+extreme protection and.+absorption for impact attacks
action setvariable impactp 12 when ^\s+exceptional protection and.+absorption for impact attacks
action setvariable impactp 13 when ^\s+incredible protection and.+absorption for impact attacks
action setvariable impactp 14 when ^\s+amazing protection and.+absorption for impact attacks
action setvariable impactp 15 when ^\s+unbelieve?able protection and.+absorption for impact attacks
action setvariable impacta 1 when ^\s.+protection and very poor damage absorption for impact attacks
action setvariable impacta 2 when ^\s.+protection and poor damage absorption for impact attacks
action setvariable impacta 3 when ^\s.+protection and low damage absorption for impact attacks
action setvariable impacta 4 when ^\s.+protection and somewhat fair damage absorption for impact attacks
action setvariable impacta 5 when ^\s.+protection and fair damage absorption for impact attacks
action setvariable impacta 6 when ^\s.+protection and moderate damage absorption for impact attacks
action setvariable impacta 7 when ^\s.+protection and good damage absorption for impact attacks
action setvariable impacta 8 when ^\s.+protection and very good damage absorption for impact attacks
action setvariable impacta 9 when ^\s.+protection and high damage absorption for impact attacks
action setvariable impacta 10 when ^\s.+protection and very high damage absorption for impact attacks
action setvariable impacta 11 when ^\s.+protection and great damage absorption for impact attacks
action setvariable impacta 12 when ^\s.+protection and very great damage absorption for impact attacks
action setvariable impacta 13 when ^\s.+protection and extreme damage absorption for impact attacks
action setvariable impacta 14 when ^\s.+protection and exceptional damage absorption for impact attacks
action setvariable impacta 15 when ^\s.+protection and incredible damage absorption for impact attacks
action setvariable impacta 16 when ^\s.+protection and outstanding damage absorption for impact attacks
action setvariable impacta 17 when ^\s.+protection and amazing damage absorption for impact attacks
action setvariable impacta 18 when ^\s.+protection and unbelievable damage absorption for impact attacks
action setvariable firep 1 when ^\s+poor protection and.+absorption for fire attacks
action setvariable firep 2 when ^\s+low protection and.+absorption for fire attacks
action setvariable firep 3 when ^\s+fair protection and.+absorption for fire attacks
action setvariable firep 4 when ^\s+moderate protection and.+absorption for fire attacks
action setvariable firep 5 when ^\s+good protection and.+absorption for fire attacks
action setvariable firep 6 when ^\s+very good protection and.+absorption for fire attacks
action setvariable firep 7 when ^\s+high protection and.+absorption for fire attacks
action setvariable firep 8 when ^\s+very high protection and.+absorption for fire attacks
action setvariable firep 9 when ^\s+great protection and.+absorption for fire attacks
action setvariable firep 10 when ^\s+very great protection and.+absorption for fire attacks
action setvariable firep 11 when ^\s+extreme protection and.+absorption for fire attacks
action setvariable firep 12 when ^\s+exceptional protection and.+absorption for fire attacks
action setvariable firep 13 when ^\s+incredible protection and.+absorption for fire attacks
action setvariable firep 14 when ^\s+amazing protection and.+absorption for fire attacks
action setvariable firep 15 when ^\s+unbelieve?able protection and.+absorption for fire attacks
action setvariable firea 1 when ^\s.+protection and very poor damage absorption for fire attacks
action setvariable firea 2 when ^\s.+protection and poor damage absorption for fire attacks
action setvariable firea 3 when ^\s.+protection and low damage absorption for fire attacks
action setvariable firea 4 when ^\s.+protection and somewhat fair damage absorption for fire attacks
action setvariable firea 5 when ^\s.+protection and fair damage absorption for fire attacks
action setvariable firea 6 when ^\s.+protection and moderate damage absorption for fire attacks
action setvariable firea 7 when ^\s.+protection and good damage absorption for fire attacks
action setvariable firea 8 when ^\s.+protection and very good damage absorption for fire attacks
action setvariable firea 9 when ^\s.+protection and high damage absorption for fire attacks
action setvariable firea 10 when ^\s.+protection and very high damage absorption for fire attacks
action setvariable firea 11 when ^\s.+protection and great damage absorption for fire attacks
action setvariable firea 12 when ^\s.+protection and very great damage absorption for fire attacks
action setvariable firea 13 when ^\s.+protection and extreme damage absorption for fire attacks
action setvariable firea 14 when ^\s.+protection and exceptional damage absorption for fire attacks
action setvariable firea 15 when ^\s.+protection and incredible damage absorption for fire attacks
action setvariable firea 16 when ^\s.+protection and outstanding damage absorption for fire attacks
action setvariable firea 17 when ^\s.+protection and amazing damage absorption for fire attacks
action setvariable firea 18 when ^\s.+protection and unbelievable damage absorption for fire attacks
action setvariable coldp 1 when ^\s+poor protection and.+absorption for cold attacks
action setvariable coldp 2 when ^\s+low protection and.+absorption for cold attacks
action setvariable coldp 3 when ^\s+fair protection and.+absorption for cold attacks
action setvariable coldp 4 when ^\s+moderate protection and.+absorption for cold attacks
action setvariable coldp 5 when ^\s+good protection and.+absorption for cold attacks
action setvariable coldp 6 when ^\s+very good protection and.+absorption for cold attacks
action setvariable coldp 7 when ^\s+high protection and.+absorption for cold attacks
action setvariable coldp 8 when ^\s+very high protection and.+absorption for cold attacks
action setvariable coldp 9 when ^\s+great protection and.+absorption for cold attacks
action setvariable coldp 10 when ^\s+very great protection and.+absorption for cold attacks
action setvariable coldp 11 when ^\s+extreme protection and.+absorption for cold attacks
action setvariable coldp 12 when ^\s+exceptional protection and.+absorption for cold attacks
action setvariable coldp 13 when ^\s+incredible protection and.+absorption for cold attacks
action setvariable coldp 14 when ^\s+amazing protection and.+absorption for cold attacks
action setvariable coldp 15 when ^\s+unbelieve?able protection and.+absorption for cold attacks
action setvariable colda 1 when ^\s.+protection and very poor damage absorption for cold attacks
action setvariable colda 2 when ^\s.+protection and poor damage absorption for cold attacks
action setvariable colda 3 when ^\s.+protection and low damage absorption for cold attacks
action setvariable colda 4 when ^\s.+protection and somewhat fair damage absorption for cold attacks
action setvariable colda 5 when ^\s.+protection and fair damage absorption for cold attacks
action setvariable colda 6 when ^\s.+protection and moderate damage absorption for cold attacks
action setvariable colda 7 when ^\s.+protection and good damage absorption for cold attacks
action setvariable colda 8 when ^\s.+protection and very good damage absorption for cold attacks
action setvariable colda 9 when ^\s.+protection and high damage absorption for cold attacks
action setvariable colda 10 when ^\s.+protection and very high damage absorption for cold attacks
action setvariable colda 11 when ^\s.+protection and great damage absorption for cold attacks
action setvariable colda 12 when ^\s.+protection and very great damage absorption for cold attacks
action setvariable colda 13 when ^\s.+protection and extreme damage absorption for cold attacks
action setvariable colda 14 when ^\s.+protection and exceptional damage absorption for cold attacks
action setvariable colda 15 when ^\s.+protection and incredible damage absorption for cold attacks
action setvariable colda 16 when ^\s.+protection and outstanding damage absorption for cold attacks
action setvariable colda 17 when ^\s.+protection and amazing damage absorption for cold attacks
action setvariable colda 18 when ^\s.+protection and unbelievable damage absorption for cold attacks
action setvariable electricp 1 when ^\s+poor protection and.+absorption for electrical attacks
action setvariable electricp 2 when ^\s+low protection and.+absorption for electrical attacks
action setvariable electricp 3 when ^\s+fair protection and.+absorption for electrical attacks
action setvariable electricp 4 when ^\s+moderate protection and.+absorption for electrical attacks
action setvariable electricp 5 when ^\s+good protection and.+absorption for electrical attacks
action setvariable electricp 6 when ^\s+very good protection and.+absorption for electrical attacks
action setvariable electricp 7 when ^\s+high protection and.+absorption for electrical attacks
action setvariable electricp 8 when ^\s+very high protection and.+absorption for electrical attacks
action setvariable electricp 9 when ^\s+great protection and.+absorption for electrical attacks
action setvariable electricp 10 when ^\s+very great protection and.+absorption for electrical attacks
action setvariable electricp 11 when ^\s+extreme protection and.+absorption for electrical attacks
action setvariable electricp 12 when ^\s+exceptional protection and.+absorption for electrical attacks
action setvariable electricp 13 when ^\s+incredible protection and.+absorption for electrical attacks
action setvariable electricp 14 when ^\s+amazing protection and.+absorption for electrical attacks
action setvariable electricp 15 when ^\s+unbelieve?able protection and.+absorption for electrical attacks
action setvariable electrica 1 when ^\s.+protection and very poor damage absorption for electrical attacks
action setvariable electrica 2 when ^\s.+protection and poor damage absorption for electrical attacks
action setvariable electrica 3 when ^\s.+protection and low damage absorption for electrical attacks
action setvariable electrica 4 when ^\s.+protection and somewhat fair damage absorption for electrical attacks
action setvariable electrica 5 when ^\s.+protection and fair damage absorption for electrical attacks
action setvariable electrica 6 when ^\s.+protection and moderate damage absorption for electrical attacks
action setvariable electrica 7 when ^\s.+protection and good damage absorption for electrical attacks
action setvariable electrica 8 when ^\s.+protection and very good damage absorption for electrical attacks
action setvariable electrica 9 when ^\s.+protection and high damage absorption for electrical attacks
action setvariable electrica 10 when ^\s.+protection and very high damage absorption for electrical attacks
action setvariable electrica 11 when ^\s.+protection and great damage absorption for electrical attacks
action setvariable electrica 12 when ^\s.+protection and very great damage absorption for electrical attacks
action setvariable electrica 13 when ^\s.+protection and extreme damage absorption for electrical attacks
action setvariable electrica 14 when ^\s.+protection and exceptional damage absorption for electrical attacks
action setvariable electrica 15 when ^\s.+protection and incredible damage absorption for electrical attacks
action setvariable electrica 16 when ^\s.+protection and outstanding damage absorption for electrical attacks
action setvariable electrica 17 when ^\s.+protection and amazing damage absorption for electrical attacks
action setvariable electrica 18 when ^\s.+protection and unbelievable damage absorption for electrical attacks

action setvariable construction 1 when ^You are certain that.+(is|are) extremely weak and easily damaged, and
action setvariable construction 2 when ^You are certain that.+(is|are) very delicate and easily damaged, and
action setvariable construction 3 when ^You are certain that.+(is|are) quite fragile and easily damaged, and
action setvariable construction 4 when ^You are certain that.+(is|are) rather flimsy and easily damaged, and
action setvariable construction 5 when ^You are certain that.+(is|are) particularly weak against damage, and
action setvariable construction 6 when ^You are certain that.+(is|are) somewhat unsound against damage, and
action setvariable construction 7 when ^You are certain that.+(is|are) appreciably sus?ceptible to damage, and
action setvariable construction 8 when ^You are certain that.+(is|are) marginally vulnerable to damage, and
action setvariable construction 9 when ^You are certain that.+(is|are) of average construction, and
action setvariable construction 10 when ^You are certain that.+(is|are) a bit safeguarded against damage, and
action setvariable construction 11 when ^You are certain that.+(is|are) rather reinforced against damage, and
action setvariable construction 12 when ^You are certain that.+(is|are) quite guarded against damage, and
action setvariable construction 13 when ^You are certain that.+(is|are) highly protected against damage, and
action setvariable construction 14 when ^You are certain that.+(is|are) very strong against damage, and
action setvariable construction 15 when ^You are certain that.+(is|are) extremely resistant to damage, and
action setvariable construction 16 when ^You are certain that.+(is|are) unusually resilient to damage, and
action setvariable construction 17 when ^You are certain that.+(is|are) nearly impervious to damage, and
action setvariable construction 18 when ^You are certain that.+(is|are) practically invulnerable to damage, and
action setvariable weight $1 when ^You are certain that .+ weighs exactly (\d+) (stones?)\.$
action setvariable appcostk $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:kronars)\.$
action setvariable appcostk 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:kronar)\.$
action setvariable appcostk 0 when ^You are certain that .+ (is|are) worth exactly nothing\.$
action setvariable appcostk 0 when ^There doesn't appear to be anything in the gem pouch\.$
action setvariable appcostl $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:lirums)\.$
action setvariable appcostl 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:lirum)\.$
action setvariable appcostd $2 when ^You are certain that .+ (is|are) worth exactly (\d+) (?i:dokoras)\.$
action setvariable appcostd 1 when ^You are certain that .+ (is|are) worth exactly 1 (?i:dokora)\.$

action setvariable ilsize $1;setvariable iwsize $2;setvariable ihsize $3;setvariable csize $4 when ^You compare your .+ with the .+ yardstick several times and are certain the interior length measures (\w+) spans?, the interior width measures (\w+) spans?, the interior height measures (\w+) spans? and the .+ appears capable of holding about (\d+) stones of weight\.$

echo
echo ITEM TYPE:
echo
echo 1:	Weapon: Melee/Thrown
echo
echo 2:	Weapon: Ranged
echo
echo 3:	Weapon: Ammunition
echo
echo 4:	Weapon: Brawling
echo
echo 5:	Weapon: Parry Stick
echo
echo 6:	Shield
echo
echo 7:	Armor
echo
echo Enter Type Number:

matchre WeaponApp1 ^1
matchre WeaponApp2 ^2
matchre WeaponApp3 ^3
matchre WeaponApp4 ^4
matchre WeaponApp5 ^5
matchre ShieldApp ^6
matchre ArmorApp ^7
matchwait

WeaponApp1:
var formtype weapon1
var logtype WeaponMelee
goto appraise

WeaponApp2:
var formtype weapon2
var logtype WeaponRanged
goto appraise

WeaponApp3:
var formtype weapon3
var logtype WeaponRanged
goto appraise

WeaponApp4:
var formtype weapon4
var logtype WeaponMelee
goto appraise

WeaponApp5:
var formtype weapon5
var logtype WeaponMelee
goto appraise

ShieldApp:
var formtype shield
var logtype Shield
goto appraise

ArmorApp:
var formtype armor
var logtype Armor
goto appraise

appraise:
gosub VarBlank
send appraise %1 %2 %3 careful
wait
pause .5
if %appcostl > 0 then evalmath appcostk round(%appcostl/0.8)
if %appcostd > 0 then evalmath appcostk round(%appcostd/0.7216)
goto %formtype

VarBlank:
var sourcetype 10-unknown
var wtype1 ERROR
var wtype2 ERROR
var wtrains ERROR
var wtrains2 ERROR
var brawltype ERROR
var range ERROR
var rangefactor ERROR
var puncture ERROR
var slice ERROR
var impact ERROR
var fire ERROR
var cold ERROR
var electric ERROR
var foi ERROR
var balance ERROR
var power ERROR
var atype ERROR
var covershead no
var coverseyes no
var coversneck no
var coverschest no
var coversabdomen no
var coversback no
var coversarms no
var covershands no
var coverslegs no
var area ERROR
var stype ERROR
var sizefactor ERROR
var smin ERROR
var smax ERROR
var shdhindrance ERROR
var mhindrance ERROR
var shindrance ERROR
var slicep ERROR
var slicea ERROR
var puncturep ERROR
var puncturea ERROR
var impactp ERROR
var impacta ERROR
var firep ERROR
var firea ERROR
var coldp ERROR
var colda ERROR
var electricp ERROR
var electrica ERROR
var construction ERROR
var sumd ERROR
var sumpd ERROR
var sumed ERROR
var meand ERROR
var meanpd ERROR
var meaned ERROR
var sumshield ERROR
var sumpro ERROR
var sumabs ERROR
var sumpdef ERROR
var sumedef ERROR
var sumdef ERROR
var sumhin ERROR
var meanpro ERROR
var meanabs ERROR
var meanpdef ERROR
var meanedef ERROR
var meanhin ERROR
var qpointsw ERROR
var qpointss ERROR
var qpointsa ERROR
var qpointsww ERROR
var qpointssw ERROR
var qpointsaw ERROR
var ilsize ERROR
var iwsize ERROR
var ihsize ERROR
var wearloc -
return

weapon1:
if (matchre ("%wtype1", "(pike|halberd)")) then var wtrains 01-pole
if (matchre ("%wtype1", "(HE)")) then var wtrains 03-LrE
if (matchre ("%wtype1", "(2HE)")) then var wtrains 02-2HE
if (matchre ("%wtype1", "(ME|LtE)")) then var wtrains 04-SE
if (matchre ("%wtype1", "(HB)")) then var wtrains 06-LrBl
if (matchre ("%wtype1", "(2HB)")) then var wtrains 05-2HB
if (matchre ("%wtype1", "(MB|LtBl)")) then var wtrains 07-SBl
if (matchre ("%wtype1", "(QS|SS)")) then var wtrains 10-staff
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype2", "(HT)")) then var wtrains2 08-HT
if (matchre ("%wtype2", "(LT)")) then var wtrains2 09-LT
if %range = pole then var rangefactor 1
if %range = melee then var rangefactor 0
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

if %wtype2 = ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}
if %wtype2 != ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}

weapon2:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(HX|LX)")) then var drawstrength N/A
if (matchre ("%wtype1", "(HX|LX)")) then var adjdraw N/A
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype1", "(sling)")) then var drawstrength N/A
if (matchre ("%wtype1", "(sling)")) then var adjdraw N/A
evalmath qpointsw round((%foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
echo
echo Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon3:
var foi N/A
var balance N/A
var power N/A
var drawstrength N/A
var adjdraw N/A
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammotype 16-Xbow
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammoskill 11-Xbow
if (matchre ("%tapnoun", "(arrows?)")) then var ammotype 19-bow
if (matchre ("%tapnoun", "(arrows?)")) then var ammoskill 12-bow
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammotype 21-sling
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammoskill 13-sling
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Ammo Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Ammo Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon4:
var fire N/A
var cold N/A
var electric N/A
var sumed N/A
var meaned N/A
var balance N/A
var power N/A
if (matchre ("%tap", "(claws|handwraps?|knuckleguards?|knuckles?)")) then var brawltype 3hand
if (matchre ("%tap", "(elbow)")) then var brawltype 2elbow
if (matchre ("%tap", "(knee)")) then var brawltype 4knee
if (matchre ("%tap", "(footwraps?)")) then var brawltype 5foot
if %impact != ERROR then
{
evalmath sumd %puncture + %slice + %impact
evalmath sumpd %puncture + %slice + %impact
evalmath meand round((%sumpd/3),1)
evalmath meanpd round((%sumpd/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
if %impact = ERROR then
{
var impact N/A
evalmath sumd %puncture + %slice
evalmath sumpd %puncture + %slice
evalmath meand round((%sumpd/2),1)
evalmath meanpd round((%sumpd/2),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo
echo Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon5:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
var foi N/A
evalmath qpointsw round((%balance_weight*%balance + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
echo
echo Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

shield:
if %stype = large then var sizefactor 2
if %stype = medium then var sizefactor 1
if %stype = small then var sizefactor 0
evalmath sumshield %smin + %smax
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointss round((%smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor),1)
evalmath qpointssw round((%qpointss/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Shield Protection: %sumshield
echo
echo Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
echo
echo Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Shield Protection: %sumshield
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

armor:
evalmath sumpro %puncturep + %slicep + %impactp + %firep + %coldp + %electricp
evalmath sumabs %puncturea + %slicea + %impacta + %firea + %colda + %electrica
evalmath sumpdef %puncturep + %slicep + %impactp + %puncturea + %slicea + %impacta
evalmath sumedef %firep + %coldp + %electricp + %firea + %colda + %electrica
evalmath sumdef %sumpro + %sumabs
evalmath sumhin %mhindrance + %shindrance
evalmath meanpro round((%sumpro/6),1)
evalmath meanabs round((%sumabs/6),1)
evalmath meanpdef round((%sumpdef/6),1)
evalmath meanedef round((%sumedef/6),1)
evalmath meanhin round((%sumhin/2),1)
evalmath qpointsa round((%sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance),1)
evalmath qpointsaw round((%qpointsa/(%weight_weight*%weight)),1)
if %covershead = yes && %coverseyes = yes && %coversneck = yes then var area 01-head/eyes/neck
if %covershead = yes && %coverseyes = yes && %coversneck = no then var area 02-head/eyes
if %covershead = yes && %coverseyes = no && %coversneck = yes then var area 03-head/neck
if %covershead = yes && %coverseyes = no && %coversneck = no then var area 04-head
if %covershead = no && %coverseyes = yes && %coversneck = no then var area 05-eyes
if %coversneck = yes && %coverschest = yes && %coversback = yes then var area 06-neck/chest/back
if %covershead = no && %coverseyes = no && %coversneck = yes && %coverschest = no && %coversback = no then var area 07-neck
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = yes then var area 08-torso/arms/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = no then var area 09-torso/arms
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = yes then var area 10-torso/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = no then var area 11-torso
if %coverschest = yes && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 12-chest/back
if %coverschest = yes && %coversabdomen = no && %coversback = no && %coversarms = no && %coverslegs = no then var area 13-chest
if %coverschest = no && %coversabdomen = yes && %coversback = no && %coversarms = no && %coverslegs = no then var area 14-abdomen
if %coverschest = no && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 15-back
if %coversarms = yes && %covershands = yes then var area 16-arms/hands
if %coverschest = no && %coversarms = yes && %covershands = no then var area 17-arms
if %coverschest = no && %coversarms = no && %covershands = yes then var area 18-hands
if %coverschest = no && %coversarms = no && %coverslegs = yes then var area 19-legs

echo
echo Stats for %tap
echo
echo Total Armor Protection + Absorption: %sumdef
echo Total Armor Protection: %sumpro (mean: %meanpro)
echo Total Armor Absorption: %sumabs (mean: %meanabs)
echo Total Physical Defense: %sumpdef (mean: %meanpdef)
echo Total Elemental Defense: %sumedef (mean: %meanedef)
echo Total Armor Hindrance: %sumhin (mean: %meanhin)
echo
echo Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
echo
echo Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	$date
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection + Absorption: %sumdef
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection: %sumpro (mean: %meanpro)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Absorption: %sumabs (mean: %meanabs)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Defense: %sumpdef (mean: %meanpdef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Defense: %sumedef (mean: %meanedef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Hindrance: %sumhin (mean: %meanhin)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

return:
return

end:
put #class racial on
put #play ScriptEnd
put #flash
put #parse SCRIPT DONE
exit

Manual Data Entry

########################################################
##STAT QUALITY WEIGHTS
##Edit this section if you want to change the weights that the quality formulas assign to each stat.
##sumpd: physical damage (puncture + slice + impact)
##sumed: elemental damage (fire + cold + electric)
##foi: force of impact (determines likelihood of stunning, unbalancing, and knocking back)
##balance: weapon balance (determines how well a weapon takes advantage of your agility when attacking and parrying)
##power: weapon power/suitability (determines how well a weapon takes advantage of your strength when attacking)
##smin: shield's minimum or "basic" defense (the minimum protection a shield offers, regardless of skill)
##smax: shield's maximum or "full" defense (the maximum protection a shield can offer if you have sufficient shield skill)
##shdhindrance: shield's maneuvering and stealth hindrance (All shields impose equal maneuvering and stealth hindrance, which may be reduced with skill.)
##sumpro: armor's total protection (reduces incoming damage by a flat amount -- best for light hits and requires more armor skill)
##sumabs: armor's total absorption (reduces incoming damage by a static percentage -- best for heavy hits and requires less armor skill)
##sumpdef: armor's total physical defense (protection + absorption)
##sumedef: armor's total elemental defense (protection + absorption)
##mhindrance: armor's maneuvering hindrance (determines penalties to defenses, which may be reduced with skill.)
##shindrance: armor's stealth hindrance (determines penalties to stealth, which may be reduced with skill.)
##construction: item's construction (determines how easily damaged an item is and therefore how often it will need to be repaired)
##weight: the item's weight in stones
##Weapon Quality Formula: %sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor
##Shield Quality Formula: %smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor
##Armor Quality Formula: %sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance
var sumpd_weight 2
var sumed_weight 2
var foi_weight 1
var balance_weight 1.5
var power_weight 1.25
var smin_weight 1.5
var smax_weight 2
var shdhindrance_weight 1
var sumpro_weight 2
var sumabs_weight 2.5
var sumpdef_weight 3
var sumedef_weight 1
var mhindrance_weight 1.5
var shindrance_weight .5
var construction_weight .25
var weight_weight .5
##DEFAULT VALUES
##var sumpd_weight 2
##var sumed_weight 2
##var foi_weight 1
##var balance_weight 1.5
##var power_weight 1.25
##var smin_weight 1.5
##var smax_weight 2
##var shdhindrance_weight 1
##var sumpro_weight 2
##var sumabs_weight 2.5
##var sumpdef_weight 3
##var sumedef_weight 1
##var mhindrance_weight 1.5
##var shindrance_weight .5
##var construction_weight .25
##var weight_weight .5
########################################################
put #class joust off
put #class racial off
var short $lefthand
var noun $lefthandnoun
var short $righthand
var noun $righthandnoun
var appcostl 0
var appcostd 0

gosub VarBlank

Tap:
action setvariable tap $1 when ^tap\s+(.+)$
echo
echo Enter tap [text]:

waitforre ^I could not find what you were referring to

echo
echo ITEM TYPE:
echo
echo 1:	Weapon: Melee/Thrown
echo
echo 2:	Weapon: Ranged
echo
echo 3:	Weapon: Ammunition
echo
echo 4:	Weapon: Brawling
echo
echo 5:	Weapon: Parry Stick
echo
echo 6:	Shield
echo
echo 7:	Armor
echo
echo 8:	Container
echo
echo Enter Item Type Number:

matchre WeaponApp1 ^1
matchre WeaponApp2 ^2
matchre WeaponApp3 ^3
matchre WeaponApp4 ^4
matchre WeaponApp5 ^5
matchre ShieldApp ^6
matchre ArmorApp ^7
matchre ContainerApp ^8
matchwait

WeaponApp1:
var formtype weapon1
var logtype WeaponMelee
gosub Weapon1Type
gosub Weapon1TypeThrown
gosub Range
gosub PunctureDamage
gosub SliceDamage
gosub ImpactDamage
var fire 0
var cold 0
var electric 0
gosub FOI
gosub Balance
gosub Power
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

WeaponApp2:
var formtype weapon2
var logtype WeaponRanged
gosub Weapon2Type
gosub FOI
gosub Balance
gosub Power
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

WeaponApp3:
var formtype weapon3
var logtype WeaponRanged
gosub Weapon3Type
gosub PunctureDamage
gosub SliceDamage
gosub ImpactDamage
var fire 0
var cold 0
var electric 0
gosub FOI
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

WeaponApp4:
var formtype weapon4
var logtype WeaponMelee
var wtype 22-brawl
gosub Weapon4Type
gosub PunctureDamage
gosub SliceDamage
gosub ImpactDamage
var fire 0
var cold 0
var electric 0
gosub FOI
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

WeaponApp5:
var formtype weapon5
var logtype WeaponMelee
var wtype 22-brawl
var wearloc 1-parry
gosub Balance
gosub Power
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

ShieldApp:
var formtype shield
var logtype Shield
gosub ShieldSize
gosub MinDefense
gosub MaxDefense
gosub ShieldHindrance
gosub ImpactDamage
gosub Balance
gosub Power
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

ArmorApp:
var formtype armor
var logtype Armor
gosub ArmorType
gosub ArmorCoverage
gosub ArmorMHindrance
gosub ArmorSHindrance
gosub PunctureProtection
gosub SliceProtection
gosub ImpactProtection
gosub FireProtection
gosub ColdProtection
gosub ElectricProtection
gosub PunctureAbsorption
gosub SliceAbsorption
gosub ImpactAbsorption
gosub FireAbsorption
gosub ColdAbsorption
gosub ElectricAbsorption
gosub Construction
gosub Weight
gosub Appraisal
goto %formtype

ContainerApp:
var formtype container
var logtype Container

VarBlank:
var sourcetype 10-unknown
var wtype1 ERROR
var wtype2 ERROR
var wtrains ERROR
var wtrains2 ERROR
var brawltype ERROR
var range ERROR
var rangefactor ERROR
var puncture ERROR
var slice ERROR
var impact ERROR
var fire ERROR
var cold ERROR
var electric ERROR
var foi ERROR
var balance ERROR
var power ERROR
var atype ERROR
var covershead no
var coverseyes no
var coversneck no
var coverschest no
var coversabdomen no
var coversback no
var coversarms no
var covershands no
var coverslegs no
var area ERROR
var stype ERROR
var sizefactor ERROR
var smin ERROR
var smax ERROR
var shdhindrance ERROR
var mhindrance ERROR
var shindrance ERROR
var slicep ERROR
var slicea ERROR
var puncturep ERROR
var puncturea ERROR
var impactp ERROR
var impacta ERROR
var firep ERROR
var firea ERROR
var coldp ERROR
var colda ERROR
var electricp ERROR
var electrica ERROR
var construction ERROR
var sumd ERROR
var sumpd ERROR
var sumed ERROR
var meand ERROR
var meanpd ERROR
var meaned ERROR
var sumshield ERROR
var sumpro ERROR
var sumabs ERROR
var sumpdef ERROR
var sumedef ERROR
var sumdef ERROR
var sumhin ERROR
var meanpro ERROR
var meanabs ERROR
var meanpdef ERROR
var meanedef ERROR
var meanhin ERROR
var qpointsw ERROR
var qpointss ERROR
var qpointsa ERROR
var qpointsww ERROR
var qpointssw ERROR
var qpointsaw ERROR
var ilsize ERROR
var iwsize ERROR
var ihsize ERROR
var wearloc -
return

Weapon1Type:
echo
echo MELEE/THROWN WEAPON TYPE:
echo
echo 1. pike
echo 2. halberd
echo 3. two-handed edged (2HE)
echo 4. heavy edged (HE)
echo 5. medium edged (ME)
echo 6. light edged (LtE)
echo 7. two-handed blunt (2HB)
echo 8. heavy blunt (HB)
echo 9. medium blunt (MB)
echo 10. light blunt (LtBl)
echo 11. quarter staff (QS)
echo 12. short staff (SS)
echo
echo Enter Weapon Type Number:

matchre WeaponPike ^1$
matchre WeaponHalberd ^2$
matchre Weapon2HE ^3$
matchre WeaponHE ^4$
matchre WeaponME ^5$
matchre WeaponLtE ^6$
matchre Weapon2HB ^7$
matchre WeaponHB ^8$
matchre WeaponMB ^9$
matchre WeaponLtBl ^10$
matchre WeaponQS ^11$
matchre WeaponSS ^12$
matchwait

WeaponPike:
var wtype1 01-pike
var wtrains 01-pole
return

WeaponHalberd:
var wtype1 02-halberd
var wtrains 01-pole
return

Weapon2HE:
var wtype1 03-2HE
var wtrains 02-2HE
return

WeaponHE:
var wtype1 04-HE
var wtrains 03-LrE
return

WeaponME:
var wtype1 05-ME
var wtrains 04-SE
return

WeaponLtE:
var wtype1 06-LtE
var wtrains 04-SE
return

Weapon2HB:
var wtype1 07-2HB
var wtrains 05-2HB
return

WeaponHB:
var wtype1 08-HB
var wtrains 06-LrBl
return

WeaponMB:
var wtype1 09-MB
var wtrains 07-SBl
return

WeaponLtBl:
var wtype1 10-LtBl
var wtrains 07-SBl
return

WeaponQS:
var wtype1 13-QS
var wtrains 10-staff
return

WeaponSS:
var wtype1 14-SS
var wtrains 10-staff
return

Weapon1TypeThrown:
echo
echo Does the weapon appraise as a thrown weapon?
echo
echo 1. heavy thrown (HT)
echo 2. light thrown (LT)
echo 3. no
echo
echo Enter Weapon Type Number:

matchre WeaponHT ^1$
matchre WeaponLT ^2$
matchre return ^3$
matchwait

WeaponHT:
var wtype2 11-HT
var wtrains2 08-HT
return

WeaponLT:
var wtype2 12-LT
var wtrains2 09-LT
return

Weapon2Type:
echo
echo RANGED WEAPON TYPE:
echo
echo 1. heavy crossbow (HX)
echo 2. light crossbow (LX)
echo 3. composite bow
echo 4. long bow
echo 5. short bow
echo 6. staff sling
echo 7. sling
echo
echo Enter Weapon Type Number:

matchre WeaponHX ^1$
matchre WeaponLX ^2$
matchre WeaponCompBow ^3$
matchre WeaponLongBow ^4$
matchre WeaponShortBow ^5$
matchre WeaponStaffSling ^6$
matchre WeaponSling ^7$
matchwait

WeaponHX:
var wtype1 15-HX when
var wtrains 11-Xbow
return

WeaponLX:
var wtype1 16-LX
var wtrains 11-Xbow
return

WeaponCompBow:
var wtype1 17-comp bow
var wtrains 12-bow
return

WeaponLongBow:
var wtype1 18-long bow
var wtrains 12-bow
return

WeaponShortBow:
var wtype1 19-short bow
var wtrains 12-bow
return

WeaponStaffSling:
var wtype1 20-staff sling
var wtrains 13-sling
return

WeaponSling:
var wtype1 21-sling
var wtrains 13-sling
return

Weapon3Type:
echo
echo AMMO TYPE:
echo
echo 1. crossbow (bolts, quadrellos, quarrels, pulzones)
echo 2. bow (arrows)
echo 3. sling (bullets, clumps, lumps, rocks, shards)
echo
echo Enter Ammo Type Number:

matchre AmmoXbow ^1$
matchre AmmoBow ^2$
matchre AmmoSling ^3$
matchwait

AmmoXbow:
var ammoskill 11-crossbow
return

AmmoBow:
var ammoskill 12-bow
return

AmmoSling:
var ammoskill 13-sling
return

Weapon4Type:
echo
echo BRAWLING WEAPON TYPE:
echo
echo 1. elbows
echo 2. hands
echo 3. knees
echo 4. feet
echo
echo Enter Brawling Type Number:

matchre BrawlElbows ^1$
matchre BrawlHands ^2$
matchre BrawlKnees ^3$
matchre BrawlFeet ^4$
matchwait

BrawlElbows:
var brawltype 2elbow
return

BrawlHands:
var brawltype 3hand
return

BrawlKnees:
var brawltype 4knee
return

BrawlFeet:
var brawltype 5foot
return

Range:
echo
echo MELEE WEAPON RANGE:
echo
echo 1. melee
echo 2. pole
echo
echo Enter Range Number:

matchre MeleeRange ^1$
matchre PoleRange ^2$
matchwait

MeleeRange:
var range melee
var rangefactor 0
return

PoleRange:
var range pole
var rangefactor 1
return

PunctureDamage:
echo
echo PUNCTURE DAMAGE:
echo
echo 0. no				14. very severe
echo 1. dismal			15. extreme
echo 2. poor				16. very extreme
echo 3. low				17. mighty
echo 4. somewhat fair		18. very mighty
echo 5. fair				19. bone-crushing
echo 6. somewhat moderate	20. very bone-crushing
echo 7. moderate			21. devastating
echo 8. somewhat heavy		22. very devastating
echo 9. heavy			23. overwhelming
echo 10. very heavy		24. annihilating
echo 11. great			25. obliterating
echo 12. very great			26. demolishing
echo 13. severe			27. catastrophic
echo
echo Enter Damage Number:

matchre PunctureDamage0 ^0$
matchre PunctureDamage1 ^1$
matchre PunctureDamage2 ^2$
matchre PunctureDamage3 ^3$
matchre PunctureDamage4 ^4$
matchre PunctureDamage5 ^5$
matchre PunctureDamage6 ^6$
matchre PunctureDamage7 ^7$
matchre PunctureDamage8 ^8$
matchre PunctureDamage9 ^9$
matchre PunctureDamage10 ^10$
matchre PunctureDamage11 ^11$
matchre PunctureDamage12 ^12$
matchre PunctureDamage13 ^13$
matchre PunctureDamage14 ^14$
matchre PunctureDamage15 ^15$
matchre PunctureDamage16 ^16$
matchre PunctureDamage17 ^17$
matchre PunctureDamage18 ^18$
matchre PunctureDamage19 ^19$
matchre PunctureDamage20 ^20$
matchre PunctureDamage21 ^21$
matchre PunctureDamage22 ^22$
matchre PunctureDamage23 ^23$
matchre PunctureDamage24 ^24$
matchre PunctureDamage25 ^25$
matchre PunctureDamage26 ^26$
matchre PunctureDamage27 ^27$
matchwait

PunctureDamage0:
var puncture 0
return

PunctureDamage1:
var puncture 1
return

PunctureDamage2:
var puncture 2
return

PunctureDamage3:
var puncture 3
return

PunctureDamage4:
var puncture 4
return

PunctureDamage5:
var puncture 5
return

PunctureDamage6:
var puncture 6
return

PunctureDamage7:
var puncture 7
return

PunctureDamage8:
var puncture 8
return

PunctureDamage9:
var puncture 9
return

PunctureDamage10:
var puncture 10
return

PunctureDamage11:
var puncture 11
return

PunctureDamage12:
var puncture 12
return

PunctureDamage13:
var puncture 13
return

PunctureDamage14:
var puncture 14
return

PunctureDamage15:
var puncture 15
return

PunctureDamage16:
var puncture 16
return

PunctureDamage17:
var puncture 17
return

PunctureDamage18:
var puncture 18
return

PunctureDamage19:
var puncture 19
return

PunctureDamage20:
var puncture 20
return

PunctureDamage21:
var puncture 21
return

PunctureDamage22:
var puncture 22
return

PunctureDamage23:
var puncture 23
return

PunctureDamage24:
var puncture 24
return

PunctureDamage25:
var puncture 25
return

PunctureDamage26:
var puncture 26
return

PunctureDamage27:
var puncture 27
return

SliceDamage:
echo
echo SLICE DAMAGE:
echo
echo 0. no				14. very severe
echo 1. dismal			15. extreme
echo 2. poor				16. very extreme
echo 3. low				17. mighty
echo 4. somewhat fair		18. very mighty
echo 5. fair				19. bone-crushing
echo 6. somewhat moderate	20. very bone-crushing
echo 7. moderate			21. devastating
echo 8. somewhat heavy		22. very devastating
echo 9. heavy			23. overwhelming
echo 10. very heavy		24. annihilating
echo 11. great			25. obliterating
echo 12. very great			26. demolishing
echo 13. severe			27. catastrophic
echo
echo Enter Damage Number:

matchre SliceDamage0 ^0$
matchre SliceDamage1 ^1$
matchre SliceDamage2 ^2$
matchre SliceDamage3 ^3$
matchre SliceDamage4 ^4$
matchre SliceDamage5 ^5$
matchre SliceDamage6 ^6$
matchre SliceDamage7 ^7$
matchre SliceDamage8 ^8$
matchre SliceDamage9 ^9$
matchre SliceDamage10 ^10$
matchre SliceDamage11 ^11$
matchre SliceDamage12 ^12$
matchre SliceDamage13 ^13$
matchre SliceDamage14 ^14$
matchre SliceDamage15 ^15$
matchre SliceDamage16 ^16$
matchre SliceDamage17 ^17$
matchre SliceDamage18 ^18$
matchre SliceDamage19 ^19$
matchre SliceDamage20 ^20$
matchre SliceDamage21 ^21$
matchre SliceDamage22 ^22$
matchre SliceDamage23 ^23$
matchre SliceDamage24 ^24$
matchre SliceDamage25 ^25$
matchre SliceDamage26 ^26$
matchre SliceDamage27 ^27$
matchwait

SliceDamage0:
var slice 0
return

SliceDamage1:
var slice 1
return

SliceDamage2:
var slice 2
return

SliceDamage3:
var slice 3
return

SliceDamage4:
var slice 4
return

SliceDamage5:
var slice 5
return

SliceDamage6:
var slice 6
return

SliceDamage7:
var slice 7
return

SliceDamage8:
var slice 8
return

SliceDamage9:
var slice 9
return

SliceDamage10:
var slice 10
return

SliceDamage11:
var slice 11
return

SliceDamage12:
var slice 12
return

SliceDamage13:
var slice 13
return

SliceDamage14:
var slice 14
return

SliceDamage15:
var slice 15
return

SliceDamage16:
var slice 16
return

SliceDamage17:
var slice 17
return

SliceDamage18:
var slice 18
return

SliceDamage19:
var slice 19
return

SliceDamage20:
var slice 20
return

SliceDamage21:
var slice 21
return

SliceDamage22:
var slice 22
return

SliceDamage23:
var slice 23
return

SliceDamage24:
var slice 24
return

SliceDamage25:
var slice 25
return

SliceDamage26:
var slice 26
return

SliceDamage27:
var slice 27
return

ImpactDamage:
echo
echo IMPACT DAMAGE:
echo
echo 0. no				14. very severe
echo 1. dismal			15. extreme
echo 2. poor				16. very extreme
echo 3. low				17. mighty
echo 4. somewhat fair		18. very mighty
echo 5. fair				19. bone-crushing
echo 6. somewhat moderate	20. very bone-crushing
echo 7. moderate			21. devastating
echo 8. somewhat heavy		22. very devastating
echo 9. heavy			23. overwhelming
echo 10. very heavy		24. annihilating
echo 11. great			25. obliterating
echo 12. very great			26. demolishing
echo 13. severe			27. catastrophic
echo
echo Enter Damage Number:

matchre ImpactDamage0 ^0$
matchre ImpactDamage1 ^1$
matchre ImpactDamage2 ^2$
matchre ImpactDamage3 ^3$
matchre ImpactDamage4 ^4$
matchre ImpactDamage5 ^5$
matchre ImpactDamage6 ^6$
matchre ImpactDamage7 ^7$
matchre ImpactDamage8 ^8$
matchre ImpactDamage9 ^9$
matchre ImpactDamage10 ^10$
matchre ImpactDamage11 ^11$
matchre ImpactDamage12 ^12$
matchre ImpactDamage13 ^13$
matchre ImpactDamage14 ^14$
matchre ImpactDamage15 ^15$
matchre ImpactDamage16 ^16$
matchre ImpactDamage17 ^17$
matchre ImpactDamage18 ^18$
matchre ImpactDamage19 ^19$
matchre ImpactDamage20 ^20$
matchre ImpactDamage21 ^21$
matchre ImpactDamage22 ^22$
matchre ImpactDamage23 ^23$
matchre ImpactDamage24 ^24$
matchre ImpactDamage25 ^25$
matchre ImpactDamage26 ^26$
matchre ImpactDamage27 ^27$
matchwait

ImpactDamage0:
var impact 0
return

ImpactDamage1:
var impact 1
return

ImpactDamage2:
var impact 2
return

ImpactDamage3:
var impact 3
return

ImpactDamage4:
var impact 4
return

ImpactDamage5:
var impact 5
return

ImpactDamage6:
var impact 6
return

ImpactDamage7:
var impact 7
return

ImpactDamage8:
var impact 8
return

ImpactDamage9:
var impact 9
return

ImpactDamage10:
var impact 10
return

ImpactDamage11:
var impact 11
return

ImpactDamage12:
var impact 12
return

ImpactDamage13:
var impact 13
return

ImpactDamage14:
var impact 14
return

ImpactDamage15:
var impact 15
return

ImpactDamage16:
var impact 16
return

ImpactDamage17:
var impact 17
return

ImpactDamage18:
var impact 18
return

ImpactDamage19:
var impact 19
return

ImpactDamage20:
var impact 20
return

ImpactDamage21:
var impact 21
return

ImpactDamage22:
var impact 22
return

ImpactDamage23:
var impact 23
return

ImpactDamage24:
var impact 24
return

ImpactDamage25:
var impact 25
return

ImpactDamage26:
var impact 26
return

ImpactDamage27:
var impact 27
return

FOI:
echo
echo FORCE OF IMPACT
echo
echo 0. not			9. well
echo 1. terribly		10. very well
echo 2. dismally		11. extremely well
echo 3. poorly		12. excellently
echo 4. inadequately	13. superbly
echo 5. fairly		14. incredibly
echo 6. decently		15. amazingly
echo 7. reasonably		16. unbelievably
echo 8. soundly		17. perfectly
echo
echo
echo Enter FOI Number:

matchre FOI0 ^0$
matchre FOI1 ^1$
matchre FOI2 ^2$
matchre FOI3 ^3$
matchre FOI4 ^4$
matchre FOI5 ^5$
matchre FOI6 ^6$
matchre FOI7 ^7$
matchre FOI8 ^8$
matchre FOI9 ^9$
matchre FOI10 ^10$
matchre FOI11 ^11$
matchre FOI12 ^12$
matchre FOI13 ^13$
matchre FOI14 ^14$
matchre FOI15 ^15$
matchre FOI16 ^16$
matchre FOI17 ^17$
matchwait

FOI0:
var foi 0
return

FOI1:
var foi 1
return

FOI2:
var foi 2
return

FOI3:
var foi 3
return

FOI4:
var foi 4
return

FOI5:
var foi 5
return

FOI6:
var foi 6
return

FOI7:
var foi 7
return

FOI8:
var foi 8
return

FOI9:
var foi 9
return

FOI10:
var foi 10
return

FOI11:
var foi 11
return

FOI12:
var foi 12
return

FOI13:
var foi 13
return

FOI14:
var foi 14
return

FOI15:
var foi 15
return

FOI16:
var foi 16
return

FOI17:
var foi 17
return

Balance:
echo
echo BALANCE:
echo
echo 0. not			9. well
echo 1. terribly		10. very well
echo 2. dismally		11. extremely well
echo 3. poorly		12. excellently
echo 4. inadequately	13. superbly
echo 5. fairly		14. incredibly
echo 6. decently		15. amazingly
echo 7. reasonably		16. unbelievably
echo 8. soundly		17. perfectly
echo
echo Enter Balance Number:

matchre Balance0 ^0$
matchre Balance1 ^1$
matchre Balance2 ^2$
matchre Balance3 ^3$
matchre Balance4 ^4$
matchre Balance5 ^5$
matchre Balance6 ^6$
matchre Balance7 ^7$
matchre Balance8 ^8$
matchre Balance9 ^9$
matchre Balance10 ^10$
matchre Balance11 ^11$
matchre Balance12 ^12$
matchre Balance13 ^13$
matchre Balance14 ^14$
matchre Balance15 ^15$
matchre Balance16 ^16$
matchre Balance17 ^17$
matchwait

Balance0:
var balance 0
return

Balance1:
var balance 1
return

Balance2:
var balance 2
return

Balance3:
var balance 3
return

Balance4:
var balance 4
return

Balance5:
var balance 5
return

Balance6:
var balance 6
return

Balance7:
var balance 7
return

Balance8:
var balance 8
return

Balance9:
var balance 9
return

Balance10:
var balance 10
return

Balance11:
var balance 11
return

Balance12:
var balance 12
return

Balance13:
var balance 13
return

Balance14:
var balance 14
return

Balance15:
var balance 15
return

Balance16:
var balance 16
return

Balance17:
var balance 17
return

Power:
echo
echo POWER/SUITEDNESS:
echo
echo 0. not			9. well
echo 1. terribly		10. very well
echo 2. dismally		11. extremely well
echo 3. poorly		12. excellently
echo 4. inadequately	13. superbly
echo 5. fairly		14. incredibly
echo 6. decently		15. amazingly
echo 7. reasonably		16. unbelievably
echo 8. soundly		17. perfectly
echo
echo Enter Power Number:

matchre Power0 ^0$
matchre Power1 ^1$
matchre Power2 ^2$
matchre Power3 ^3$
matchre Power4 ^4$
matchre Power5 ^5$
matchre Power6 ^6$
matchre Power7 ^7$
matchre Power8 ^8$
matchre Power9 ^9$
matchre Power10 ^10$
matchre Power11 ^11$
matchre Power12 ^12$
matchre Power13 ^13$
matchre Power14 ^14$
matchre Power15 ^15$
matchre Power16 ^16$
matchre Power17 ^17$
matchwait

Power0:
var power 0
return

Power1:
var power 1
return

Power2:
var power 2
return

Power3:
var power 3
return

Power4:
var power 4
return

Power5:
var power 5
return

Power6:
var power 6
return

Power7:
var power 7
return

Power8:
var power 8
return

Power9:
var power 9
return

Power10:
var power 10
return

Power11:
var power 11
return

Power12:
var power 12
return

Power13:
var power 13
return

Power14:
var power 14
return

Power15:
var power 15
return

Power16:
var power 16
return

Power17:
var power 17
return

Construction:
echo
echo CONSTRUCTION:
echo
echo 1. extremely weak		10. a bit safeguarded
echo 2. very delicate		11. rather reinforced
echo 3. quite fragile		12. quite guarded
echo 4. rather flimsy		13. highly protected
echo 5. particularly weak		14. very strong
echo 6. somewhat unsound	15. extremely resistant
echo 7. appreciably susceptible	16. unusually resilient
echo 8. marginally vulnerable	17. nearly impervious
echo 9. of average construction	18. practically invulnerable
echo
echo Enter Construction Number:

matchre Construction1 ^1$
matchre Construction2 ^2$
matchre Construction3 ^3$
matchre Construction4 ^4$
matchre Construction5 ^5$
matchre Construction6 ^6$
matchre Construction7 ^7$
matchre Construction8 ^8$
matchre Construction9 ^9$
matchre Construction10 ^10$
matchre Construction11 ^11$
matchre Construction12 ^12$
matchre Construction13 ^13$
matchre Construction14 ^14$
matchre Construction15 ^15$
matchre Construction16 ^16$
matchre Construction17 ^17$
matchre Construction18 ^18$
matchwait

Construction1:
var construction 1
return

Construction2:
var construction 2
return

Construction3:
var construction 3
return

Construction4:
var construction 4
return

Construction5:
var construction 5
return

Construction6:
var construction 6
return

Construction7:
var construction 7
return

Construction8:
var construction 8
return

Construction9:
var construction 9
return

Construction10:
var construction 10
return

Construction11:
var construction 11
return

Construction12:
var construction 12
return

Construction13:
var construction 13
return

Construction14:
var construction 14
return

Construction15:
var construction 15
return

Construction16:
var construction 16
return

Construction17:
var construction 17
return

Construction18:
var construction 18
return

Weight:
action setvariable weight $1 when ^weight (\d+)$
echo
echo Type weight #
echo
waitforre ^Please rephrase that command
return

Appraisal:
action setvariable appcostk $1 when ^value (\d+)$
echo
echo Type value #
echo
waitforre ^Please rephrase that command
return

ShieldSize:
echo
echo SHIELD SIZE
echo
echo 1. small
echo 2. medium
echo 3. large
echo
echo Enter Size Number:

matchre ShieldSizeSmall ^1$
matchre ShieldSizeMedium ^2$
matchre ShieldSizeLarge ^3$
matchwait

ShieldSizeSmall:
var stype small
var sizefactor 0
return

ShieldSizeMedium:
var stype medium
var sizefactor 1
return

ShieldSizeLarge:
var stype large
var sizefactor 2
return

MinDefense:
echo
echo BASIC (MINIMUM) PROTECTION:
echo
echo 0. no			14. high
echo 1. extremely terrible	15. very high
echo 2. terrible		16. great
echo 3. dismal		17. very great
echo 4. very poor		18. exceptional
echo 5. poor			19. very exceptional
echo 6. rather low		20. impressive
echo 7. low			21. very impressive
echo 8. fair			22. amazing
echo 9. better than fair	23. incredible
echo 10. moderate		24. tremendous
echo 11. moderately good	25. unbelievable
echo 12. good		26. god-like
echo 13. very good
echo
echo Enter Shield Protection Number:

matchre MinDefense0 ^0$
matchre MinDefense1 ^1$
matchre MinDefense2 ^2$
matchre MinDefense3 ^3$
matchre MinDefense4 ^4$
matchre MinDefense5 ^5$
matchre MinDefense6 ^6$
matchre MinDefense7 ^7$
matchre MinDefense8 ^8$
matchre MinDefense9 ^9$
matchre MinDefense10 ^10$
matchre MinDefense11 ^11$
matchre MinDefense12 ^12$
matchre MinDefense13 ^13$
matchre MinDefense14 ^14$
matchre MinDefense15 ^15$
matchre MinDefense16 ^16$
matchre MinDefense17 ^17$
matchre MinDefense18 ^18$
matchre MinDefense19 ^19$
matchre MinDefense20 ^20$
matchre MinDefense21 ^21$
matchre MinDefense22 ^22$
matchre MinDefense23 ^23$
matchre MinDefense24 ^24$
matchre MinDefense25 ^25$
matchre MinDefense26 ^26$
matchwait

MinDefense0:
var smin 0
return

MinDefense1:
var smin 1
return

MinDefense2:
var smin 2
return

MinDefense3:
var smin 3
return

MinDefense4:
var smin 4
return

MinDefense5:
var smin 5
return

MinDefense6:
var smin 6
return

MinDefense6:
var smin 6
return

MinDefense7:
var smin 7
return

MinDefense8:
var smin 8
return

MinDefense9:
var smin 9
return

MinDefense10:
var smin 10
return

MinDefense11:
var smin 11
return

MinDefense12:
var smin 12
return

MinDefense13:
var smin 13
return

MinDefense14:
var smin 14
return

MinDefense15:
var smin 15
return

MinDefense16:
var smin 16
return

MinDefense17:
var smin 17
return

MinDefense18:
var smin 18
return

MinDefense19:
var smin 19
return

MinDefense20:
var smin 20
return

MinDefense21:
var smin 21
return

MinDefense22:
var smin 22
return

MinDefense23:
var smin 23
return

MinDefense24:
var smin 24
return

MinDefense25:
var smin 25
return

MinDefense26:
var smin 26
return

MaxDefense:
echo
echo FULL (MAXIMUM) PROTECTION:
echo
echo 0. no			14. high
echo 1. extremely terrible	15. very high
echo 2. terrible		16. great
echo 3. dismal		17. very great
echo 4. very poor		18. exceptional
echo 5. poor			19. very exceptional
echo 6. rather low		20. impressive
echo 7. low			21. very impressive
echo 8. fair			22. amazing
echo 9. better than fair	23. incredible
echo 10. moderate		24. tremendous
echo 11. moderately good	25. unbelievable
echo 12. good		26. god-like
echo 13. very good
echo
echo Enter Shield Protection Number:

matchre MaxDefense0 ^0$
matchre MaxDefense1 ^1$
matchre MaxDefense2 ^2$
matchre MaxDefense3 ^3$
matchre MaxDefense4 ^4$
matchre MaxDefense5 ^5$
matchre MaxDefense6 ^6$
matchre MaxDefense7 ^7$
matchre MaxDefense8 ^8$
matchre MaxDefense9 ^9$
matchre MaxDefense10 ^10$
matchre MaxDefense11 ^11$
matchre MaxDefense12 ^12$
matchre MaxDefense13 ^13$
matchre MaxDefense14 ^14$
matchre MaxDefense15 ^15$
matchre MaxDefense16 ^16$
matchre MaxDefense17 ^17$
matchre MaxDefense18 ^18$
matchre MaxDefense19 ^19$
matchre MaxDefense20 ^20$
matchre MaxDefense21 ^21$
matchre MaxDefense22 ^22$
matchre MaxDefense23 ^23$
matchre MaxDefense24 ^24$
matchre MaxDefense25 ^25$
matchre MaxDefense26 ^26$
matchwait

MaxDefense0:
var smax 0
return

MaxDefense1:
var smax 1
return

MaxDefense2:
var smax 2
return

MaxDefense3:
var smax 3
return

MaxDefense4:
var smax 4
return

MaxDefense5:
var smax 5
return

MaxDefense6:
var smax 6
return

MaxDefense7:
var smax 7
return

MaxDefense8:
var smax 8
return

MaxDefense9:
var smax 9
return

MaxDefense10:
var smax 10
return

MaxDefense11:
var smax 11
return

MaxDefense12:
var smax 12
return

MaxDefense13:
var smax 13
return

MaxDefense14:
var smax 14
return

MaxDefense15:
var smax 15
return

MaxDefense16:
var smax 16
return

MaxDefense17:
var smax 17
return

MaxDefense18:
var smax 18
return

MaxDefense19:
var smax 19
return

MaxDefense20:
var smax 20
return

MaxDefense21:
var smax 21
return

MaxDefense22:
var smax 22
return

MaxDefense23:
var smax 23
return

MaxDefense24:
var smax 24
return

MaxDefense25:
var smax 25
return

MaxDefense26:
var smax 26
return

ShieldHindrance:
echo
echo SHIELD HINDRANCE:
echo
echo 0. no			8. noticeable
echo 1. insignificant	9. high
echo 2. trivial		10. significant
echo 3. light			11. great
echo 4. minor		12. extreme
echo 5. fair			13. debilitating
echo 6. mild			14. overwhelming
echo 7. moderate		15. insane
echo
echo Enter Hindrance Number:

matchre ShieldHindrance0 ^0$
matchre ShieldHindrance1 ^1$
matchre ShieldHindrance2 ^2$
matchre ShieldHindrance3 ^3$
matchre ShieldHindrance4 ^4$
matchre ShieldHindrance5 ^5$
matchre ShieldHindrance6 ^6$
matchre ShieldHindrance7 ^7$
matchre ShieldHindrance8 ^8$
matchre ShieldHindrance9 ^9$
matchre ShieldHindrance10 ^10$
matchre ShieldHindrance11 ^11$
matchre ShieldHindrance12 ^12$
matchre ShieldHindrance13 ^13$
matchre ShieldHindrance14 ^14$
matchre ShieldHindrance15 ^15$
matchwait

ShieldHindrance0:
var shdhindrance 0
return

ShieldHindrance1:
var shdhindrance 1
return

ShieldHindrance2:
var shdhindrance 2
return

ShieldHindrance3:
var shdhindrance 3
return

ShieldHindrance4:
var shdhindrance 4
return

ShieldHindrance5:
var shdhindrance 5
return

ShieldHindrance6:
var shdhindrance 6
return

ShieldHindrance7:
var shdhindrance 7
return

ShieldHindrance8:
var shdhindrance 8
return

ShieldHindrance9:
var shdhindrance 9
return

ShieldHindrance10:
var shdhindrance 10
return

ShieldHindrance11:
var shdhindrance 11
return

ShieldHindrance12:
var shdhindrance 12
return

ShieldHindrance13:
var shdhindrance 13
return

ShieldHindrance14:
var shdhindrance 14
return

ShieldHindrance15:
var shdhindrance 15
return

ArmorType:
echo
echo ARMOR TYPE:
echo
echo 1. light (cloth, leather, bone)
echo 2. chain
echo 3. brigandine
echo 4. plate
echo
echo Enter Armor Type Number:

matchre ArmorTypeLight ^1$
matchre ArmorTypeChain ^2$
matchre ArmorTypeBrigandine ^3$
matchre ArmorTypePlate ^4$
matchwait

ArmorTypeLight:
var atype 1-light
return

ArmorTypeChain:
var atype 2-chain
return

ArmorTypeBrigandine:
var atype 3-brigandine
return

ArmorTypePlate:
var atype 4-plate
return

ArmorCoverage:
echo
echo ARMOR COVERAGE:
echo
echo 1. head/eyes/neck	11. torso
echo 2. head/eyes		12. chest/back
echo 3. head/neck		13. chest
echo 4. head		14. abdomen
echo 5. eyes		15. back
echo 6. neck/chest/back	16. arms/hands
echo 7. neck		17. arms
echo 8. torso/arms/legs	18. hands
echo 9. torso/arms		19. legs
echo 10. torso/legs
echo
echo Enter Armor Coverage Number:

matchre ArmorCoverage1 ^1$
matchre ArmorCoverage2 ^2$
matchre ArmorCoverage3 ^3$
matchre ArmorCoverage4 ^4$
matchre ArmorCoverage5 ^5$
matchre ArmorCoverage6 ^6$
matchre ArmorCoverage7 ^7$
matchre ArmorCoverage8 ^8$
matchre ArmorCoverage9 ^9$
matchre ArmorCoverage10 ^10$
matchre ArmorCoverage11 ^11$
matchre ArmorCoverage12 ^12$
matchre ArmorCoverage13 ^13$
matchre ArmorCoverage14 ^14$
matchre ArmorCoverage15 ^15$
matchre ArmorCoverage16 ^16$
matchre ArmorCoverage17 ^17$
matchre ArmorCoverage18 ^18$
matchre ArmorCoverage19 ^19$
matchwait

ArmorCoverage1:
var area 01-head/eyes/neck
return

ArmorCoverage2:
var area 02-head/eyes
return

ArmorCoverage3:
var area 03-head/neck
return

ArmorCoverage4:
var area 04-head
return

ArmorCoverage5:
var area 05-eyes
return

ArmorCoverage6:
var area 06-neck/chest/back
return

ArmorCoverage7:
var area 07-neck
return

ArmorCoverage8:
var area 08-torso/arms/legs
return

ArmorCoverage9:
var area 09-torso/arms
return

ArmorCoverage10:
var area 10-torso/legs
return

ArmorCoverage11:
var area 11-torso
return

ArmorCoverage12:
var area 12-chest/back
return

ArmorCoverage13:
var area 13-chest
return

ArmorCoverage14:
var area 14-abdomen
return

ArmorCoverage15:
var area 15-back
return

ArmorCoverage16:
var area 16-arms/hands
return

ArmorCoverage17:
var area 17-arms
return

ArmorCoverage18:
var area 18-hands
return

ArmorCoverage19:
var area 19-legs
return

ArmorMHindrance:
echo
ECHO ARMOR MANEUVERING HINDRANCE:
echo
echo 0. no			8. noticeable
echo 1. insignificant	9. high
echo 2. trivial		10. significant
echo 3. light			11. great
echo 4. minor		12. extreme
echo 5. fair			13. debilitating
echo 6. mild			14. overwhelming
echo 7. moderate		15. insane
echo
echo Enter Armor Hindrance Number:

matchre ArmorMHindrance0 ^0$
matchre ArmorMHindrance1 ^1$
matchre ArmorMHindrance2 ^2$
matchre ArmorMHindrance3 ^3$
matchre ArmorMHindrance4 ^4$
matchre ArmorMHindrance5 ^5$
matchre ArmorMHindrance6 ^6$
matchre ArmorMHindrance7 ^7$
matchre ArmorMHindrance8 ^8$
matchre ArmorMHindrance9 ^9$
matchre ArmorMHindrance10 ^10$
matchre ArmorMHindrance11 ^11$
matchre ArmorMHindrance12 ^12$
matchre ArmorMHindrance13 ^13$
matchre ArmorMHindrance14 ^14$
matchre ArmorMHindrance15 ^15$
matchwait

ArmorMHindrance0:
var mhindrance 0
return

ArmorMHindrance1:
var mhindrance 1
return

ArmorMHindrance2:
var mhindrance 2
return

ArmorMHindrance3:
var mhindrance 3
return

ArmorMHindrance4:
var mhindrance 4
return

ArmorMHindrance5:
var mhindrance 5
return

ArmorMHindrance6:
var mhindrance 6
return

ArmorMHindrance7:
var mhindrance 7
return

ArmorMHindrance8:
var mhindrance 8
return

ArmorMHindrance9:
var mhindrance 9
return

ArmorMHindrance10:
var mhindrance 10
return

ArmorMHindrance11:
var mhindrance 11
return

ArmorMHindrance12:
var mhindrance 12
return

ArmorMHindrance13:
var mhindrance 13
return

ArmorMHindrance14:
var mhindrance 14
return

ArmorMHindrance15:
var mhindrance 15
return

ArmorSHindrance:
echo
ECHO ARMOR STEALTH HINDRANCE:
echo
echo 0. no			8. noticeable
echo 1. insignificant	9. high
echo 2. trivial		10. significant
echo 3. light			11. great
echo 4. minor		12. extreme
echo 5. fair			13. debilitating
echo 6. mild			14. overwhelming
echo 7. moderate		15. insane
echo
echo Enter Armor Hindrance Number:

matchre ArmorSHindrance0 ^0$
matchre ArmorSHindrance1 ^1$
matchre ArmorSHindrance2 ^2$
matchre ArmorSHindrance3 ^3$
matchre ArmorSHindrance4 ^4$
matchre ArmorSHindrance5 ^5$
matchre ArmorSHindrance6 ^6$
matchre ArmorSHindrance7 ^7$
matchre ArmorSHindrance8 ^8$
matchre ArmorSHindrance9 ^9$
matchre ArmorSHindrance10 ^10$
matchre ArmorSHindrance11 ^11$
matchre ArmorSHindrance12 ^12$
matchre ArmorSHindrance13 ^13$
matchre ArmorSHindrance14 ^14$
matchre ArmorSHindrance15 ^15$
matchwait

ArmorSHindrance0:
var shindrance 0
return

ArmorSHindrance1:
var shindrance 1
return

ArmorSHindrance2:
var shindrance 2
return

ArmorSHindrance3:
var shindrance 3
return

ArmorSHindrance4:
var shindrance 4
return

ArmorSHindrance5:
var shindrance 5
return

ArmorSHindrance6:
var shindrance 6
return

ArmorSHindrance7:
var shindrance 7
return

ArmorSHindrance8:
var shindrance 8
return

ArmorSHindrance9:
var shindrance 9
return

ArmorSHindrance10:
var shindrance 10
return

ArmorSHindrance11:
var shindrance 11
return

ArmorSHindrance12:
var shindrance 12
return

ArmorSHindrance13:
var shindrance 13
return

ArmorSHindrance14:
var shindrance 14
return

ArmorSHindrance15:
var shindrance 15
return

PunctureProtection:
echo
echo ARMOR PUNCTURE PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre PunctureProtection1 ^1$
matchre PunctureProtection2 ^2$
matchre PunctureProtection3 ^3$
matchre PunctureProtection4 ^4$
matchre PunctureProtection5 ^5$
matchre PunctureProtection6 ^6$
matchre PunctureProtection7 ^7$
matchre PunctureProtection8 ^8$
matchre PunctureProtection9 ^9$
matchre PunctureProtection10 ^10$
matchre PunctureProtection11 ^11$
matchre PunctureProtection12 ^12$
matchre PunctureProtection13 ^13$
matchre PunctureProtection14 ^14$
matchre PunctureProtection15 ^15$
matchwait

PunctureProtection1:
var puncturep 1
return

PunctureProtection2:
var puncturep 2
return

PunctureProtection3:
var puncturep 3
return

PunctureProtection4:
var puncturep 4
return

PunctureProtection5:
var puncturep 5
return

PunctureProtection6:
var puncturep 6
return

PunctureProtection7:
var puncturep 7
return

PunctureProtection8:
var puncturep 8
return

PunctureProtection9:
var puncturep 9
return

PunctureProtection10:
var puncturep 10
return

PunctureProtection11:
var puncturep 11
return

PunctureProtection12:
var puncturep 12
return

PunctureProtection13:
var puncturep 13
return

PunctureProtection14:
var puncturep 14
return

PunctureProtection15:
var puncturep 15
return

SliceProtection:
echo
echo ARMOR SLICE PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre SliceProtection1 ^1$
matchre SliceProtection2 ^2$
matchre SliceProtection3 ^3$
matchre SliceProtection4 ^4$
matchre SliceProtection5 ^5$
matchre SliceProtection6 ^6$
matchre SliceProtection7 ^7$
matchre SliceProtection8 ^8$
matchre SliceProtection9 ^9$
matchre SliceProtection10 ^10$
matchre SliceProtection11 ^11$
matchre SliceProtection12 ^12$
matchre SliceProtection13 ^13$
matchre SliceProtection14 ^14$
matchre SliceProtection15 ^15$
matchwait

SliceProtection1:
var slicep 1
return

SliceProtection2:
var slicep 2
return

SliceProtection3:
var slicep 3
return

SliceProtection4:
var slicep 4
return

SliceProtection5:
var slicep 5
return

SliceProtection6:
var slicep 6
return

SliceProtection7:
var slicep 7
return

SliceProtection8:
var slicep 8
return

SliceProtection9:
var slicep 9
return

SliceProtection10:
var slicep 10
return

SliceProtection11:
var slicep 11
return

SliceProtection12:
var slicep 12
return

SliceProtection13:
var slicep 13
return

SliceProtection14:
var slicep 14
return

SliceProtection15:
var slicep 15
return

ImpactProtection:
echo
echo ARMOR IMPACT PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre ImpactProtection1 ^1$
matchre ImpactProtection2 ^2$
matchre ImpactProtection3 ^3$
matchre ImpactProtection4 ^4$
matchre ImpactProtection5 ^5$
matchre ImpactProtection6 ^6$
matchre ImpactProtection7 ^7$
matchre ImpactProtection8 ^8$
matchre ImpactProtection9 ^9$
matchre ImpactProtection10 ^10$
matchre ImpactProtection11 ^11$
matchre ImpactProtection12 ^12$
matchre ImpactProtection13 ^13$
matchre ImpactProtection14 ^14$
matchre ImpactProtection15 ^15$
matchwait

ImpactProtection1:
var impactp 1
return

ImpactProtection2:
var impactp 2
return

ImpactProtection3:
var impactp 3
return

ImpactProtection4:
var impactp 4
return

ImpactProtection5:
var impactp 5
return

ImpactProtection6:
var impactp 6
return

ImpactProtection7:
var impactp 7
return

ImpactProtection8:
var impactp 8
return

ImpactProtection9:
var impactp 9
return

ImpactProtection10:
var impactp 10
return

ImpactProtection11:
var impactp 11
return

ImpactProtection12:
var impactp 12
return

ImpactProtection13:
var impactp 13
return

ImpactProtection14:
var impactp 14
return

ImpactProtection15:
var impactp 15
return

FireProtection:
echo
echo ARMOR FIRE PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre FireProtection1 ^1$
matchre FireProtection2 ^2$
matchre FireProtection3 ^3$
matchre FireProtection4 ^4$
matchre FireProtection5 ^5$
matchre FireProtection6 ^6$
matchre FireProtection7 ^7$
matchre FireProtection8 ^8$
matchre FireProtection9 ^9$
matchre FireProtection10 ^10$
matchre FireProtection11 ^11$
matchre FireProtection12 ^12$
matchre FireProtection13 ^13$
matchre FireProtection14 ^14$
matchre FireProtection15 ^15$
matchwait

FireProtection1:
var firep 1
return

FireProtection2:
var firep 2
return

FireProtection3:
var firep 3
return

FireProtection4:
var firep 4
return

FireProtection5:
var firep 5
return

FireProtection6:
var firep 6
return

FireProtection7:
var firep 7
return

FireProtection8:
var firep 8
return

FireProtection9:
var firep 9
return

FireProtection10:
var firep 10
return

FireProtection11:
var firep 11
return

FireProtection12:
var firep 12
return

FireProtection13:
var firep 13
return

FireProtection14:
var firep 14
return

FireProtection15:
var firep 15
return

ColdProtection:
echo
echo ARMOR COLD PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre ColdProtection1 ^1$
matchre ColdProtection2 ^2$
matchre ColdProtection3 ^3$
matchre ColdProtection4 ^4$
matchre ColdProtection5 ^5$
matchre ColdProtection6 ^6$
matchre ColdProtection7 ^7$
matchre ColdProtection8 ^8$
matchre ColdProtection9 ^9$
matchre ColdProtection10 ^10$
matchre ColdProtection11 ^11$
matchre ColdProtection12 ^12$
matchre ColdProtection13 ^13$
matchre ColdProtection14 ^14$
matchre ColdProtection15 ^15$
matchwait

ColdProtection1:
var coldp 1
return

ColdProtection2:
var coldp 2
return

ColdProtection3:
var coldp 3
return

ColdProtection4:
var coldp 4
return

ColdProtection5:
var coldp 5
return

ColdProtection6:
var coldp 6
return

ColdProtection7:
var coldp 7
return

ColdProtection8:
var coldp 8
return

ColdProtection9:
var coldp 9
return

ColdProtection10:
var coldp 10
return

ColdProtection11:
var coldp 11
return

ColdProtection12:
var coldp 12
return

ColdProtection13:
var coldp 13
return

ColdProtection14:
var coldp 14
return

ColdProtection15:
var coldp 15
return

ElectricProtection:
echo
echo ARMOR ELECTRICAL PROTECTION:
echo
echo 1. poor		9. great
echo 2. low		10. very great
echo 3. fair		11. extreme
echo 4. moderate	12. exceptional
echo 5. good	13. incredible
echo 6. very good	14. amazing
echo 7. high		15. unbelievable
echo 8. very high
echo
echo Enter Armor Protection Number:

matchre ElectricProtection1 ^1$
matchre ElectricProtection2 ^2$
matchre ElectricProtection3 ^3$
matchre ElectricProtection4 ^4$
matchre ElectricProtection5 ^5$
matchre ElectricProtection6 ^6$
matchre ElectricProtection7 ^7$
matchre ElectricProtection8 ^8$
matchre ElectricProtection9 ^9$
matchre ElectricProtection10 ^10$
matchre ElectricProtection11 ^11$
matchre ElectricProtection12 ^12$
matchre ElectricProtection13 ^13$
matchre ElectricProtection14 ^14$
matchre ElectricProtection15 ^15$
matchwait

ElectricProtection1:
var electricp 1
return

ElectricProtection2:
var electricp 2
return

ElectricProtection3:
var electricp 3
return

ElectricProtection4:
var electricp 4
return

ElectricProtection5:
var electricp 5
return

ElectricProtection6:
var electricp 6
return

ElectricProtection7:
var electricp 7
return

ElectricProtection8:
var electricp 8
return

ElectricProtection9:
var electricp 9
return

ElectricProtection10:
var electricp 10
return

ElectricProtection11:
var electricp 11
return

ElectricProtection12:
var electricp 12
return

ElectricProtection13:
var electricp 13
return

ElectricProtection14:
var electricp 14
return

ElectricProtection15:
var electricp 15
return

PunctureAbsorption:
echo
echo ARMOR PUNCTURE ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre PunctureAbsorption1 ^1$
matchre PunctureAbsorption2 ^2$
matchre PunctureAbsorption3 ^3$
matchre PunctureAbsorption4 ^4$
matchre PunctureAbsorption5 ^5$
matchre PunctureAbsorption6 ^6$
matchre PunctureAbsorption7 ^7$
matchre PunctureAbsorption8 ^8$
matchre PunctureAbsorption9 ^9$
matchre PunctureAbsorption10 ^10$
matchre PunctureAbsorption11 ^11$
matchre PunctureAbsorption12 ^12$
matchre PunctureAbsorption13 ^13$
matchre PunctureAbsorption14 ^14$
matchre PunctureAbsorption15 ^15$
matchre PunctureAbsorption16 ^16$
matchre PunctureAbsorption17 ^17$
matchre PunctureAbsorption18 ^18$
matchwait

PunctureAbsorption1:
var puncturea 1
return

PunctureAbsorption2:
var puncturea 2
return

PunctureAbsorption3:
var puncturea 3
return

PunctureAbsorption4:
var puncturea 4
return

PunctureAbsorption5:
var puncturea 5
return

PunctureAbsorption6:
var puncturea 6
return

PunctureAbsorption7:
var puncturea 7
return

PunctureAbsorption8:
var puncturea 8
return

PunctureAbsorption9:
var puncturea 9
return

PunctureAbsorption10:
var puncturea 10
return

PunctureAbsorption11:
var puncturea 11
return

PunctureAbsorption12:
var puncturea 12
return

PunctureAbsorption13:
var puncturea 13
return

PunctureAbsorption14:
var puncturea 14
return

PunctureAbsorption15:
var puncturea 15
return

PunctureAbsorption16:
var puncturea 16
return

PunctureAbsorption17:
var puncturea 17
return

PunctureAbsorption18:
var puncturea 18
return

SliceAbsorption:
echo
echo ARMOR SLICE ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre SliceAbsorption1 ^1$
matchre SliceAbsorption2 ^2$
matchre SliceAbsorption3 ^3$
matchre SliceAbsorption4 ^4$
matchre SliceAbsorption5 ^5$
matchre SliceAbsorption6 ^6$
matchre SliceAbsorption7 ^7$
matchre SliceAbsorption8 ^8$
matchre SliceAbsorption9 ^9$
matchre SliceAbsorption10 ^10$
matchre SliceAbsorption11 ^11$
matchre SliceAbsorption12 ^12$
matchre SliceAbsorption13 ^13$
matchre SliceAbsorption14 ^14$
matchre SliceAbsorption15 ^15$
matchre SliceAbsorption16 ^16$
matchre SliceAbsorption17 ^17$
matchre SliceAbsorption18 ^18$
matchwait

SliceAbsorption1:
var slicea 1
return

SliceAbsorption2:
var slicea 2
return

SliceAbsorption3:
var slicea 3
return

SliceAbsorption4:
var slicea 4
return

SliceAbsorption5:
var slicea 5
return

SliceAbsorption6:
var slicea 6
return

SliceAbsorption7:
var slicea 7
return

SliceAbsorption8:
var slicea 8
return

SliceAbsorption9:
var slicea 9
return

SliceAbsorption10:
var slicea 10
return

SliceAbsorption11:
var slicea 11
return

SliceAbsorption12:
var slicea 12
return

SliceAbsorption13:
var slicea 13
return

SliceAbsorption14:
var slicea 14
return

SliceAbsorption15:
var slicea 15
return

SliceAbsorption16:
var slicea 16
return

SliceAbsorption17:
var slicea 17
return

SliceAbsorption18:
var slicea 18
return

ImpactAbsorption:
echo
echo ARMOR IMPACT ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre ImpactAbsorption1 ^1$
matchre ImpactAbsorption2 ^2$
matchre ImpactAbsorption3 ^3$
matchre ImpactAbsorption4 ^4$
matchre ImpactAbsorption5 ^5$
matchre ImpactAbsorption6 ^6$
matchre ImpactAbsorption7 ^7$
matchre ImpactAbsorption8 ^8$
matchre ImpactAbsorption9 ^9$
matchre ImpactAbsorption10 ^10$
matchre ImpactAbsorption11 ^11$
matchre ImpactAbsorption12 ^12$
matchre ImpactAbsorption13 ^13$
matchre ImpactAbsorption14 ^14$
matchre ImpactAbsorption15 ^15$
matchre ImpactAbsorption16 ^16$
matchre ImpactAbsorption17 ^17$
matchre ImpactAbsorption18 ^18$
matchwait

ImpactAbsorption1:
var impacta 1
return

ImpactAbsorption2:
var impacta 2
return

ImpactAbsorption3:
var impacta 3
return

ImpactAbsorption4:
var impacta 4
return

ImpactAbsorption5:
var impacta 5
return

ImpactAbsorption6:
var impacta 6
return

ImpactAbsorption7:
var impacta 7
return

ImpactAbsorption8:
var impacta 8
return

ImpactAbsorption9:
var impacta 9
return

ImpactAbsorption10:
var impacta 10
return

ImpactAbsorption11:
var impacta 11
return

ImpactAbsorption12:
var impacta 12
return

ImpactAbsorption13:
var impacta 13
return

ImpactAbsorption14:
var impacta 14
return

ImpactAbsorption15:
var impacta 15
return

ImpactAbsorption16:
var impacta 16
return

ImpactAbsorption17:
var impacta 17
return

ImpactAbsorption18:
var impacta 18
return

FireAbsorption:
echo
echo ARMOR FIRE ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre FireAbsorption1 ^1$
matchre FireAbsorption2 ^2$
matchre FireAbsorption3 ^3$
matchre FireAbsorption4 ^4$
matchre FireAbsorption5 ^5$
matchre FireAbsorption6 ^6$
matchre FireAbsorption7 ^7$
matchre FireAbsorption8 ^8$
matchre FireAbsorption9 ^9$
matchre FireAbsorption10 ^10$
matchre FireAbsorption11 ^11$
matchre FireAbsorption12 ^12$
matchre FireAbsorption13 ^13$
matchre FireAbsorption14 ^14$
matchre FireAbsorption15 ^15$
matchre FireAbsorption16 ^16$
matchre FireAbsorption17 ^17$
matchre FireAbsorption18 ^18$
matchwait

FireAbsorption1:
var firea 1
return

FireAbsorption2:
var firea 2
return

FireAbsorption3:
var firea 3
return

FireAbsorption4:
var firea 4
return

FireAbsorption5:
var firea 5
return

FireAbsorption6:
var firea 6
return

FireAbsorption7:
var firea 7
return

FireAbsorption8:
var firea 8
return

FireAbsorption9:
var firea 9
return

FireAbsorption10:
var firea 10
return

FireAbsorption11:
var firea 11
return

FireAbsorption12:
var firea 12
return

FireAbsorption13:
var firea 13
return

FireAbsorption14:
var firea 14
return

FireAbsorption15:
var firea 15
return

FireAbsorption16:
var firea 16
return

FireAbsorption17:
var firea 17
return

FireAbsorption18:
var firea 18
return

ColdAbsorption:
echo
echo ARMOR COLD ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre ColdAbsorption1 ^1$
matchre ColdAbsorption2 ^2$
matchre ColdAbsorption3 ^3$
matchre ColdAbsorption4 ^4$
matchre ColdAbsorption5 ^5$
matchre ColdAbsorption6 ^6$
matchre ColdAbsorption7 ^7$
matchre ColdAbsorption8 ^8$
matchre ColdAbsorption9 ^9$
matchre ColdAbsorption10 ^10$
matchre ColdAbsorption11 ^11$
matchre ColdAbsorption12 ^12$
matchre ColdAbsorption13 ^13$
matchre ColdAbsorption14 ^14$
matchre ColdAbsorption15 ^15$
matchre ColdAbsorption16 ^16$
matchre ColdAbsorption17 ^17$
matchre ColdAbsorption18 ^18$
matchwait

ColdAbsorption1:
var colda 1
return

ColdAbsorption2:
var colda 2
return

ColdAbsorption3:
var colda 3
return

ColdAbsorption4:
var colda 4
return

ColdAbsorption5:
var colda 5
return

ColdAbsorption6:
var colda 6
return

ColdAbsorption7:
var colda 7
return

ColdAbsorption8:
var colda 8
return

ColdAbsorption9:
var colda 9
return

ColdAbsorption10:
var colda 10
return

ColdAbsorption11:
var colda 11
return

ColdAbsorption12:
var colda 12
return

ColdAbsorption13:
var colda 13
return

ColdAbsorption14:
var colda 14
return

ColdAbsorption15:
var colda 15
return

ColdAbsorption16:
var colda 16
return

ColdAbsorption17:
var colda 17
return

ColdAbsorption18:
var colda 18
return

ElectricAbsorption:
echo
echo ARMOR ELECTRICAL ABSORPTION:
echo
echo 1. very poor		10. very high
echo 2. poor			11. great
echo 3. low			12. very great
echo 4. somewhat fair	13. extreme
echo 5. fair			14. exceptional
echo 6. moderate		15. incredible
echo 7. good		16. outstanding
echo 8. very good		17. amazing
echo 9. high			18. unbelievable
echo
echo Enter Armor Absorption Number:

matchre ElectricAbsorption1 ^1$
matchre ElectricAbsorption2 ^2$
matchre ElectricAbsorption3 ^3$
matchre ElectricAbsorption4 ^4$
matchre ElectricAbsorption5 ^5$
matchre ElectricAbsorption6 ^6$
matchre ElectricAbsorption7 ^7$
matchre ElectricAbsorption8 ^8$
matchre ElectricAbsorption9 ^9$
matchre ElectricAbsorption10 ^10$
matchre ElectricAbsorption11 ^11$
matchre ElectricAbsorption12 ^12$
matchre ElectricAbsorption13 ^13$
matchre ElectricAbsorption14 ^14$
matchre ElectricAbsorption15 ^15$
matchre ElectricAbsorption16 ^16$
matchre ElectricAbsorption17 ^17$
matchre ElectricAbsorption18 ^18$
matchwait

ElectricAbsorption1:
var electrica 1
return

ElectricAbsorption2:
var electrica 2
return

ElectricAbsorption3:
var electrica 3
return

ElectricAbsorption4:
var electrica 4
return

ElectricAbsorption5:
var electrica 5
return

ElectricAbsorption6:
var electrica 6
return

ElectricAbsorption7:
var electrica 7
return

ElectricAbsorption8:
var electrica 8
return

ElectricAbsorption9:
var electrica 9
return

ElectricAbsorption10:
var electrica 10
return

ElectricAbsorption11:
var electrica 11
return

ElectricAbsorption12:
var electrica 12
return

ElectricAbsorption13:
var electrica 13
return

ElectricAbsorption14:
var electrica 14
return

ElectricAbsorption15:
var electrica 15
return

ElectricAbsorption16:
var electrica 16
return

ElectricAbsorption17:
var electrica 17
return

ElectricAbsorption18:
var electrica 18
return

weapon1:
if (matchre ("%wtype1", "(pike|halberd)")) then var wtrains 01-pole
if (matchre ("%wtype1", "(HE)")) then var wtrains 03-LrE
if (matchre ("%wtype1", "(2HE)")) then var wtrains 02-2HE
if (matchre ("%wtype1", "(ME|LtE)")) then var wtrains 04-SE
if (matchre ("%wtype1", "(HB)")) then var wtrains 06-LrBl
if (matchre ("%wtype1", "(2HB)")) then var wtrains 05-2HB
if (matchre ("%wtype1", "(MB|LtBl)")) then var wtrains 07-SBl
if (matchre ("%wtype1", "(QS|SS)")) then var wtrains 10-staff
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype2", "(HT)")) then var wtrains2 08-HT
if (matchre ("%wtype2", "(LT)")) then var wtrains2 09-LT
if %range = pole then var rangefactor 1
if %range = melee then var rangefactor 0
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction + %rangefactor),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

if %wtype2 = ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}
if %wtype2 != ERROR then
{
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
echo
echo Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype2/%wtype1	%wtrains2/%wtrains	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction) + range bonus(%rangefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Melee Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %range-ranged %wtype2/%wtype1 (%weight stones): damage: %puncture/%slice/%impact, force/balance/power: %foi/%balance/%power, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end
}

weapon2:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
if (matchre ("%wtype1", "(HX|LX)")) then var wtrains 11-Xbow
if (matchre ("%wtype1", "(HX|LX)")) then var drawstrength N/A
if (matchre ("%wtype1", "(HX|LX)")) then var adjdraw N/A
if (matchre ("%wtype1", "(bow)")) then var wtrains 12-bow
if (matchre ("%wtype1", "(sling)")) then var wtrains 13-sling
if (matchre ("%wtype1", "(sling)")) then var drawstrength N/A
if (matchre ("%wtype1", "(sling)")) then var adjdraw N/A
evalmath qpointsw round((%foi_weight*%foi + %balance_weight*%balance + %power_weight*%power + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
echo
echo Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%wtype1	%wtrains	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality: %qpointsw (%foi_weight*force(%foi) + %balance_weight*balance(%balance) + %power_weight*power(%power) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ranged Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %wtype1 (%weight stones): force/balance/power: %foi/%balance/%power, draw strength: %drawstrength, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon3:
var foi N/A
var balance N/A
var power N/A
var drawstrength N/A
var adjdraw N/A
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammotype 16-Xbow
if (matchre ("%tapnoun", "(bolts?|quadrellos?|quarrels?|pulzones?)")) then var ammoskill 11-Xbow
if (matchre ("%tapnoun", "(arrows?)")) then var ammotype 19-bow
if (matchre ("%tapnoun", "(arrows?)")) then var ammoskill 12-bow
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammotype 21-sling
if (matchre ("%tapnoun", "(bullets?|clumps?|lumps?|rocks?|shards?)")) then var ammoskill 13-sling
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %sumed_weight*%sumed + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Ammo Damage: %sumd (mean: %meand)
echo Total Physical Damage: %sumpd (mean: %meanpd)
echo Total Elemental Damage: %sumed (mean: %meaned)
echo
echo Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%ammotype ammo	%ammoskill ammo	%tap	%qpointsw	%qpointsww	%weight	%foi	%balance	%power	%drawstrength	%adjdraw	%sumd	%sumpd	%sumed	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Ammo Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Damage: %sumpd (mean: %meanpd)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Damage: %sumed (mean: %meaned)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %sumed_weight*elemental damage(%sumed) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Ammo Quality/Weight: %qpointsww (ammo quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %ammoskill ammo (%weight stones): damage: %puncture/%slice/%impact, force: %foi, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon4:
var fire N/A
var cold N/A
var electric N/A
var sumed N/A
var meaned N/A
var balance N/A
var power N/A
if (matchre ("%tap", "(claws|handwraps?|knuckleguards?|knuckles?)")) then var brawltype 3hand
if (matchre ("%tap", "(elbow)")) then var brawltype 2elbow
if (matchre ("%tap", "(knee)")) then var brawltype 4knee
if (matchre ("%tap", "(footwraps?)")) then var brawltype 5foot
if %impact != ERROR then
{
evalmath sumd %puncture + %slice + %impact
evalmath sumpd %puncture + %slice + %impact
evalmath meand round((%sumpd/3),1)
evalmath meanpd round((%sumpd/3),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
if %impact = ERROR then
{
var impact N/A
evalmath sumd %puncture + %slice
evalmath sumpd %puncture + %slice
evalmath meand round((%sumpd/2),1)
evalmath meanpd round((%sumpd/2),1)
evalmath qpointsw round((%sumpd_weight*%sumpd + %foi_weight*%foi + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)
}
echo
echo Stats for %tap
echo
echo Total Weapon Damage: %sumd (mean: %meand)
echo
echo Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
echo
echo Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-%brawltype	14-brawl-%brawltype	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Weapon Damage: %sumd (mean: %meand)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality: %qpointsw (%sumpd_weight*physical damage(%sumpd) + %foi_weight*force(%foi) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Brawling Weapon Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: brawling-%brawltype (%weight stones): damage: %puncture/%slice/%impact, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

weapon5:
var puncture N/A
var slice N/A
var impact N/A
var fire N/A
var cold N/A
var electric N/A
var sumd N/A
var sumpd N/A
var sumed N/A
var meand N/A
var meanpd N/A
var meaned N/A
var foi N/A
evalmath qpointsw round((%balance_weight*%balance + %construction_weight*%construction),1)
evalmath qpointsww round((%qpointsw/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
echo
echo Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	22-brawl-1parry	14-brawl-1parry	%tap	%qpointsw	%qpointsww	%weight	%sumd	%sumpd	%sumed	%foi	%balance	%power	%construction	%puncture	%slice	%impact	%fire	%cold	%electric	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality: %qpointsw (%balance_weight*balance(%balance) + %construction_weight*construction(%construction))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Parry Stick Quality/Weight: %qpointsww (weapon quality(%qpointsw) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: parry stick (%weight stones): balance: %balance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

shield:
if %stype = large then var sizefactor 2
if %stype = medium then var sizefactor 1
if %stype = small then var sizefactor 0
evalmath sumshield %smin + %smax
evalmath sumd %puncture + %slice + %impact + %fire + %cold + %electric
evalmath sumpd %puncture + %slice + %impact
evalmath sumed %fire + %cold + %electric
evalmath meand round((%sumd/6),1)
evalmath meanpd round((%sumpd/3),1)
evalmath meaned round((%sumed/3),1)
evalmath qpointss round((%smin_weight*%smin + %smax_weight*%smax + %construction_weight*%construction - %shdhindrance_weight*%shdhindrance - %sizefactor),1)
evalmath qpointssw round((%qpointss/(%weight_weight*%weight)),1)

echo
echo Stats for %tap
echo
echo Total Shield Protection: %sumshield
echo
echo Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
echo
echo Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%stype	%tap	%qpointss	%qpointssw	%weight	%sumshield	%smin	%smax	%shdhindrance	%construction	%impact	%balance	%power	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Shield Protection: %sumshield
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality: %qpointss (%smin_weight*min.protection(%smin) + %smax_weight*max.protection(%smax) + %construction_weight*construction(%construction) - %shdhindrance_weight*hindrance(%shdhindrance) - size factor(%sizefactor))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Shield Quality/Weight: %qpointssw (shield quality(%qpointss) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %stype shield (%weight stones): protection: %smin/%smax, hindrance: %shdhindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

armor:
evalmath sumpro %puncturep + %slicep + %impactp + %firep + %coldp + %electricp
evalmath sumabs %puncturea + %slicea + %impacta + %firea + %colda + %electrica
evalmath sumpdef %puncturep + %slicep + %impactp + %puncturea + %slicea + %impacta
evalmath sumedef %firep + %coldp + %electricp + %firea + %colda + %electrica
evalmath sumdef %sumpro + %sumabs
evalmath sumhin %mhindrance + %shindrance
evalmath meanpro round((%sumpro/6),1)
evalmath meanabs round((%sumabs/6),1)
evalmath meanpdef round((%sumpdef/6),1)
evalmath meanedef round((%sumedef/6),1)
evalmath meanhin round((%sumhin/2),1)
evalmath qpointsa round((%sumpro_weight*%sumpro + %sumabs_weight*%sumabs + %sumpdef_weight*%sumpdef + %sumedef_weight*%sumedef + %construction_weight*%construction - %mhindrance_weight*%mhindrance - %shindrance_weight*%shindrance),1)
evalmath qpointsaw round((%qpointsa/(%weight_weight*%weight)),1)
if %covershead = yes && %coverseyes = yes && %coversneck = yes then var area 01-head/eyes/neck
if %covershead = yes && %coverseyes = yes && %coversneck = no then var area 02-head/eyes
if %covershead = yes && %coverseyes = no && %coversneck = yes then var area 03-head/neck
if %covershead = yes && %coverseyes = no && %coversneck = no then var area 04-head
if %covershead = no && %coverseyes = yes && %coversneck = no then var area 05-eyes
if %coversneck = yes && %coverschest = yes && %coversback = yes then var area 06-neck/chest/back
if %covershead = no && %coverseyes = no && %coversneck = yes && %coverschest = no && %coversback = no then var area 07-neck
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = yes then var area 08-torso/arms/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = yes && %coverslegs = no then var area 09-torso/arms
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = yes then var area 10-torso/legs
if %coverschest = yes && %coversabdomen = yes && %coversback = yes && %coversarms = no && %coverslegs = no then var area 11-torso
if %coverschest = yes && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 12-chest/back
if %coverschest = yes && %coversabdomen = no && %coversback = no && %coversarms = no && %coverslegs = no then var area 13-chest
if %coverschest = no && %coversabdomen = yes && %coversback = no && %coversarms = no && %coverslegs = no then var area 14-abdomen
if %coverschest = no && %coversabdomen = no && %coversback = yes && %coversarms = no && %coverslegs = no then var area 15-back
if %coversarms = yes && %covershands = yes then var area 16-arms/hands
if %coverschest = no && %coversarms = yes && %covershands = no then var area 17-arms
if %coverschest = no && %coversarms = no && %covershands = yes then var area 18-hands
if %coverschest = no && %coversarms = no && %coverslegs = yes then var area 19-legs

echo
echo Stats for %tap
echo
echo Total Armor Protection + Absorption: %sumdef
echo Total Armor Protection: %sumpro (mean: %meanpro)
echo Total Armor Absorption: %sumabs (mean: %meanabs)
echo Total Physical Defense: %sumpdef (mean: %meanpdef)
echo Total Elemental Defense: %sumedef (mean: %meanedef)
echo Total Armor Hindrance: %sumhin (mean: %meanhin)
echo
echo Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
echo
echo Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
echo
echo OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
echo
echo %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%atype	%area	%tap	%qpointsa	%qpointsaw	%weight	%sumdef	%sumpro	%sumabs	%sumpdef	%sumedef	%mhindrance	%shindrance	%construction	%sumhin	%puncturep	%puncturea	%slicep	%slicea	%impactp	%impacta	%firep	%firea	%coldp	%colda	%electricp	%electrica	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection + Absorption: %sumdef
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Protection: %sumpro (mean: %meanpro)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Absorption: %sumabs (mean: %meanabs)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Physical Defense: %sumpdef (mean: %meanpdef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Elemental Defense: %sumedef (mean: %meanedef)
put #log >ItemStatsReader-%logtype-$charactername.txt Total Armor Hindrance: %sumhin (mean: %meanhin)
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality: %qpointsa (%sumpro_weight*total protection(%sumpro) + %sumabs_weight*total absorption(%sumabs) + %sumpdef_weight*total physical defense(%sumpdef) + %sumedef_weight*total elemental defense(%sumedef) + %construction_weight*construction(%construction) - %mhindrance_weight*maneuvering hindrance(%mhindrance) - %shindrance_weight*stealth hindrance(%shindrance))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt Armor Quality/Weight: %qpointsaw (armor quality(%qpointsa) / (%weight_weight*weight(%weight)))
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt OOC Numeric Appraisal: %atype (%weight stones): puncture: %puncturep/%puncturea, slice: %slicep/%slicea, impact: %impactp/%impacta, fire: %firep/%firea, cold: %coldp/%colda, electric: %electricp/%electrica, hindrance: %mhindrance/%shindrance, construction: %construction
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

container:
send get my yardstick
waitforre ^You glance|^You quietly get|^You are already holding that
send open my %1 %2
waitforre ^You glance|^You quietly open your|^That is already open|^You can't do that
send measure my %1 %2 with yardstick
wait
pause .5
gosub Dimensionset
evalmath volume %ilsize * %iwsize * %ihsize
echo
echo Stats for %tap
echo
echo interior length: %ilsize
echo interior width: %iwsize
echo interior height: %ihsize
echo carrying capacity: %csize stones
echo volume: %volume (%ilsize * %iwsize * %ihsize)
echo
echo
echo %appcostk	%sourcetype	%source	%tap	%ilsize	%iwsize	%ihsize	%csize	%volume	%wearloc	%weight	Elanthipedia
put #log >ItemStats-%logtype-$charactername.txt %appcostk	%sourcetype	%source	%tap	%ilsize	%iwsize	%ihsize	%csize	%volume	%wearloc	%weight	Elanthipedia
put #log >ItemStatsReader-%logtype-$charactername.txt Stats for %tap
put #log >ItemStatsReader-%logtype-$charactername.txt @
put #log >ItemStatsReader-%logtype-$charactername.txt interior length: %ilsize
put #log >ItemStatsReader-%logtype-$charactername.txt interior width: %iwsize
put #log >ItemStatsReader-%logtype-$charactername.txt interior height: %ihsize
put #log >ItemStatsReader-%logtype-$charactername.txt carrying capacity: %csize stones
put #log >ItemStatsReader-%logtype-$charactername.txt volume: %volume (%ilsize * %iwsize * %ihsize)
put #log >ItemStatsReader-%logtype-$charactername.txt @
echo
goto end

Dimensionset:
if %ilsize = one then var ilsize 1
if %ilsize = two then var ilsize 2
if %ilsize = three then var ilsize 3
if %ilsize = four then var ilsize 4
if %ilsize = five then var ilsize 5
if %ilsize = six then var ilsize 6
if %ilsize = seven then var ilsize 7
if %ilsize = eight then var ilsize 8
if %ilsize = nine then var ilsize 9
if %ilsize = ten then var ilsize 10
if %ilsize = eleven then var ilsize 11
if %ilsize = twelve then var ilsize 12
if %ilsize = thirteen then var ilsize 13
if %ilsize = fourteen then var ilsize 14
if %ilsize = fifteen then var ilsize 15
if %ilsize = sixteen then var ilsize 16
if %ilsize = seventeen then var ilsize 17
if %ilsize = eighteen then var ilsize 18
if %ilsize = nineteen then var ilsize 19
if %ilsize = twenty then var ilsize 20
if %ilsize = twenty-one then var ilsize 21
if %ilsize = twenty-two then var ilsize 22
if %ilsize = twenty-three then var ilsize 23
if %ilsize = twenty-four then var ilsize 24
if %ilsize = twenty-five then var ilsize 25
if %ilsize = twenty-six then var ilsize 26
if %ilsize = twenty-seven then var ilsize 27
if %ilsize = twenty-eight then var ilsize 28
if %ilsize = twenty-nine then var ilsize 29
if %ilsize = thirty then var ilsize 30
if %iwsize = one then var iwsize 1
if %iwsize = two then var iwsize 2
if %iwsize = three then var iwsize 3
if %iwsize = four then var iwsize 4
if %iwsize = five then var iwsize 5
if %iwsize = six then var iwsize 6
if %iwsize = seven then var iwsize 7
if %iwsize = eight then var iwsize 8
if %iwsize = nine then var iwsize 9
if %iwsize = ten then var iwsize 10
if %iwsize = eleven then var iwsize 11
if %iwsize = twelve then var iwsize 12
if %iwsize = thirteen then var iwsize 13
if %iwsize = fourteen then var iwsize 14
if %iwsize = fifteen then var iwsize 15
if %iwsize = sixteen then var iwsize 16
if %iwsize = seventeen then var iwsize 17
if %iwsize = eighteen then var iwsize 18
if %iwsize = nineteen then var iwsize 19
if %iwsize = twenty then var iwsize 20
if %iwsize = twenty-one then var iwsize 21
if %iwsize = twenty-two then var iwsize 22
if %iwsize = twenty-three then var iwsize 23
if %iwsize = twenty-four then var iwsize 24
if %iwsize = twenty-five then var iwsize 25
if %iwsize = twenty-six then var iwsize 26
if %iwsize = twenty-seven then var iwsize 27
if %iwsize = twenty-eight then var iwsize 28
if %iwsize = twenty-nine then var iwsize 29
if %iwsize = thirty then var iwsize 30
if %ihsize = one then var ihsize 1
if %ihsize = two then var ihsize 2
if %ihsize = three then var ihsize 3
if %ihsize = four then var ihsize 4
if %ihsize = five then var ihsize 5
if %ihsize = six then var ihsize 6
if %ihsize = seven then var ihsize 7
if %ihsize = eight then var ihsize 8
if %ihsize = nine then var ihsize 9
if %ihsize = ten then var ihsize 10
if %ihsize = eleven then var ihsize 11
if %ihsize = twelve then var ihsize 12
if %ihsize = thirteen then var ihsize 13
if %ihsize = fourteen then var ihsize 14
if %ihsize = fifteen then var ihsize 15
if %ihsize = sixteen then var ihsize 16
if %ihsize = seventeen then var ihsize 17
if %ihsize = eighteen then var ihsize 18
if %ihsize = nineteen then var ihsize 19
if %ihsize = twenty then var ihsize 20
if %ihsize = twenty-one then var ihsize 21
if %ihsize = twenty-two then var ihsize 22
if %ihsize = twenty-three then var ihsize 23
if %ihsize = twenty-four then var ihsize 24
if %ihsize = twenty-five then var ihsize 25
if %ihsize = twenty-six then var ihsize 26
if %ihsize = twenty-seven then var ihsize 27
if %ihsize = twenty-eight then var ihsize 28
if %ihsize = twenty-nine then var ihsize 29
if %ihsize = thirty then var ihsize 30
return

return:
return

end:
put #class racial on
put #play ScriptEnd
put #flash
put #parse SCRIPT DONE
exit