they get out of sight.
- [+] some kind of obstacle which you must CLIMB over
- [+] objects
- [+] metal barricade (also breakable)
- [+] pile of rubble (not breakable)
- [+] F_CLIMBOBSTACLE
- [+] need a climb check of difficulty v0 to move ON to it. if you
fail, you fall off in a random direction.
- [+] if you don't ahve the climbing skill, you can't move onto it.
- [+] ...and EVERYONE needs to be able to learn swimming & climbing
- [+] vaults:
- [+] room with heaps of these in rows - "fortified_room"
- [+] room with lots of these over a pit - "pit_path"
- [+] room with lots of these over fires (or something
damaging) - "firepit"
- [+] if you're standing on something with "climbobstacle", you
count as being higher
- [+] tables should have CLIMBOBSTACLE diff 5
- [+] vault - pit with archers on the side
- [+] cope with "monster_name with _objectname_"
- [+] cope with objects of name "random firearm"
- [+] BUG: "Gather up the spoils of battle!" A masterwork weapon store
appears!--More--
- [+] rarity on wands seems broken...
- [+] god gifts are happening too often when god is just 'pleased'
- [+] on levels where floor is carpet, don't create vaults with obs
made of MT_FIRE
- [+] bjorn prayer's forcesphere radius should depend on piety level
- [+] collapsing door trap - need f_doortrap to restict this to just
doors
- [+] make more shops let you donate
- [+] bookstore
- [+] jewellery store
- [+] rename blood hawk to hunting hawk
- [+] offering a bribe to creatures should make them move likely to
helkp you, AND reset the "auto don't help' flag
- [+] change "get lost " message to "get lost, <racename>" if your race
is different.
- [+] sayphrase() needs a new arg: lifeform_t *talkingto
- [+] colours for spell effect.
- [+] eg. "the flame dart hits xxx" should use CC_BAD
- [+] muddy room - mud should be immutable.
- [+] maybe change rage - you lose control totally and just attack
anything in sight?
- [+] do it.
- [+] don't train when enraged
- [+] don't hear sounds when enraged
- [+] RAGE effects: strength bonus, accuracy bonus, infinite
stamina, never flee,
- [+] fix bug in skill point calculation
- [+] CRASH - someone got their turn BEFORE the player!
- [+] new poisontype field - contracttext
- [+] hecta's pray effect not working.
- [+] adjust food poisioning check difficulty based on food age
- [+] check OBHP percentage of max.
- [+] >= 80% obhp means -30% difficulty check
- [+] ring of unholiness should confer dtvuln holy.
- [+] fix colour on spellclouds
- [+] fix bug with spellclouds not affecting centre cell.
- [+] if you are frozen, heat does extra damage and cold does none.
- [+] when frozen, lessen chance of melting.
- [+] reduce bite damage of snakes
- [+] balaclava should protect from gas
- [+] make some floor types (like carpet) be multicoloured
- [+] celltype->altcolour
- [+] if altcolour is not C_NONE then use it where (x + y) % 2 is
true.
- [+] don't regain stamina while training
- [+] random text in shops - sayphrase needs to cope with lf == null
- [+] done
- [+] fixed - hecta gifted me with a bamboo staff, but i'm inept with
staves!
- [+] BUG: in vault.vlt.
- [+] "30% chance of door" really means "otherwise empty cell"
- [+] need to be able to say "else put a wall here"
- [+] so change:
- [+] c:type:what[:pct]
- [+] to this:
- [+] c:type:what[:pct][:alttype:altwhat]
- [+] vlegend_t needs
- [+] enum VAULTTHING tt2
- [+] char *what2
- [+] they default to VT_NONE, NULL
- [+] secret doors should take their fake wall type from the vault spec
- [+] vaults need f_celltypeempty/solid flags
- [+] add via: solid:xxx in vault def
- [+] recycler
- [+] donate anything
- [+] if sound is behind walls:
- [+] you hear a muffled explosion
- [+] int canhear() needs one more optional argument:
&numwallspassed
- [+] if supplied, fill it in.
- [+] in noise(), check numwallspassed. if there were any, then say
'muffled'. or maybe if more than 2? play around with this.
- [+] listen skill should also give more info about NON monster sounds
- [+] ie. direction, distance.
- [+] set user->changinglev when CHECKING stairs in the same way as
when we use them.
- [+] monk abil - iron fist - use all remaining stamina as damage +
knockback
* [+] HITCONFER - this should only work if you were attacked through a
BITE or CLAW etc.
- [+] bug... werewolves etc not attacking properly after shapehifting
- [+] some tech/tools should be usable with hands (ie. watch).
f_operwithouthands
- [+] werewolves sohuld keep f_hitconfer after shapeshifting
- [+] done
- [+] summoned creatures from ai should never attack their masters!!!
- [+] only the PLAYER can be infected by a werewolf? or only HUMANS ?
- [+] when a werewolf changes to animal form, no longer hide true race
as 'human'
- [+] lycanthropy?
- [+] how to get it:
- [+] drink were-xxx blood (->potion of lycanthropy, never
appears randomly)
- [+] bitten by a lycanthrope (chance) with hitconfer and fail
a con check
- [+] change f_lycanthrope so text = racename.
- [+] effects when you get it:
- [+] right away, add diseased with lycanthropy. incubatino
infinite ?
- [+] if you are incubating lycanthropy, you always change at
the full moon (and get rage, and lose control).
- [+] at this point, complete the incubation and...
- [+] add f_hatesall
- [+] lose control for a while
- [+] after you change back the first time, you can change at
will. (but there is a risk each time of losing control)
- [+] player regains control
- [+] remove aicontrolled, hatesall, rage
- [+] actually add f_lycanthrope, text=xxx, v0=4
- [+] when f_lycanthrope v0 drops to 0 or less...
- [+] canwill shapeshift with race:xxx
- [+] how to remove it
- [+] remove curse scroll
- [+] drink holy water
- [+] these will:
- [+] cure any incubating curse
- [+] cure any f_poisoned curse
- [+] cure lycanthropy, and any flags FROMLYCANTHROPY
- [+] other effect
- [+] wont/cant walk into holy circle?
- [+] holy circle hurts you
- [+] shouldn't be able to get critical hits on you (ie. injuries) if
you ahve heavenly armour
- [+] bug in f_poisoned text. i think i've fixed this now.
Died on level 2 of the dungeon.
Killed by venom poisoning
from 5-10
- [+] donated objects count towards xp!
- [+] -50% of value if not known.
- [+] -25% of value if not id'd
- [+] donating objects will anger felix
- [+] BUG when i enter baba yaga's hut:
- [+] ERROR - couldn't link stairs back to map entry object.--More--
- [+] was assuming that exitdir was up/down. for entering the
hut, the direction is "in".
- [+] lots of missing text colours - fixed.
- [+] is 'appropriate' working? i got a sun hat!
- [+] yes, but "armour" should mean "ar >= 1", to differentiate
from 'clothing'
- [+] also, size sohuld match for armour.
- [+] time code (if you have a watch):
- [+] things which occur at certain times
- [+] "glorana's peace" - morning twilight and sunrise.
- [+] boost life spells
- [+] glorana worshippers gain some special - regen.
- [+] midnight = "witching hour"
- [+] boost necromancy
- [+] werewolves always change to wolf
- [+] implement an auto-cast for player lycanthropes
- [+] when a ling parasite enters a corpse:
- [+] add some kind of flag so that when it dies, a living ling
parasite appears on top of the corpse.
- [+] F_CORPSELF
- [+] babayagahut stay in vault not working. am i allowing it to pursue
out ?
- [+] babayagahut shoud ahve nobleed
- [+] scourge shouldn't get heavy blow etc
- [+] problem - scourge was able to learn allomancy.
- [+] rats should squeak
- [+] bug: anticipate spell lasting forever.
- [+] time announcements if you have a watch
- [+] night is falling
- [+] undead will be stronger
- [+] sun is rising outside
- [+] undead weaker
- [+] if you burn your hands on an equipped shield, drop it autoatically
* [+] sewer stairs problem
- [+] if something redhot/flaming takes water damage, it will make
steam.
- [+] ring of unholiness(blessed things burn you - just add undead flag?
- [+] gods of purity/life will warn you first.
- [+] fixed crash checking for blocking attacks from adhesive lfs.
- [+] glorana cure poison doesn't work
- [+] cancast is returning FALSE but E_OK.
- [+] glorana isn't getting canwill ot_s_curepoison
- [+] got it - was using getspellschool() instead of
spellisfromschool()
- [+] giant spider not casting web
- [+] .oO { can't cast web right now (lowiq) (mpcost=4, i have 0) }
- [+] FIXED, and also fixed validateraces() check for this kind of
thing.
- [+] cats are now territorial with rndhostile rather than always
hostile
- [+] do final cursed wish scroll effect - magic
- [+] get a suicide spell?
- [+] thornspike armour.
- [+] new slashing weapons
- [+] new weapon: vibroblade
- [+] short blade
- [+] slashing 8
- [+] extra high crit chance
- [+] new weapon: nanoblade
- [+] short blade
- [+] slashing 10
- [+] unlimited armour piercing
- [+] laser sword
- [+] longblade
- [+] fast!
- [+] not dullable
- [+] armour piercing (not as much as nanoblade)
- [+] high critical (not as much as vibroblade)
- [+] gunblade
- [+] extra explosive damage while it has charges.
- [+] glorana accepts sacrifice of weapons, instead of food.
- [+] ekrub acceps sacrifice of food.
- [+] bug in pirate description:
- [+] Its (). It has no left hand.
- [+] god description should show prayer results. ie. "yumi will
respond to prayer by xxx"
- [+] if glorana likes you while you're sleeping say, "you dream of a
choir singing" instead of "you hear".
- [+] eating garlic gives stench.
- [+] cope with "armorpierce NA" - "will not reduce damage at all"
- [+] fire/cold spells:
- [+] endure fire/cold
- [+] L2
- [+] ongoing
- [+] like endure elements but only one element.
- [+] fire - done
- [+] cold - done
- [+] negate fire/cold
- [+] L3 ongoing
- [+] rename "gold coin" to "gold dollar"
- [+] announce mosnters losing interest.
- [+] if accuracy is too low, chance to fumble your atttack if you miss.
- [+] ie. drop weapon
- [+] show "please wait' message during initial build.
- [+] why can't i fill an empty flask from a potion of blood?
- [+] because blood grew into a bigger one
- [+] CRASH - go to a shop, 'sell gems', pick a letter not in the list
- [+] The giant ant kills the kobold. The kobold dies.
- [+] never use "kills" when a monsters is killing another one.
- [+] implement CURSED scroll of wishing effects.
- [+] stoning
- [+] hostile summons
- [+] insanity- drop iq prmenantly
- [+] golden boulder
- [+] proximity mine (l3 tech)
- [+] if activated, explodes when someone walks ONTO it (but not
_off_ it)
- [+] only gtaverage WIS _or_ adept tech knowledge won't walk onto
it
- [+] rollerskates (wear on feet, move fast fowards)
- [+] jet skates (faster version of rollerskates)
- [+] only work when ACTIVATED
- [+] only work when they have CHARGES left
- [+] drain charges when activated (like a jetpack)
- [+] cattle prod - piercing DR 1, +10 electical dam while it has
charges
- [+] f_extradamwithcharges
- [+] computers
- [+] operable
- [+] no pickup (or at least, VERY heavy)
- [+] need tech usage to use.
- [+] get choices equal to your tech level (novice = random)
- [+] choices:
- [+] 1 M = map whole level
- [+] 2 O = show location of loot (detect objects)
- [+] 3 L = show lifeforms
- [+] 5 D = explode
- [+] 6 I = identify one item.
- [+] 7U - unlock all doors + chests
- [+] at high techusage you can pick destruct time ?j:e sp
- [+] don't ever redraw during new level creation
- [+] lots of calls to setlosdirty() - for the player, this causes
instant screen redraw.
- [+] remember if player is changing level. if so, setlosdirty
won't redraw.
- [+] fixed!
- [+] basic clothing shouldn't be able to be cursed
- [+] don't show"you have no clear line of fire to here" if all the
things in the way are invisible!
- [+] argument to haslof: "knowlofonly" - already there.
- [+] apply this to all checks where it is from someone's point of
view only.
- [+] (ie. aimove)
- [+] (ie throw)
- [+] (ie spell aiming)
- [+] unique monsters shouldn't get things like 'hungry'
- [+] A some bread flies through the air toward you. A some bread hits
you.
- [+] related to using "FEELTEXT"
- [+] fixed - need to set "no_a" when using feeltext.
- [+] bug: ice wraith drops a bog wraith corpse
- [+] ...why ?
- [+] wish for 'ice wraith corpse', and i end up with 'bog wraith
corpse'
- [+] racename is "wraith", not "ice wraith"
- [+] ...because "p" was just "wraith corpse", what happened to
"ice" ?
- [+] wishing for "bog wraith corpse", p is "bog wraight corpse"
was expected.
- [+] for some reason the prefix "ice " is special...
- [+] it's because "ice" is the name of a material
- [+] need isvalidoverridemat()
- [+] don't show attribs as options when levelling up if the base score
is maxed.
- [+] bug donating money
- [+] bug: wearing gauntlets, someone cast heat metal on me. my
gauntlets didn't hurt me?
- [+] nor did my armour??
- [+] they get set to 'a red-hot xxx'
- [+] ...but don't deal damage.
- [+] touch() needs to differentiate touching something (with your
hands) from it touching you!
- [+] ie. int onpurpose argument.
- [+] bjorn no longer being pleased by defeating all foes...
- [+] monster modification at nighttime/daytime
- [+] undead are stronger at night (bonus on all skillchecks &
tohit) +/- 15%
- [+] undead are weaker during the day (penalty to skillchecks &
tohit)
- [+] plants are stronger during the day
- [+] describe in adept level knowledge
- [+] more work on hydra
- [+] poison breath - autocreate poison gas in front of it
- [+] cases where head not severed
- [+] criticalhit() needs to know about the weapon which was
used (or NULL)
- [+] then:
- [+] flaming weapon cauterises wound
- [+] silver does too
- [+] in this case after severing a head:
- [+] don't regrow more
- [+] lower TR
- [+] lose f_hasattack
- [+] if it was the last head, it dies.
- [+] fishfolk should have extra evasion in water, and aviads in air
- [+] implmement
- [+] apply to races:
- [+] fishfolk
- [+] aviad
- [+] nimble creatures with aquatic
- [+] nimble creatures with natural flight
- [+] announce in makedesc_race, beginner level knowledge.
- [+] bug: on load i can see in all directions, and impassable stuff
around me is obliterated!
- [+] warn when attacking will rust your weapon (if wis high enough)
- [+] yumi should like killing injured things
- [+] bug: sandman isn't attacking or casting spells. - wasn't hostile.
* [+] bug: not able to sell gems in a jewelery store
- [+] when something casts swap places, need to redo los for the target
too!
- [+] "you feel a wrenching sensation" should have 'more' after it.
- [+] stat bonuses for gods
- [+] yumi - boost wis
- [+] glorana - boost con
- [+] Lumara - boost iq
- [+] enchant weapon should remove rust too.
- [+] only place a pool of blood if monster is large enouhg
- [+] when mosnters steal gold, let them take more than just one!
- [+] monstres need to retain F_HOSTILE on polymorph! forgot about
rndhostile
- [+] change some eatconfers to blood confers
- [+] make blood splashes combine properly
- [+] test with troll blood
- [+] when you _kill_ something, drop more blood
- [+] when you behead/bisect, do splatter
- [+] in knowledge, show: "its blood can be bottled to make xxx"
- [+] (at skilled knowledge level)
- [+] test....
- [+] replace eatconfer flags with f_fillpot
- [+] make sure monsters with fillpot actually bleed
- [+] make slash etc damage ALWAYS cause bleed
- [+] make projectile damage only cause bleed if the object is
pointy (f_missiledam)
- [+] make bashing not cause bleed
- [+] make sure that bottling blood reduces/kills the object.
- [+] robots should bleed oil
- [+] CRASH: during lfhasflag(dodges) - lf.c:20201 (getobname
- [+] getting ob name of 'rdata' from celldangrous()
- [+] but rdata->pile is bad...
- [+] and object was a manual. why was a goblin avoiding a manual?
- [+] celldangerous() actually set rdata to "deep water"
- [+] ....but somehow it changed to point to a manual!!!
- [+] getdodgecell() changed it!
- [+] bug: when a monster kills anohter:
- [+] "the xxx hits the xxx"
- [+] (no death message).
- [+] either include "xxx dies". or make "xxx kills xxx".
- [+] fixed, i think. wasn't calling getkillverb when attacker was
a monster.
- [+] minor grammer fixes in skill descriptions and looting choices
- [+] crash when donating objects to a shop.
- [+] only allow lock breaking with bashing wepons
- [+] make minor undead like skeletons not pursue once you're out of
sight.
- [+] don't allow damaged objects to stack
- [+] wyrmspawn should be able to learn master wyrm lore!
- [+] fixed crash when operating tech which asks for a target cell
- [+] bug in bones
- [+] invalid at() definition: 'at(0,0) ob:an uncursed bone club'
[vault:bones7/loading flags] Invalid line: [at(0,0) ob:an
uncursed bone club]
- [+] when monsters polymorph into a new race, don't change their
allegiance (ie. dont inherit f_hostile)
- [+] don't want boulders or other impassable objects in starting room
- [+] lumara should give you one more mp if you are already full
- [+] reduce radius of gas trap
- [+] fixed description for mana spike
- [+] increase damage of wild spells
psychology
- [+] plauge rat should have poison corpse
- [+] bjorn should only get mad when you flee from armed foes.
- [+] Strengths: should include poisonous bite at beginner level, not
adept.
- [+] show behaviour flags in description
- [+] territorial (insane)
- [+] fleeondam (timid)
- [+] noflee (drugged)
- [+] followtime (detemrined / lazy)
- [+] muscled/scrawny
- [+] should be able to pay potion stores to id stuff.
- [+] update make_basic_shop
- [+] use shopacceptsflag
- [+] id function...
- [+] bug: scroll of wishing, Protection. keeps giving me 'sun hat.
- [+] limit possible body parts to certain ones.
- [+] when wearing armour of the spider, you should never get exhausted
from climbing
- [+] show "Threat Assessment" text on @@
- [+] only warn about pentagrams with gtaverage iq
* [+] new playable race: Wyrmspawn
- [+] don't show this message if we can't see iT!
- [+] also dont count this as a peaceful attack if we can't see it.
- [+] missiles missing you should interrupt training!
- [+] Why does monk acuracy start at -4?!
- [+] godstone of destruction (hammer )
- [+] godstone of life (heart ?)
- [+] godstone of mercy (flower?)
- [+] revenge/theft (glove?)
- [+] godstone of purity (orb ?)
- [+] death: of death. (skull ?)
- [+] casts infinite death
- [+] nature: of Nature (seed ?)
- [+] all plants become peaceful
- [+] all animals become peaceful
- [+] cure all diseases
- [+] quench all fires
- [+] flowers grow everywhere
- [+] summon treants ?
- [+] battle: of Battle (make this a horn?)
- [+] remove all curses on equipped wep/arm.
- [+] bless weapon (if not already done)
- [+] nullify all other lfs
- [+] super speed attacks ?
- [+] warriors appear
- [+] magic: of Magic (crown ?)
- [+] restore all mp
- [+] learn any spell
- [+] identify all objects
- [+] make Lavax be playable
- [+] make Fishfolk be playable
- [+] fix bug with wand lof
- [+] reduce rarity of wands
- [+] getrandomobwithflag()
- [+] fix big memleak bug (allocating map cells twice)
- [+] infinite loop on win game by defeating a god.
- [+] klikirak shouldn't make fire when on plane of gods/
- [+] createhabitat shouldn't be allowed to blank pre-vault (ie.
locked) cells
- [+] bug: wasn't any lfs in realm of gods
- [+] master vault
- [+] bottom of dungeon has link to "vaults".
- [+] vault stairs needs a key to open it. (special stair type)
- [+] stair type:
- [+] metal hatch leading down
- [+] metal ladder leading up
- [+] add new habitat
- [+] add new branch
- [+] algorithm for making h_vault level:
- [+] start with everything a wall
- [+] place x number of random rooms or vaults with tag:vault
- [+] rooms can't overlap
- [+] rooms should be fairly small
- [+] IMPORTANT: rooms can't be further than 2 (3?) cells
away from other rooms
- [+] every room has locked doors (never open entrances)
- [+] then go through, and cell which has a room cell near it
becomes empty
- [+] problems:
- [+] rooms have no doors!
- [+] rooms are too small!!
- [+] populate with monsters (f_rarity)
- [+] more chance of "guard" jobs
- [+] automatically place chests
- [+] 3 levels with:
- [+] 1 staircase up/down form each
- [+] down stairs require key to open.
- [+] first level of vaults: outer vaults
- [+] antechamber with vault guardians
- [+] second level: inner vaults
- [+] last level: master vault
- [+] inner chamber with all the godstones
- [+] once you pick up one godstone, the others vanish.
reduce the impact)
- [+] remove 'attacked peaceful' penalty for animals
- [+] ring of decel should also not let YOU throw. limit your throw
range to 1.
- [+] fruit should get bruised when it takes dt_projectile / dt_bash
damage?
- [+] -25% nutrition.
- [+] f_bruisable
- [+] f_bruised
- [+] *addobject()
- [+] getobname()
- [+] gluon (yellow)
- [+] f_adhesive, xx
- [+] sticky
- [+] str check of diff xx
- [+] - weapons have a chance of sticking to it when you hit it
- [+] same if you block its attack with a shield.
- [+] always stick if thrown .
- [+] bug on load - no gods.
- [+] need to repopulate godlf[] on load.
- [+] monsters getting stuck. changed so that turntoface isn't called
if you just turned.
- [+] sanctuary potion should knock other lfs away
- [+] backstabbing shoudl please felix
- [+] genericize determining casttype
- [+] remove nutrition penalty for uncooked food - the threat of
disease should be enough.
23-24!
- [+] highest TR is about 20.
- [+] gettrrange()
- [+] F_NUMCONVERT xx text
- [+] if stack reaches xx in number, change to obtype "text"
- [+] eg. blood splash x 5 = large pool of blood
- [+] troll blood -> healing potions
- [+] it DID, but it dropped it cuase it was hot.
- [+] griddler should be immune to redhot! (testing shows it
currently isn't)
- [+] once prisoners give you a reward, they shouldn't be allies
anymore (ie shouldn't follow you up/down stairs)
- [+] portal to realm of gods hsouldn't work until you have a godstone.
- [+] why did potion of oil explode when i threw it?
- [+] for unique monsters, instead of "jimbo's armour protects it", use
"jimbo's armour protects him"
- [+] use f_gender
- [+] this replaces F_GODOF.
- [+] change gods to use this too.
- [+] change cloak of shadows - only work if max vis range is low ?
- [+] monsters can't see you if they are >=3 away
- [+] F_SHADOWED
- [+] more amulets
- [+] of the traveller (go to a much deeper level or branch when
you put it on. go back when you take it off)
- [+] implement
- [+] usually start cursed
- [+] boost piety gain
- [+] soul feasting
- [+] acrobatics (tumble/jump)
- [+] choking
- [+] first add f_nobreath
- [+] doesn't work if you don't need to breath
- [+] hydra blood poisonous
- [+] handle "linkrace:xxx splash of blood"
- [+] make bleed() use this.
- [+] add f_venomblood to r_hydra (and others?)
- [+] make filling potions from blood check for
f_linkrace->f_venomousblood
- [+] maybe handle this more elegantly.
- [+] add f_bloodfillob to blood objects (inherit from lf)
- [+] fine, but what about addobsinradius? make it populate
retobs!!!
- [+] change f_venomblood to f_bloodfillob->ot_pot_poison
- [+] remove "linkrace:xxx" code from objects.c and from bleed()
- [+] flashbang shouldnt affect user (you would look away)
- [+] add F_THROWNBY to objects when you throw them.
- [+] stop initial revolvers from starting with 'a rubber bullet'
- [+] dry ice grenade - csats "snapfreeze"
- [+] needs f_spellcloudondeath
- [+] implement
- [+] spiked club
- [+] The hawk critically claws your hands. Your !
- [+] fixed.
- [+] need another way to unlock chests
- [+] bash them
- [+] if it is trapped, high chance that the trap will go off
- [+] if you attack something which is locked, it has a small
chance of becoming unlocked
- [+] rnd(1,your_str) must be > lockdiff!
- [+] different unarmed attack verbs for monk
- [+] javelin of lightning
- [+] when you throw it:
- [+] dothrow() calls spelleffects(LTBOLT)
- [+] then uses up one charge
- [+] if charges are left:
- [+] reforms in your hands
- [+] otherwise it turns into a normal javelin
- [+] shovel
- [+] jackhammer (like pickaxe but faster)
- [+] gather flame - l1: nearby fire boosts next spell's power.
casttimme 2
- [+] boil blood - l2: when monster dies, it explodes (like a
fireball?)
- [+] maybe: create player lf BEFORE creating maps
- [+] then move player to start pos and add pets etc
- [+] then kill mons in los
- [+] this will let us correctly adjust hostility even on dlev 1
- [+] goat (yellow 'q', 1hd)
- [+] charge
- [+] horn attack
- [+] eats anything!
- [+] f_caneatmaterial
- [+] calculate nutrition based on weight...
- [+] chimera(9hd, 9tr, mutant) - purple 'm' - goat/lion/wyrm, 3 headed.
- [+] LARGE
- [+] Morale 13-14
- [+] EVIL
- [+] Hostile
- [+] swoop
- [+] can breath fire - use burning wave
- [+] melee attacks:
- [+] bite (lion head) (3)
- [+] bite (dragon head) (5:w)
- [+] gore (horns) (3)
- [+] 2 x claw (4)
- [+] TOTAL 18
- [+] but... do maxattacks = 4, not 5.
- [+] slash attack: chance to remove a head.
- [+] this makes it lose one bite attack and (maybe) its breath
weapon.
- [+] hydra
- [+] 5-12 heads
- [+] each head has bite attack
- [+] hit dice / tr based on heads
- [+] regenerate 2 heads each time one is severed
- [+] wolf
- [+] hawk
- [+] bear
- [+] worker ant (but not soldier ant)
- [+] player shouldn't know if mosnters are peaceful or not
- [+] ie. no warnings when attacking them
- [+] no swapping places
- [+] don't show "(peaceful)" in io.c askcoords()
- [+] need isknownpeaceful()
- [+] lv1 negotiation will fix this. maybe rename it though:
- [+] psychology
- [+] psionic spells:
- [+] boost confidence
- [+] wild spells:
- [+] pyrotechnics
- [+] absorb metal should give you hp if you already have ful lmana
- [+] when placing any vault with maintainedge, set "LOCKED" for all
cells
- [+] change all mapmaking code to honour LOCKED(not just digdungeon)
- [+] room placement code
- [+] cave
- [+] dungeon
- [+] forest
- [+] sewer
- [+] swamp
- [+] fixed. BUG: TRAVEL to the swamp, walk up stairs...
- [+] ERROR - stairs should link to existing map ('dungeon L7 (id
#3)', depth 7), but
it has no free stairs.--More--
- [+] walking _down_ is okay.
- [+] was only checking to link entryob when we were going DOWN
stairs.
- [+] place fixed vaults _BEFORE_ creating habitats ???
- [+] this will only work after all creation routines honour
"->locked"
- [+] set locked on all fixed vault cells after making them.
- [+] better code for removal of internal doors.
- [+] bug! fleeing monsters taking no time!
- [+] brainbat
- [+] consume corpses to regain life? make this a normal death spell.
- [+] f_consumesouls
- [+] anything that dies in sight nearby heals her.
- [+] "%s consumes the soul of the dying %s ?"
- [+] give this to baba yaga
- [+] loading bug with map flags:
- [+] getting a flag with text = "flags"
- [+] am i saving something else with a space in it ???
- [+] %s in fscanf doesn't handle spaces!
- [+] in save.c, when I'm liable to get spaces in a string,
replace %s with:
- [+] sscanf("%[ a-xA-Z0-9+'*/-]")
- [+] earthwyrm
- [+] divine into two monsters if slashed
- [+] appear in ant nests
- [+] sourges shouldn't learn spells from books
- [+] MR doesn't affect canwill spells?
- [+] innate MR (ie. fromrace or from scource) doesn't affect spells
either.
- [+] too many potions of water! made it common rather than frequent.
now NO frequent potions.
- [+] getting 'wake t someone runmmaging through your pack' when noone
nearby
- [+] maybe this flag isn't gettginre removed properly?
- [+] polymorph should fix injuries first
* [+] for missing hand injuries, select the hand AFTER main switch()
* [+] shouldn't be able to weild 2-handed weapons if you only have 1
hand!!!
- [+] "travel" spell should let you go to RT_HABITAT things.
- [+] fix crash validating f_spotted flag
- [+] don't always put "The " on unique objects.
- [+] use F_THE for this instead.
- [+] godstones should still have F_THE
- [+] don't place staircases inside MAINTAINEDGE vaults!!
- [+] burning a wood floor only makes a hole in the ground if there are
more levels underneath!
- [+] end of caves:
- [+] both bossrooms should have goblin king and red wyrmling
- [+] stone key.
- [+] need a vault flag which say s: add f_stayinroom to everyone who
is created in this room
- [+] done: "keepmonsinroom"
- [+] cope with a branch's entry stairs coming from a vault
- [+] killing unique monsters with necrotic damage should still leave a
corpse.
- [+] make "ornate chest" which has rare objects
- [+] put it in branch endings and make it a rare object
- [+] f_extrainfo in fireat() should show damage _after_ adjustment
- [+] BUG: swamp rooms aren't connected!!!!
- [+] end of forest branch:
- [+] vault containing baba yaga's hut
- [+] bone fence around it
- [+] skeletons
- [+] the hut.
- [+] baba yaga's hut
- [+] cabin on chicken legs
- [+] f_timid!
- [+] jump
- [+] claw attacks
- [+] walks around
- [+] corpsetype = link to inside the hut
- [+] made of dragonwood (ie. hardness 5)
- [+] Don't say "You kill the walking hut".
- [+] text when it dies: "Exhausted, the hut slumps to the
ground."
- [+] inside the hut = small level with baba yaga
- [+] new regiontype: babayaga's hut
- [+] new habitat: byhut
- [+] making the habitat: only has a single vault. (one with
tag 'byhut')
- [+] diff layouts
- [+] circular
- [+] square
- [+] baba yaga herself
- [+] baba yaga
- [+] weighs 50kg
- [+] obs:
- [+] key!
- [+] hp: 135 = 22 hitdice (d6)
- [+] 75% magic resistance
- [+] attribs
- [+] str: exhigh
- [+] iq: exhigh
- [+] wis: exhigh
- [+] agi: average
- [+] con: high
- [+] cha: exlow
- [+] fire, cold, magic, poison resist
- [+] immune to necrotic
- [+] abilities
- [+] seeinvis
- [+] awareness
- [+] claw/teeth attacks.
- [+] claw = 8 DR
- [+] teeth = 6 DR
- [+] maxattacks = 2
- [+] grab ability
- [+] spells??????
- [+] fear
- [+] weaken
- [+] summon insects/animals
- [+] entangle
- [+] blink
- [+] when she dies, unlock the hut door.
- [+] delving code.
- [+] new digging code:
- [+] delve()
- [+] delve_pullcell
- [+] etc
- [+] h_antnest
- [+] creaetantnest calls delve() functions.
- [+] insert this in the main dungeon somewhere
- [+] populate with monsters (set rarity)
- [+] place queen ant on the map.
- [+] via new regionthing type RT_LF
- [+] branch ends should have a boss with a key!
- [+] jimbo
- [+] babayaga
- [+] cave boss (dragon ?)
- [+] gust of wind has higher chance of knocking down small creatures
- [+] check: ensure vault names have no ' 's
- [+] loading bug: celltype id 0 doesn't exist.
- [+] loading bug: adding minotair - don't call sethomeroom()
- [+] fixed - bones bug: "2 loaves of stale bread"
- [+] crash when object thrown away by holy circle dies.
- [+] armour with "permenance" cast shouldn't be able to be healed
either!
- [+] use immutable instead of invulnerable
- [+] if you weild your spare weapon (and dont have a spare), remove
'spareweapon' flag!
- [+] skoob should be made out of "water", not "ice" (don't want it to
have hardness)
- [+] change its material
- [+] hitting water-based lfs should rust weapon!
- [+] rusted weapons should have 10-30% chance of giving tetanus.
- [+] low chance of spasm each turn (5%)
- [+] "your [xx] spasms/contorts violently!"
- [+] hand = drop weapon
- [+] leg = fall over
- [+] jaw = nothing
- [+] back = spine broken, you die
- [+] tail = tail broken
- [+] chest = rib broken
- [+] wings = stop flying
- [+] electricity damage confuses robots
- [+] poison's power increase chance of its effects happening
- [+] whenver tetanus effect fires, increase power.
- [+] electric damage spreads through water
- [+] create water spell (like grease, but just makes water)
- [+] objectgrowth spell shoudl use f_growsto instead of hardcoding
- [+] v0 = obid or celltypeid
- [+] vt = determines VT_ob or vt_cell
- [+] then add shrink spell which uses f_shrinksto
- [+] deinfe it
- [+] add effects
- [+] specail case - brazer -> helmet should be red hot
- [+] hecta should mind attacking evil peaceful creatures
- [+] ai should still flee with bleeding legs
- [+] bandit had 90hp - problem with varlevel!! have changed
calculation.
- [+] monsters now just get 1 extra hit die per level after the
first.
- [+] only some branches should use region->depthmod. others only use
regiontype->depthmod.
- [+] spell: disrupt undead -
- [+] announce 'shatter' spell: you hear an ultra=high pitched
whining/ringing.
- [+] announce'sleep' spell: suddenly, you feel very drowsy.
- [+] inducefear: too powerful. tweak skillcheck values.
Initial work on baba yaga (sylvan forest boss)
- [+] parserace needs to cope with lazy etc.
- [+] make enum BEHAVIOUR
- [+] make behaviour_t
- [+] id
- [+] name
- [+] flags
- [+] killbehaviours()
- [+] addbehaviour() calls to define them
- [+] cleanup callsk illbehaviours
- [+] givebehaviour(lf, enum behaviour)
- [+] getrandombehaviour()
- [+] instead of checking f_behaviour->text, use
findbehaviour(f->behaviour->val[0])->name
- [+] parserace should handle these and populate wantflags
appropriately.
- [+] add disease incubation times (instead of getting them right away)
- [+] OT_A_TRIP should be a lot harder on anything with more than 2 legs
- [+] monster fleeing up/down stairs should anger hecta
- [+] reduce short bow damage.
- [+] add composite bow (between short & long)
- [+] need magic/silver weapons to hurt MT_MAGIC things
- [+] spirits should no lnoger be made of "MAGIC" - make them
something else. flesh will do.
- [+] in attack.c, noncorporeal check should also check for silver
/ magic weapons
- [+] describe noncorporeal in io.c if knowledge is high enough.
- [+] new spell casttype: ct_sounbased. deafness protects.
- [+] Banshee (7hd, spirit, death keen at night) - blue / red 'p'
- [+] death keen = sonic damage"midnight dirge"
- [+] but only at night.
- [+] harpy: 7hd - orange 'A'
- [+] charm (via sound, so sonic prevents)
- [+] 50% chance of bone club
- [+] bite, claw
- [+] take lifeform_t * for usevis instead of boolean
- [+] add new option "useorigrace" for shapechangers
- [+] whips
- [+] F_WHIP
- [+] new skill: sk_whips
- [+] basic trais:
- [+] high accuracy
- [+] lowish dam
- [+] pierce/slash/bash damage
- [+] some will let you cast 'snatch' and suck
- [+] no crit chance
- [+] examples:
- [+] bull whip (lowest damage)
- [+] flail (ie. chain whip ,change type from club to whip)
- [+] heavy flail
- [+] metal-tipped whip (flail with higher acc)
- [+] barbed whip (causes piercing damage as well)
- [+] io.c @@ should take extradam into account
- [+] describbeob() should show F_EXTRADAM
- [+] change morale values - this shoudl default to your TR, otherwise
f_morale replaces it.
- [+] CRASH in doknowledgelist()
- [+] hecta bug: fixed!
- [+] You bisect the kobold! The dying kobold shouts "Nooooo!".
Hecta's voice grates against your mind:
"You allowed my sacrifice to escape!"
- [+] is this because i'm calling "flee" after the lf takes
fatal damage but before die() is called?
- [+] NO, because flee() checks isdead(lf)
- [+] it's happening when i kill a monster, and another one of
the same type sees me!
- [+] change: only trigger this is the player has previously
attacked the monster
- [+] replace fire titan with balrog
- [+] You bisect the giant gnat! The dying giant gnat shouts "Nooooo!".
- [+] fixed.
- [+] boggart -brown 'n'
- [+] made of wood
- [+] cause things to disappear
- [+] cause milk to sour (low power blight)
- [+] scared of salt
- [+] demandgold
- [+] briar thrash (spiky) - yellow 'T' (grab)
- [+] bingebark - red 'T'. wants edible, canwill snatch
- [+] leshy (human with leaves) - green 'h'
- [+] manticore - red 'm''
- [+] lion, bat lings, man head, tail tipped with iron spikes
- [+] carnivore
- [+] human sized
- [+] shoots 1-6 spikes. each spike does 1d6. too much!!
- [+] change this to be 5d3 damage per volley.
- [+] ie missiledam 4d3
- [+] can do this once every 50 turns.
- [+] can fly
- [+] claws - 1d3 1d3
- [+] want gold (non covet)
- [+] grant extra hp too (*2)
- [+] grant extra strength (+50)
- [+] sizetimer text:
- [+] orighp^origstr
- [+] polymorph while resized will just return you to your original
size.
- [+] high level: enlarge your armour/weapons with you!
- [+] need to change resizelf() too to take an extra arg
- [+] need to chance F_SIZETIMER too
- [+] diurnal/nocturnal monsters get a penalty to listen checks during night/day
- [+] spriggan - green 'n'. ugly. can change size.
- [+] weed sprite - evil fairy, wild magic - orange 'n'
- [+] bog wraith - destroy food on touch. wants food. blight.
* [+] can use "blight" spell
- [+] Unicorn
- [+] white 'u'
- [+] good
- [+] teleport
- [+] nocharm
- [+] good spell resistanve (high wis)
- [+] drop a horn on death, which grants poison resistant when held
- [+] make it grimoire.
- [+] don't learn the first spell automatically
- [+] only start with 3 spell schools, and they must be from:
- [+] wizards with no subjob:
- [+] get a grimoire rather than a spellbook. but first spell is
always mana spike?
- [+] need some frequent forest vaults
- [+] tree passage:
- [+] tree circle
- [+] more enlarge/shrink object effects
- [+] wooden door = wood wall
- [+] wooden barrel - wooden dor
- [+] i turned into a cloud of gas. why was i not flying?
- [+] when you polymorph to creautre with natural flight, start
flying right away
- [+] show %age chance when studying a scroll
- [+] redo skillcheck code so we can calculate % chance beforehand.
- [+] automatically unlock all doors in starting room
- [+] reduce accuracy for innate attakcs- at the moment they always hit!
- [+] based on agility.
- [+] test with monk......
- [+] You have the following spells active:
3 damage reduction, vuln to fire
- [+] grimoire - why could druid see 'knock' ? think this is fixed now.
- [+] new killverbs: "murdered" "slain"
- [+] superheat not working if you miss. fixed.
- [+] skillchecks for NC_SPELLEFFECT noises should always succeed.
- [+] modifydamage dealt now that monsters have more hp:
- [+] initial wizard spells
- [+] chill
- [+] spark
- [+] manaspike
- [+] later wiz spells
- [+] fire on ground
- [+] new type of spellbook:
- [+] general - one spell from each school "spell tome" ? "xxx's
grimoire"/
- [+] another flagpile corruption bug.
- [+] asked a mammoan hunter to join me.
- [+] Marcus shouts "Beware a mosquitoid!". You hear heavy
footsteps.
- [+] Assertion failed: ("flagpile is corrupt!" == 0), function
checkflagpile, file flag.c, line 456.
- [+] (timeeffects on footprints)
- [-] when you "vomit then wake up", need to recalc los
- [+] killflag() is meant to fix this!
- [ ] why isnt it working?
- [+] bug: wasn't identify()ing starting weapons when you selected them.
- [+] allow temples to try to belss unknown objects.
- [+] allow describing obs from askobmulti()
- [+] warrior read a grimoire, why did it get identified? fixed.
- [+] reduce cost to repair stuff
- [+] dancing flame -l1: fires spread to adjacent lfs
- [+] cleansing fire = l2: use nearby fire to heal -heal (power*20)%
from each one.
- [+] maxpower 5
- [+] quicken fire - l4: make flame primarliry
- [+] magic barriers should vanish if you walk into your own one
- [+] implement
- [+] fleeing from something with F_NOMOVE shouldn't be cowardice
- [+] fix crash in check_for_block()
- [+] new branch: sylvan forest
- [+] entrance to this branch: hollow tree?
* [+] add some forest vaults
- [+] get rid of 'the sun is coming up" messages
- [+] nature spells which work better outside need to change...
make it 'when in sylvan woods' instead
- [+] need a spell to teleport to entrance of a branch!
- [+] done. TRAVEL.
- [+] saving "a clear fountain"
- [+] getobnametrue() needs to show "a fountain of xxxx" or "a
water fountain"
- [+] addobject() needs to handle "fountain of xxx" or "water
fountain"
- [+] don't generate bones file while debugging
- [+] should amour really be 'battered' at 98% ?
- [+] make 85 and abve still mean 'pristine'
- [+] reduce bjorn cowardice anger amount
- [+] snakes shouldnt follow up stairs
- [+] fix broken f_accuracymod.
- [+] unicode for trees and dense bushland.
- [+] bug loading again......related to gratings
- [+] don't inherit alignment when giving jobs to monsters
- [+] change lf summoning to better control hostility
- [+] gods should be able to see invisible
- [+] travel spell to quickly get around branches
- [+] treant / ent = green T
- [+] old/normal/young
- [+] older = slower
- [+] elder can cast 'animate tree' ?
- [+] bug: when you offer a godstone to a god outside of realm of gods,
they are saying "no" but still taking it.
- [+] gods should yell out a warning when you walk over a new godstone
- [+] this lets the player know that picking it up will anger that
god.
- [+] then add f_donewarning to it.
- [+] problem:
- [+] i get teleported into deep water then
- [+] you are drowning
- [+] you are drowning
- [+] you are drowning
- [+] you die.
- [+] was calling checkfordrowning() too often.
- [+] also prevent random teleports into dangerous cells
- [+] accuracy bonus for weapon skill wasn't working!! fixed.
- [+] remove damage done to armour
- [+] rename greater mummy to mummy king
- [+] most robots shouldn't be able to use stairs. F_NOSTAIRS
- [+] most undead don't use stairs either
- [+] rename "donate" to"offer an item"
- [+] high speech or racial knowledge should list possible items when
you offer
- [+] insert this at adept level
- [+] bump everything else upwards
- [+] when offering objects, use SPEECH check, not MORALE.
- [+] felix shoud like offering bribes
- [+] yumi should like calming people down
- [+] animals shouldn't be smart enough to avoid sharp objects on the
grond.
- [+] make all animals have wisdom = LOW
- [+] make most undead have wisdom = VLOW
- [+] make most undead have CHA = EXLOW
- [+] warn if races are missing any STARTATTs
- [+] warn if races have duplice sTARTATTS
- [+] reduce unyon hit points
- [+] drop monster hitdice sides to 6
- [+] change goblin colours
- [+] replace quickblade with uchigatana. dael 7-8 damage. very rare.
- [ ] apply correct rarity to weapons
- [+] balance katana now that i've modified blades!
- [+] and add wakazashi.
- [+] add altdam bash to most swords
- [+] add f->text to altdam
- [+] add "noobstext" to askobject()
- [+] why did ninja start with 0 mp ?
- [+] if you read a manual for a skill yo ucan't learn, have some kind
of message to say it didnt work
- [+] map shouldn't be magical
- [+] cloth should 'heat up' (it just catches on fire)
- [+] give A_FIT to all mosnters, for stamina when we polymorph into
them!
- [+] fix bug where celldangerous() fails on a lifeform's own cell
- [+] reflexive dodging should also dodge dangerous objects which
appear on top of you!
- [+] do this in startlfturn(), before other effects!
- [+] air spell - refraction - boosts EV
- [+] move jolt to L2
- [+] don't announce initial damage taking object from perfect to
battered.
- [+] propel missile
- [+] doesnt anger lumara
- [+] for monsters: aispellok true if we have an OC_MISISLE which
we're strong enough to able to throw.
- [+] minrange 2
- [+] new swords:
- [+] baselard
- [+] shortsword
- [+] epee
- [+] cutlass
- [+] sabre
- [+] repier is now a long blade.
- [+] broadsword
- [+] falchion
- [+] claymore
- [+] zweihander
- [+] bug: job description missing skill elements when there are <4 on
the last line.
- [+] don't adjust object's armourrating based on its conditin.
- [+] increase TR of dryad
- [+] reduce range of 'chill'
- [+] potion of poison should give venom poisoning, not food poisoning
- [+] robots should be immune to charm
F_AISPELLTARGETOVERRIDE v2.
- [+] change code:
- [+] F_AISPELLTARGETOVERRIDE v0=spellid, v1=F_AICASTTOxxx
v2=TT_xxx text=pctchance or NULL.
- [+] aispellok(xx, purpose) : check this _before_ checking
spell->f_aicasttoxxx
- [+] add spelltargetoverride for vampire
- [+] add spelltargetoverride for werewolf
- [+] retain F_FLEEFROM on polymorph.
- [+] lycanthropes
- [+] show up as "human" unless your animal/magic lore is high
enough
- [+] vulnerable to silver weapons
- [+] Wererat (3hd, weapon damage)
- [+] uses short blades
- [+] stench
- [+] want alcohol?
- [+] transform into fast version of rat. plague rat?
- [+] summon small animals. summon # override? "count:"
- [+] Werewolf (4hd, 6 dam)
- [+] summon wolves ?
- [+] shapeshift to dire wolf
- [+] regenerates
- [+] firstaid skill (fast healing when resting)
- [+] Werebear
- [+] 6 hd
- [+] shapeshift to grizzly bear
- [+] summon 2-3 black bears
- [+] firstaid skill (fast healing)
- [+] shapeshifting monsters sometimes start as animal form
- [+] if you are good/evil different alignments, mosnters should flat
out refuse to join you.
- [+] more different sayphrases for recruitment.
- [+] when placing homelevobs, try to stick to rooms, not corridors
- [+] getrandomroomcell() needs WE_xxx argument.
- [+] implement cellmatchescondition(c, cond)
- [+] real_getrandomadjcell() should use this too
- [+] swoop ability should only work with claw attacks
- [+] F_FORCEATTACKOB
- [+] getweapons() needs to honour this.
- [+] spell.c: check if you have the right attack type
- [+] aispellok: only if you have the right attack yype
- [+] horse - 2hd, brown u
- [+] Hippogriff (3hd , horse/eagle, 'u') - yellow
- [+] centaur (4hd, u) - grey
- [+] make pegasus be cyan
- [+] CATs
- [+] Griffon (7hd, tr4-5, u, hates horses) - lion/eagle - yellow
'f'
for f_flying
- [+] reduce explosion size for robot corpses.
- [+] cats
- [+] Evasion, fast, normal attack speed but 2 attacks
- [+] Cheetah/leopard 3. tr. 3. Brown, jump/leap
- [+] Tiger. 4hd. tr. 5kk Red
- [+] Lion. 4. tr 6. Orange
- [+] Panther ? Magenta
- [+] Shadowcat .blue
- [+] hecta did finger of death on a troll, why didn't it leave a
corpse ? because i used necrotic damage.
- [+] crash when asking druid for levelup spell.
- [+] fix up msgs when charmed monsters are moving.
- [+] fix up explodecells() to do better LOF calculation.
- [+] cancast() timer on monster ablities is not working!!!
- [+] quaffed a potion of polymorph self... and nothing happened!
- [+] only killing undead should please the god of life, not just
killing anything evil
- [+] klikirak shouldn't get angry when you take cold damage!
- [+] fire sohuld convert flammable celltypes to another type:
- [+] wood -> stone floor with pit
- [+] carpet > stone
- [+] increase flamepillar range
- [+] warning before killing firebug on wood/carpet, if wisdom is
at_high or above, and animal lore is high enough.
- [+] make f_twohanded only apply up to a given lf size.
- [+] implement
- [+] then add "istwohandedfor(wep, lf)"
- [+] then fix up ob defs in data.c
- [+] unnatural growth/shrinkage spells should be temporary too (like
potion)
- [+] random polymorph code
- [+] stay at the same TR, or one higher/lower! (same for player
random polymorph)
- [+] elephant - friendly to mammoans
- [+] mammoth
- [+] pixie (then pixie, dryad sprite = sylvan / fae)
- [+] naiad / nixie
- [+] blue 'n'
- [+] low power charm to lure into water
- [+] dagger/javelin
- [+] throwing net
- [+] resist magic 25%
- [+] droid - zapper
- [+] hoverscout (levitates, summons monsters)
- [+] skellion - floating flaming skull, scream attack, flame melee
- [+] fire primality should cast flame burst.
- [+] don't modify monster hp based on fitness.
- [+] storm primality / wind primality
- [+] very fast
- [+] 2 attacks - 1d5 each time. (pummel with debris / zapper)
- [+] permenant windshield
- [+] lesser:
- [+] lightningbolt (lesser, 2d6)
- [+] sleetstorm (lesser, 1-2 cold and slow movement)
- [+] greater
- [+] chain lightning (greater, 3d6)
- [+] hailstorm (greater, 1d6 cold and 1d4-5d4 depending on
power)
- [+] naiad (water sprite) - 'n' -blue
- [+] good
- [+] aquatic
- [+] water spirit
- [+] charm spell
- [+] ling parasite - green 'x'
- [+] turns one corpse into a zombie (dies in the process)
- [+] add onion object.
- [+] roc
- [+] "crystal cur" - canine. only bashing works
- [+] gems for corpses.
- [+] bug: monsters not using spells. fixed.
- [+] test NOSPELLS bug with rapidivy
- [+] test low IQ spells with storm primality
- [+] make hitdice be d8 rather than d4
- [+] change F_HITDICE
- [+] add constant HITDIESIDES
- [+] redo all definitions in data.c
- [+] lich
- [+] lifeob = ornate glass jar
- [+] can walk up to 12 away
- [+] chilling touch
- [+] mindshield
- [+] teleport back to jar on death
- [+] monster ghosts have lifeob = corpse, which we generate.
- [+] but DONT let them possess the player ? or dont let them
possess anyhting ?
- [+] mosnters should say noooo! if their lifeob is destroyed
- [+] lifeobs need a link back to owner f_lifeobfor xxx
- [+] lifeob check wasn't including the lf's cell itself.
- [+] spellcasttext for dryad - "Charm" = beckons
- [+] poltergeist should be invisible
- [+] troll should covet food
- [+] avian - birds should be friendly
- [+] scroll of permenance should make armour invulnerable
- [+] amulet of mind sheild - immune to psionics
- [+] parserace() shouhld handle "random _baseid_" ie. random ant,
random troll etc
- [+] vault: troll cave (very rare)
- [+] trolls
- [+] bones
- [+] cooked corpses
- [+] bug: minions not being created in vaults.
- [+] vault: ant nest
- [+] queen ant
- [+] dirt floor
- [+] lots of ants
- [+] LOTS of food.
- [+] reduce flame volume
- [+] vault maintainedge not working. slightly fixed now?
- [+] vampires are turning into gas clouds but then trying to attack.
- [+] new amulets
- [+] Of evolution (turn into a merman in deep water, aviad instead
of falling, (fireres humanoid) in fire, (coldred human) in
cold)
- [+] in deep water and can't swim? turn into merman
- [+] about to fall through a hole? turn into a flying aviad
- [+] in fire and not resistant? turn into a Lavax
- [+] in cold and not resistant? turn into sasquatch
- [+] all polymorphs are TEMPORARY (5 turns or so).
- [+] no autoid
- [+] of bloodthirst - walking over blood heals you!
- [+] no autoid
- [+] Of graceful swimming (auto turn into a swan when you enter
water)
- [+] no autoid
- [+] paranoia (5% chance per turn to create monsters out of sight,
but in lof)
- [+] they will make a "walk" noise right away
- [+] or something just "you hear xxx right behind you!"
- [+] air spells:
- [+] create whirlwind - make a single whirlwind
- [+] implement
- [+] ethereal steed - move very fast and levitate
- [+] f_autocreateob whirlwind behind you
- [+] whirlwind object throws any lfs/objects around randomly
- [+] tornado - creates a single tornado at a given location (more
powerful). it moves around randomly, kills adjacent walls.
- [+] F_OBMOVESRANDOMLY
- [+] find an adjacent cell (walls ok)
- [+] kill any walls there
- [+] move there
- [+] hurricane - creates a cross cloud of whirlwinds (very
powerful!). these move around randomly and kills adjacent
walls.
- [+] implement
- [+] make them all move TOGETHER.
- [+] djinni / genie
- [+] invisibility
- [+] gaseous form
- [+] illusion? mirror image ?
- [+] permenant ethereal steed effects
- [+] airblast
- [+] gust of wind
- [+] efreeti
- [+] wall of fire (new spell)
- [+] gas form
- [+] enlarge
- [+] flame pillar
- [+] when summoning a monster with a lifeob, place it under them?
- [+] druid should learn canwill plantwalk at some point... level 7
- [+] allow f_cancast to have a timer too, like canwill. (so that
monsters only cast certain spells sometimes)
- [+] is ai plantwalk working?
- [+] seems to...
- [+] but then i get "something casts a spell at you!"
- [+] aigetspelltarget is setting targlf to player. FIXED.
- [+] ai keeps on casting plantwalk after doing it once.
- [+] ai needs to sto fleeing after casting plantwalk successfully!
- [+] this is because after stealing, we are fleeing for a time
limit, rather than PERMENANT
- [+] once this is fixed, add spellcasttext plantwalk = null for
dryad.
- [+] NEw code: if you teleport, and you were fleeing, and you can no
longer have LOF to the one uou're fleeing from, STOP.
- [+] The dryad vanishes! A dryad moves out of view.--More--
- [+] don't say both!
- [+] change CHARMEDBY code for player:
- [+] walk towards charmer, then give them your stuff!
- [+] dryad brown 'T' (tree creature)
- [+] knife
- [+] must stay near oak tree
- [+] can "plantwalk" between oak trees (or other plants).
- [+] cast spell at cell with plant, warps you to a random one
- [+] for player: reveal all cells with trees, then ask
you which one.
- [+] range 1
- [+] maxpower 1
- [+] ai casting: must be a plant in range.
- [+] emergency code: if not within lifeob range, move back!
- [+] can cast sleep
- [+] wants gold/gems/weapons
- [+] home oak tree contains gems
- [+] steal
- [+] stayinroom
- [+] charm
- [+] AI shouldn't ever walk away from life ob!
- [+] ai homeob gems aren't appearing
- [+] bug: lf->Race being corrupted.
- [+] happened to a sleeping ogre just after i killed it (crash
during checkdeath())
- [+] corrupted:
- [+] ->id
- [+] ->race
- [+] ->level
- [+] hp / maxhp okay.
- [+] am i calling hajob() after freeing lf?
- [+] YES.
- [+] nutters not attacking
- [+] cansee(nutter, player) = 0
- [+] haslos(nutter, player->cell) == 0!!
- [+] why???
- [+] bug: getting abandoned temples for some reason ?
- [+] have put debugging code in
- [+] wait for it to happen...
- [+] fixed! was created dungeon before heaven.
NEW MONSTERS
- [+] revenant
- [+] intelligent zombie, retains former job.
- [+] corpse revives
- [+] last hit with holy damage will stop revivetimer
- [+] so will beheading/bisecting
- [+] gyrfalcon
- [+] white, largest falcon, found in arctic. best hawk.
- [+] malik - sprite with backstsab, assassin blink (blue n)
- [+] Unyon (onion monster, grey/white Flora). slash causes blindness
burst unless eyes shaded.
- [+] swamp troll (poison dam)
- [+] trollkin (half-human, less regen?)
- [+] ogra (female ogre, weaker, higher agil, dodge ability)
- [+] tomb spider (carnivorous, can cast darkness, drain life on hits ?)
- [+] made of metal
- [+] never flee
- [+] corpses start sparking then explode 2 turns later
- [+] examples:
- [+] security bot (zapper), brown
- [+] android (humanoid, good stats), grey
- [+] riot bot (water jet, zap, gas), bold blue
- [+] flame turret (burning wave, slowly turns, DOESNT turn to face
noises), red
- [+] if monster dodges your first atatack, cancel the second!
- [+] make god anger/happiness fade over time, unless they are enraged
(1 per turn ?)
- [+] chance of fading is 1 in (abs(piety)/100)
- [+] don't include " [tried] when dumping bones!
- [+] "repair all"!
- [+] implement repairall
- [+] make repairall like eating (auto action)
- [+] time taken when you fall down should be longer
- [+] F_STAYINROOM monsters will go back to their lair if they ahve no
target.
- [+] more object decay in bones files:
- [+] blood splashes/pools become blood stines
- [+] all objects have a 1/4 chance of vanishing (someone picked
them up)
- [+] resting should only please glorana if your'e actually worshipping
her!
- [+] exploit: stand outside jimbo's room and pelt him! fixed.
- [+] random "behaviours" for more/less hp
- [+] around dlev 8-9, monsters are too easy. at this point i'm
dealing 10-20 damage per hit.
- [+] give monsters a "Challenge Rating" seperate to their hitdice.
- [+] instead of gethitdice(), use getcr()
- [+] change dumpmonsters
- [+] use cr() to determine what monsters will appear, not hit dice.
- [+] that way i can have certain mosnters have more hp, but still
appear higher in the dungeon
- [+] initially, assign CRs based on hit dice
- [+] when rolling hitdice for monsters, always give maximum, then
go up/down by 15%
- [+] monsters shoiuld always know spells from their spellbooks.