# File: summon.txt

# Summon type details

# Fields:
# name      - summon type name
# msgt      - message type
# uniques   - whether uniques are allowed
# base      - allowed monster bases if any
# race-flag - allowed racial flag if any
# fallback  - summon type to substitute on failure
# desc      - description

# 'name' is the code used to refer to the summon type, and should begin every
# entry

# 'msgt' is the message type used to display the message, which may affect any
# sound played on the summon happening

# 'uniques' is 1 if the summon type allows uniques to be summoned, 0 otherwise.
# Traditionally UNIQUE and WRAITH will summon uniques, ANY, HI_UNDEAD, HI_DEMON
# and HI_DRAGON may summon uniques, and none of the other summon codes will ever
# summon uniques.

# 'base' indicates a possible monster base for the summon.  If a summon type
# has no base: line, any monster base can be chosen, otherwise only the given
# monster bases can be chosen.

# 'race-flag' indicates a possible race flag for the summon.  If a summon type
# has no race-flag: line, there are no flag-based restrictions, otherwise
# only monsters with the given flag can be chosen.

# 'fallback' gives the name of another summon type to try if the given type
# fails to summon any monsters.  Traditionally the only summon types with a
# fallback are WRAITH and UNIQUE, which both fall back to HI_UNDEAD.

# 'desc' is the description of the summon type used in messages.

# Note that the KIN summon is a special case which has special code in
# src/effects.c to handle it, and UNIQUE and WRAITH have code in
# src/mon-summon.c that exclude them from being used for the "call" type of
# summon (where summoned monsters are chosen from those already on the level
# rather than newly created). 

name:ANY
msgt:SUM_MONSTER
uniques:1
desc:a monster

name:KIN
msgt:SUM_MONSTER
uniques:0
desc:similar monsters

name:MONSTER
msgt:SUM_MONSTER
uniques:0
desc:a monster

name:MONSTERS
msgt:SUM_MONSTER
uniques:0
desc:monsters

name:ANIMAL
msgt:SUM_ANIMAL
uniques:0
race-flag:ANIMAL
desc:animals

name:SPIDER
msgt:SUM_SPIDER
uniques:0
base:spider
desc:spiders

name:HOUND
msgt:SUM_HOUND
uniques:0
base:zephyr hound
base:canine
desc:hounds

name:HYDRA
msgt:SUM_HYDRA
uniques:0
base:hydra
desc:hydras

name:AINU
msgt:SUM_AINU
uniques:0
base:ainu
desc:ainur

name:DEMON
msgt:SUM_DEMON
uniques:0
race-flag:DEMON
desc:demons

name:UNDEAD
msgt:SUM_UNDEAD
uniques:0
race-flag:UNDEAD
desc:undead

name:DRAGON
msgt:SUM_DRAGON
uniques:0
race-flag:DRAGON
desc:dragons

name:HI_DEMON
msgt:SUM_HI_DEMON
uniques:1
base:major demon
desc:greater demons

name:HI_UNDEAD
msgt:SUM_HI_UNDEAD
uniques:1
base:vampire
base:wraith
base:lich
desc:greater undead

name:HI_DRAGON
msgt:SUM_HI_DRAGON
uniques:1
base:ancient dragon
desc:ancient dragons

name:WRAITH
msgt:SUM_WRAITH
uniques:1
base:wraith
race-flag:UNIQUE
fallback:HI_UNDEAD
desc:ringwraiths

name:UNIQUE
msgt:SUM_UNIQUE
uniques:1
race-flag:UNIQUE
fallback:HI_UNDEAD
desc:unique monsters
