- forgot to initialise brand->description
- door displaying as "leaf" - definition of knowledge->id was OBCLASS instead of OBTYPE.
- Repeated text:
Minimum agility to use effectively: 50 to use.Minimum agility to use
effectively: 50 to use. (bonus at 70).
- change wish text to be more meaningful
- fix failure when loading objects with a bonus from vaults/bones (eg. blessed '+5' sword)
- when raging, don't prompt to really attack when you won't gain xp
- disable flagpile checks
- Use 'interact' to use shops, not 'operate'
- Bad text: You are resistant to: projectiles[-7870t], explosives[-7870t].
- scorpions shouldn't follow you up stairs. (but giant scorpions can)
- make failed relinkob() calls return the original object rather than null, otherwise we get situations where an object becomes NULL and causes a crash.
- make cooking skill description show what size corpses you can cook.
- bug: potion of growth caused instadeath when reverting.
- bug: not showing monster abilites properly
- show raceclass in descriptions (/ v)
- make evasion only work if you're not exhausted
- Felix should be pleased by attacking people while hidden
- Not seeing felix angered messages when donating items
- Holes in roof - you now need to climb to inspect them.
- Fixed crash when hitting @ while producing light.
- [+] reduce chances of dulling weapon from hitting things
- [+] crash during save. other save/load fixes.
- [+] simplify xp value calculation.
- [+] fixes for checks to see whether cells are diggable using "dig"
spell.
- [+] fix shop closed bug - "we are closed" text not appearing.
- [+] sound code mods - should no longer ever hear "muffled slithering"
(since slithering should be too soft to travel through walls)
- [+] undead will no longer try to heal via resting (since they can't).
- [+] bug: crash when linking to map entry objects
- [+] removed some material-based damage immunities
- [+] at night you shouldn't hear "a cash register chiming".
- [+] increase hp of chests
- [+] filling empty flask from potion of fshy lungs resulted in potion
of water!
- [+] don't take migraine damage from light if your'e blind.
you are able to cook.
- [+] then greatly increase chances of getting sick from raw meat.
- [+] and decrease nutrition for raw meat again
- [+] wizard classes should get random spells on level up
- [+] Interact (with adjacent things)
- [+] add new command
- [+] bookshelf
- [+] wardrobes (contain clothes)
- [+] open barrels
- [+] computers
- [+] only show "it currently contains..." for containers which you
have opened.
- [+] F_BEENOPENED.
- [+] some barrels are randomly jammed
- [+] change jam to be strength check.
- [+] change skillcheck roll - now only 1-50
- [+] monsters shouldn't cast lethargy if you're already exhasted
- [+] lethargy should cancel rage.
- [+] change spellbooks - always id them but you might not be able to
read them.
new vaults:
- [+] goblin nest
- [+] orc fort
- [+] BUG: after giant ant digs a hole:
- [+] ERROR - unlinked stairs! should have been linked during map
creation.
ERROR - can't find opposite end of stairs/portal!
- [+] upstaircase on the new level is being linked to a hole.
- [+] fixed?
- [+] test again... (dig down, check log.txt for linking to wrong
type)
- [+] giant ant should be able to dig dirt at will(to escape)
- [+] mimic ??
- [+] pretends to be an ornate chest.
- [+] new monsters
- [+] gluon should be an ooze.
- [+] hag
- [+] phase spider (wlak through walls!)
- [+] basilisk
- [+] better description for rusted armour.
- [+] fix crash when creating up holes.
- [+] gods of opposing alignments should never make offers.
- [+] new armour flag:
- [+] f_underclothing
- [+] getequippedob() - get the outer one.
- [+] if you have f_underclothing, can wear other armour on top of
it.
- [+] can't remove underclothes without removing outer first.
- [+] TEST with cotton shirt
- [+] make sure autoequip handles undercltohing
- [+] fix other objects
- [+] adjust ']' output
- [+] make armour help against some magical damage too
- [+] move armour check and reduction into losehpeffects().
- [+] pass damreducedbyarmour to losehpeffects
- [+] psionic spells:
- [+] dampen missiles - lots of extra evasion vs missiles only
* [+] soul link (l4, share damage)
- [+] mind sheidl (l4, like the amulet)
- [+] delay death (l5, don't die if hp <= 0 and this spell is
active)
- [+] remote ko (l6)
- [+] Silence spell / effect - air.
- [+] f_silenced.
- [+] announce in io.c
- [+] prevents spellcasting
- [+] prevents docomms()
- [+] prevents reading scrolls
- [+] prevents speech-based abilities like warcry and sonic bolt
- [+] say() will fail
- [+] sayphrase() wil fail
- [+] test the spell.......
- [+] CRASH when adjusting glyph on edge of map
- [+] non-humanoids can't climb without climb skill.
- [+] player sohuld be able to swap with unconscious/asleep lfs <= same
size
- [+] too easy to knock things unconscious??? bug. fixed.
- [+] reusable cells being set to empty! think this was a vault
definition problem.
- [+] demon chameleon / deech
- [+] low-level mosnter which can hide
- [+] coldness shoudl reduce object heat and heat should add f_hot
- [+] novice engineering should let you make arrows.
- [+] hunter shouhld have novice engineering.
- [+] BUG: during the game: i nvalid racename 'piranha' in vault
pool_room
- [+] this happened because more than 1 appeared.
- [+] disallow minions/numapepar in vaults.
- [+] replace 'step carefully' key to free up 's' - OT_A_TIPTOE
- [+] 's' = 'shut door' (replace 'c')
- [+] 'c' = 'chat to single'
- [+] rewrite docomms() to use other funcs
- [+] 'C' = 'command all allies'
- [+] only possible for single person:
- [+] 'o' donate
- [+] 'i' tell me about this area
- [+] 'j' join me
- [+] 'k' trade knowledge
- [+] 'm' mercy
- [+] 't' trade
- [+] 'x' dangers nearby?
- [+] make a list of all commands which are valid for EVERYONE
- [+] send command to everyone.
- [+] docommslf()
- [+] test with single target
- [+] test with multiple targets
- [+] hitconfer lifetime for wight/contagion zombie should only happen
on fatal hits
- [+] makezombie() should be able to call petify()
- [+] bug: mosnters never using HIDE ability.
- [+] monsters which pretend to be objects (ie. gargoyle)
- [+] F_ISMONSTER v0=raceid v1=objectid, v2 = spot check difficulty
- [+] when generating, add contents->first as objectid v1
- [+] getobname -> if you have f_mosnters, use contents->first
- [+] getobdesc -> if you have f_mosnters, use contents->first
- [+] mosnters won't walk onto it
- [+] if you are next to them and can't see them... reveal then
attack!
- [+] F_ISMONSTER - must always be impassable to everyone!!!
- [+] if you try to walk onto it:
- [+] "the xxx starts to move!"
- [+] kill ob
- [+] add lf
- [+] they get a free attack
- [+] if it takes damage
- [+] ... convert.
- [+] spot checks to see them.
- [+] ...convert.
- [+] F_PRETENDSTOBE - mosnters will revert if unseen.
- [+] reveal hidden should show them.
- [+] gargoyle
- [+] stone statues
- [+] winged
- [+] large
- [+] ~37hp
- [+] start off as an obejct
- [+] wight
- [+] rare.
- [+] ~26 hp ...TR5
- [+] silent move
- [+] dr4 attack (low damage) but....
- [+] any humans killed rise as a wight .
- [+] (hitconfer revive). how can i limit hitconfer to a
race? maybe f_hitconferrace
- [+] bones file
- [+] tested ok.
- [+] 1 leveldrain per hit
- [+] skillcheck to avoid
- [+] wight gains +5 hp
- [+] add nonausea rather than nosmell sometimes.
- [+] rats should eb able to smell, but not get nauseated.
- [+] fix triumph pleasure for bjorn. must be no monsters within
LOF... or within radius ?
- [+] and make it very low piety gain.
- [+] remember which level we got flags form
- [+] flag_t -> fromlev
- [+] announce this in getflagcourse
- [+] undead qualities
- [+] no criticals
- [+] don't naturally heal
- [+] don't breath
- [+] drainlevel(fromlf)
- [+] check for dtresist necrotic
- [+] fitness saving throw (difficulty is 100 + fromlf's level*6)
- [+] call loselevel()
- [+] loselevel()
- [+] announce.
- [+] drop maxhp.
- [+] adjust hp appropriately
- [+] lose any flags where >fromlev is too high.
- [+] handle monk f_hasattack specially.
- [+] getmonkdr(level)
- [+] getmonkattacks(level)
- [+] keep track of what stats we gained and lose them again.
- [+] TEST level drain with cursed xp pot
- [+] TEST level drain with stats...
- [+] prevent drinking when wearing full-face masks like gas
mask/football helmet
- [+] implement f_COVERSFACE.
- [+] add it to objects.
- [+] check it when doing caneat() candrink()
- [+] up their AC bonus too
- [+] large scorpion
- [+] hellhound
- [+] large primalities
- [+] new vault flag: usehabitat:xxx
- [+] means "set the habitat of all vault cells to xxx"
- [+] real_getrandomob() should be given a CELL, not MAP.
- [+] getrandomobofclass() should be given a CELL, not MAP.
- [+] use CELL habitat to determine random obs
- [+] apply to caves
- [+] vault scatter: ignore locked cells (ie. reusable ones)
new vaults
- [+] dualroom
- [+] sauna - vhot!
- [+] pentagram and demons
new pionic spells
- [+] chi bolt - low dam ranged attack 1d4
- [+] chi strike (l4) - add 1d4 explosive damage to melee hits
- [+] bogle: barkskin.
- [+] hamstring shouldn't make you fall if you're flying
- [+] flying creatures shouldn't be harmed by F_SHARP
- [+] even when blind, you should be able to "see" lfs you can smell or
tremorsense.
- [+] resting while cold without blanket = not possible.
- [+] "the extreme cold prevents you from sleeping."
- [+] when hot, takes a lot longer to heal ?
- [+] "it is difficult to sleep in this heat."
- [+] require lorelev skilled to fill potions from blood.
- [+] done.
- [+] ALSO allow skileld chemistry to work for all races ?
- [+] bones vaults shouldn't have maintainedge!!
- [+] contagion zombie - anyone it bites turns into a new zombie on
death.
- [+] very raer
- [+] generic object: "generator"
- [+] specal text: generator:steam for vault defs
- [+] show flag sources in io.c
- [+] TEST
- [+] remove from MONSTER view.
- [+] paladin shoudl start with first aid skill
- [+] disrupt undead should do heaps more damage - because right now
you'd just use smite evil
- [+] increase disrupt undead from "2-6" to more.
- [+] reduce smite evil's maxpower
- [+] problem: blessed buckler is essentiall the same as tower shield
cause it doesnt get hurt!
- [+] make bigger shields provide more protection
- [+] change F_SEEINDARK so that v1 specifies whether a bright light
blinds you
- [+] getting WAY too many piles of ash from burnign corpses
- [+] combine into "huge pile of ash"
- [+] change food decay
- [+] instead of food losing hp, increase its F_DECAY level
- [+] if F_DECAY too high, it's tainted. >= 50
- [+] ie. update isrotting()
- [+] dramatically lower food hp.
- [+] where does corpse F_OBHP get added? from obclass.
- [+] when we make a corpse override its obhp with the original
mosnter's maxhp.
- [+] when i fix unreachable areas, change all the walls/floors in one
of the unreachable areas!
- [+] ie. change every solid non-vault cell which is adjacent to an
unreachable one.
- [+] test,,,
- [+] make inspection check more difficult
- [+] ohther sound types which monstesr shouldn't turn to watch:
- [+] NC_ENVIRONMENTAL (building, stairs, etc)
- [+] create food should neve create poisonous food.
- [+] bug: giant ant zombie not attacking giant ant
- [+] change table symol to PI
- [+] replace footstool with chair
- [+] allow reusable cells in vaults
- [+] slippery floors should make pushing easier
- [+] when checking stairs i found "Pete footprints"
- [+] new monsters:
- [+] polar bear
- [+] owlbear
- [+] bug: sleeping monsters never waking up.
- [+] "random good weapon" wish broken. fixed now.
- [+] cope with med/small/large dancing weapons
- [+] generice code to check baseid instead of raceid
- [+] handle automatic generation - need to populate:
- [+] select an appropriate object (rarity freq / common,
uncommon, rare)
- [+] copy from obejct to lf:
- [+] OBHP
- [+] SIZE
- [+] OBATTACKDELAY
- [+] bug: always getting 'twisted branch' for small dancing weapon
- [+] bug: crash in attackcell. nweps = 0
- [+] replace thin walls with unicode symbols
- [+] glass
- [+] wood
- [+] metal
- [+] getcellglyph() looks at surrounding cells if required
- [+] too slow?
- [+] attacking helpless undead shouldn't count
- [+] differentiate EXTRADAM from WOUNDING.
- [+] wounding = add damage to ALL attacks
- [+] EXTRADAM = add DIFFERENT type of damage
- [+] psionics on levelup
- [+] make this a "select from iq/10", not a select from any
- [+] if poison needle trap misses, place it on the ground.
- [+] no nauseated effects while asleep.
- [+] if something runs out of view adjacent to you, say "xxx moves
behind you"
- [+] ashkari bug:
- [+] when getting enraged by the sight of something, f_rage runs
out a few turns before f_aicontrolled. should be the same!!!
- [+] mosnter facing being set to -. debug with forced break. fixed.
- [+] fix territorial monster crash.
- [+] CRASH in celldangerous when undead avoiding holy circles.
- [+] alternate text for 'ineffectually'
- [+] need an announce for bjorn's ecstatic ability (ehavy blow)
- [+] whenever you gain a new godbonus, give you a grace period
- [+] change selectweapon so i can specify valid choices
- [+] have multiple F_SELECTWEAPON flags, v0 = object. (or text?)
- [+] getflags() then pick from these.
- [+] hwen gunpowder inside a barrel explodes:
- [+] say "the barrel explodes", since that's what you can see
- [+] explosion should actually work!!!
- [+] lethargy should drain lots more stamina now that exhaustion
doesn't prevent attacks
- [+] thrown knifes not doing enough damage.
- [+] fireat(): dam = throwdam(2) + speed(2)
dealing 3 damage
- [+] maybe increase throwdam to 4.
- [+] check otehr throwmissiles too
- [+] 'G' isn't remembering direction anymore
- [+] beginner athletics: give skill where misisng in a melee attack
doesn't cost stamina
- [+] klikirak shoudl like ALL obejct desctruction, but PREFER via fire.
- [+] insects shoudl ahve infinite stamina
- [+] replace DIECONVERT planks of wood type code
- [+] instead, materials have dieconvert values based on damage.
- [+] getsmallbreakob(material,damtype)
- [+] getlargebreakob(material, damtype)
- [+] when an object dies, lookup its material and obejct size
- [+] ie. large wooden objects turn into "x planks of wood"
- [+] small ones turn into "x shards of wood"
- [+] then remove TODO: code from changemat() in objects.c
- [+] allow for hardcoded getsmallbrekaob, getbigbreakob
- [+] F_BREAKOB, v0=damtype, v1=howmany, text = what
- [+] remove specific code, like fire damage = pile of ash.
ice+bash = shards, etc.
- [+] can use shards/planks of wood as (poor) weapons.
- [+] jackhammer shoudl be tech, not tool./
- [+] digging tools should make noise
- [+] remove freezing touch spell/scroll
- [+] better listen check when asleep - slithering should very rarely
wake you up
- [+] use adjusted volume value based on sleeping etc.
- [+] breaking locks by bashing should now work.
- [+] I'm often getting "The hollow tree seems to be blocked." when
going to the sylvan woods.
- [+] there is a tree in the way!
- [+] fixed.
- [+] bug: evil players not getting xp for killing helpless. fixed.
- [+] bug: pullobto() not doing correct impassable check.
- [+] another bug: insylvan woods, stairs were on top of water!!!
- [+] ERROR - couldnt find pos for down stairs while making habitat
forest.--More--
- [+] repairing should make noise too
- [+] new flag - USENOISE
- [+] EATCONFER on clove of garlic isn't working
- [+] it's because i'm only checking this if we have MUTABLE.
- [+] use EATMUTATE instead for mutations. then eatconfer works
with everything.
- [+] more crush bugs
- [+] You crush some pieces of broken glass underfoot.
You see 28 pieces of broken glass here.
- [+] You crush some pieces of broken glass underfoot.
You see 28 pieces of broken glass here.
- [+] anything with natural flight sohuld still make noise when flying.
otherwise it's too powerful.
- [+] "wing flapping" . NV FLY
- [+] NOISETEXT NV_FLY
- [+] magical flight can still be silent.
- [+] make how high you can fly depend on the "Flight" or "Natural
Flight" skill.
- [+] F_FLYING v0 = height.
- [+] without this skill, flight is dependant on spell power.
- [+] assign sk_flying to races.
- [+] remove F_FLIGHTEVASION from races. skill now does this
instead.
- [+] validaterace:
- [+] canwill ot_a_flight = need flight skill
- [+] each rank = +1 size level of height.
- [+] if you get the skill while already flying, adjust the flag
- [+] fall from flying if burduned.
- [+] skill also affacts how much your evasion while flying is
boosted.
- [+] this extra EV bonus from flight sohuld only work against
NON flying creatures!
- [+] 5 EV per rank
- [+] have a differnet fly ability
- [+] ability = flight or fly (use flying skill for height)
- [+] implement
- [+] replace monster flight with ability.
- [+] spell = enchanted flight (use spell power for ehgiht)
- [+] check all occurences of FROMSPELL, cope with FROMABIL too.
- [+] don't regenerate stamina when doing natural flight.
- [+] ai: if flying and no stamina left, stop flying.
- [+] ai: only start flying if we have >= 80% stamina.
- [+] how did a nutter miss a mammoan from point blank range?
- [+] the nutter is throwing a peanut - acc = 64, speed = 2
- [+] maybe fixed now.
- [+] felix should like using poison.
- [+] when asking whether you accept a god's offer, give a '?' option,
to give help on that god.
- [+] also have F_GODDECLINE text.
- [+] pipes of peace - calms everyone around you. charges.
damreduced.
- [+] reduce sliperriness of blood now that we get lots more.
- [+] restrict hiscores to scores of >= 1.
- [+] (and remove all current entries with score of 0)
- [+] modifications:
- [+] make levels more sparse
- [+] make "things"more common
- [+] make objects more common (as opposed to lfs)
- [+] monsters with territorial CAN approach if you're sleeping/ko
- [+] monsters with territorial don't get angry if you're sleeping/ko
- [+] CRASH when i tried to dismantle something.
- [+] speed up map generation.
- [+] most time is in createhabitat.
- [+] calcposandmakeroom(). speed this up.
- [+] linkexit()
- [+] FIX reachability algorithm
- [+] unless we can make a dircet path, REMOVE all other code.
- [+] instead, use modified a*
- [+] distance to dest roomm, not dest cell
- [+] = distance to centre of dest room
- [+] cell is okay for pathfinding
- [+] adjcellokforreachability(cell) = true
- [+] cell is the finish spot if:
- [+] it is in a different room and
adjcellokforreachability(cell) = true
- [+] i THINK this is working now.
- [+] f_startobwepsk ... text = "common" not working. fixed.
- [+] need a potion and venom sac
- [+] make more things drop venom sacs - snakes etc
- [+] F_EXTRACORPSE
- [+] operate the venom sac ?
- [+] can do this with first levle chemistry
- [+] different kind of venom - blindness
- [+] "blue venom sac" vs "purple venom sac"
- [+] combiesn to potion of blindness
- [+] more amulets
- [+] common
- [+] of bravery
- [+] of light (common)
- [+] of minor protection (common) (=5 AR
- [+] energy absorbtion (absorb explosions, then pump them out)
- [+] uncommon
- [+] injury prvention (instead of ring)
- [+] rare
- [+] or major protection (not common) +10 AR
- [+] had a missing eye. drunk a healing potino.
- [+] Your head grows back! Your injured head has healed.
- [+] objects with positive F_BONUS should never start cursed
- [+] (in addobject)
- [+] territorial monsters talk when you are approaching their
threshold (but not within it)
- [+] put this in ai_talk()
- [+] if someone almost at territorial range:
- [+] make f_noisetext v2 be SP_xxx. if it's set, just say
this instead.
- [+] it not, N_TERRITORY_APPROACH
- [+] if we can talk, SP_TERRITORY_APPROACH
- [+] possibilities:
- [+] stay away!
- [+] keep back!
- [+] get away froma me!
- [+] don't come any closer!
- [+] that's close enough.
- [+] keep your distance, stranger!
- [+] out of my way!
- [+] test with giant and
- [+] test with insane humanoid
- [+] make territorial creatures not walk too close to things,
unless they are attacking or fleeing
- [+] in willmove(), fail if it is too close to something
- [+] ...unless we have a target lf
- [+] ...or we are fleeing
- [+] jumping when woozy will go to a random cell
- [+] fix autoshortcuts to include starting spells
- [+] still bugs with canreachbp - "The giant rat critically scratches
your wizard hat."
- [+] zombies shoudln't be able to talk.
- [+] allow pets to "cheat" to find player's lcoation.
- [+] need some kind of limit on zombie army creation
- [+] no stairs
- [+] areallies() on two pets returning false
- [+] psychic shove
- [+] push off something, or push them away
- [+] l2 mental
- [+] pushback power+1 cells (max power 3)
- [+] different god message for first prayer.
- [+] fix crash during swapplaces()
- [+] sacrifice of masterwork weapons should work better. shoddy
should be worse.
- [+] bug: shops don't work anymore
- [+] change lessen poison - power always goes to 1
- [+] replace description "spell's power is boosted when cast outside"
with "boosted when cast in a forested area"
- [+] minor healing problem. "at lest 2hp per power" but mxpower 10.
should be maxpwer 5
- [+] wish for 'protection' should give something you can wear without
penalties.
- [+] locate object should give a message when none are found.
- [+] find any four corridors in a square
- [+] where one of them has 4 exits, and the rest have 3
- [+] fill in the ones with 3
- [+] VALGRIND.
- [+] reduce ID costs at shops
- [+] necromancer mods
- [+] start with a dagger, since you don't get early attack spells
- [+] start with limited short blades skill
- [+] start with animate dead (now a level 1 spell)
- [+] increase TR of ice wraith.
- [+] replace strrep function:
- [+] strrep(&mystring, find,replacewith)
- [+] code:
- [+] char *strrep(char **mystring, char *x, char *y)
- [+] char *temp
- [+] temp = dostrrep(x,x,x)
- [+] free(*mystring)
- [+] *mystring = temp
- [+] flag loop in F_IGNORECELL!
- [+] problem: i'm getting f->next == f
- [+] added a new assertino in addflag()
- [+] change how killflagsofid() works, maybe this is the problem.
- [+] i think my "insertbefore" is being freed somehow...v
- [+] fixed with valgrind?
- [+] try harder to link using tunnels rather than portals
- [+] has lots of recruitable people
- [+] plants, magic creatures, etc shoudl have infinite staina
- [+] severed fingers/heads are no longer considered "corpses".
- [+] new kind of bed: pile of straw
- [+] closed shops now work properly.
- [+] stench skillcheck (in makenauseated) - announce this differenlty
to 'nothing happen's
- [+] monsters won't turn to face sounds when fleeing.
- [+] increase accuracy for spear, but reduce accuracy when adjacent
- [+] why didn't cyborg warrior start with bullwhip equiped??
- [+] isbetterwepthan() should take EXTRADAM flag into account
- [+] monster starting skill levels should depend on iq
- [+] no sprinting with injured legs
- [+] more restructions when stunned:
- [+] no throwing
- [+] no operating
- [+] no firearms
- [+] tombstone text: Eaten by a snow troll's halberd
- [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant
corpse! reduced.
- [+] learning certain lore skills should please gods
- [+] repairing should take a lot longer. ie. shoudlbn't be able to do
it during a fight.
- [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR,
v0=material, v1=howmuch
- [+] continuerepairing() should only fix <skill + helpsrepair> hp
per turn.
- [+] announce helpsrepair in obdesc
- [+] coldroom vault:
- [+] ice floor
- [+] ice walls
- [+] ice pillar
- [+] frozen corpses
- [+] new job: gladiator
- [+] sword
- [+] shield
- [+] high shield skill
- [+] high evasion skill
- [+] limited armour skill
- [+] net
- [+] war cry fairly early on
- [+] gust of wind and airblast should drop flying creatures
- [+] fall_from_air().
- [+] trigger then when wind-based effects hit.
- [+] chance of falling depends on size.
- [+] if you polymorph a monster, it should NOT turn back to its
original form!
- [+] criticals dont seem to be happening any more... fixed
- [+] when picking first askcoords target lf, pick the closest
- [+] sakcs etc should contain rarer objects.
- [+] intelligent ai: if exhausted and in battle, and faster than
opponent, flee.???
- [+] easy way to fix reachability:
- [+] is there a solid cell which is:
- [+] adjacent to both a filled and an unfilled area?
- [+] not a fixed vault wall?
- [+] if so, just clear it.
- [+] genericise getrandomrace flags
- [+] some containers should have mini/tiny monsters inside!
- [+] f_hashidinglf, v0=rid
- [+] if you loot it, monster jumps out
- [+] ...and gets a free hit!
- [+] perception lets you see the container moving (only if it
weighs less than what is inside it)
- [+] genericise getrandomcell() with conditionsets.
* [+] condset_t
- [+] then replace all getrandomadjcell() calls...
- [+] remove getrandomroomcells
- [+] then remove WE_xxx
- [+] gain it at beginner level shields
- [+] make ai use it
- [+] if i've been hit by a ranged attack.
- [+] if intelligent: if my target has a ranged weapon AND i'm
not adjacent AND i'm in range.
- [+] make ai stop using it
- [+] if i'm adjacent to my target
- [+] OR
- [+] if i have no target
- [+] OR
- [+] if i'm not in battle
- [+] don't show 'bloodstained' if blind
- [+] dusur digs hole in floor
- [+] CRASH. who->timespent == 0
- [+] when portalling to same levle, don't say 'you arrive back at levl
xx'
- [+] instead: 'you arrive elsewhere in level xx'
- [+] maybe: when exhausted:
- [+] you can still attack, but...
- [+] attacks deal 0.75% damage
- [+] attack speed lowered.
- [+] change of fumbling your attack if you miss.
- [+] ...then monsters can have stamina again.
- [+] the %s looks exhausted.
- [+] if ai is exhausted, wait.
can just drop food for them.
- [+] when looking for remote obs, DO include adjacent cells with lfs,
if we have the snatch ability.
- [+] some long thin levels (80 x 12 ?)
- [+] fix code to remove useless doors.
- [+] 0 pairs of dirs with empty cells = change door to wall
- [+] pick an adjacent empty cell
- [+] floodfill the 8 cells around the door.
- [+] start with adj cell
- [+] can't go more than 1 cell away from door
- [+] solid cells or doors will stop movement
- [+] if no unfilled cells around the door, bad.
- [+] new way of fixing unconnected levels - portal!
- [+] pick one spot in each section then place a portal there.
- [+] dying should cure poison
- [+] tweaks to attack text
- [+] floor tile effecst
- [+] absorbancy - ie. carpet should absorb water.
- [+] converyors
- [+] only walkable sometime (crushers?)
- [+] in tombstone, show "eaten by Rattus", not "eaten by a rattus"
- [+] god of nature should like eating animals all the time, not just
when hungry (makes piety gain easier)
- [+] announce when eyes are protected from a spellcloud
- [+] klikirak should like setting off fire traps.
- [+] floodfill() should follow portals to the same level.
- [+] show >1 skillpoints in green on status bar
- [+] bug: gods are apeparing behind you.
- [+] bug in getrandomadjcell
- [+] gods' planeshift spells failing? might be fixed now. using
getrandomroomcell instead of getrandomcell.
- [+] increaes damage dealt by smite evil/good
- [+] lightning javelins shouldn't be stackable
- [+] monsters not firing ranged weapons!
- [+] they just walk back and forth
- [+] bug with how i was calling haslof() for cells other than
where the mosnter was (in getdiraway())
- [+] turn undead should only work if caster level*2 is >= monster level
fullblock basics:
- [+] penalties
- [+] lowers visrange to 1
- [+] huge attack penalties
- [+] huge evasion penalties
- [+] vhigh chance of all ranged damage going to shield instead.
- [+] buckler = 75 (small)
- [+] shield = 80
- [+] large shield = 85
- [+] tower = 90
- [+] plus shield skill*2
- [+] use check_shield_block in all spell effects
- [+] this checks whether player is shieldblocoking (or evades??)
- [+] then applies damage appropriatly.
- [+] new ability;
- [+] stopped by:
- [+] losing or unequipping the shield
- [+] being interrupted
- [+] casting a spell or using an ability
- [+] exotic weapons should cost more.
- [+] maybe prevent prayer until gods have been pleased enough ?
- [+] while you're not worshipping anyone, piety gain is x4.
- [+] once first one hits 'pleased', they will appear and offer you
a place
- [+] advantge to this is that you get a gift
- [+] picking up new gold should please felix......
- [+] you shoudl only be able to sacrifice untouched gold. this
pleases felix double as much as grabbing it.
- [+] gods sohuld appear "in a cloud of ..."
- [+] bjorn - blood
- [+] klik - fire
- [+] lumara - bright light
- [+] should get a massive accuracy boost if you are holding someone
- [+] absorb wood is too powerful, (for 0 mp you can kill someone's
weapon)
- [+] change it somehow. fixed description - doesn't affect
equipped items.
- [+] more loops in levels
- [+] training should create noise
- [+] ...and monsters sohuld go to investigate noises if not in
battle.
- [+] god gift changes...
- [+] still give gifts based on piety
- [+] BUT don't lower piety. instead start a 'gift timer'
- [+] F_GIFTTIMER. v0 = decerementing time until you can get a
gift. v1 = what v0 will be reset to (gets bigger)
- [+] revivetimer on ling parasite: A ling parasite corpse (null)!
- [+] monsters no longer inherit alignment from job.
- [+] ekrub's entangling vine vanishes straight away
- [+] fix crash when slipping on the ground.
- [+] mosnters shoudl only attack doors if pursuing a lifeform and if
the lifeform is nearby.
- [+] only award partial points for held objects unless you won the
game.
- [+] fix crash when gust of wind is cast on an empty cell
- [+] make spell power affect properl missile speed
- [+] bug: monsters getting too many f_ignorecell flags! (more than
MAXFLAGS)
- [+] poison needs to last longer.
- [+] Implement a* pathfinding for pets
- [+] done
- [+] TEST... seems okay so far.
- [+] druid spells not showing in starting list.
- [+] don't announce noise from unseen things which are attacking the
player.
- [+] fix crash when no pet location found at start of game.
- [+] swap spell levels for warp wood and absorb wood.
- [+] only set godprayedto if you got a positive effect.
- [+] warp wood should affect wooden lifeforms.
- [+] pathfinding for player:
- [+] only allow this to explored cells
- [+] consider unexplored cells non-walkable.
- [+] set f_pathfinding
- [+] STOP if we see a monster
- [+] never let stamina exceed max.
- [+] you can now actually climb when you get the spiderclimb ability
but don't have climbing skill
- [+] make dagger stronger than combat knife (but combat knife is
faster)
- [+] optimise makefile.
- [+] swapplaces message not appearing.
- [+] fix exploit for dizziness with 'A'
- [+] every time we ask for a direction, use askdirection(prompt).
make this do dizziness check.
- [+] no shieldblocking or dodging if you have no stamina.
- [+] object rarity bugs
- [+] i'm finding way too many books! might be fixed now... ?
- [+] never finding wands
- [+] added debugging to see if there is a problem with wands....
- [+] adjust footstep sound based on material
- [+] carpet = soft
- [+] stone = normal
- [+] tiles = loud
- [+] in @e, "you ar etipsy" should also talk about damage resistance.
- [+] don't show starting abilities if you are a diety.
- [+] don't say 'xx walks out of view' if they didn't move on purpose
- [+] CRASH - summon weapon then drop the energy blade.
* [+] CRASH when fumbling attack using energy blade.
- [+] fighter with wisdom 31. novice perception skill. noticied
teleport trap right in front of me. chances?
- [+] maybe make it you can never detect anything further away than
your perception skill.
- [+] fix bug in geteffecttime()
- [+] announce starting spells at beginning of game
- [+] in skill help, highlight your current level. Maybe: "At Novice
level>>> Unskilled weapons etc..."
- [+] inept level lore shouldn't show "Adept Stealth" as a strength
- [+] when you / then move over a cell with footprints short "Dirt
(with human footprints)"
- [+] or "Dirt (with xxx foorprints leading east)
- [+] typo in killer text - an vs a
- [+] get over here! should give you enough time to attack ?
- [+] felix prayer should remove impassable objects.
- [+] robots shoudl have big penalties to getting up checks. slip,
fall, etc.
- [+] fix bug when falling off a fence.
- [+] BUG: no los when i climb on top of a wooden fence. why?
- [+] F_BLOCKSVIEW needs new option: v1 = true means dont block
if you are standing on it
* [+] engineering / construction skill - replaces 'traps'
- [+] fixed bug where you couldn't rest when you pet was visible.
- [+] bug: aigetlastknownpos populating lastx & lasty with different
info from the the cell returned.
- [+] this has happening when following the direction of a scent.
- [+] remove display of "xx throws xxx towards you" if you can't see
the source and something is in the way.
- [+] druid should alway sbe able to swap with plants.
- [+] peaceful check should do this
- [+] try agian...
* [+] problem- create water can be used instead of soften earth ???
- [+] detect life should help with checking stairs.
- [+] pentagrams should heal the undead.
- [+] ekrub - don't et you sacrifice the flower that appears.
* [+] when doing check for piety on eating animals
- [+] don't auto give druid short blade skill due to sickle
- [+] soften earth on boulder... turn it to mud
- [+] adept psychology - receive change for gems.
- [+] BUG: announceflagloss is never happening.
- [+] new nature spell - absorb wood
- [+] clank - robot, chomp to steal health, self destruct
- [+] new tech
- [+] l0
- [+] chewing gum (jam doors with it) - this should be food
though.
- [+] plants shoudl HELP druid from level 4 onwards
- [+] clean up skill ability code
- [+] automate skill descriptions based on skillwills "you gain the
'xxx' ability"
- [+] auto-learn spells from initial spellbook, rather than having to
read it manually
- [+] finding rings of unholiness everywhere.
- [+] because it's the only rare ring!
- [+] fixed by making ALL rings be uncommon
- [+] first time you slip on something, suggest using 's'
- [+] sewing / metalwork: get resize and enhance earlier.
- [+] bug with engineering seeing through one wall!s
- [+] rogue/knifedancer / blademaster - throwing, extra skill with
small blades. starts with extra knives.
- [+] replace all SUBJOBS with plain regular JOBs
- [+] fix "needobforstaff" for wizards!
- [+] sewer should have mossy rock floor. slippery.
- [+] new specialist classes:
- [+] rogue/assassin (no stealing, no traps, lockpicking, better
stealth+backstab, poison knives)
- [+] minor healing spell is too powerful. should do 5-10hp max.
- [+] reveal hidden is not powerful enough for l4. move to l2.
- [+] reduce effects of stench as TR gets higher
- [+] lumara should accept sacrifice of anything magic.
- [+] oil lamp not making my viison longer! (on dlev11)
- [+] just describe f_produceslight in io.c
- [+] with no evasion skill, agi does way less for EV.
- [+] fungus clouds should be in 1 radius, non orthogonal
- [+] try putting monster zoo back in?
- [+] STILL bugs detecting trapped doors ages away!
- [+] detected one 8 away, perception novice!
- [+] when a monster necromancer is made, i'm prompted for spell
school!!!
- [+] new mushroom: greycap. looks like a miniature snowy mountain.
grants cold resistance
- [+] shop opening hours
- [+] F_OPENHOURS
- [+] v0 = start (inclusive)
- [+] v1 = end (inclusive)
- [+] v2 = sayphrase
- [+] SP_CLOSEDTILMORN (come back in the morning)
- [+] SP_CLOSEDTILNIGHT (come back tonight)
- [+] SP_CLOSEDTILHOUR (come back after x oclock!)
- [+] make shops only be open during the day.
- [+] make some temples only be open at night (eg. hecta)
- [+] grammar: xxx "flys" into view. need getmoveverbplural()
- [+] make yumi's "well, that seems unfair" only work when killed by a
mosnter which didn't chase you up.
- [+] no unarmed skill descriptions!!
- [+] remove pain ability from stink beetle
- [+] cockroach - with just high armour rating (10)
- [+] bajeetle - lower armour but bite causes pain
- [+] yumi - only allow you to gain piety from letting a monster run
away ONCE per mosnter
- [+] new monster: petrifungus
- [+] give merciful fighting for novoice adanced combat
- [+] monsters should lose targets when eating
- [+] vault: window in wall
- [+] fix werewolf hiding code for Rattus (when medium sized)
- [+] "you hear a muffled slithering" - this shouldnt be loud enough to
go through walls!
- [+] selected Evil Adventurer. alignment ended up as NONE
- [+] have added debugging
- [+] wait for it to happen again
- [+] put in code to check at start of turn whethe r my alignment
just changed.
- [+] my alignment seems to have changed to NONE
- [+] POLYMORPH is causing this.
- [+] fixed
- [+] commando should have low level version of gunblade
- [+] electromachete - low pierce + low electric
- [+] gunblade - med slash + low explosive
- [+] boomstick - med bash + high explosive
- [+] commando should start with a few energy packs (need to add this
object)
- [+] l2 tech
- [+] operate it to recharge tech which has charges.
- [+] like a scroll of replenishment, but only for tech.
- [+] when monsters follow you up stairs, they should face you
- [+] jewelry store should buy watches
- [+] when exploding cells, remember who caused it
- [+] new arg: lifeform_t *causedby
- [+] use this when dealing damage, so that it counts as player
kill (etC)
- [+] explodeob
- [+] monks sohuld be very resistant to being scared
- [+] gauntlets (or other hard gloves) should increase unarmed damge by
1
- [+] seems almost impossible to break locks on chests by bashing....
check the calc.
- [+] fixed.
- [+] ekrub should accept sacrifices of plant matter
- [+] sebastian - absorbs physical damage to increase damage.
- [+] after first hit: +1dam, knockback
- [+] after 2nd: +2 dam
- [+] etc
- [+] vuln to non-physical (fire, magic, cold, elec, etc)
- [+] cockroach, plague rat should taint anything it walks on
- [+] fix up morale checks. 30 should be 100. therefore: multiply by 3
and a bit.
- [+] CRASH during wish for Power
- [+] bug:
- [+] You whack the pixie. The pixie turns to face you.
The pixie turns to flee from you!
Amberon's voice booms out from the heavens:
"You dare attack an innocent?" Amberon's voice booms out
from the heavens:
"You dare attack an innocent?" The pixie gestures at itself.
- [+] baba yaga's hut
- [+] shoudln't be able todrink potions
- [+] shouldn't take criticals
- [+] don't annoucne time during combat
- [+] bug after giving gold to a bandit:
- [+] $ - 0 gold dollars
- [+] lore: tech... every level says' no special effects'
- [+] bug: Strength: 24 (very weak, +1 dmg)*
- [+] bug in getstrdammod()
- [+] bug: A brown snake walks into view.
- [+] should be 'slithers'
- [+] mud shouldnt make shoes wet
- [+] refridgerator should only have meat in it
- [+] some jobs which have whip skills
- [+] scourge should always start with a whip.
- [+] fighter should be able to pick it
- [+] aligned temples sohuld be half price (or free if god is pleased?)
- [+] SM_DETECTCURSE
- [+] SM_PURCHASEITEMS
- [+] SM_BLESS
- [+] SM_MIRACLE
- [+] re-introduce monster zoos vault
- [+] bullwhip shouldn't be able to dull!
- [+] banana skin not slippery anoymore
- [+] slightly boost player's starting hp
- [+] why can vampire bat reach me to damage by boots/trousers?
- [+] check out canreachbp() in lf.c
- [+] maybe fixed
- [+] commando's starting gun should start with normal bullets, never
silver
- [+] klikirak should grant fire powers
- [+] cast pyromania when you pray
- [+] gift: immolate every 20 turns
- [+] fix trytokillobs() - this might fix some of the infinite loops
i'm getting during level creation.
- [+] klikirak should give slightly more xp for sacrifing objects
- [+] hawks should swoop more often
- [+] book colours are incorrect (ie. "red book" isn't red)
- [+] i saw "something burns!" while resting...
- [+] make hollow trees be green
- [+] blessed amnesia shouldn't do anything bad
- [+] armour stores shouldn't get hot!
- [+] earthworm should only divide from slash damage - not bash
- [+] queen ant shoudl be able to summon lots of soldiers
- [+] staircases should be on top of ash piles when draring them!!
- [+] in fact, staircases should be on top of _everything_
- [+] sanctuary potion should put out fires under you! (or anything
with walkdam)
- [+] shouldn't be able to smell by's hut
- [+] wood wall should be diggable with pickaxe
- [+] does shovel actually work? no, but it does now.
- [+] dungeon level name - if it has a swamp vault, level is just
called "the swamp"
- [+] fire damage to bread = toast
- [+] only say "the light here is a bit dim" etc if it's different form
your previous level
- [+] weapon stores shouldn't appear in baba yaha's hut!
- [+] i think i said "weapon" but it turned into weapon store.
- [+] works in a wish...... is this only a problem in a vault?
- [+] test agian.....
- [+] during summon mosnter, don't say 'the xxx starts to fly!' before
"the xxx appears"
- [+] when i read a create monster scroll, this _doesnt_ happen.
- [+] when i cast summon small animals and a brian bat appears, it
_doesnt_ happen
- [+] only seems to happen whan a mosnter uses a summon spell
- [+] maybe to do with finalisemonster() or "autogen" being set in
addmonster?
- [+] fixed now?
- [+] walking on water shouldn't extinguish a flaming weapon!
- [+] losehp_real needs a 'bodypart' argument
- [+] klikirak should like killing plants
- [+] do something to stop kilkirak worhipers from scarificeing the
entire forest!
- [+] if you attack a plant lf in the sylvan forest
- [+] nearby plants attack.
- [+] 33% chance of a treant:
- [+] same if you destroy a plant object
- [+] takedamage() needs a "fromlf" arg
- [+] or sacrifice one.
- [+] _warning_ if you attack a plant object or plant lf. (but
don't kill it)
- [+] WISDOM warnings:
- [+] if you are about to attack an OC_FLORA object in the
woods (and have felt the woods get angry once before)
- [+] if you are about to attack a RC_PLANT lf in the woods
- [+] if you are about to attack a CT_WALLTREE cell in the woods
- [+] remove base 'wizard' class...
highest
- [+] exorcise spell - l2 summoning
- [+] +10% chance per skill level, -5% per monster TR, +5% per
spell power
- [+] implement
- [+] paladins get exorcise at l5
- [+] new purity god pray effect: 100% success exorcisms.
- [+] new perks for lore:demonology
- [+] nov: exorcise demons (power 1)
- [+] skilled: summon demon
- [+] midnight -portals open. moongate? lunar portal? lunar gate?
moon door?
- [+] portals with no F_MAPLINK will create a random destinatino in
the same map.
- [+] makeobjecttemporary() function
- [+] when it strikes midnight, a portal appears somewhere on the
plaeyr's level
- [+] the portal is temporary for 60 turns (ie. approx 1 hours)
turns until end of midnight (calc this)
- [+] fixed crash on "w-"
- [+] during glorana's peace, striketoko is okay.
- [+] announce posion potion effects.
- [+] make dark maps just lower max vis range, isntead of not being lit
?
- [+] redo entire light calculation code.
- [+] light effects:
- [+] create "bright light" object in radius around target cell
(it has f_produceslight)
- [+] at high level, light spell will increase ILLUMINATION
level of the entire map.
- [+] DARKNESS
- [+] make a "magical darkness" object
- [+] blocks view.
- [+] at high level, light spell will increase ILLUMINATION
level of the entire map.
- [+] bright light objects burn/scare undead
- [+] undead won't walk into cells with bright light power >= their
TR
- [+] monsters in cells with produces light which are vulnerable to
light take damage
- [+] cases to check for:
- [+] vuln to light
- [+] migrains
- [+] iscelllit() should return light level of cell (sum of
f_produceslight)
- [+] gaining/losing f_produceslight should setlosdirty
- [+] makelit() just places light/darkness objects
- [+] monsters in cells with produces light which have good eyes
get blinded
- [+] move blinding code out of spell.c and into turneffectslf
- [+] placing light/darkness objects causes los recalc in any who
can see them
- [+] this shoudl happen automatically since they will have
BLOCKSVIEW.
- [+] islit():
- [+] check for ot_darkness objects in the cell
- [+] check for f_produceslight flags in the cell's lfs/objects
- [+] return how MUCH the cell is lit
- [+] f_produceslight flag now just lets you see further in the
darkness
- [+] still give light sources to monsters, but change the check to
see whether we do this (check the map's illumnation level)
- [+] get rid of calclight() code.
- [+] then i can get rid of seeindark code in los checking ???
- [+] get rid of eyesight adjustment code
- [+] remove enum LIGHTLEV
- [+] CHANGE nightvisrange - it just countres the map's
illumination level
- [+] remove lf->eyeadjustment
- [+] remove lf->losdark
- [+] remove lf->nlosdark
- [+] remove cell->lit and littime and otiglittimer and origlight
and lastlit
- [+] remove it
- [+] don't save it
- [+] stealth check to not make ANY noise when hiding is easier.
- [+] redo skillchecks to use a percentage, not d20!
- [+] new function behaviour:
- [+] skillcheck()
- [+] roll a die. d100? d50?
- [+] modifyskillcheckroll() - apply modifiers (based on
attribs, etc). higher roll is better.
- [+] store die roll in *result
- [+] difficulty 70 means "must roll higher than 70" = 30%
chance.
- [+] if roll >= what you need, you pass.
- [+] skillcheckvs()
- [+] each roll a die
- [+] modify die roll for both of you
- [+] who is higher
- [+] now modify ALL calls to skillcheck() to be pctage based.
- [+] in general, difficulty of 20 ->diff 95 (ie. 5% base
chance)
- [+] each +/- 1 will chance difficulty by 5%
- [+] ie. multiply current values by 5
- [+] IN
- [+] attack
- [+] io
- [+] lf
- [+] move
- [+] objects
- [+] shops
- [+] spell
- [+] then REMOVE getskillcheckchance()
- [+] auto fail poison check on low roll
- [+] let everyone attempt to climb climbobstacles.
- [+] potion of oil isn't smashing when thrown
- [+] shatter() was failing because the EXPLODEONDAM check was
incorrect.
- [+] fix felix money sacrifice exploit . done.
- [+] change collapsing door trap - first check for F_DOORFALLOB
instead of just checking material. that way we can cope with iron
gates etc.
- [+] done
- [+] define doorfallob for iron gate - 4-5 iron bars
- [+] 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
- [+] 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)
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
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.
- [+] 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
- [+] 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 ?)
- [+] 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.
- [+] 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.
- [+] 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
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'
- [+] 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
- [+] 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.