diff options
author | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-01-22 01:48:11 +0530 |
---|---|---|
committer | Darshan Shaligram <dshaligram@users.sourceforge.net> | 2010-01-22 03:06:59 +0530 |
commit | 141c1e7bbfe7f37ec291d1a14616f3e3c2efaff6 (patch) | |
tree | c57be2ff3950ff087f4c40486aee4f0892ce3d5c /crawl-ref/source/scripts | |
parent | 18a740f01d1160c5afa76bb8afd1c1f413f0c425 (diff) | |
download | crawl-ref-141c1e7bbfe7f37ec291d1a14616f3e3c2efaff6.tar.gz crawl-ref-141c1e7bbfe7f37ec291d1a14616f3e3c2efaff6.zip |
Monster respawn rate reduces after 3k turns on level, respawning ends after 15k turns on level, monster level fuzz and super OOD rates increase with time spent beyond 3k turns on level.
The four hells, Zot, and all non-LEVEL_DUNGEON areas (Pan, Abyss and friends) are not affected by these changes.
Monster level fuzz can now be up to +7 levels (was +4); this also applies to monsters placed during level-generation (14% chance per monster as before).
Super OODs can now be up to +26 (random2avg(27, 2); was +11). Super OOD gen only begins after over 1k turns spent on level and is still quite rare initially (1 in 500, was 1 in 5000 in 0.5).
Monster fuzz chances (chance of +0-7 to monster level) increase after 3k turns from 14% to 100% after 7.8k turns.
Super OOD chances increase after 3k turns from 1 in 500 (0.2%) to 100% after 12k turns.
Diffstat (limited to 'crawl-ref/source/scripts')
-rw-r--r-- | crawl-ref/source/scripts/place-population.lua | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/crawl-ref/source/scripts/place-population.lua b/crawl-ref/source/scripts/place-population.lua index 76b77559e6..25b7cb6f72 100644 --- a/crawl-ref/source/scripts/place-population.lua +++ b/crawl-ref/source/scripts/place-population.lua @@ -3,10 +3,11 @@ local niters = 150 local output_file = "monster-report.out" local excluded_things = util.set({}) -- "plant", "fungus", "bush" }) +local use_random_maps = true local function count_monsters_at(place, set) debug.goto_place(place) - test.regenerate_level() + test.regenerate_level(nil, use_random_maps) local monsters_here = set or { } for mons in test.level_monster_iterator() do @@ -24,7 +25,9 @@ end local function report_monster_counts_at(place, mcount_map) local text = '' text = text .. "\n-------------------------------------------\n" - text = text .. place .. " monsters per-level\n" + text = text .. place .. " monsters per-level (" + text = text .. (use_random_maps and "using random maps" + or "NO random maps") .. ")\n" text = text .. "-------------------------------------------\n" local monster_counts = util.pairs(mcount_map) @@ -156,9 +159,8 @@ local function count_monsters_from(start_place, end_place) local iter_mpops = { } for i = 1, niters do - crawl.mesclr() - crawl.mpr("Counting monsters at " .. place .. " (" .. - i .. "/" .. niters .. ")") + crawl.message("Counting monsters at " .. place .. " (" .. + i .. "/" .. niters .. ")") local res = count_monsters_at(place) table.insert(iter_mpops, res) end @@ -193,6 +195,9 @@ local function branch_resets() if rawresets then util.append(resets, parse_resets(rawresets)) end + if arg == '-nomaps' then + use_random_maps = false + end end return resets end @@ -217,11 +222,14 @@ with: With the general form: - -reset=<place>=<depth>[,<place>=<depth>,...] + -reset=<place>=<depth>[,<place>=<depth>,...] where <place> is a valid place name as used in .des files, and <depth> is the depth of the branch's entrance in its parent branch. Thus -reset=Snake:1=3 implies that the entrance of the Snake Pit is assumed to be on Lair:3. + +You can also disable the use of random maps during level generation with: + -nomaps ]]) end return args[1], args[2] or args[1] |