Book 3 - Summoning Monsters
The danger increment is a number that varies. The danger increment is 0. [Every time a shrine is reopened, the danger increment increments.]
At the time when monsters are summoned:
summon monsters.
A monster can be newly materialized. A monster is usually not newly materialized.
To summon monsters:
now the current danger level is the number of activated Unperceived shrine rooms;
repeat through the Table of Monster Templates:
now the active entry is false;
if (the danger level entry <= the current danger level):
repeat with temporary statue running through Unperceived shrine statues:
if the shrine deity of the temporary statue is the associated deity entry and the temporary statue is activated:
now the active entry is true;
DM "[Associated deity entry]/[danger level entry] is active.";
repeat with temporary locale running through activated Unperceived shrine rooms:
now the current deity is the shrine deity of a random shrine statue in temporary locale;
initialize the current monster;
now the current room is the room outside from the temporary locale;
move the current monster to the current room;
DM "(Summoning [the current monster] to [the current room] under the auspice of [current deity].)";
report monster materialization;
repeat with temporary monster running through newly materialized monsters:
now the temporary monster is not newly materialized.
To initialize the current monster:
now the current monster is a random monster in Z1;
choose a random row from the Table of Monster Templates;
while the active entry is false:
choose a random row from the Table of Monster Templates;
if the active entry is true:
if a random chance of danger level entry in 10 succeeds:
choose a random row from the Table of Monster Templates;
let the temporary stat counter be the danger increment;
DM "Danger increment of [danger increment].";
while the temporary stat counter > 0:
let K be a random number between 1 and 2;
if K is 1:
now the physical attack entry is 1 + the physical attack entry;
DM "Increasing physical attack due to the danger increment.";
otherwise if K is 2:
now the mental attack entry is 1 + the mental attack entry;
DM "Increasing mental attack due to the danger increment.";
now the temporary stat counter is the temporary stat counter - 1;
now the associated deity of the current monster is the associated deity entry;
now the rattack of the current monster is the physical attack entry;
now the rmattack of the current monster is the mental attack entry;
now the rhealth of the current monster is the hit point entry;
now the chealth of the current monster is the hit point entry;
now the rawareness of the current monster is the awareness entry;
now the rstealth of the current monster is the stealth entry;
now the rspeed of the current monster is the speed entry;
now the monster shape of the current monster is the monster shape entry;
now the monster name of the current monster is the monster name entry;
now the core adjective of the current monster is the monster adjective entry;
initialize the supplemental adjective list;
sort the supplemental adjective list in random order;
now the supplemental adjective of the current monster is entry 1 of the supplemental adjective list;
describe monster movement;
now the current monster is newly materialized;
DM "Monster initialized: [associated deity of the current monster]/[danger level entry], a [printed name of the current monster]. Stats: PA [rattack of the current monster], MA [rmattack of the current monster], HP [chealth of the current monster], Awareness [rawareness of the current monster], Stealth [rstealth of the current monster], Speed [rspeed of the current monster]. ".
The supplemental adjective list is a list of adjectives that varies.
[I may want to add something more intense to the supplemental adjective list, but this will do for now...]
To initialize the supplemental adjective list:
now the supplemental adjective list is {deformed, twisted, gnarled, crazed, maddened, mutated, monstrous, hideous, ravening, freakish};
repeat with temporary locale running through Blight rooms:
repeat with temporary monster running through monsters in the temporary locale:
if the monster name of the current monster is the monster name of the temporary monster:
if the core adjective of the current monster is the core adjective of the temporary monster:
remove the supplemental adjective of the temporary monster from the supplemental adjective list.
To report monster materialization:
if a newly materialized monster is in the location:
say "Reality twists, and [a list of newly materialized monsters in the location] appears before you.";
otherwise:
say "You feel an unpleasant sensation, as if the ground had dropped a few inches beneath your feet."