From 919920443c0d9ec84f6dfa06c16338d37978127c Mon Sep 17 00:00:00 2001 From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54> Date: Mon, 31 Jan 2011 15:33:48 +0000 Subject: [PATCH] New zone: Rhaloren Camp, second Shaloren starting zone git-svn-id: http://svn.net-core.org/repos/t-engine4@2585 51575b47-30f0-44d4-a5cc-537603b46e54 --- .../tome/data/general/npcs/elven-caster.lua | 39 +++++++++- .../tome/data/general/npcs/elven-warrior.lua | 31 +++++++- .../data/general/objects/boss-artifacts.lua | 42 ++++++++++- .../tome/data/maps/wilderness/eyal.lua | 3 +- .../tome/data/quests/start-shaloren.lua | 9 ++- .../tome/data/zones/rhaloren-camp/grids.lua | 20 ++++++ .../tome/data/zones/rhaloren-camp/npcs.lua | 66 +++++++++++++++++ .../tome/data/zones/rhaloren-camp/objects.lua | 20 ++++++ .../tome/data/zones/rhaloren-camp/traps.lua | 20 ++++++ .../tome/data/zones/rhaloren-camp/zone.lua | 68 ++++++++++++++++++ ideas/zones.ods | Bin 18035 -> 18064 bytes tiled-maps/eyal2.tmx | 7 +- 12 files changed, 318 insertions(+), 7 deletions(-) create mode 100644 game/modules/tome/data/zones/rhaloren-camp/grids.lua create mode 100644 game/modules/tome/data/zones/rhaloren-camp/npcs.lua create mode 100644 game/modules/tome/data/zones/rhaloren-camp/objects.lua create mode 100644 game/modules/tome/data/zones/rhaloren-camp/traps.lua create mode 100644 game/modules/tome/data/zones/rhaloren-camp/zone.lua diff --git a/game/modules/tome/data/general/npcs/elven-caster.lua b/game/modules/tome/data/general/npcs/elven-caster.lua index 864ae01062..c367aad1eb 100644 --- a/game/modules/tome/data/general/npcs/elven-caster.lua +++ b/game/modules/tome/data/general/npcs/elven-caster.lua @@ -43,7 +43,6 @@ newEntity{ silence_immune = 0.5, resolvers.talents{ [Talents.T_HEAVY_ARMOUR_TRAINING]=1, }, - resolvers.inscriptions(1, "rune"), autolevel = "caster", ai = "dumb_talented_simple", ai_state = { ai_move="move_dmap", talent_in=1, }, @@ -51,6 +50,41 @@ newEntity{ stats = { str=20, dex=8, mag=6, con=16 }, } +newEntity{ base = "BASE_NPC_ELVEN_CASTER", + name = "elven mage", color=colors.TEAL, + desc = [[An elven mage, dressed in dark robes.]], + level_range = {2, nil}, exp_worth = 1, + rarity = 2, + max_life = resolvers.rngavg(70, 80), life_rating = 10, + resolvers.equip{ + {type="weapon", subtype="staff", autoreq=true}, + }, + combat_armor = 0, combat_def = 0, + resolvers.talents{ + [Talents.T_EARTHEN_MISSILES]=2, + [Talents.T_SHOCK]=1, + }, +} + +newEntity{ base = "BASE_NPC_ELVEN_CASTER", + name = "elven tempest", color=colors.LIGHT_BLUE, + desc = [[An elven mage, dressed in dark robes.]], + level_range = {3, nil}, exp_worth = 1, + rarity = 2, + max_life = resolvers.rngavg(70, 80), life_rating = 10, + mana_regen = 30, max_mana = 200, + resolvers.equip{ + {type="weapon", subtype="staff", autoreq=true}, + }, + combat_armor = 0, combat_def = 0, + resolvers.talents{ + [Talents.T_LIGHTNING]=2, + [Talents.T_THUNDERSTORM]=1, + }, + resolvers.sustains_at_birth(), +} + + newEntity{ base = "BASE_NPC_ELVEN_CASTER", name = "elven cultist", color=colors.DARK_SEA_GREEN, desc = [[An elven cultist, dressed in dark robes.]], @@ -71,6 +105,7 @@ newEntity{ base = "BASE_NPC_ELVEN_CASTER", [Talents.T_DARK_RITUAL]=3, }, resolvers.sustains_at_birth(), + resolvers.inscriptions(1, "rune"), } newEntity{ base = "BASE_NPC_ELVEN_CASTER", @@ -93,6 +128,7 @@ newEntity{ base = "BASE_NPC_ELVEN_CASTER", [Talents.T_BONE_SPEAR]=5, }, resolvers.sustains_at_birth(), + resolvers.inscriptions(1, "rune"), } newEntity{ base = "BASE_NPC_ELVEN_CASTER", @@ -118,4 +154,5 @@ newEntity{ base = "BASE_NPC_ELVEN_CASTER", [Talents.T_BONE_SPEAR]=5, }, resolvers.sustains_at_birth(), + resolvers.inscriptions(1, "rune"), } diff --git a/game/modules/tome/data/general/npcs/elven-warrior.lua b/game/modules/tome/data/general/npcs/elven-warrior.lua index 47cfd16f65..d8bf08bc32 100644 --- a/game/modules/tome/data/general/npcs/elven-warrior.lua +++ b/game/modules/tome/data/general/npcs/elven-warrior.lua @@ -42,7 +42,6 @@ newEntity{ open_door = true, resolvers.talents{ [Talents.T_HEAVY_ARMOUR_TRAINING]=1, }, - resolvers.inscriptions(1, "rune"), autolevel = "warrior", ai = "dumb_talented_simple", ai_state = { ai_move="move_dmap", talent_in=3, }, @@ -50,6 +49,34 @@ newEntity{ stats = { str=20, dex=8, mag=6, con=16 }, } +newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", + name = "elven guard", color=colors.LIGHT_UMBER, + desc = [[An elven guard.]], + level_range = {1, nil}, exp_worth = 1, + rarity = 1, + max_life = resolvers.rngavg(80,90), life_rating = 11, + resolvers.equip{ + {type="weapon", subtype="longsword", autoreq=true}, + {type="armor", subtype="shield", autoreq=true}, + }, + combat_armor = 0, combat_def = 6, + resolvers.talents{ [Talents.T_SHIELD_PUMMEL]=1, }, +} + +newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", + name = "mean looking elven guard", color=colors.UMBER, + desc = [[An elven guard.]], + level_range = {3, nil}, exp_worth = 1, + rarity = 1, + max_life = resolvers.rngavg(100,110), life_rating = 11, + resolvers.equip{ + {type="weapon", subtype="longsword", autoreq=true}, + {type="armor", subtype="shield", autoreq=true}, + }, + combat_armor = 0, combat_def = 6, + resolvers.talents{ [Talents.T_BLEEDING_EDGE]=1, }, +} + newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", name = "elven warrior", color=colors.LIGHT_UMBER, desc = [[An elven warrior, clad in heavy armour.]], @@ -63,6 +90,7 @@ newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", }, combat_armor = 0, combat_def = 6, resolvers.talents{ [Talents.T_SHIELD_PUMMEL]=2, }, + resolvers.inscriptions(1, "rune"), } newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", @@ -84,4 +112,5 @@ newEntity{ base = "BASE_NPC_ELVEN_WARRIOR", [Talents.T_SHIELD_PUMMEL]=2, [Talents.T_ASSAULT]=3, }, + resolvers.inscriptions(1, "rune"), } diff --git a/game/modules/tome/data/general/objects/boss-artifacts.lua b/game/modules/tome/data/general/objects/boss-artifacts.lua index 6f1c897c8e..f0cb4a0103 100644 --- a/game/modules/tome/data/general/objects/boss-artifacts.lua +++ b/game/modules/tome/data/general/objects/boss-artifacts.lua @@ -779,7 +779,7 @@ newEntity{ base = "BASE_GEM", define_as = "CRYSTAL_FOCUS", who:sortInven(gem_inven) -- Change the weapon - o.name = "Crystalline "..o.name + o.name = "Crystalline "..o.name:capitalize() o.unique = o.name o.no_unique_lore = true if o.combat and o.combat.dam then @@ -801,3 +801,43 @@ newEntity{ base = "BASE_GEM", define_as = "CRYSTAL_FOCUS", end) end }, } + +newEntity{ base = "BASE_WAND", define_as = "ROD_OF_ANNULMENT", + power_source = {arcane=true}, + unided_name = "dark rod", + name = "Rod of Annulment", color=colors.LIGHT_BLUE, unique=true, + desc = [[You can feel magic draining out around this rod, even nature itself seems affected.]], + cost = 50, + rarity = 380, + level_range = {5, 12}, + elec_proof = true, + add_name = false, + + material_level = 2, + + max_power = 30, power_regen = 1, + use_power = { name = "force your some foe's infusions, runes or talents on cooldown", power = 30, + use = function(self, who) + local tg = {type="bolt", range=5} + local x, y = who:getTarget(tg) + if not x or not y then return nil end + who:project(tg, x, y, function(px, py) + local target = game.level.map(px, py, engine.Map.ACTOR) + if not target then return end + + local tids = {} + for tid, lev in pairs(target.talents) do + local t = target:getTalentFromId(tid) + if not target.talents_cd[tid] and t.mode == "activated" then tids[#tids+1] = t end + end + for i = 1, 3 do + local t = rng.tableRemove(tids) + if not t then break end + target.talents_cd[t.id] = rng.range(3, 5) + game.logSeen(target, "%s's %s is disrupted!", target.name:capitalize(), t.name) + end + target.changed = true + end, nil, {type="flame"}) + end + }, +} diff --git a/game/modules/tome/data/maps/wilderness/eyal.lua b/game/modules/tome/data/maps/wilderness/eyal.lua index cf7c030a84..2534b0cbdd 100644 --- a/game/modules/tome/data/maps/wilderness/eyal.lua +++ b/game/modules/tome/data/maps/wilderness/eyal.lua @@ -64,6 +64,7 @@ quickEntity('daikara', {always_remember = true, show_tooltip=true, name="Passage quickEntity('charred-scar', {always_remember = true, show_tooltip=true, name='Charred Scar Volcano', display='>', color=colors.RED, back_color=colors.LIGHT_DARK, image="terrain/volcano1.png", notice = true, change_level=1, change_zone="charred-scar"}) quickEntity('halfling-ruins', {always_remember = true, show_tooltip=true, name="Very old halfling ruins", display='>', color=colors.RED, notice = true, change_level=1, change_zone="halfling-ruins"}) quickEntity('scintillating-caves', {always_remember = true, show_tooltip=true, name="Entrance to the Scintillating Caves", display='>', color={r=0, g=255, b=0}, notice = true, change_level=1, change_zone="scintillating-caves"}) +quickEntity('rhaloren-camp', {always_remember = true, show_tooltip=true, name="Stairway into the Rhaloren Camp", display='>', color={r=0, g=255, b=255}, notice = true, change_level=1, change_zone="rhaloren-camp"}) quickEntity('derth', {always_remember = true, show_tooltip=true, name="Derth (Town)", desc="A quiet town at the crossroads of the north", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-derth"}) quickEntity('last-hope', {always_remember = true, show_tooltip=true, name="Last Hope (Town)", desc="Capital city of the Allied Kingdoms ruled by King Tolak", display='*', color={r=255, g=255, b=255}, back_color=colors.DARK_GREEN, image="terrain/town1.png", notice = true, change_level=1, change_zone="town-last-hope"}) @@ -233,7 +234,7 @@ return { {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[T]],[[T]],[[T]],[[T]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[.]],[[.]],[[.]],[[T]],[[_]],[[_]],[[_]],[[_]],[[T]],[[spellmurk-lake]],[[spellmurk-lake]],[[spellmurk-lake]],[[!]],[[!]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[last-hope]],[[-]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[!]],[[!]],[[!]],[[!]],[[!]],[[!]],[[!]],[[^]],[[!]],[[.]],[[.]],[[~]],}, {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[T]],[[T]],[[T]],[[T]],[[.]],[[T]],[[T]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[.]],[[T]],[[_]],[[{]],[[{]],[[_]],[[_]],[[spellmurk-lake]],[[spellmurk-lake]],[[spellmurk-lake]],[[spellmurk-lake]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[.]],[[.]],[[-]],[[-]],[[-]],[[-]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[!]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[!]],[[!]],[[!]],[[!]],[[^]],[[^]],[[.]],[[.]],[[~]],}, {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[&]],[[&]],[[T]],[[T]],[[T]],[[.]],[[T]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[_]],[[{]],[[{]],[[{]],[[_]],[[spellmurk-lake]],[[spellmurk-lake]],[[spellmurk-lake]],[[spellmurk-lake]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[-]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[!]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[.]],[[!]],[[^]],[[!]],[[^]],[[^]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[!]],[[!]],[[!]],[[^]],[[^]],[[.]],[[^]],[[~]],}, -{[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[.]],[[&]],[[&]],[[-]],[[.]],[[scintillating-caves]],[[T]],[[T]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[_]],[[_]],[[{]],[[{]],[[{]],[[spellmurk-lake]],[[spellmurk-lake]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[-]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[T]],[[!]],[[!]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[.]],[[^]],[[^]],[[^]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[|]],[[|]],[[|]],[[^]],[[^]],[[^]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[~]],}, +{[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[rhaloren-camp]],[[.]],[[&]],[[&]],[[-]],[[.]],[[scintillating-caves]],[[T]],[[T]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[_]],[[_]],[[{]],[[{]],[[{]],[[spellmurk-lake]],[[spellmurk-lake]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[-]],[[.]],[[.]],[[.]],[[.]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[T]],[[!]],[[!]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[.]],[[^]],[[^]],[[^]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[|]],[[|]],[[|]],[[^]],[[^]],[[^]],[[!]],[[!]],[[^]],[[^]],[[^]],[[^]],[[~]],}, {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[~]],[[~]],[[.]],[[.]],[[&]],[[&]],[[-]],[[-]],[[!]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[_]],[[_]],[[_]],[[{]],[[{]],[[.]],[[.]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[-]],[[-]],[[-]],[[.]],[[.]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[T]],[[!]],[[!]],[[!]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[p]],[[|]],[[|]],[[.]],[[.]],[[.]],[[.]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[|]],[[p]],[[|]],[[|]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[~]],}, {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[T]],[[T]],[[T]],[[.]],[[&]],[[&]],[[-]],[[elvala]],[[!]],[[!]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[_]],[[{]],[[{]],[[{]],[[{]],[[~]],[[~]],[[dreadfell]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[-]],[[.]],[[-]],[[.]],[[.]],[[!]],[[!]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[#]],[[#]],[[T]],[[.]],[[!]],[[!]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[|]],[[p]],[[|]],[[|]],[[|]],[[|]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[~]],}, {[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[T]],[[T]],[[T]],[[.]],[[&]],[[&]],[[-]],[[!]],[[!]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[T]],[[T]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[.]],[[{]],[[{]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[.]],[[-]],[[.]],[[.]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[#]],[[T]],[[T]],[[.]],[[!]],[[.]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[~]],[[|]],[[|]],[[|]],[[|]],[[p]],[[|]],[[p]],[[|]],[[^]],[[^]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[|]],[[^]],[[|]],[[|]],[[^]],[[^]],[[^]],[[^]],[[^]],[[^]],[[!]],[[^]],[[^]],[[~]],[[~]],}, diff --git a/game/modules/tome/data/quests/start-shaloren.lua b/game/modules/tome/data/quests/start-shaloren.lua index e68fbd4c18..ff065e0e10 100644 --- a/game/modules/tome/data/quests/start-shaloren.lua +++ b/game/modules/tome/data/quests/start-shaloren.lua @@ -26,14 +26,19 @@ desc = function(self, who) else desc[#desc+1] = "#SLATE#* You must explore the scintillating caves.#WHITE#" end + if self:isCompleted("rhaloren") then + desc[#desc+1] = "#LIGHT_GREEN#* You have explored the Rhaloren camp and kill the Inquisitor.#WHITE#" + else + desc[#desc+1] = "#SLATE#* You must explore the Rhaloren camp.#WHITE#" + end return table.concat(desc, "\n") end on_status_change = function(self, who, status, sub) if sub then - if self:isCompleted("spellblaze") then + if self:isCompleted("spellblaze") and self:isCompleted("rhaloren") then who:setQuestStatus(self.id, engine.Quest.DONE) - who:grantQuest("start-allied") + who:grantQuest("started-zones") end end end diff --git a/game/modules/tome/data/zones/rhaloren-camp/grids.lua b/game/modules/tome/data/zones/rhaloren-camp/grids.lua new file mode 100644 index 0000000000..7da9005e89 --- /dev/null +++ b/game/modules/tome/data/zones/rhaloren-camp/grids.lua @@ -0,0 +1,20 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009, 2010 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +load("/data/general/grids/basic.lua") diff --git a/game/modules/tome/data/zones/rhaloren-camp/npcs.lua b/game/modules/tome/data/zones/rhaloren-camp/npcs.lua new file mode 100644 index 0000000000..57ab6383cc --- /dev/null +++ b/game/modules/tome/data/zones/rhaloren-camp/npcs.lua @@ -0,0 +1,66 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009, 2010 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +load("/data/general/npcs/rodent.lua", rarity(5)) +load("/data/general/npcs/vermin.lua", rarity(5)) +load("/data/general/npcs/molds.lua", rarity(5)) +load("/data/general/npcs/elven-warrior.lua", rarity(0)) +load("/data/general/npcs/elven-caster.lua", rarity(0)) + +load("/data/general/npcs/all.lua", rarity(4, 35)) + +local Talents = require("engine.interface.ActorTalents") + +newEntity{ define_as = "INQUISITOR", + allow_infinite_dungeon = true, + type = "humanoid", subtype = "elf", unique = true, + name = "Rhaloren Inquisitor", + display = "p", color=colors.VIOLET, + desc = [[This tall elf rush to you, wielding both his greatsword and magical spells.]], + level_range = {7, nil}, exp_worth = 2, + max_life = 150, life_rating = 15, fixed_rating = true, + rank = 4, + size_category = 3, + infravision = 20, + stats = { str=16, dex=12, cun=14, mag=25, con=16 }, + instakill_immune = 1, + move_others=true, + + body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 }, + equipment = resolvers.equip{ {type="weapon", subtype="greatsword", auto_req=true}, {type="armor", subtype="light", autoreq=true}, }, + resolvers.drops{chance=100, nb=1, {defined="ROD_OF_ANNULMENT", random_art_replace={chance=75}} }, + drops = resolvers.drops{chance=100, nb=3, {ego_chance=100} }, + + resolvers.talents{ + [Talents.T_FLAME]=3, [Talents.T_SOUL_ROT]=3, + [Talents.T_WEAPONS_MASTERY]=3, + [Talents.T_RUSH]=2, + }, + resolvers.inscriptions(1, {"shielding rune", "speed rune"}), + resolvers.inscriptions(1, {"manasurge rune"}), + inc_damage = {all=-20}, + + autolevel = "warriormage", + ai = "tactical", ai_state = { talent_in=2, ai_move="move_astar", }, + + on_die = function(self, who) + game.player:resolveSource():grantQuest("start-shaloren") + game.player:resolveSource():setQuestStatus("start-shaloren", engine.Quest.COMPLETED, "rhaloren") + end, +} diff --git a/game/modules/tome/data/zones/rhaloren-camp/objects.lua b/game/modules/tome/data/zones/rhaloren-camp/objects.lua new file mode 100644 index 0000000000..4e7b8c6c64 --- /dev/null +++ b/game/modules/tome/data/zones/rhaloren-camp/objects.lua @@ -0,0 +1,20 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009, 2010 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +load("/data/general/objects/objects.lua") diff --git a/game/modules/tome/data/zones/rhaloren-camp/traps.lua b/game/modules/tome/data/zones/rhaloren-camp/traps.lua new file mode 100644 index 0000000000..f8f844f583 --- /dev/null +++ b/game/modules/tome/data/zones/rhaloren-camp/traps.lua @@ -0,0 +1,20 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009, 2010 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +load("/data/general/traps/elemental.lua") diff --git a/game/modules/tome/data/zones/rhaloren-camp/zone.lua b/game/modules/tome/data/zones/rhaloren-camp/zone.lua new file mode 100644 index 0000000000..c68c0d6f6f --- /dev/null +++ b/game/modules/tome/data/zones/rhaloren-camp/zone.lua @@ -0,0 +1,68 @@ +-- ToME - Tales of Maj'Eyal +-- Copyright (C) 2009, 2010 Nicolas Casalini +-- +-- This program is free software: you can redistribute it and/or modify +-- it under the terms of the GNU General Public License as published by +-- the Free Software Foundation, either version 3 of the License, or +-- (at your option) any later version. +-- +-- This program is distributed in the hope that it will be useful, +-- but WITHOUT ANY WARRANTY; without even the implied warranty of +-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +-- GNU General Public License for more details. +-- +-- You should have received a copy of the GNU General Public License +-- along with this program. If not, see <http://www.gnu.org/licenses/>. +-- +-- Nicolas Casalini "DarkGod" +-- darkgod@te4.org + +return { + name = "Rhaloren Camp", + level_range = {1, 5}, + level_scheme = "player", + max_level = 5, + decay = {300, 800}, + actor_adjust_level = function(zone, level, e) return zone.base_level + e:getRankLevelAdjust() + level.level-1 + rng.range(-1,2) end, + width = 50, height = 50, +-- all_remembered = true, +-- all_lited = true, + persistent = "zone", + ambient_music = "Swashing the buck.ogg", + generator = { + map = { + class = "engine.generator.map.Roomer", + nb_rooms = 10, + rooms = {"random_room", {"money_vault",5}, {"lesser_vault",8}}, + lesser_vaults_list = {"circle","amon-sul-crypt","rat-nest","skeleton-mage-cabal"}, + lite_room_chance = 100, + ['.'] = "FLOOR", + ['#'] = "WALL", + up = "UP", + down = "DOWN", + door = "DOOR", + }, + actor = { + class = "engine.generator.actor.Random", + nb_npc = {20, 30}, + filters = { {max_ood=2}, }, + guardian = "INQUISITOR", + }, + object = { + class = "engine.generator.object.Random", + nb_object = {6, 9}, + }, + trap = { + class = "engine.generator.trap.Random", + nb_trap = {6, 9}, + }, + }, + levels = + { + [1] = { + generator = { map = { + up = "UP_WILDERNESS", + }, }, + }, + }, +} diff --git a/ideas/zones.ods b/ideas/zones.ods index bc2b5a1f3a7db181e204bce7dcea249b510abada..f0f827ac3a8c8353c42f5fdccc37d37cf5c38763 100644 GIT binary patch delta 10514 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%0DkdRyIO_KRTxo z@+Zd0pRiUrRxw(D24?(VG%FbiD}2i^m>0m<M6ko1s+H9cp}agBEj8e0_-Ymx+L%9? z%n_AG_5r;(25Ipkrr8sX47Cfl)*H<Ui|;{(84fRmmPGw3^rib0rw}DU@cx&~_B<Ni zOnU%7yQp4LIHSibSBVkq&uA(tD{Z=Hdj-PsVmS5)*aL11C+Ed}tgFyPJc7<H`8Gho z&ap-GTh>VapPuG&x$MX*g*PO(<~bTA+m^1AVO9sEi!HAo$Yx)p0E4@+>x$)5k6YNW z^k!@IiC2A6;Acf<iV5r6OAnyUc|jZx?cmvB?e%#<SmWK(jk5yAv+r=c;BePO@;22| zz_l%eSLLbWAf+_!=&8v{8J$?Tbpv3p`|WpEf*rPWf$VJdV01d_d-!$qrx1AKuEy=- z^T;_0!`>%tzs+;+{jrvsaHiP~p0(zNVVY^~QitYO=jpTQtII`LM<?g4F0F?0B|waO zTwr)C#U6Q!COQ!GMk06H9?I?|<J08{mtd9cH<4gl@sReZewfa2l&)q(#0eM|x;G&G zhn6M8l?oBDcs&qKa=Ub4mNO~hh>EqNy@X-W6Lk+iM`o)v?%ReE589u$iFPSnJSc=M zMJPkw)}OcCb4(|r7>iMfK)4$hGfGodn~r?tZk1*_Bi#ytFQL~~Oh1Ewvp+s30{WxV zzWLpyyAYn=e;#_td-~#d-(-_l0>~5ZzdlX270Z(IMG76ajL;ix(u}}S*^=)<OBTEE zNxE9Y^ex1`sQi#hAKr5^JSZTZ>=6F?RvmeYmZXhG+xdVXM)!LRI~Mq7ZHI*mW?}vG z`2z@)%l7ZJ{$B*pa4s7AcNGWwiE|?V1%m%U1@KRCMy<ay|5+vw{^5oHJBX-2AXhgp zI}2Clul9DT3J{Q3pnrGj{i}x9K!ZSkuYbzQe+);km;~<Mpt=%7kZ;UMECeY3cK%mZ z;Cu-phy-w_1UK1#L(2bn6aA0&S2^MX|K=k@`p>{%5lJEla<IN6&HwTx_<wx0_`y2- zB>&47GM*ot$WQdY<{<{atWq?8v(}L!f_&x&zw%RpGo=vzKT&uE!2ALvbpOim-_-S= le*@|NNy-U~C{6e`2(2^`<hv;NO%xYwAdLnSBmURy{{W`VyrKXA delta 10541 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 diff --git a/tiled-maps/eyal2.tmx b/tiled-maps/eyal2.tmx index 07468bcc5f..44ef05d285 100644 --- a/tiled-maps/eyal2.tmx +++ b/tiled-maps/eyal2.tmx @@ -262,10 +262,15 @@ <property name="display" value="scintillating-caves"/> </properties> </tile> + <tile id="23"> + <properties> + <property name="display" value="rhaloren-camp"/> + </properties> + </tile> </tileset> <layer name="Terrain" width="170" height="100"> <data encoding="base64" compression="zlib"> - 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 </data> </layer> <objectgroup name="addSpot#pops" width="170" height="100"> -- GitLab