diff --git a/Global.h b/Global.h index edcd456f2..99178bc05 100644 --- a/Global.h +++ b/Global.h @@ -174,6 +174,39 @@ public: { h & static_cast &>(*this); } + + bmap() + {} + + bmap(const typename std::map::_Myt& _Right) + : std::map(_Right) + {} + + explicit bmap(const typename std::map::key_compare& _Pred) + : std::map(_Pred) + {} + + bmap(const typename std::map::key_compare& _Pred, const typename std::map::allocator_type& _Al) + : std::map(_Pred, _Al) + {} + + template + bmap(_Iter _First, _Iter _Last) + : std::map(_First, _Last) + {} + + template + bmap(_Iter _First, _Iter _Last, + const typename std::map::key_compare& _Pred) + : std::map(_First, _Last, _Pred) + {} + + template + bmap(_Iter _First, _Iter _Last, + const typename std::map::key_compare& _Pred, const typename std::map::allocator_type& _Al) + : std::map(_First, _Last, _Pred, _Al) + {} + }; namespace vstd diff --git a/config/artifacts.json b/config/artifacts.json index 2ed71e773..a28feb0a8 100644 --- a/config/artifacts.json +++ b/config/artifacts.json @@ -1,3554 +1,3734 @@ -[ - { - "id" : 0 - }, - { - "id" : 1 - }, - { - "id" : 2 - }, - { - "id" : 3 - }, - { - "id" : 4 - }, - { - "id" : 5 - }, - { - "id" : 6 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Centaurs Axe", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 7 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Blackshard of the Dead Knight", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 8 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Greater Gnoll's Flail", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 9 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ogre's Club of Havoc", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 10 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sword of Hellfire", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 11 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Titan's Gladius", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 12, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Titan's Gladius", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : -3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 12 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Shield of the Dwarven Lords", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 13 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Shield of the Yawning Dead", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 14 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Buckler of the Gnoll King", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 15 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Targ of the Rampaging Ogre", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 16 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Shield of the Damned", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 17 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sentinel's Shield", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 12, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sentinel's Shield", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : -3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 18 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Helm of the Alabaster Unicorn", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 19 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Skull Helmet", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 20 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Helm of Chaos", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 21 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Crown of the Supreme Magi", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 22 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Hellstorm Helmet", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 23 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Thunder Helmet", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 10, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Thunder Helmet", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : -2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 24 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Breastplate of Petrified Wood", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 25 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Rib Cage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 26 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Scales of the Greater Basilisk", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 27 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Tunic of the Cyclops King", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 28 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Breastplate of Brimstone", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 29 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Titan's Cuirass", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 10, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Titan's Cuirass", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : -2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 30 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Armor of Wonder", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of Wonder", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of Wonder", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of Wonder", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 31 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sandals of the Saint", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sandals of the Saint", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sandals of the Saint", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sandals of the Saint", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 32 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Celestial Necklace of Bliss", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Celestial Necklace of Bliss", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Celestial Necklace of Bliss", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Celestial Necklace of Bliss", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 33 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Lion's Shield of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Lion's Shield of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Lion's Shield of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Lion's Shield of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 34 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sword of Judgement", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sword of Judgement", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sword of Judgement", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sword of Judgement", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 35 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Helm of Heavenly Enlightenment", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Helm of Heavenly Enlightenment", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Helm of Heavenly Enlightenment", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Helm of Heavenly Enlightenment", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 36 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Quiet Eye of the Dragon", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Quiet Eye of the Dragon", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 37 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Red Dragon Flame Tongue", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Red Dragon Flame Tongue", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 38 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Dragon Scale Shield", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Dragon Scale Shield", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 39 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Dragon Scale Armor", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Dragon Scale Armor", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 40 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Dragonbone Greaves", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Dragonbone Greaves", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 41 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Dragon Wing Tabard", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Dragon Wing Tabard", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 42 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Necklace of Dragonteeth", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Necklace of Dragonteeth", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 43 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Crown of Dragontooth", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Crown of Dragontooth", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 44 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Still Eye of the Dragon", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MORALE", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Still Eye of the Dragon +1", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LUCK", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 45 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Clover of Fortune +1", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LUCK", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 46 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Cards of Prophecy +1", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LUCK", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 47 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ladybird of Luck +1", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LUCK", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 48 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Badge of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MORALE", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Badge of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MIND_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 49 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Crest of Valor", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MORALE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 50 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Glyph of Gallantry", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MORALE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 51 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Speculum", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SIGHT_RADIOUS", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 52 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Spyglass", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SIGHT_RADIOUS", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 53 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Amulet of the Undertaker", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 12, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 5, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 54 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Vampire's Cowl", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 12, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 10, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 55 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Dead Man's Boots", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 12, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 15, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 56 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Garniture of Interference", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "MAGIC_RESISTANCE", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 57 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Surcoat of Counterpoise", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "MAGIC_RESISTANCE", - "val" : 10, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 58 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Boots of Polarity", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "MAGIC_RESISTANCE", - "val" : 15, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 59 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Bow of Elven Cherrywood", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 5, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 60 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Bowstring of the Unicorn's Mane", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 10, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 61 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Angel Feather Arrows", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 15, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 62 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Bird of Perception", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 11, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 5, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 63 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Stoic Watchman", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 11, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 10, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 64 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Emblem of Cognizance", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 11, - "turns" : 0, - "type" : "SECONDARY_SKILL_PREMY", - "val" : 15, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 65 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Statesman's Medal", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SURRENDER_DISCOUNT", - "val" : 10, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 66 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Diplomat's Ring", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SURRENDER_DISCOUNT", - "val" : 10, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 67 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ambassador's Sash", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SURRENDER_DISCOUNT", - "val" : 10, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 68 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of the Wayfarer", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACKS_SPEED", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 69 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Equestrian's Gloves", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LAND_MOVEMENT", - "val" : 300, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 70 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Necklace of Ocean Guidance", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SEA_MOVEMENT", - "val" : 1000, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 71 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Angel Wings", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "FLYING_MOVEMENT", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 72 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Charm of Mana", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MANA_REGENERATION", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 73 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Talisman of Mana", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MANA_REGENERATION", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 74 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Mystic Orb of Mana", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MANA_REGENERATION", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 75 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Collar of Conjuring", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SPELL_DURATION", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 76 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of Conjuring", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SPELL_DURATION", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 77 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Cape of Conjuring", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SPELL_DURATION", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 78 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Orb of the Firmament", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "AIR_SPELL_DMG_PREMY", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 79 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Orb of Silt", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "EARTH_SPELL_DMG_PREMY", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 80 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Orb of Tempestuous Fire", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "FIRE_SPELL_DMG_PREMY", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 81 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Orb of Driving Rain", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "WATER_SPELL_DMG_PREMY", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 82 - }, - { - "id" : 83 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Spirit of Oppression", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "BLOCK_MORALE", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 84 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Hourglass of the Evil Hour", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "BLOCK_LUCK", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 85 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Tome of Fire Magic", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "FIRE_SPELLS", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 86 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Tome of Air Magic", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "AIR_SPELLS", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 87 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Tome of Water Magic", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "WATER_SPELLS", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 88 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Tome of Earth Magic", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "EARTH_SPELLS", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 89 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Boots of Levitation", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "WATER_WALKING", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 90 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Golden Bow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "NO_DISTANCE_PENALTY", - "val" : 0, - "valueType" : "ADDITIVE_VALUE" - }, - { - "additionalInfo" : 0, - "description" : "Golden Bow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "NO_WALL_PENALTY", - "val" : 0, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 91 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sphere of Permanence", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 35, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 92 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Orb of Vulnerability", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "NEGATE_ALL_NATURAL_IMMUNITIES", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 93 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of Vitality", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 94 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of Life", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 95 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Vial of Lifeblood", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 96 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Necklace of Swiftness", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACKS_SPEED", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 97 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Boots of Speed", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LAND_MOVEMENT", - "val" : 600, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 98 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Cape of Velocity", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACKS_SPEED", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 99 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Dispassion", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 59, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 100 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Second Sight", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 62, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 101 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Holiness", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 42, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 102 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Life", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 24, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 103 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Death", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 25, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 104 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Free Will", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 60, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 105 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Negativity", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 17, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Pendant of Negativity", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 19, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 106 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Total Recall", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 61, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 107 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Courage", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MORALE", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Pendant of Courage +3", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LUCK", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 108 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Everflowing Crystal Cloak", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 4, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 109 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of Infinite Gems +1", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 5, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 110 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Everpouring Vial of Mercury", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 111 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Inexhaustible Cart of Ore", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 112 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Eversmoking Ring of Sulfur", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 113 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Inexhaustible Cart of Lumber", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 114 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Endless Sack of Gold", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 6, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 1000, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 115 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Endless Bag of Gold", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 6, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 750, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 116 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Endless Purse of Gold", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 6, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 500, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 117 - }, - { - "id" : 118 - }, - { - "id" : 119 - }, - { - "id" : 120 - }, - { - "id" : 121 - }, - { - "id" : 122 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sea Captain's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "WHIRLPOOL_PROTECTION", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sea Captain's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SEA_MOVEMENT", - "val" : 500, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Sea Captain's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "SPELL", - "val" : 3, - "valueType" : "INDEPENDENT_MAX" - }, - { - "additionalInfo" : 0, - "description" : "Sea Captain's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "SPELL", - "val" : 3, - "valueType" : "INDEPENDENT_MAX" - } - ], - "id" : 123 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Spellbinder's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "SPELLS_OF_LEVEL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 124 - }, - { - "id" : 125 - }, - { - "id" : 126 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Vial of Dragon Blood", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Vial of Dragon Blood", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 5, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 127 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 26, - "turns" : 0, - "type" : "SPELL", - "val" : 3, - "valueType" : "INDEPENDENT_MAX" - }, - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 26, - "turns" : 0, - "type" : "SPELL_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 3, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armageddon's Blade", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 128 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Angelic Alliance", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "NONEVIL_ALIGNMENT_MIX", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Angelic Alliance", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 48, - "turns" : 0, - "type" : "OPENING_BATTLE_SPELL", - "val" : 10, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 129 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Cloak of the Undead King", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "IMPROVED_NECROMANCY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 130 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Elixir of Life", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 25, - "valueType" : "PERCENT_TO_BASE" - }, - { - "additionalInfo" : 0, - "description" : "Elixir of Life", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "HP_REGENERATION", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 131 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Armor of the Damned", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 54, - "turns" : 0, - "type" : "OPENING_BATTLE_SPELL", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of the Damned", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 47, - "turns" : 0, - "type" : "OPENING_BATTLE_SPELL", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of the Damned", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 45, - "turns" : 0, - "type" : "OPENING_BATTLE_SPELL", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Armor of the Damned", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 52, - "turns" : 0, - "type" : "OPENING_BATTLE_SPELL", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 132 - }, - { - "id" : 133 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Power of the Dragon Father", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "LEVEL_SPELL_IMMUNITY", - "val" : 4, - "valueType" : "INDEPENDENT_MAX" - } - ], - "id" : 134 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Titan's Thunder", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 57, - "turns" : 0, - "type" : "SPELL", - "val" : 3, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 135 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Admiral's Hat", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "FREE_SHIP_BOARDING", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 136 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Bow of the Sharpshooter", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "NO_DISTANCE_PENALTY", - "val" : 0, - "valueType" : "ADDITIVE_VALUE" - }, - { - "additionalInfo" : 0, - "description" : "Bow of the Sharpshooter", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "NO_WALL_PENALTY", - "val" : 0, - "valueType" : "ADDITIVE_VALUE" - }, - { - "additionalInfo" : 0, - "description" : "Bow of the Sharpshooter", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "FREE_SHOOTING", - "val" : 0, - "valueType" : "ADDITIVE_VALUE" - } - ], - "id" : 137 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Wizard's Well", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "FULL_MANA_REGENERATION", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 138 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Ring of the Magi", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SPELL_DURATION", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 139 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Cornucopia", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Cornucopia", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 3, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Cornucopia", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 4, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 4, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Cornucopia +4", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 5, - "turns" : 0, - "type" : "GENERATE_RESOURCE", - "val" : 4, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 140 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "CASTS", - "val" : 10, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 18, - "turns" : 0, - "type" : "SPELLCASTER", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 21, - "turns" : 0, - "type" : "SPELLCASTER", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "RANDOM_SPELLCASTER", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 63, - "turns" : 0, - "type" : "DAEMON_SUMMONING", - "val" : 10, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 2, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 17, - "turns" : 0, - "type" : "ENCHANTER", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 1, - "turns" : 0, - "type" : "REBIRTH", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "MANA_DRAIN", - "val" : 10, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Magic Wand", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "HEALER", - "val" : 25, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 141 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "NO_DISTANCE_PENALTY", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "ADDITIONAL_ATTACK", - "val" : 2, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 22, - "turns" : 0, - "type" : "SPELL_LIKE_ATTACK", - "val" : 1, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "CATAPULT", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "ACID_BREATH", - "val" : 20, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "SHOTS", - "val" : 200, - "valueType" : "PERCENT_TO_BASE" - }, - { - "additionalInfo" : 1, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 75, - "turns" : 0, - "type" : "SPELL_BEFORE_ATTACK", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 1, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 59, - "turns" : 0, - "type" : "SPELL_AFTER_ATTACK", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 1, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 71, - "turns" : 0, - "type" : "SPELL_AFTER_ATTACK", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 1, - "description" : "Gold Tower Arrow", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 47, - "turns" : 0, - "type" : "SPELL_AFTER_ATTACK", - "val" : 50, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 142 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 100, - "valueType" : "PERCENT_TO_BASE" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 2, - "turns" : 0, - "type" : "CREATURE_DAMAGE", - "val" : 100, - "valueType" : "PERCENT_TO_ALL" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "HP_REGENERATION", - "val" : 50, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "NO_RETALIATION", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "RETURN_AFTER_STRIKE", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "ATTACKS_ALL_ADJACENT", - "val" : 0, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "SPELL_RESISTANCE_AURA", - "val" : 100, - "valueType" : "BASE_NUMBER" - }, - { - "additionalInfo" : 0, - "description" : "Monster's Power", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "DIRECT_DAMAGE_IMMUNITY", - "val" : 0, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 143 - }, - { - "id" : 144 - }, - { - "id" : 145 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Axe of Smashing", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 146 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Mithril Mail", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 12, - "valueType" : "PERCENT_TO_ALL" - } - ], - "id" : 147 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Sword of Sharpness", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "CREATURE_DAMAGE", - "val" : 12, - "valueType" : "PERCENT_TO_ALL" - } - ], - "id" : 148 - }, - { - "id" : 149 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Pendant of Sorcery", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "CASTS", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 150 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Boots of Haste", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACKS_SPEED", - "val" : 1, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 151 - }, - { - "id" : 152 - }, - { - "id" : 153 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Hardened Shield", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : 0, - "turns" : 0, - "type" : "PRIMARY_SKILL", - "val" : 6, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 154 - }, - { - "id" : 155 - }, - { - "bonuses" : [ - { - "additionalInfo" : 0, - "description" : "Warlord's Banner", - "duration" : "PERMANENT", - "effectRange" : "NO_LIMIT", - "source" : "ARTIFACT", - "sourceID" : 0, - "subtype" : -1, - "turns" : 0, - "type" : "STACK_HEALTH", - "val" : 2, - "valueType" : "BASE_NUMBER" - } - ], - "id" : 156 - }, - { - "id" : 157 - }, - { - "id" : 158 - }, - { - "id" : 159 - }, - { - "id" : 160 - }, - { - "id" : 161 - }, - { - "id" : 162 - }, - { - "id" : 163 - }, - { - "id" : 164 - }, - { - "id" : 165 - }, - { - "id" : 166 - }, - { - "id" : 167 - }, - { - "id" : 168 - }, - { - "id" : 169 - }, - { - "id" : 170 - } -] \ No newline at end of file +{ + "artifacts" : [ + { + "id" : 0, + "type" : "Hero" + }, + { + "id" : 1, + "type" : "Hero" + }, + { + "id" : 2, + "type" : "Hero" + }, + { + "id" : 3, + "type" : "Hero" + }, + { + "id" : 4, + "type" : "Hero" + }, + { + "id" : 5, + "type" : "Hero" + }, + { + "id" : 6, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Centaurs Axe", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 7, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Blackshard of the Dead Knight", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 8, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Greater Gnoll's Flail", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 9, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ogre's Club of Havoc", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 10, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sword of Hellfire", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 11, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Titan's Gladius", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 12, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Titan's Gladius", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : -3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 12, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Shield of the Dwarven Lords", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 13, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Shield of the Yawning Dead", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 14, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Buckler of the Gnoll King", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 15, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Targ of the Rampaging Ogre", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 16, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Shield of the Damned", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 17, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sentinel's Shield", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 12, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sentinel's Shield", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : -3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 18, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Helm of the Alabaster Unicorn", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 19, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Skull Helmet", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 20, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Helm of Chaos", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 21, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Crown of the Supreme Magi", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 22, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Hellstorm Helmet", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 23, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Thunder Helmet", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 10, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Thunder Helmet", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : -2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 24, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Breastplate of Petrified Wood", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 25, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Rib Cage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 26, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Scales of the Greater Basilisk", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 27, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Tunic of the Cyclops King", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 28, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Breastplate of Brimstone", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 29, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Titan's Cuirass", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 10, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Titan's Cuirass", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : -2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 30, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Armor of Wonder", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of Wonder", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of Wonder", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of Wonder", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 31, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sandals of the Saint", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sandals of the Saint", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sandals of the Saint", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sandals of the Saint", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 32, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Celestial Necklace of Bliss", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Celestial Necklace of Bliss", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Celestial Necklace of Bliss", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Celestial Necklace of Bliss", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 33, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Lion's Shield of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Lion's Shield of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Lion's Shield of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Lion's Shield of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 34, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sword of Judgement", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sword of Judgement", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sword of Judgement", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sword of Judgement", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 35, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Helm of Heavenly Enlightenment", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Helm of Heavenly Enlightenment", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Helm of Heavenly Enlightenment", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Helm of Heavenly Enlightenment", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 36, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Quiet Eye of the Dragon", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Quiet Eye of the Dragon", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 37, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Red Dragon Flame Tongue", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Red Dragon Flame Tongue", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 38, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Dragon Scale Shield", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Dragon Scale Shield", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 39, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Dragon Scale Armor", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Dragon Scale Armor", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 40, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Dragonbone Greaves", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Dragonbone Greaves", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 41, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Dragon Wing Tabard", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Dragon Wing Tabard", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 42, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Necklace of Dragonteeth", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Necklace of Dragonteeth", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 43, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Crown of Dragontooth", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Crown of Dragontooth", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 44, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Still Eye of the Dragon", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MORALE", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Still Eye of the Dragon +1", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LUCK", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 45, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Clover of Fortune +1", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LUCK", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 46, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Cards of Prophecy +1", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LUCK", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 47, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ladybird of Luck +1", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LUCK", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 48, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Badge of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MORALE", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Badge of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MIND_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 49, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Crest of Valor", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MORALE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 50, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Glyph of Gallantry", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MORALE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 51, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Speculum", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SIGHT_RADIOUS", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 52, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Spyglass", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SIGHT_RADIOUS", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 53, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Amulet of the Undertaker", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 12, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 5, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 54, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Vampire's Cowl", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 12, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 10, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 55, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Dead Man's Boots", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 12, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 15, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 56, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Garniture of Interference", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "MAGIC_RESISTANCE", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 57, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Surcoat of Counterpoise", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "MAGIC_RESISTANCE", + "val" : 10, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 58, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Boots of Polarity", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "MAGIC_RESISTANCE", + "val" : 15, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 59, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Bow of Elven Cherrywood", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 5, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 60, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Bowstring of the Unicorn's Mane", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 10, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 61, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Angel Feather Arrows", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 15, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 62, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Bird of Perception", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 11, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 5, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 63, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Stoic Watchman", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 11, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 10, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 64, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Emblem of Cognizance", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 11, + "turns" : 0, + "type" : "SECONDARY_SKILL_PREMY", + "val" : 15, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 65, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Statesman's Medal", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SURRENDER_DISCOUNT", + "val" : 10, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 66, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Diplomat's Ring", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SURRENDER_DISCOUNT", + "val" : 10, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 67, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ambassador's Sash", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SURRENDER_DISCOUNT", + "val" : 10, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 68, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of the Wayfarer", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACKS_SPEED", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 69, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Equestrian's Gloves", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LAND_MOVEMENT", + "val" : 300, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 70, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Necklace of Ocean Guidance", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SEA_MOVEMENT", + "val" : 1000, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 71, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Angel Wings", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "FLYING_MOVEMENT", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 72, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Charm of Mana", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MANA_REGENERATION", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 73, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Talisman of Mana", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MANA_REGENERATION", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 74, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Mystic Orb of Mana", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MANA_REGENERATION", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 75, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Collar of Conjuring", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SPELL_DURATION", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 76, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of Conjuring", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SPELL_DURATION", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 77, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Cape of Conjuring", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SPELL_DURATION", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 78, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Orb of the Firmament", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "AIR_SPELL_DMG_PREMY", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 79, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Orb of Silt", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "EARTH_SPELL_DMG_PREMY", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 80, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Orb of Tempestuous Fire", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "FIRE_SPELL_DMG_PREMY", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 81, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Orb of Driving Rain", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "WATER_SPELL_DMG_PREMY", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 82, + "type" : "Hero" + }, + { + "id" : 83, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Spirit of Oppression", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "BLOCK_MORALE", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 84, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Hourglass of the Evil Hour", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "BLOCK_LUCK", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 85, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Tome of Fire Magic", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "FIRE_SPELLS", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 86, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Tome of Air Magic", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "AIR_SPELLS", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 87, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Tome of Water Magic", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "WATER_SPELLS", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 88, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Tome of Earth Magic", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "EARTH_SPELLS", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 89, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Boots of Levitation", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "WATER_WALKING", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 90, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Golden Bow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "SHOOTER_ONLY", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "NO_DISTANCE_PENALTY", + "val" : 0, + "valueType" : "ADDITIVE_VALUE" + }, + { + "additionalInfo" : 0, + "description" : "Golden Bow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "SHOOTER_ONLY", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "NO_WALL_PENALTY", + "val" : 0, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 91, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sphere of Permanence", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 35, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 92, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Orb of Vulnerability", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "NEGATE_ALL_NATURAL_IMMUNITIES", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 93, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of Vitality", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 94, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of Life", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 95, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Vial of Lifeblood", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 96, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Necklace of Swiftness", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACKS_SPEED", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 97, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Boots of Speed", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LAND_MOVEMENT", + "val" : 600, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 98, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Cape of Velocity", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACKS_SPEED", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 99, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Dispassion", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 59, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 100, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Second Sight", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 62, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 101, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Holiness", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 42, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 102, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Life", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 24, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 103, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Death", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "IS_UNDEAD", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 25, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 104, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Free Will", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 60, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 105, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Negativity", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 17, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Pendant of Negativity", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 19, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 106, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Total Recall", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 61, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 107, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Courage", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MORALE", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Pendant of Courage +3", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LUCK", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 108, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Everflowing Crystal Cloak", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 4, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 109, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of Infinite Gems +1", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 5, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 110, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Everpouring Vial of Mercury", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 111, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Inexhaustible Cart of Ore", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 112, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Eversmoking Ring of Sulfur", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 113, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Inexhaustible Cart of Lumber", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 114, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Endless Sack of Gold", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 6, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 1000, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 115, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Endless Bag of Gold", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 6, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 750, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 116, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Endless Purse of Gold", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 6, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 500, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 117, + "type" : "Hero" + }, + { + "id" : 118, + "type" : "Hero" + }, + { + "id" : 119, + "type" : "Hero" + }, + { + "id" : 120, + "type" : "Hero" + }, + { + "id" : 121, + "type" : "Hero" + }, + { + "id" : 122, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sea Captain's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "WHIRLPOOL_PROTECTION", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sea Captain's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SEA_MOVEMENT", + "val" : 500, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Sea Captain's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "SPELL", + "val" : 3, + "valueType" : "INDEPENDENT_MAX" + }, + { + "additionalInfo" : 0, + "description" : "Sea Captain's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "SPELL", + "val" : 3, + "valueType" : "INDEPENDENT_MAX" + } + ], + "id" : 123, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Spellbinder's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "SPELLS_OF_LEVEL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 124, + "type" : "Hero" + }, + { + "id" : 125, + "type" : "Hero" + }, + { + "id" : 126, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Vial of Dragon Blood", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "DRAGON_NATURE", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Vial of Dragon Blood", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "DRAGON_NATURE", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 5, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 127, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 26, + "turns" : 0, + "type" : "SPELL", + "val" : 3, + "valueType" : "INDEPENDENT_MAX" + }, + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 26, + "turns" : 0, + "type" : "SPELL_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 3, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armageddon's Blade", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 128, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Angelic Alliance", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "NONEVIL_ALIGNMENT_MIX", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Angelic Alliance", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 48, + "turns" : 0, + "type" : "OPENING_BATTLE_SPELL", + "val" : 10, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 129, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Cloak of the Undead King", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "IMPROVED_NECROMANCY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 130, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Elixir of Life", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 25, + "valueType" : "PERCENT_TO_BASE" + }, + { + "additionalInfo" : 0, + "description" : "Elixir of Life", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "HP_REGENERATION", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 131, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Armor of the Damned", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 54, + "turns" : 0, + "type" : "OPENING_BATTLE_SPELL", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of the Damned", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 47, + "turns" : 0, + "type" : "OPENING_BATTLE_SPELL", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of the Damned", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 45, + "turns" : 0, + "type" : "OPENING_BATTLE_SPELL", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Armor of the Damned", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 52, + "turns" : 0, + "type" : "OPENING_BATTLE_SPELL", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 132, + "type" : "Hero" + }, + { + "id" : 133, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Power of the Dragon Father", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "LEVEL_SPELL_IMMUNITY", + "val" : 4, + "valueType" : "INDEPENDENT_MAX" + } + ], + "id" : 134, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Titan's Thunder", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 57, + "turns" : 0, + "type" : "SPELL", + "val" : 3, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 135, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Admiral's Hat", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "FREE_SHIP_BOARDING", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 136, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Bow of the Sharpshooter", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "SHOOTER_ONLY", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "NO_DISTANCE_PENALTY", + "val" : 0, + "valueType" : "ADDITIVE_VALUE" + }, + { + "additionalInfo" : 0, + "description" : "Bow of the Sharpshooter", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "SHOOTER_ONLY", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "NO_WALL_PENALTY", + "val" : 0, + "valueType" : "ADDITIVE_VALUE" + }, + { + "additionalInfo" : 0, + "description" : "Bow of the Sharpshooter", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "limiter" : "SHOOTER_ONLY", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "FREE_SHOOTING", + "val" : 0, + "valueType" : "ADDITIVE_VALUE" + } + ], + "id" : 137, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Wizard's Well", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "FULL_MANA_REGENERATION", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 138, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Ring of the Magi", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SPELL_DURATION", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 139, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Cornucopia", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Cornucopia", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 3, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Cornucopia", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 4, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 4, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Cornucopia +4", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 5, + "turns" : 0, + "type" : "GENERATE_RESOURCE", + "val" : 4, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 140 + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "CASTS", + "val" : 10, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 18, + "turns" : 0, + "type" : "SPELLCASTER", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 21, + "turns" : 0, + "type" : "SPELLCASTER", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "RANDOM_SPELLCASTER", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 63, + "turns" : 0, + "type" : "DAEMON_SUMMONING", + "val" : 10, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 2, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 17, + "turns" : 0, + "type" : "ENCHANTER", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 1, + "turns" : 0, + "type" : "REBIRTH", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "MANA_DRAIN", + "val" : 10, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Magic Wand", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "HEALER", + "val" : 25, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 141, + "type" : "Creature" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "NO_DISTANCE_PENALTY", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "ADDITIONAL_ATTACK", + "val" : 2, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 22, + "turns" : 0, + "type" : "SPELL_LIKE_ATTACK", + "val" : 1, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "CATAPULT", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "ACID_BREATH", + "val" : 20, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "SHOTS", + "val" : 200, + "valueType" : "PERCENT_TO_BASE" + }, + { + "additionalInfo" : 1, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 75, + "turns" : 0, + "type" : "SPELL_BEFORE_ATTACK", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 1, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 59, + "turns" : 0, + "type" : "SPELL_AFTER_ATTACK", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 1, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 71, + "turns" : 0, + "type" : "SPELL_AFTER_ATTACK", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 1, + "description" : "Gold Tower Arrow", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 47, + "turns" : 0, + "type" : "SPELL_AFTER_ATTACK", + "val" : 50, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 142, + "type" : "Creature" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 100, + "valueType" : "PERCENT_TO_BASE" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 2, + "turns" : 0, + "type" : "CREATURE_DAMAGE", + "val" : 100, + "valueType" : "PERCENT_TO_ALL" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "HP_REGENERATION", + "val" : 50, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "NO_RETALIATION", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "RETURN_AFTER_STRIKE", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "ATTACKS_ALL_ADJACENT", + "val" : 0, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "SPELL_RESISTANCE_AURA", + "val" : 100, + "valueType" : "BASE_NUMBER" + }, + { + "additionalInfo" : 0, + "description" : "Monster's Power", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "DIRECT_DAMAGE_IMMUNITY", + "val" : 0, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 143, + "type" : "Creature" + }, + { + "id" : 144, + "type" : "Hero" + }, + { + "id" : 145, + "type" : "Hero" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Axe of Smashing", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 146, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Mithril Mail", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 12, + "valueType" : "PERCENT_TO_ALL" + } + ], + "id" : 147, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Sword of Sharpness", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "CREATURE_DAMAGE", + "val" : 12, + "valueType" : "PERCENT_TO_ALL" + } + ], + "id" : 148, + "type" : "Commander" + }, + { + "id" : 149, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Pendant of Sorcery", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "CASTS", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 150, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Boots of Haste", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACKS_SPEED", + "val" : 1, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 151, + "type" : "Commander" + }, + { + "id" : 152, + "type" : "Commander" + }, + { + "id" : 153, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Hardened Shield", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : 0, + "turns" : 0, + "type" : "PRIMARY_SKILL", + "val" : 6, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 154, + "type" : "Commander" + }, + { + "id" : 155, + "type" : "Commander" + }, + { + "bonuses" : [ + { + "additionalInfo" : 0, + "description" : "Warlord's Banner", + "duration" : "PERMANENT", + "effectRange" : "NO_LIMIT", + "source" : "ARTIFACT", + "sourceID" : 0, + "subtype" : -1, + "turns" : 0, + "type" : "STACK_HEALTH", + "val" : 2, + "valueType" : "BASE_NUMBER" + } + ], + "id" : 156, + "type" : "Creature" + }, + { + "id" : 157, + "type" : "Hero" + }, + { + "id" : 158, + "type" : "Hero" + }, + { + "id" : 159, + "type" : "Hero" + }, + { + "id" : 160, + "type" : "Hero" + }, + { + "id" : 161, + "type" : "Hero" + }, + { + "id" : 162, + "type" : "Hero" + }, + { + "id" : 163, + "type" : "Hero" + }, + { + "id" : 164, + "type" : "Hero" + }, + { + "id" : 165, + "type" : "Hero" + }, + { + "id" : 166, + "type" : "Hero" + }, + { + "id" : 167, + "type" : "Hero" + }, + { + "id" : 168, + "type" : "Hero" + }, + { + "id" : 169, + "type" : "Hero" + }, + { + "id" : 170, + "type" : "Hero" + } + ] +} \ No newline at end of file diff --git a/lib/CArtHandler.cpp b/lib/CArtHandler.cpp index 80e555882..5446fc5ce 100644 --- a/lib/CArtHandler.cpp +++ b/lib/CArtHandler.cpp @@ -591,326 +591,332 @@ void CArtHandler::makeItCommanderArt( TArtifactInstanceID aid, bool onlyCommande void CArtHandler::addBonuses() { - #define ART_PRIM_SKILL(ID, whichSkill, val) giveArtBonus(ID,Bonus::PRIMARY_SKILL,val,whichSkill) - #define ART_MORALE(ID, val) giveArtBonus(ID,Bonus::MORALE,val) - #define ART_LUCK(ID, val) giveArtBonus(ID,Bonus::LUCK,val) - #define ART_MORALE_AND_LUCK(ID, val) giveArtBonus(ID,Bonus::MORALE_AND_LUCK,val) - #define ART_ALL_PRIM_SKILLS(ID, val) ART_PRIM_SKILL(ID,0,val); ART_PRIM_SKILL(ID,1,val); ART_PRIM_SKILL(ID,2,val); ART_PRIM_SKILL(ID,3,val) - #define ART_ATTACK_AND_DEFENSE(ID, val) ART_PRIM_SKILL(ID,0,val); ART_PRIM_SKILL(ID,1,val) - #define ART_POWER_AND_KNOWLEDGE(ID, val) ART_PRIM_SKILL(ID,2,val); ART_PRIM_SKILL(ID,3,val) +// #define ART_PRIM_SKILL(ID, whichSkill, val) giveArtBonus(ID,Bonus::PRIMARY_SKILL,val,whichSkill) +// #define ART_MORALE(ID, val) giveArtBonus(ID,Bonus::MORALE,val) +// #define ART_LUCK(ID, val) giveArtBonus(ID,Bonus::LUCK,val) +// #define ART_MORALE_AND_LUCK(ID, val) giveArtBonus(ID,Bonus::MORALE_AND_LUCK,val) +// #define ART_ALL_PRIM_SKILLS(ID, val) ART_PRIM_SKILL(ID,0,val); ART_PRIM_SKILL(ID,1,val); ART_PRIM_SKILL(ID,2,val); ART_PRIM_SKILL(ID,3,val) +// #define ART_ATTACK_AND_DEFENSE(ID, val) ART_PRIM_SKILL(ID,0,val); ART_PRIM_SKILL(ID,1,val) +// #define ART_POWER_AND_KNOWLEDGE(ID, val) ART_PRIM_SKILL(ID,2,val); ART_PRIM_SKILL(ID,3,val) +// +// //Propagators/limiters used more than once +// auto battleWidePropagator = bonusPropagatorMap["BATTLE_WIDE"]; +// auto visitedTownPropagator = bonusPropagatorMap["VISITED_TOWN_AND_VISITOR"]; +// +// auto shooterOnlyLimiter = bonusLimiterMap["SHOOTER_ONLY"]; +// auto dragonNatureLimiter = bonusLimiterMap["DRAGON_NATURE"]; +// auto isUndeadLimiter = bonusLimiterMap["IS_UNDEAD"]; - //Propagators/limiters used more than once - auto battleWidePropagator = make_shared(CBonusSystemNode::BATTLE); - auto visitedTownPropagator = make_shared(CBonusSystemNode::TOWN_AND_VISITOR); - - auto shooterOnlyLimiter = make_shared(Bonus::SHOOTER); - auto dragonNatureLimiter = make_shared(Bonus::DRAGON_NATURE); - -// const JsonNode config(ResourceID("config/artifacts.json")); -// BOOST_FOREACH(const JsonNode &artifact, config.Vector()) -// { -// auto ga = artifacts[artifact["id"].Float()].get(); -// -// BOOST_FOREACH (auto b, artifact["bonuses"].Vector()) -// { -// ga->addNewBonus(ParseBonus (b["bonus"].Vector())); -// } -// } - - //Attack bonus artifacts (Weapons) - ART_PRIM_SKILL(7,0,+2); //Centaur Axe - ART_PRIM_SKILL(8,0,+3); //Blackshard of the Dead Knight - ART_PRIM_SKILL(9,0,+4); //Greater Gnoll's Flail - ART_PRIM_SKILL(10,0,+5); //Ogre's Club of Havoc - ART_PRIM_SKILL(11,0,+6); //Sword of Hellfire - ART_PRIM_SKILL(12,0,+12); //Titan's Gladius - ART_PRIM_SKILL(12,1,-3); //Titan's Gladius - - //Defense bonus artifacts (Shields) - ART_PRIM_SKILL(13,1,+2); //Shield of the Dwarven Lords - ART_PRIM_SKILL(14,1,+3); //Shield of the Yawning Dead - ART_PRIM_SKILL(15,1,+4); //Buckler of the Gnoll King - ART_PRIM_SKILL(16,1,+5); //Targ of the Rampaging Ogre - ART_PRIM_SKILL(17,1,+6); //Shield of the Damned - ART_PRIM_SKILL(18,1,+12); //Sentinel's Shield - ART_PRIM_SKILL(18,0,-3); //Sentinel's Shield - - //Knowledge bonus artifacts (Helmets) - ART_PRIM_SKILL(19,3,+1); //Helm of the Alabaster Unicorn - ART_PRIM_SKILL(20,3,+2); //Skull Helmet - ART_PRIM_SKILL(21,3,+3); //Helm of Chaos - ART_PRIM_SKILL(22,3,+4); //Crown of the Supreme Magi - ART_PRIM_SKILL(23,3,+5); //Hellstorm Helmet - ART_PRIM_SKILL(24,3,+10); //Thunder Helmet - ART_PRIM_SKILL(24,2,-2); //Thunder Helmet - - //Spell power bonus artifacts (Armours) - ART_PRIM_SKILL(25,2,+1); //Breastplate of Petrified Wood - ART_PRIM_SKILL(26,2,+2); //Rib Cage - ART_PRIM_SKILL(27,2,+3); //Scales of the Greater Basilisk - ART_PRIM_SKILL(28,2,+4); //Tunic of the Cyclops King - ART_PRIM_SKILL(29,2,+5); //Breastplate of Brimstone - ART_PRIM_SKILL(30,2,+10); //Titan's Cuirass - ART_PRIM_SKILL(30,3,-2); //Titan's Cuirass - - //All primary skills (various) - ART_ALL_PRIM_SKILLS(31,+1); //Armor of Wonder - ART_ALL_PRIM_SKILLS(32,+2); //Sandals of the Saint - ART_ALL_PRIM_SKILLS(33,+3); //Celestial Necklace of Bliss - ART_ALL_PRIM_SKILLS(34,+4); //Lion's Shield of Courage - ART_ALL_PRIM_SKILLS(35,+5); //Sword of Judgement - ART_ALL_PRIM_SKILLS(36,+6); //Helm of Heavenly Enlightenment - - //Attack and Defense (various) - ART_ATTACK_AND_DEFENSE(37,+1); //Quiet Eye of the Dragon - ART_ATTACK_AND_DEFENSE(38,+2); //Red Dragon Flame Tongue - ART_ATTACK_AND_DEFENSE(39,+3); //Dragon Scale Shield - ART_ATTACK_AND_DEFENSE(40,+4); //Dragon Scale Armor - - //Spell power and Knowledge (various) - ART_POWER_AND_KNOWLEDGE(41,+1); //Dragonbone Greaves - ART_POWER_AND_KNOWLEDGE(42,+2); //Dragon Wing Tabard - ART_POWER_AND_KNOWLEDGE(43,+3); //Necklace of Dragonteeth - ART_POWER_AND_KNOWLEDGE(44,+4); //Crown of Dragontooth - - //Luck and morale - ART_MORALE(45,+1); //Still Eye of the Dragon - ART_LUCK(45,+1); //Still Eye of the Dragon - ART_LUCK(46,+1); //Clover of Fortune - ART_LUCK(47,+1); //Cards of Prophecy - ART_LUCK(48,+1); //Ladybird of Luck - ART_MORALE(49,+1); //Badge of Courage -> +1 morale - giveArtBonus(49,Bonus::MIND_IMMUNITY,0); //immunity to hostile mind spells: - ART_MORALE(50,+1); //Crest of Valor - ART_MORALE(51,+1); //Glyph of Gallantry - - giveArtBonus(52,Bonus::SIGHT_RADIOUS,+1);//Speculum - giveArtBonus(53,Bonus::SIGHT_RADIOUS,+1);//Spyglass - - //necromancy bonus - giveArtBonus(54,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Amulet of the Undertaker - giveArtBonus(55,Bonus::SECONDARY_SKILL_PREMY,+10, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Vampire's Cowl - giveArtBonus(56,Bonus::SECONDARY_SKILL_PREMY,+15, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Dead Man's Boots - - giveArtBonus(57,Bonus::MAGIC_RESISTANCE,+5, 0);//Garniture of Interference - giveArtBonus(58,Bonus::MAGIC_RESISTANCE,+10, 0);//Surcoat of Counterpoise - giveArtBonus(59,Bonus::MAGIC_RESISTANCE,+15, 0);//Boots of Polarity - - //archery bonus - giveArtBonus(60,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Bow of Elven Cherrywood - giveArtBonus(61,Bonus::SECONDARY_SKILL_PREMY,+10,CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Bowstring of the Unicorn's Mane - giveArtBonus(62,Bonus::SECONDARY_SKILL_PREMY,+15,CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Angel Feather Arrows - - //eagle eye bonus - giveArtBonus(63,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Bird of Perception - giveArtBonus(64,Bonus::SECONDARY_SKILL_PREMY,+10, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Stoic Watchman - giveArtBonus(65,Bonus::SECONDARY_SKILL_PREMY,+15, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Emblem of Cognizance - - //reducing cost of surrendering - giveArtBonus(66,Bonus::SURRENDER_DISCOUNT,+10);//Statesman's Medal - giveArtBonus(67,Bonus::SURRENDER_DISCOUNT,+10);//Diplomat's Ring - giveArtBonus(68,Bonus::SURRENDER_DISCOUNT,+10);//Ambassador's Sash - - giveArtBonus(69,Bonus::STACKS_SPEED,+1);//Ring of the Wayfarer - - giveArtBonus(70,Bonus::LAND_MOVEMENT,+300);//Equestrian's Gloves - giveArtBonus(71,Bonus::SEA_MOVEMENT,+1000);//Necklace of Ocean Guidance - giveArtBonus(72,Bonus::FLYING_MOVEMENT, 0, 1);//Angel Wings - - giveArtBonus(73,Bonus::MANA_REGENERATION,+1);//Charm of Mana - giveArtBonus(74,Bonus::MANA_REGENERATION,+2);//Talisman of Mana - giveArtBonus(75,Bonus::MANA_REGENERATION,+3);//Mystic Orb of Mana - - giveArtBonus(76,Bonus::SPELL_DURATION,+1);//Collar of Conjuring - giveArtBonus(77,Bonus::SPELL_DURATION,+2);//Ring of Conjuring - giveArtBonus(78,Bonus::SPELL_DURATION,+3);//Cape of Conjuring - - giveArtBonus(79,Bonus::AIR_SPELL_DMG_PREMY,+50);//Orb of the Firmament - giveArtBonus(80,Bonus::EARTH_SPELL_DMG_PREMY,+50);//Orb of Silt - giveArtBonus(81,Bonus::FIRE_SPELL_DMG_PREMY,+50);//Orb of Tempestuous Fire - giveArtBonus(82,Bonus::WATER_SPELL_DMG_PREMY,+50);//Orb of Driving Rain - - giveArtBonus(83,createBonus(Bonus::BLOCK_MAGIC_ABOVE, 2, -1, Bonus::INDEPENDENT_MIN)->addPropagator(battleWidePropagator));//Recanter's Cloak - giveArtBonus(84,Bonus::BLOCK_MORALE,0);//Spirit of Oppression - giveArtBonus(85,Bonus::BLOCK_LUCK,0);//Hourglass of the Evil Hour - - giveArtBonus(86,Bonus::FIRE_SPELLS,0);//Tome of Fire Magic - giveArtBonus(87,Bonus::AIR_SPELLS,0);//Tome of Air Magic - giveArtBonus(88,Bonus::WATER_SPELLS,0);//Tome of Water Magic - giveArtBonus(89,Bonus::EARTH_SPELLS,0);//Tome of Earth Magic - - giveArtBonus(90,Bonus::WATER_WALKING, 0, 1);//Boots of Levitation - giveArtBonus(91,Bonus::NO_DISTANCE_PENALTY,0, 0, 0, shooterOnlyLimiter);//Golden Bow - giveArtBonus(91,Bonus::NO_WALL_PENALTY, 0, 0, 0, shooterOnlyLimiter); - giveArtBonus(92,Bonus::SPELL_IMMUNITY,0,35);//Sphere of Permanence - giveArtBonus(93,Bonus::NEGATE_ALL_NATURAL_IMMUNITIES,0);//Orb of Vulnerability - - giveArtBonus(94,Bonus::STACK_HEALTH,+1);//Ring of Vitality - giveArtBonus(95,Bonus::STACK_HEALTH,+1);//Ring of Life - giveArtBonus(96,Bonus::STACK_HEALTH,+2);//Vial of Lifeblood - - giveArtBonus(97,Bonus::STACKS_SPEED,+1);//Necklace of Swiftness - giveArtBonus(98,Bonus::LAND_MOVEMENT,+600);//Boots of Speed - giveArtBonus(99,Bonus::STACKS_SPEED,+2);//Cape of Velocity - - giveArtBonus(100,Bonus::SPELL_IMMUNITY,0,Spells::BERSERK);//Pendant of Dispassion - giveArtBonus(101,Bonus::SPELL_IMMUNITY,0,Spells::BLIND);//Pendant of Second Sight - giveArtBonus(102,Bonus::SPELL_IMMUNITY,0,Spells::CURSE);//Pendant of Holiness - giveArtBonus(103,Bonus::SPELL_IMMUNITY,0,Spells::DEATH_RIPPLE);//Pendant of Life - giveArtBonus(104,Bonus::SPELL_IMMUNITY,0,Spells::DESTROY_UNDEAD, 1, make_shared(Bonus::UNDEAD));//Pendant of Death does not display info for living stacks - giveArtBonus(105,Bonus::SPELL_IMMUNITY,0,Spells::HYPNOTIZE);//Pendant of Free Will - giveArtBonus(106,Bonus::SPELL_IMMUNITY,0,Spells::LIGHTNING_BOLT);//Pendant of Negativity - giveArtBonus(106,Bonus::SPELL_IMMUNITY,0,Spells::CHAIN_LIGHTNING);//Pendant of Negativity - giveArtBonus(107,Bonus::SPELL_IMMUNITY,0,Spells::FORGETFULNESS);//Pendant of Total Recall - giveArtBonus(108,Bonus::MORALE,+3);//Pendant of Courage - giveArtBonus(108,Bonus::LUCK,+3);//Pendant of Courage - - giveArtBonus(109,Bonus::GENERATE_RESOURCE,+1,4); //Everflowing Crystal Cloak - giveArtBonus(110,Bonus::GENERATE_RESOURCE,+1,5); //Ring of Infinite Gems - giveArtBonus(111,Bonus::GENERATE_RESOURCE,+1,1); //Everpouring Vial of Mercury - giveArtBonus(112,Bonus::GENERATE_RESOURCE,+1,2); //Inexhaustible Cart of Ore - giveArtBonus(113,Bonus::GENERATE_RESOURCE,+1,3); //Eversmoking Ring of Sulfur - giveArtBonus(114,Bonus::GENERATE_RESOURCE,+1,0); //Inexhaustible Cart of Lumber - giveArtBonus(115,Bonus::GENERATE_RESOURCE,+1000, Res::GOLD); //Endless Sack of Gold - giveArtBonus(116,Bonus::GENERATE_RESOURCE,+750, Res::GOLD); //Endless Bag of Gold - giveArtBonus(117,Bonus::GENERATE_RESOURCE,+500, Res::GOLD); //Endless Purse of Gold - - - //Town will receive bonus if hero is visiting town or stays in its garrison. - giveArtBonus(118,Bonus::CREATURE_GROWTH,+5,1, visitedTownPropagator); //Legs of Legion - giveArtBonus(119,Bonus::CREATURE_GROWTH,+4,2, visitedTownPropagator); //Loins of Legion - giveArtBonus(120,Bonus::CREATURE_GROWTH,+3,3, visitedTownPropagator); //Torso of Legion - giveArtBonus(121,Bonus::CREATURE_GROWTH,+2,4, visitedTownPropagator); //Arms of Legion - giveArtBonus(122,Bonus::CREATURE_GROWTH,+1,5, visitedTownPropagator); //Head of Legion - - //Sea Captain's Hat - giveArtBonus(123,Bonus::WHIRLPOOL_PROTECTION,0); - giveArtBonus(123,Bonus::SEA_MOVEMENT,+500); - giveArtBonus(123,Bonus::SPELL,3,0, Bonus::INDEPENDENT_MAX); - giveArtBonus(123,Bonus::SPELL,3,1, Bonus::INDEPENDENT_MAX); - - giveArtBonus(124, Bonus::SPELLS_OF_LEVEL,3,1); //Spellbinder's Hat - giveArtBonus(125, Bonus::BATTLE_NO_FLEEING,0, 0, battleWidePropagator); //Shackles of War - giveArtBonus(126, Bonus::BLOCK_ALL_MAGIC, 0, -1, battleWidePropagator);//Orb of Inhibition - - //vial of dragon blood - giveArtBonus(127, Bonus::PRIMARY_SKILL, +5, PrimarySkill::ATTACK, Bonus::BASE_NUMBER, dragonNatureLimiter); - giveArtBonus(127, Bonus::PRIMARY_SKILL, +5, PrimarySkill::DEFENSE, Bonus::BASE_NUMBER, dragonNatureLimiter); - - //Armageddon's Blade - giveArtBonus(128, Bonus::SPELL, 3, 26, Bonus::INDEPENDENT_MAX); - giveArtBonus(128, Bonus::SPELL_IMMUNITY,0, 26); - ART_ATTACK_AND_DEFENSE(128, +3); - ART_PRIM_SKILL(128, 2, +3); - ART_PRIM_SKILL(128, 3, +6); - - //Angelic Alliance - giveArtBonus(129, Bonus::NONEVIL_ALIGNMENT_MIX, 0); - giveArtBonus(129, Bonus::OPENING_BATTLE_SPELL, 10, 48); // Prayer - - //Cloak of the Undead King - giveArtBonus(130, Bonus::IMPROVED_NECROMANCY, 0); - - //Elixir of Life - giveArtBonus(131, Bonus::STACK_HEALTH, +25, -1, Bonus::PERCENT_TO_BASE); - giveArtBonus(131, Bonus::HP_REGENERATION, +50); - - //Armor of the Damned - giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 54); // Slow - giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 47); // Disrupting Ray - giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 45); // Weakness - giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 52); // Misfortune - - // Statue of Legion - gives only 50% growth - giveArtBonus(133, Bonus::CREATURE_GROWTH_PERCENT, 50, -1, make_shared(CBonusSystemNode::PLAYER)); - - //Power of the Dragon Father - giveArtBonus(134, Bonus::LEVEL_SPELL_IMMUNITY, 4, -1, Bonus::INDEPENDENT_MAX); - - //Titan's Thunder - giveArtBonus(135, Bonus::SPELL, 3, 57); - - //Admiral's Hat - giveArtBonus(136, Bonus::FREE_SHIP_BOARDING, 0); - - //Bow of the Sharpshooter - giveArtBonus(137, Bonus::NO_DISTANCE_PENALTY, 0, 0, 0, shooterOnlyLimiter); - giveArtBonus(137, Bonus::NO_WALL_PENALTY, 0, 0, 0, shooterOnlyLimiter); - giveArtBonus(137, Bonus::FREE_SHOOTING, 0, 0, 0, shooterOnlyLimiter); - - //Wizard's Well - giveArtBonus(138, Bonus::FULL_MANA_REGENERATION, 0); - - //Ring of the Magi - giveArtBonus(139, Bonus::SPELL_DURATION, +50); - - //Cornucopia - giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::MERCURY); - giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::SULFUR); - giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::CRYSTAL); - giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::GEMS); - - - //Stack artifact test - if (VLC->modh->modules.STACK_ARTIFACT) + const JsonNode config(ResourceID("config/artifacts.json")); + BOOST_FOREACH(const JsonNode &artifact, config["artifacts"].Vector()) { - makeItCreatureArt(141); - makeItCreatureArt(142); - makeItCreatureArt(143); - makeItCreatureArt(156); - //Magic Wand - giveArtBonus(141, Bonus::CASTS, 10); - giveArtBonus(141, Bonus::SPELLCASTER, 0, Spells::IMPLOSION); - giveArtBonus(141, Bonus::SPELLCASTER, 0, Spells::FIREBALL); - giveArtBonus(141, Bonus::RANDOM_SPELLCASTER, 0); - giveArtBonus(141, Bonus::DAEMON_SUMMONING, 10, 63); //rise vampire lords - giveArtBonus(141, Bonus::ENCHANTER, 0, Spells::LIGHTNING_BOLT, NULL, 2); - giveArtBonus(141, Bonus::REBIRTH, 1, 1); - giveArtBonus(141, Bonus::MANA_DRAIN, 10); - giveArtBonus(141, Bonus::HEALER, 25); - artifacts[141].get()->setDescription ("Casts Implosion / Fireball, random Genie spell, summons Vampire Lords from corpses, casts Lighthning Bolt every 2 turns, rebirths at least one creature, drains enemy mana and heals"); - //Tower Arrow - giveArtBonus(142, Bonus::NO_DISTANCE_PENALTY, 0); - giveArtBonus(142, Bonus::ADDITIONAL_ATTACK, 2); - giveArtBonus(142, Bonus::SPELL_LIKE_ATTACK, 1, Spells::INFERNO); - giveArtBonus(142, Bonus::CATAPULT, 0); - giveArtBonus(142, Bonus::ACID_BREATH, 20); - giveArtBonus(142, Bonus::SHOTS, 200, 0, Bonus::PERCENT_TO_BASE); - giveArtBonus(142, Bonus::SPELL_BEFORE_ATTACK, 50, Spells::AGE, NULL, 1); - giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::BERSERK, NULL, 1); - giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::POISON, NULL, 1); - giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::DISRUPTING_RAY, NULL, 1); - artifacts[142].get()->setDescription ("Triple shots, triple attack, casts various spells during attack, attacks have range of Inferno, no distance penalty, catapult"); - //Monster's Power - giveArtBonus(143, Bonus::STACK_HEALTH, +100, -1, Bonus::PERCENT_TO_BASE); - giveArtBonus(143, Bonus::CREATURE_DAMAGE, +100, 2, Bonus::PERCENT_TO_ALL); - giveArtBonus(143, Bonus::HP_REGENERATION, 50); - giveArtBonus(143, Bonus::NO_RETALIATION, 0); - giveArtBonus(143, Bonus::RETURN_AFTER_STRIKE, 0); - giveArtBonus(143, Bonus::ATTACKS_ALL_ADJACENT, 0); - giveArtBonus(143, Bonus::SPELL_RESISTANCE_AURA, 100); - giveArtBonus(143, Bonus::DIRECT_DAMAGE_IMMUNITY, 0); - artifacts[143].get()->setDescription ("Double health, double max damage, hp regeneration, can't retaliate, return after strike, attack all around, 100% spell reisstance aura, immune to direct damage spells"); - //Warlord's banner - giveArtBonus(156, Bonus::STACK_HEALTH, +2); - artifacts[156].get()->setDescription ("+2 stack HP"); - - } - if (VLC->modh->modules.COMMANDERS) - { - for (int i = 146; i <= 155; ++i) + auto ga = artifacts[artifact["id"].Float()].get(); + + BOOST_FOREACH (auto b, artifact["bonuses"].Vector()) { - makeItCommanderArt (i); + ga->addNewBonus(ParseBonus (b)); } - ART_PRIM_SKILL (146, 0, +6); //Axe of Smashing - giveArtBonus(147, Bonus::STACK_HEALTH, +12, -1, Bonus::PERCENT_TO_ALL); //Mithril Mail - giveArtBonus(148, Bonus::CREATURE_DAMAGE, +12, 0, Bonus::PERCENT_TO_ALL); //Sword of Sharpness - giveArtBonus(150, Bonus::CASTS, 1); //Pendant of Sorcery - giveArtBonus(151, Bonus::STACKS_SPEED, 1); //Boots of haste - ART_PRIM_SKILL (154, 0, +6); //Hardened Shield + if(artifact["type"].String() == "Creature") + makeItCreatureArt(ga->id); + else if(artifact["type"].String() == "Commander") + makeItCommanderArt(ga->id); } +// //Attack bonus artifacts (Weapons) +// ART_PRIM_SKILL(7,0,+2); //Centaur Axe +// ART_PRIM_SKILL(8,0,+3); //Blackshard of the Dead Knight +// ART_PRIM_SKILL(9,0,+4); //Greater Gnoll's Flail +// ART_PRIM_SKILL(10,0,+5); //Ogre's Club of Havoc +// ART_PRIM_SKILL(11,0,+6); //Sword of Hellfire +// ART_PRIM_SKILL(12,0,+12); //Titan's Gladius +// ART_PRIM_SKILL(12,1,-3); //Titan's Gladius +// +// //Defense bonus artifacts (Shields) +// ART_PRIM_SKILL(13,1,+2); //Shield of the Dwarven Lords +// ART_PRIM_SKILL(14,1,+3); //Shield of the Yawning Dead +// ART_PRIM_SKILL(15,1,+4); //Buckler of the Gnoll King +// ART_PRIM_SKILL(16,1,+5); //Targ of the Rampaging Ogre +// ART_PRIM_SKILL(17,1,+6); //Shield of the Damned +// ART_PRIM_SKILL(18,1,+12); //Sentinel's Shield +// ART_PRIM_SKILL(18,0,-3); //Sentinel's Shield +// +// //Knowledge bonus artifacts (Helmets) +// ART_PRIM_SKILL(19,3,+1); //Helm of the Alabaster Unicorn +// ART_PRIM_SKILL(20,3,+2); //Skull Helmet +// ART_PRIM_SKILL(21,3,+3); //Helm of Chaos +// ART_PRIM_SKILL(22,3,+4); //Crown of the Supreme Magi +// ART_PRIM_SKILL(23,3,+5); //Hellstorm Helmet +// ART_PRIM_SKILL(24,3,+10); //Thunder Helmet +// ART_PRIM_SKILL(24,2,-2); //Thunder Helmet +// +// //Spell power bonus artifacts (Armours) +// ART_PRIM_SKILL(25,2,+1); //Breastplate of Petrified Wood +// ART_PRIM_SKILL(26,2,+2); //Rib Cage +// ART_PRIM_SKILL(27,2,+3); //Scales of the Greater Basilisk +// ART_PRIM_SKILL(28,2,+4); //Tunic of the Cyclops King +// ART_PRIM_SKILL(29,2,+5); //Breastplate of Brimstone +// ART_PRIM_SKILL(30,2,+10); //Titan's Cuirass +// ART_PRIM_SKILL(30,3,-2); //Titan's Cuirass +// +// //All primary skills (various) +// ART_ALL_PRIM_SKILLS(31,+1); //Armor of Wonder +// ART_ALL_PRIM_SKILLS(32,+2); //Sandals of the Saint +// ART_ALL_PRIM_SKILLS(33,+3); //Celestial Necklace of Bliss +// ART_ALL_PRIM_SKILLS(34,+4); //Lion's Shield of Courage +// ART_ALL_PRIM_SKILLS(35,+5); //Sword of Judgement +// ART_ALL_PRIM_SKILLS(36,+6); //Helm of Heavenly Enlightenment +// +// //Attack and Defense (various) +// ART_ATTACK_AND_DEFENSE(37,+1); //Quiet Eye of the Dragon +// ART_ATTACK_AND_DEFENSE(38,+2); //Red Dragon Flame Tongue +// ART_ATTACK_AND_DEFENSE(39,+3); //Dragon Scale Shield +// ART_ATTACK_AND_DEFENSE(40,+4); //Dragon Scale Armor +// +// //Spell power and Knowledge (various) +// ART_POWER_AND_KNOWLEDGE(41,+1); //Dragonbone Greaves +// ART_POWER_AND_KNOWLEDGE(42,+2); //Dragon Wing Tabard +// ART_POWER_AND_KNOWLEDGE(43,+3); //Necklace of Dragonteeth +// ART_POWER_AND_KNOWLEDGE(44,+4); //Crown of Dragontooth +// +// //Luck and morale +// ART_MORALE(45,+1); //Still Eye of the Dragon +// ART_LUCK(45,+1); //Still Eye of the Dragon +// ART_LUCK(46,+1); //Clover of Fortune +// ART_LUCK(47,+1); //Cards of Prophecy +// ART_LUCK(48,+1); //Ladybird of Luck +// ART_MORALE(49,+1); //Badge of Courage -> +1 morale +// giveArtBonus(49,Bonus::MIND_IMMUNITY,0); //immunity to hostile mind spells: +// ART_MORALE(50,+1); //Crest of Valor +// ART_MORALE(51,+1); //Glyph of Gallantry +// +// giveArtBonus(52,Bonus::SIGHT_RADIOUS,+1);//Speculum +// giveArtBonus(53,Bonus::SIGHT_RADIOUS,+1);//Spyglass +// +// //necromancy bonus +// giveArtBonus(54,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Amulet of the Undertaker +// giveArtBonus(55,Bonus::SECONDARY_SKILL_PREMY,+10, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Vampire's Cowl +// giveArtBonus(56,Bonus::SECONDARY_SKILL_PREMY,+15, CGHeroInstance::NECROMANCY, Bonus::ADDITIVE_VALUE);//Dead Man's Boots +// +// giveArtBonus(57,Bonus::MAGIC_RESISTANCE,+5, 0);//Garniture of Interference +// giveArtBonus(58,Bonus::MAGIC_RESISTANCE,+10, 0);//Surcoat of Counterpoise +// giveArtBonus(59,Bonus::MAGIC_RESISTANCE,+15, 0);//Boots of Polarity +// +// //archery bonus +// giveArtBonus(60,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Bow of Elven Cherrywood +// giveArtBonus(61,Bonus::SECONDARY_SKILL_PREMY,+10,CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Bowstring of the Unicorn's Mane +// giveArtBonus(62,Bonus::SECONDARY_SKILL_PREMY,+15,CGHeroInstance::ARCHERY, Bonus::ADDITIVE_VALUE);//Angel Feather Arrows +// +// //eagle eye bonus +// giveArtBonus(63,Bonus::SECONDARY_SKILL_PREMY,+5, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Bird of Perception +// giveArtBonus(64,Bonus::SECONDARY_SKILL_PREMY,+10, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Stoic Watchman +// giveArtBonus(65,Bonus::SECONDARY_SKILL_PREMY,+15, CGHeroInstance::EAGLE_EYE, Bonus::ADDITIVE_VALUE);//Emblem of Cognizance +// +// //reducing cost of surrendering +// giveArtBonus(66,Bonus::SURRENDER_DISCOUNT,+10);//Statesman's Medal +// giveArtBonus(67,Bonus::SURRENDER_DISCOUNT,+10);//Diplomat's Ring +// giveArtBonus(68,Bonus::SURRENDER_DISCOUNT,+10);//Ambassador's Sash +// +// giveArtBonus(69,Bonus::STACKS_SPEED,+1);//Ring of the Wayfarer +// +// giveArtBonus(70,Bonus::LAND_MOVEMENT,+300);//Equestrian's Gloves +// giveArtBonus(71,Bonus::SEA_MOVEMENT,+1000);//Necklace of Ocean Guidance +// giveArtBonus(72,Bonus::FLYING_MOVEMENT, 0, 1);//Angel Wings +// +// giveArtBonus(73,Bonus::MANA_REGENERATION,+1);//Charm of Mana +// giveArtBonus(74,Bonus::MANA_REGENERATION,+2);//Talisman of Mana +// giveArtBonus(75,Bonus::MANA_REGENERATION,+3);//Mystic Orb of Mana +// +// giveArtBonus(76,Bonus::SPELL_DURATION,+1);//Collar of Conjuring +// giveArtBonus(77,Bonus::SPELL_DURATION,+2);//Ring of Conjuring +// giveArtBonus(78,Bonus::SPELL_DURATION,+3);//Cape of Conjuring +// +// giveArtBonus(79,Bonus::AIR_SPELL_DMG_PREMY,+50);//Orb of the Firmament +// giveArtBonus(80,Bonus::EARTH_SPELL_DMG_PREMY,+50);//Orb of Silt +// giveArtBonus(81,Bonus::FIRE_SPELL_DMG_PREMY,+50);//Orb of Tempestuous Fire +// giveArtBonus(82,Bonus::WATER_SPELL_DMG_PREMY,+50);//Orb of Driving Rain +// +// giveArtBonus(83,createBonus(Bonus::BLOCK_MAGIC_ABOVE, 2, -1, Bonus::INDEPENDENT_MIN)->addPropagator(battleWidePropagator));//Recanter's Cloak +// giveArtBonus(84,Bonus::BLOCK_MORALE,0);//Spirit of Oppression +// giveArtBonus(85,Bonus::BLOCK_LUCK,0);//Hourglass of the Evil Hour +// +// giveArtBonus(86,Bonus::FIRE_SPELLS,0);//Tome of Fire Magic +// giveArtBonus(87,Bonus::AIR_SPELLS,0);//Tome of Air Magic +// giveArtBonus(88,Bonus::WATER_SPELLS,0);//Tome of Water Magic +// giveArtBonus(89,Bonus::EARTH_SPELLS,0);//Tome of Earth Magic +// +// giveArtBonus(90,Bonus::WATER_WALKING, 0, 1);//Boots of Levitation +// giveArtBonus(91,Bonus::NO_DISTANCE_PENALTY,0, 0, 0, shooterOnlyLimiter);//Golden Bow +// giveArtBonus(91,Bonus::NO_WALL_PENALTY, 0, 0, 0, shooterOnlyLimiter); +// giveArtBonus(92,Bonus::SPELL_IMMUNITY,0,35);//Sphere of Permanence +// giveArtBonus(93,Bonus::NEGATE_ALL_NATURAL_IMMUNITIES,0);//Orb of Vulnerability +// +// giveArtBonus(94,Bonus::STACK_HEALTH,+1);//Ring of Vitality +// giveArtBonus(95,Bonus::STACK_HEALTH,+1);//Ring of Life +// giveArtBonus(96,Bonus::STACK_HEALTH,+2);//Vial of Lifeblood +// +// giveArtBonus(97,Bonus::STACKS_SPEED,+1);//Necklace of Swiftness +// giveArtBonus(98,Bonus::LAND_MOVEMENT,+600);//Boots of Speed +// giveArtBonus(99,Bonus::STACKS_SPEED,+2);//Cape of Velocity +// +// giveArtBonus(100,Bonus::SPELL_IMMUNITY,0,Spells::BERSERK);//Pendant of Dispassion +// giveArtBonus(101,Bonus::SPELL_IMMUNITY,0,Spells::BLIND);//Pendant of Second Sight +// giveArtBonus(102,Bonus::SPELL_IMMUNITY,0,Spells::CURSE);//Pendant of Holiness +// giveArtBonus(103,Bonus::SPELL_IMMUNITY,0,Spells::DEATH_RIPPLE);//Pendant of Life +// giveArtBonus(104,Bonus::SPELL_IMMUNITY,0,Spells::DESTROY_UNDEAD, 1, isUndeadLimiter);//Pendant of Death does not display info for living stacks +// giveArtBonus(105,Bonus::SPELL_IMMUNITY,0,Spells::HYPNOTIZE);//Pendant of Free Will +// giveArtBonus(106,Bonus::SPELL_IMMUNITY,0,Spells::LIGHTNING_BOLT);//Pendant of Negativity +// giveArtBonus(106,Bonus::SPELL_IMMUNITY,0,Spells::CHAIN_LIGHTNING);//Pendant of Negativity +// giveArtBonus(107,Bonus::SPELL_IMMUNITY,0,Spells::FORGETFULNESS);//Pendant of Total Recall +// giveArtBonus(108,Bonus::MORALE,+3);//Pendant of Courage +// giveArtBonus(108,Bonus::LUCK,+3);//Pendant of Courage +// +// giveArtBonus(109,Bonus::GENERATE_RESOURCE,+1,4); //Everflowing Crystal Cloak +// giveArtBonus(110,Bonus::GENERATE_RESOURCE,+1,5); //Ring of Infinite Gems +// giveArtBonus(111,Bonus::GENERATE_RESOURCE,+1,1); //Everpouring Vial of Mercury +// giveArtBonus(112,Bonus::GENERATE_RESOURCE,+1,2); //Inexhaustible Cart of Ore +// giveArtBonus(113,Bonus::GENERATE_RESOURCE,+1,3); //Eversmoking Ring of Sulfur +// giveArtBonus(114,Bonus::GENERATE_RESOURCE,+1,0); //Inexhaustible Cart of Lumber +// giveArtBonus(115,Bonus::GENERATE_RESOURCE,+1000, Res::GOLD); //Endless Sack of Gold +// giveArtBonus(116,Bonus::GENERATE_RESOURCE,+750, Res::GOLD); //Endless Bag of Gold +// giveArtBonus(117,Bonus::GENERATE_RESOURCE,+500, Res::GOLD); //Endless Purse of Gold +// +// +// //Town will receive bonus if hero is visiting town or stays in its garrison. +// giveArtBonus(118,Bonus::CREATURE_GROWTH,+5,1, visitedTownPropagator); //Legs of Legion +// giveArtBonus(119,Bonus::CREATURE_GROWTH,+4,2, visitedTownPropagator); //Loins of Legion +// giveArtBonus(120,Bonus::CREATURE_GROWTH,+3,3, visitedTownPropagator); //Torso of Legion +// giveArtBonus(121,Bonus::CREATURE_GROWTH,+2,4, visitedTownPropagator); //Arms of Legion +// giveArtBonus(122,Bonus::CREATURE_GROWTH,+1,5, visitedTownPropagator); //Head of Legion +// +// //Sea Captain's Hat +// giveArtBonus(123,Bonus::WHIRLPOOL_PROTECTION,0); +// giveArtBonus(123,Bonus::SEA_MOVEMENT,+500); +// giveArtBonus(123,Bonus::SPELL,3,0, Bonus::INDEPENDENT_MAX); +// giveArtBonus(123,Bonus::SPELL,3,1, Bonus::INDEPENDENT_MAX); +// +// giveArtBonus(124, Bonus::SPELLS_OF_LEVEL,3,1); //Spellbinder's Hat +// giveArtBonus(125, Bonus::BATTLE_NO_FLEEING,0, 0, battleWidePropagator); //Shackles of War +// giveArtBonus(126, Bonus::BLOCK_ALL_MAGIC, 0, -1, battleWidePropagator);//Orb of Inhibition +// +// //vial of dragon blood +// giveArtBonus(127, Bonus::PRIMARY_SKILL, +5, PrimarySkill::ATTACK, Bonus::BASE_NUMBER, dragonNatureLimiter); +// giveArtBonus(127, Bonus::PRIMARY_SKILL, +5, PrimarySkill::DEFENSE, Bonus::BASE_NUMBER, dragonNatureLimiter); +// +// //Armageddon's Blade +// giveArtBonus(128, Bonus::SPELL, 3, 26, Bonus::INDEPENDENT_MAX); +// giveArtBonus(128, Bonus::SPELL_IMMUNITY,0, 26); +// ART_ATTACK_AND_DEFENSE(128, +3); +// ART_PRIM_SKILL(128, 2, +3); +// ART_PRIM_SKILL(128, 3, +6); +// +// //Angelic Alliance +// giveArtBonus(129, Bonus::NONEVIL_ALIGNMENT_MIX, 0); +// giveArtBonus(129, Bonus::OPENING_BATTLE_SPELL, 10, 48); // Prayer +// +// //Cloak of the Undead King +// giveArtBonus(130, Bonus::IMPROVED_NECROMANCY, 0); +// +// //Elixir of Life +// giveArtBonus(131, Bonus::STACK_HEALTH, +25, -1, Bonus::PERCENT_TO_BASE); +// giveArtBonus(131, Bonus::HP_REGENERATION, +50); +// +// //Armor of the Damned +// giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 54); // Slow +// giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 47); // Disrupting Ray +// giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 45); // Weakness +// giveArtBonus(132, Bonus::OPENING_BATTLE_SPELL, 50, 52); // Misfortune +// +// // Statue of Legion - gives only 50% growth +// giveArtBonus(133, Bonus::CREATURE_GROWTH_PERCENT, 50, -1, make_shared(CBonusSystemNode::PLAYER)); +// +// //Power of the Dragon Father +// giveArtBonus(134, Bonus::LEVEL_SPELL_IMMUNITY, 4, -1, Bonus::INDEPENDENT_MAX); +// +// //Titan's Thunder +// giveArtBonus(135, Bonus::SPELL, 3, 57); +// +// //Admiral's Hat +// giveArtBonus(136, Bonus::FREE_SHIP_BOARDING, 0); +// +// //Bow of the Sharpshooter +// giveArtBonus(137, Bonus::NO_DISTANCE_PENALTY, 0, 0, 0, shooterOnlyLimiter); +// giveArtBonus(137, Bonus::NO_WALL_PENALTY, 0, 0, 0, shooterOnlyLimiter); +// giveArtBonus(137, Bonus::FREE_SHOOTING, 0, 0, 0, shooterOnlyLimiter); +// +// //Wizard's Well +// giveArtBonus(138, Bonus::FULL_MANA_REGENERATION, 0); +// +// //Ring of the Magi +// giveArtBonus(139, Bonus::SPELL_DURATION, +50); +// +// //Cornucopia +// giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::MERCURY); +// giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::SULFUR); +// giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::CRYSTAL); +// giveArtBonus(140, Bonus::GENERATE_RESOURCE, +4, Res::GEMS); +// +// +// //Stack artifact test +// if (VLC->modh->modules.STACK_ARTIFACT) +// { +// makeItCreatureArt(141); +// makeItCreatureArt(142); +// makeItCreatureArt(143); +// makeItCreatureArt(156); +// //Magic Wand +// giveArtBonus(141, Bonus::CASTS, 10); +// giveArtBonus(141, Bonus::SPELLCASTER, 0, Spells::IMPLOSION); +// giveArtBonus(141, Bonus::SPELLCASTER, 0, Spells::FIREBALL); +// giveArtBonus(141, Bonus::RANDOM_SPELLCASTER, 0); +// giveArtBonus(141, Bonus::DAEMON_SUMMONING, 10, 63); //rise vampire lords +// giveArtBonus(141, Bonus::ENCHANTER, 0, Spells::LIGHTNING_BOLT, NULL, 2); +// giveArtBonus(141, Bonus::REBIRTH, 1, 1); +// giveArtBonus(141, Bonus::MANA_DRAIN, 10); +// giveArtBonus(141, Bonus::HEALER, 25); +// artifacts[141].get()->setDescription ("Casts Implosion / Fireball, random Genie spell, summons Vampire Lords from corpses, casts Lighthning Bolt every 2 turns, rebirths at least one creature, drains enemy mana and heals"); +// //Tower Arrow +// giveArtBonus(142, Bonus::NO_DISTANCE_PENALTY, 0); +// giveArtBonus(142, Bonus::ADDITIONAL_ATTACK, 2); +// giveArtBonus(142, Bonus::SPELL_LIKE_ATTACK, 1, Spells::INFERNO); +// giveArtBonus(142, Bonus::CATAPULT, 0); +// giveArtBonus(142, Bonus::ACID_BREATH, 20); +// giveArtBonus(142, Bonus::SHOTS, 200, 0, Bonus::PERCENT_TO_BASE); +// giveArtBonus(142, Bonus::SPELL_BEFORE_ATTACK, 50, Spells::AGE, NULL, 1); +// giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::BERSERK, NULL, 1); +// giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::POISON, NULL, 1); +// giveArtBonus(142, Bonus::SPELL_AFTER_ATTACK, 50, Spells::DISRUPTING_RAY, NULL, 1); +// artifacts[142].get()->setDescription ("Triple shots, triple attack, casts various spells during attack, attacks have range of Inferno, no distance penalty, catapult"); +// //Monster's Power +// giveArtBonus(143, Bonus::STACK_HEALTH, +100, -1, Bonus::PERCENT_TO_BASE); +// giveArtBonus(143, Bonus::CREATURE_DAMAGE, +100, 2, Bonus::PERCENT_TO_ALL); +// giveArtBonus(143, Bonus::HP_REGENERATION, 50); +// giveArtBonus(143, Bonus::NO_RETALIATION, 0); +// giveArtBonus(143, Bonus::RETURN_AFTER_STRIKE, 0); +// giveArtBonus(143, Bonus::ATTACKS_ALL_ADJACENT, 0); +// giveArtBonus(143, Bonus::SPELL_RESISTANCE_AURA, 100); +// giveArtBonus(143, Bonus::DIRECT_DAMAGE_IMMUNITY, 0); +// artifacts[143].get()->setDescription ("Double health, double max damage, hp regeneration, can't retaliate, return after strike, attack all around, 100% spell reisstance aura, immune to direct damage spells"); +// //Warlord's banner +// giveArtBonus(156, Bonus::STACK_HEALTH, +2); +// artifacts[156].get()->setDescription ("+2 stack HP"); +// +// } +// if (VLC->modh->modules.COMMANDERS) +// { +// for (int i = 146; i <= 155; ++i) +// { +// makeItCommanderArt (i); +// } +// ART_PRIM_SKILL (146, 0, +6); //Axe of Smashing +// giveArtBonus(147, Bonus::STACK_HEALTH, +12, -1, Bonus::PERCENT_TO_ALL); //Mithril Mail +// giveArtBonus(148, Bonus::CREATURE_DAMAGE, +12, 0, Bonus::PERCENT_TO_ALL); //Sword of Sharpness +// giveArtBonus(150, Bonus::CASTS, 1); //Pendant of Sorcery +// giveArtBonus(151, Bonus::STACKS_SPEED, 1); //Boots of haste +// ART_PRIM_SKILL (154, 0, +6); //Hardened Shield +// } +// // JsonNode cfg; +// JsonNode artifs; // BOOST_FOREACH(auto art, artifacts) // { // JsonNode jn; @@ -921,11 +927,19 @@ void CArtHandler::addBonuses() // UnparseBonus(bn, b); // jn["bonuses"].Vector().push_back(bn); // } -// cfg.Vector().push_back(jn); -// } // +// if(art->id < 140 || art-> id == 144 || art->id == 145 || art->id > 156) +// jn["type"].String() = "Hero"; +// else if((art->id >= 141 && art->id < 144) || art->id == 156) +// jn["type"].String() = "Creature"; +// else if(art-> id >= 146 && art->id <= 155) +// jn["type"].String() = "Commander"; +// +// artifs.Vector().push_back(jn); +// } +// cfg["artifacts"] = artifs; // std::ofstream artconfigOutput("config/artifacts.json"); -// JsonWriter(artconfigOutput, cfg); +// JsonWriter(artconfigOutput, cfg); } void CArtHandler::clear() diff --git a/lib/CArtHandler.h b/lib/CArtHandler.h index 045626bb6..a43d5630c 100644 --- a/lib/CArtHandler.h +++ b/lib/CArtHandler.h @@ -219,8 +219,6 @@ public: void getAllowed(std::vector > &out, int flags); void erasePickedArt (TArtifactInstanceID id); bool isBigArtifact (TArtifactID artID) const {return bigArtifacts.find(artID) != bigArtifacts.end();} -// void equipArtifact (std::map &artifWorn, ui16 slotID, const CArtifact* art) const; -// void unequipArtifact (std::map &artifWorn, ui16 slotID) const; void initAllowedArtifactsList(const std::vector &allowed); //allowed[art_id] -> 0 if not allowed, 1 if allowed static int convertMachineID(int id, bool creToArt); void makeItCreatureArt (TArtifactInstanceID aid, bool onlyCreature = true); diff --git a/lib/HeroBonus.cpp b/lib/HeroBonus.cpp index e382a8ad2..9683c9fc0 100644 --- a/lib/HeroBonus.cpp +++ b/lib/HeroBonus.cpp @@ -48,11 +48,12 @@ const std::map bonusLimitEffect = boost::assign::map_list_of BONUS_ITEM(ONLY_MELEE_FIGHT) BONUS_ITEM(ONLY_ENEMY_ARMY); -const std::map bonusLimiterMap = boost::assign::map_list_of +const bmap bonusLimiterMap = boost::assign::map_list_of ("SHOOTER_ONLY", make_shared(Bonus::SHOOTER)) - ("DRAGON_NATURE", make_shared(Bonus::DRAGON_NATURE)); + ("DRAGON_NATURE", make_shared(Bonus::DRAGON_NATURE)) + ("IS_UNDEAD", make_shared(Bonus::UNDEAD)); -const std::map bonusPropagatorMap = boost::assign::map_list_of +const bmap bonusPropagatorMap = boost::assign::map_list_of ("BATTLE_WIDE", make_shared(CBonusSystemNode::BATTLE)) ("VISITED_TOWN_AND_VISITOR", make_shared(CBonusSystemNode::TOWN_AND_VISITOR)); diff --git a/lib/HeroBonus.h b/lib/HeroBonus.h index 720cfe6f9..00515dc5c 100644 --- a/lib/HeroBonus.h +++ b/lib/HeroBonus.h @@ -879,8 +879,8 @@ namespace Selector } extern DLL_LINKAGE const std::map bonusNameMap, bonusValueMap, bonusSourceMap, bonusDurationMap, bonusLimitEffect; -extern DLL_LINKAGE const std::map bonusLimiterMap; -extern DLL_LINKAGE const std::map bonusPropagatorMap; +extern DLL_LINKAGE const bmap bonusLimiterMap; +extern DLL_LINKAGE const bmap bonusPropagatorMap; // BonusList template that requires full interface of CBonusSystemNode template diff --git a/lib/JsonNode.cpp b/lib/JsonNode.cpp index 2ac76a6ef..a8fcc2e00 100644 --- a/lib/JsonNode.cpp +++ b/lib/JsonNode.cpp @@ -992,50 +992,61 @@ Bonus * ParseBonus (const JsonNode &ability) value = &ability["effectRange"]; if (!value->isNull()) - b->valType = parseByMap(bonusValueMap, value, "effect range "); + b->valType = parseByMap(bonusLimitEffect, value, "effect range "); value = &ability["duration"]; if (!value->isNull()) - b->valType = parseByMap(bonusValueMap, value, "duration type "); + b->valType = parseByMap(bonusDurationMap, value, "duration type "); value = &ability["source"]; if (!value->isNull()) - b->valType = parseByMap(bonusValueMap, value, "source type "); + b->valType = parseByMap(bonusSourceMap, value, "source type "); -// value = &ability["limiter"]; -// if (!value->isNull()) -// b->limiter = parseByMap(bonusLimiterMap, value, "limiter type "); -// -// -// value = &ability["propagator"]; -// if (!value->isNull()) -// b->propagator = parseByMap(bonusLimiterMap, value, "propagator type "); + value = &ability["limiter"]; + if (!value->isNull()) + b->limiter = parseByMap(bonusLimiterMap, value, "limiter type "); + + value = &ability["propagator"]; + if (!value->isNull()) + b->propagator = parseByMap(bonusPropagatorMap, value, "propagator type "); return b; } +//returns first Key with value equal to given one +template +Key reverseMapFirst(const Val & val, const std::map map) +{ + BOOST_FOREACH(auto it, map) + { + if(it.second == val) + { + return it.first; + } + } + assert(0); + return ""; +} + DLL_LINKAGE void UnparseBonus( JsonNode &node, const Bonus * bonus ) { - auto reverseMap = [](const int & val, const std::map map) -> std::string - { - BOOST_FOREACH(auto it, map) - { - if(it.second == val) - { - return it.first; - } - } - assert(0); - return ""; - }; - - node["type"].String() = reverseMap(bonus->type, bonusNameMap); + node["type"].String() = reverseMapFirst(bonus->type, bonusNameMap); node["subtype"].Float() = bonus->subtype; node["val"].Float() = bonus->val; - node["valueType"].String() = reverseMap(bonus->valType, bonusValueMap); + node["valueType"].String() = reverseMapFirst(bonus->valType, bonusValueMap); node["additionalInfo"].Float() = bonus->additionalInfo; node["turns"].Float() = bonus->turnsRemain; node["sourceID"].Float() = bonus->source; node["description"].String() = bonus->description; - node["effectRange"].String() = reverseMap(bonus->effectRange, bonusLimitEffect); - node["duration"].String() = reverseMap(bonus->duration, bonusDurationMap); - node["source"].String() = reverseMap(bonus->source, bonusSourceMap); + node["effectRange"].String() = reverseMapFirst(bonus->effectRange, bonusLimitEffect); + node["duration"].String() = reverseMapFirst(bonus->duration, bonusDurationMap); + node["source"].String() = reverseMapFirst(bonus->source, bonusSourceMap); + if(bonus->limiter != nullptr) + { + node["limiter"].String() = reverseMapFirst(bonus->limiter, bonusLimiterMap); + } + if(bonus->propagator != nullptr) + { + node["propagator"].String() = reverseMapFirst(bonus->propagator, bonusPropagatorMap); + } + + }