diff --git a/game/modules/tome/class/Game.lua b/game/modules/tome/class/Game.lua index fe247989a6e0065f6632821ad74a4fda7c7dcffb..bf3d4bc561e37a27f159c7f51ad4463d29b465f8 100644 --- a/game/modules/tome/class/Game.lua +++ b/game/modules/tome/class/Game.lua @@ -1639,7 +1639,8 @@ function _M:placeRandomLoreObjectScale(base, nb, level) local dist = ({ [5] = { {1}, {2,3}, {4,5} }, -- 5 => 3 korpul = { {1,2}, {3,4} }, -- 5 => 3 - [7] = { {1}, {2,3}, {4}, {5, 6}, {7} }, -- 7 => 5 + maze = { {1,2,3,4},{5,6,7} }, -- 5 => 3 + [7] = { {1,2}, {3,4}, {5,6}, {7} }, -- 7 => 4 })[nb][level] if not dist then return end for _, i in ipairs(dist) do self:placeRandomLoreObject(base..i) end diff --git a/game/modules/tome/data/birth/races/construct.lua b/game/modules/tome/data/birth/races/construct.lua index cee3bc680bafbdf4b48e9be6be5d9045684115f4..3548cb8ba6bd2f5c11ae9f9ac56db6224b6e08d9 100644 --- a/game/modules/tome/data/birth/races/construct.lua +++ b/game/modules/tome/data/birth/races/construct.lua @@ -37,7 +37,7 @@ newBirthDescriptor{ ["Runic Golem"] = "allow", }, }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } newBirthDescriptor diff --git a/game/modules/tome/data/birth/races/dwarf.lua b/game/modules/tome/data/birth/races/dwarf.lua index 6d069788043f9cd3a6e79362d3f3e182013da09f..3a243ba8e26bec9d045b36f79a97dd6f97bc3bd2 100644 --- a/game/modules/tome/data/birth/races/dwarf.lua +++ b/game/modules/tome/data/birth/races/dwarf.lua @@ -49,7 +49,7 @@ newBirthDescriptor{ resolvers.inventory{ id=true, {defined="ORB_SCRYING"} }, resolvers.generic(function(e) e.hotkey[10] = {"inventory", "Orb of Scrying"} end), }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } --------------------------------------------------------- diff --git a/game/modules/tome/data/birth/races/elf.lua b/game/modules/tome/data/birth/races/elf.lua index d6a1d55bbcaa6f1b1c29d93da5c1ae90beddd986..96504ed24fa57ff0341738c181d5f2e11d3f4480 100644 --- a/game/modules/tome/data/birth/races/elf.lua +++ b/game/modules/tome/data/birth/races/elf.lua @@ -91,7 +91,7 @@ newBirthDescriptor resolvers.inscription("RUNE:_PHASE_DOOR", {cooldown=7, range=10}), }, experience = 1.35, - random_escort_possibilities = { {"scintillating-caves", 2, 3}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"scintillating-caves", 2, 3}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } newBirthDescriptor diff --git a/game/modules/tome/data/birth/races/halfling.lua b/game/modules/tome/data/birth/races/halfling.lua index 2efda7e6c5fce833eae02367df51c7028b1b865f..17b9b22d27e25f1491db27a81861b46b86c04b02 100644 --- a/game/modules/tome/data/birth/races/halfling.lua +++ b/game/modules/tome/data/birth/races/halfling.lua @@ -54,7 +54,7 @@ newBirthDescriptor{ resolvers.inventory{ id=true, {defined="ORB_SCRYING"} }, resolvers.generic(function(e) e.hotkey[10] = {"inventory", "Orb of Scrying"} end), }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } --------------------------------------------------------- diff --git a/game/modules/tome/data/birth/races/human.lua b/game/modules/tome/data/birth/races/human.lua index 75be75ee009f3e389c8e007907e39a42046f63a7..1a753cc7785bc2f95beb499d059ed5988d6b99bf 100644 --- a/game/modules/tome/data/birth/races/human.lua +++ b/game/modules/tome/data/birth/races/human.lua @@ -55,7 +55,7 @@ newBirthDescriptor{ resolvers.inventory{ id=true, {defined="ORB_SCRYING"} }, resolvers.generic(function(e) e.hotkey[10] = {"inventory", "Orb of Scrying"} end), }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } --------------------------------------------------------- diff --git a/game/modules/tome/data/birth/races/undead.lua b/game/modules/tome/data/birth/races/undead.lua index 1cccbec587cb208055d2c8c3b8d8b8b383e1cbe6..7d3b9c7414122c2030612686a6ecf9fe56f3ea32 100644 --- a/game/modules/tome/data/birth/races/undead.lua +++ b/game/modules/tome/data/birth/races/undead.lua @@ -64,7 +64,7 @@ newBirthDescriptor{ resolvers.inscription("RUNE:_SHIELDING", {cooldown=14, dur=5, power=100}), resolvers.inscription("RUNE:_PHASE_DOOR", {cooldown=7, range=10}), }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } newBirthDescriptor diff --git a/game/modules/tome/data/birth/races/yeek.lua b/game/modules/tome/data/birth/races/yeek.lua index 7d1db7b1a7e524088c714590f8cc74cbff65afdd..0884e839c41a90694007989450542bf5ce60359c 100644 --- a/game/modules/tome/data/birth/races/yeek.lua +++ b/game/modules/tome/data/birth/races/yeek.lua @@ -51,7 +51,7 @@ newBirthDescriptor{ resolvers.inscription("INFUSION:_REGENERATION", {cooldown=10, dur=5, heal=60}), resolvers.inscription("INFUSION:_WILD", {cooldown=12, what={physical=true}, dur=4, power=14}), }, - random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 5}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, + random_escort_possibilities = { {"trollmire", 2, 3}, {"ruins-kor-pul", 1, 2}, {"daikara", 1, 3}, {"old-forest", 1, 4}, {"dreadfell", 1, 8}, {"reknor", 1, 2}, }, } --------------------------------------------------------- diff --git a/game/modules/tome/data/chats/temporal-rift-end.lua b/game/modules/tome/data/chats/temporal-rift-end.lua index 330c407b6824d4c526940a672b70206d5caf0bfe..09ab6c684ca75a760b43dcc608de500862f6f278 100644 --- a/game/modules/tome/data/chats/temporal-rift-end.lua +++ b/game/modules/tome/data/chats/temporal-rift-end.lua @@ -36,7 +36,7 @@ I cannot stay. I still have much to do. But take this-- it should help you. game:setAllowedBuild("chronomancer_temporal_warden", true) local g = game.zone:makeEntityByName(game.level, "terrain", "RIFT") - g.change_level = 4 + g.change_level = 3 g.change_zone = "daikara" game.zone:addEntity(game.level, g, "terrain", player.x, player.y) end}, diff --git a/game/modules/tome/data/zones/ardhungol/zone.lua b/game/modules/tome/data/zones/ardhungol/zone.lua index 5a6ee4e93f40a51626aa063a17a00aa19356a25e..c94ce60addbf44e3bd93d58fc8f7ea158a39a539 100644 --- a/game/modules/tome/data/zones/ardhungol/zone.lua +++ b/game/modules/tome/data/zones/ardhungol/zone.lua @@ -21,7 +21,7 @@ return { name = "Ardhungol", level_range = {25, 32}, level_scheme = "player", - max_level = 5, + max_level = 3, 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 = 70, height = 70, diff --git a/game/modules/tome/data/zones/daikara/zone.lua b/game/modules/tome/data/zones/daikara/zone.lua index 1f062b971620ef0c67e5431fef293ab22f9f38da..ed5f1676e2797f5b3727502f58adef2d335e0de9 100644 --- a/game/modules/tome/data/zones/daikara/zone.lua +++ b/game/modules/tome/data/zones/daikara/zone.lua @@ -21,7 +21,7 @@ return { name = "Daikara", level_range = {7, 16}, level_scheme = "player", - max_level = 5, + max_level = 4, 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, @@ -76,7 +76,7 @@ return { -- Temporal rift on level 4 local p = game.party:findMember{main=true} - if level.level == 4 then + if level.level == 3 then if p.descriptor.subclass == "Temporal Warden" then local x, y = util.findFreeGrid(level.default_up.x, level.default_up.y, 10, true, {[engine.Map.ACTOR]=true}) if x and y then diff --git a/game/modules/tome/data/zones/eruan/zone.lua b/game/modules/tome/data/zones/eruan/zone.lua index 6c54314faa4cc4807b50ce345feccdf3f330809f..c639a2ab6acffebdc388d92bac69caf2904a24be 100644 --- a/game/modules/tome/data/zones/eruan/zone.lua +++ b/game/modules/tome/data/zones/eruan/zone.lua @@ -21,7 +21,7 @@ return { name = "Erúan", level_range = {30, 45}, level_scheme = "player", - max_level = 5, + max_level = 4, 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, @@ -74,7 +74,7 @@ return { up = "SAND_UP_WILDERNESS", }, }, }, - [5] = { + [4] = { generator = { map = { class = "engine.generator.map.Static", map = "zones/eruan-last", diff --git a/game/modules/tome/data/zones/lake-nur/grids.lua b/game/modules/tome/data/zones/lake-nur/grids.lua index b79aad6fc5f5d4d2019330919411e91d9302c451..0c62f21e5bb7c32cc4e930a8e3f042863e6de823 100644 --- a/game/modules/tome/data/zones/lake-nur/grids.lua +++ b/game/modules/tome/data/zones/lake-nur/grids.lua @@ -28,7 +28,7 @@ newEntity{ display = '<', color_r=255, color_g=255, color_b=0, notice = true, always_remember = true, - change_level = 5, change_zone = "old-forest", force_down = true, + change_level = 4, change_zone = "old-forest", force_down = true, } newEntity{ diff --git a/game/modules/tome/data/zones/maze/zone.lua b/game/modules/tome/data/zones/maze/zone.lua index 5e12ccdee97ddba64034e5c17887d04df48e0048..9074716f8a0563a052fb8205467489a9e16c52bb 100644 --- a/game/modules/tome/data/zones/maze/zone.lua +++ b/game/modules/tome/data/zones/maze/zone.lua @@ -21,10 +21,10 @@ return { name = "The Maze", level_range = {7, 16}, level_scheme = "player", - max_level = 5, + max_level = 2, 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 = 40, height = 40, + width = 80, height = 80, -- all_remembered = true, -- all_lited = true, persistent = "zone", @@ -41,17 +41,17 @@ return { }, actor = { class = "engine.generator.actor.Random", - nb_npc = {20, 30}, + nb_npc = {50, 60}, guardian = "MINOTAUR_MAZE", guardian_alert = true, }, object = { class = "engine.generator.object.Random", - nb_object = {4, 6}, + nb_object = {10, 14}, }, trap = { class = "engine.generator.trap.Random", - nb_trap = {9, 15}, + nb_trap = {20, 25}, }, }, levels = @@ -61,20 +61,23 @@ return { up = "UP_WILDERNESS", }, }, }, - [5] = { + [2] = { + width = 20, height = 20, generator = { map = { force_last_stair = true, down = "QUICK_EXIT", + }, actor = { + nb_npc = {10, 12}, }, }, }, }, post_process = function(level) -- Place a lore note on each level - game:placeRandomLoreObjectScale("NOTE", 7, level.level) + game:placeRandomLoreObjectScale("NOTE", "maze", level.level) local p = game.party:findMember{main=true} - if level.level == 4 and p:knowTalent(p.T_TRAP_MASTERY) then + if level.level == 1 and p:knowTalent(p.T_TRAP_MASTERY) then local l = game.zone:makeEntityByName(level, "object", "NOTE_LEARN_TRAP") if not l then return end for i = -1, 1 do for j = -1, 1 do diff --git a/game/modules/tome/data/zones/old-forest/zone.lua b/game/modules/tome/data/zones/old-forest/zone.lua index 251dc1cbf7fbf747c99449b07bf7dc928d0cb317..03707eed66b79de53cea7e75a10bf7398305fdaf 100644 --- a/game/modules/tome/data/zones/old-forest/zone.lua +++ b/game/modules/tome/data/zones/old-forest/zone.lua @@ -21,7 +21,7 @@ return { name = "Old Forest", level_range = {7, 16}, level_scheme = "player", - max_level = 5, + max_level = 4, 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, @@ -37,7 +37,7 @@ return { generator = { map = { class = "engine.generator.map.Roomer", - nb_rooms = 10, + nb_rooms = 11, edge_entrances = {4,6}, rooms = {"forest_clearing", {"lesser_vault",8}}, rooms_config = {forest_clearing={pit_chance=5, filters={{type="insect", subtype="ant"}, {type="insect"}, {type="animal", subtype="snake"}, {type="animal", subtype="canine"}}}}, @@ -71,7 +71,7 @@ return { up = "GRASS_UP_WILDERNESS", }, }, }, - [5] = { + [4] = { generator = { map = { edge_entrances = {4,2}, down = "LAKE_NUR", diff --git a/game/modules/tome/data/zones/orc-breeding-pit/zone.lua b/game/modules/tome/data/zones/orc-breeding-pit/zone.lua index 8d7a94c406dca3c61ae650d070cf67fdf1269d64..70089eba5f7444e9121c83feb38f2e2f31f102d6 100644 --- a/game/modules/tome/data/zones/orc-breeding-pit/zone.lua +++ b/game/modules/tome/data/zones/orc-breeding-pit/zone.lua @@ -74,5 +74,8 @@ return { nb_npc = {0, 0}, }, }, }, + [3] = { width = 25, height = 25, generator = {map = {min_floor=300}} }, + [4] = { width = 20, height = 20, generator = {map = {min_floor=200}} }, + [5] = { width = 15, height = 15, generator = {map = {min_floor=120}} }, }, } diff --git a/game/modules/tome/data/zones/sandworm-lair/zone.lua b/game/modules/tome/data/zones/sandworm-lair/zone.lua index 63a4f8acb0a2467a07423f2331e3bd780871f3a8..c11f88d007edc5a1b113f61d2b83a5e71b8c8651 100644 --- a/game/modules/tome/data/zones/sandworm-lair/zone.lua +++ b/game/modules/tome/data/zones/sandworm-lair/zone.lua @@ -21,7 +21,7 @@ return { name = "Sandworm lair", level_range = {7, 16}, level_scheme = "player", - max_level = 5, + max_level = 4, 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,