Object Attributes - Procs, Sockets & Gems

Added a system of new Object Attributes to enable new effects and replace
the old broken weapon att system.

So far, I've created Weapon Spell Procs, Armor Spell Procs, and Armor Sockets.

Procs don't occur naturally in-game with this pull request, they only exist for testing
purposes so far.

Defaults:
Weapons can have a range of proc chances equal to or worse than now (15%).
Dazzle, hold, blind, purge, all the splash spells, and slitherbolt are
random possibilities if no specific spell is specified at attribute
creation. Dazzle procs will use their wielder's karma as a component of
duration. These procs will have a chance to fire off only upon a successful hit.

Note that the splash spell procs are not 'elemental damage enchantments' like
players currently know. Splash spell procs will actually cast the real spell. The
weapon itself does not change damage types.

Your scimitar maims the avar for 20 damage.
Your blast of fire chars the avar for 16 damage.

--------
Lethal in appearance, this weapon is actually only minimally effective.  Its spiked head is made of soft metal and its wooden shaft is thin and brittle.

Upon a successful strike, the runes engraved on this mace will cast purge on the enemy with 24 spellpower 12% of the time.

This mace is in excellent condition, but has been repaired before. (226/226)

This item has the following properties:

2 range
Deals mundane damage
Deals bludgeon damage

------

Defense Gear now has the potential capability to proc spells when you are
struck. The item's description will list this ability if it has it.

Gear can proc spells on you OR on the enemy! Casting buffs on the enemy
when you are struck can be bad, but it can also be good - a Qor
may seek out very low spellpower EE or FA procs, hoping to replace an attacker's
defensive buff with a much weaker version!

Armor procs could be useful for providing utility spells while building,
getting rid of some mules in the process. It could also be useful for
balancing things like dusk rat poison (shields can proc cure poison)
or purge (rebuffing you with a choice PE or two).

Defaults:
- Armor can proc Shadow Form, one of the four elemental resists, Free
Action, Earthquake, or (extremely rarely) Gort. Proc rates are decent
for resists and FA, good for SF, and very low for Gort.

- Shields can proc Magic Shield, Deflect, Blink, and Cure Poison at good
rates. You must make a successful damage reduction check (not the same
as blocking) in order to even get a chance to proc. This basically means
that you must have the block skill.

- Headgear can proc Detect Invis, EE, Night Vision at decent rates, and
Dispel Illusion at a very low rate. Note: you can wear two headgear
items at once in many circumstances. This includes masks, circlets, and
helmets.

- Shirts can proc Super Strength, Bless, and Resist Poison at very low
rates.

- Pants can proc Haste, Remove Curse, and Spiritual Hammer at very low
rates.

---------

Formed from solid sheets of hardened steel, this armor offers protection from all but the most ferocious assault.  It bears the mark of Fehr'loi Qan, a sign of fine workmanship and first rate materials.

When defending against a strike, the runes engraved on this plate armor will cast resist shock on the enemy with 31 spellpower 5% of the time.

This plate armor is without blemish or flaw. (702/702)

This item has the following properties:

6 armor
-200 defense rating
-10% fire resistance
-15% shock resistance

-----------

I've also added sockets and the potential for gems, such as:

This plate armor has three sockets. An attached sapphire teardrop adds 3% cold resistance. 

Armor can have up to 4 sockets, but the max of 4 is extremely rare. More generally, players will probably build with 2-socket armor and keep 3 socket armor for pvp.

A few select non-body-armors can also have 1 socket. Knight's shields, mob-dropped orc shields, and helmets can have 1 socket. Masks always have 1 socket.

Nerudite Armor cannot have sockets. It's anti-magic! And, also, it's already overpowered. Go sit in the corner, nerudite armor! You've been bad.

To be clear, *only armors dropped by monster kills* will have a chance at sockets, and the difficulty of the monster greatly affects max sockets. Also, not all monsters drop all armors, so some combinations of armors and sockets will be ridiculously rare. A 4-socket leather armor, for example, is incredibly unlikely. However, instanced content will provide opportunities for such items, because monsters will be mixed up. You will face difficulty 10 orcs, and you will know the true depths of pain and humiliation, but you will also have great opportunities for 4-socket leather (since they spam drop it so much).

The gems to insert into armor will come from new competitive scenarios. Stay tuned on that. The current prototypes are resistance gems that add 1% - 5% to each of the 8 major elements. 5%, like 4 socket armor, is extremely rare. Most gems players employ will probably be 3%.

I plan to make gems power-neutral, in that, for every gem that adds 1-5% resistance, there will also be an offensive gem that reduces opponent resistances to your attacks by 1-5%. That way fully decked out players are still evenly matched, they've just made different choices. Similarly, a +1 armor gem would have a +1 damage opposite.

Such gems would have very complex implications for who employs them and why. I feel that, as a mage, I would probably stack as much negative enemy fire resist as I could get. Cutting through enemy buffs and resistances is a huge deal. But, of course, that means i don't have those sockets dedicated to resists, and i'm therefore more vulnerable myself. Tough choices.