- [+] 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.
- [+] 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)
- [+] 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
- [+] 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
- [+] "%s staggers backwards, but stands its ground."
- [+] every size over human gives 10% chance to avoid.
- [+] monster jobs
- [+] demonologist - can summon demons
- [+] shaman - summon animals
- [+] bezerker - can use rage
- [+] necromancer
- [+] add f_startjobs to monsters
- [+] in makedesc_race, combine skills up until screen width. ie:
- [+] Novice Listen, Novice CLimbing
- [+] Also combine abilities, ie:
- [+] Ability: jump
- [+] Ability: xxx
- [+] becomes:
- [+] Abilities: jump, xxx
- [+] more psionic spells!
- [+] psionic blast ? daels direct damage to intelligent creatures
( 1 to iq/10 )
- [+] anticipate action: next xxx attacks from target lf against lf
always miss
- [+] "you easily dodge %s%s attack."
- [+] fire should spread on carpetted floors? how to stop it spreading
to the whole dungeon ?
- [+] implement
- [+] test
- [+] new poison type:
- [+] migraine. sound causes pain (1 per volume?). light spells
cause pain too.
- [+] can get this from food too. (instead of gastro ?)
- [+] mental spell to give a migraine - "brainache"
- [+] eating raw meat can give you migraine, or gastro.
- [+] make makedesc_race take player lore skills into account
- [+] in describerace(), make title be:
- [+] Race::glowbug (beginner level knowledge)
- [+] LORE LEVELS:
- [+] NOVICE: common knowledge
- [+] breaths water
- [+] BEGINNER: only known if you've studied it a bit
- [+] nocturnal, damage resistances/vulns
- [+] silentmove
- [+] stability
- [+] ADEPT:
- [+] only know it if you've studied it a LOT
- [+] wantsobs
- [+] spells
- [+] morale
- [+] eating habits
- [+] when attacking something which is immune to your weapon,
warn you.
- [+] (if your lorelev >= beginner)
- [+] change io.c to use command_t table
- [+] when selecting your starting weapon, show damage and accuracy
- [+] scourge gains nullify at high levels
- [+] bug: ur-gnats not flying
- [+] had f_nospells AND f_canwill flight
- [+] made f_nospells not affect F_CANWILL, just F_CANCAST
- [+] shouldn't be able to cook firebug corpses
- [+] fire shoudl make crackling noises
- [+] nullify should anger god of magic, and not upset god of battle
- [+] nullify shouldn't affect natural flight fof birds
- [+] shouldn't remember your surroundings while raging
- [+] lfs shouldn't flee from themselves!
- [+] change attackverb for touch attacks.
- [+] eyebat gaze
- [+] "your pair of sunglasses protects you"
- [+] but the spellcast is never announced!
- [+] fixed.
- [+] stun() should make lf lose concentration
- [+] fix a few logic errors in gaze protection code.
- [+] when i go up level as a scourge, I'm getting "You have gained the
ability 'Nullify' (job perk)."
- [+] i should be getting You have gained the ability 'Nullify VII'
(job perk).
- [+] why isn't 'hte power appearing
- [+] also when i start typing nullify, it says "It is too powerful for
you to cast"
- [+] because levabil isn't keeping pw:xxx text
- [+] BUG in LEVABIL.
- [+] remove gravity school (move to "air")
- [+] mud should eventually dry out (but take 50 turns or so)
- [+] bug: " [@=stats Effects Items gic ?=describe ESC=quit]"
- [+] allow '?' from askgod() prompt.
- [+] when hecta changes you to a vampire:
- [+] don't change your hp!
- [+] don't chance your stats ?
- [+] add ?j for job descriptions
- [+] wrapprint: when caling line length, use modified strlen to ignore
^c or ^num
- [+] extra info in makedesc_job:
- [+] Attrib mods:
- [+] Strength: very high
- [+] IQ: Low
- [+] Alignment: Neutral OR Good/Evil etc, or ANY
- [+] starting skills: x, x, x, x, x, x
- [+] changes to paladin
- [+] cannot cast spells if using cursed weapon/armour
- [+] get rid of skillcheck to learn a new spell.
- [+] cyclonic shield should also damage attackers.
- [+] ^F#_#^? releases a cloud of red spores
- [+] ragefungus bug
- [+] "you are too tired to do that right now"
- [+] move this check out into useability.
- [+] test that minotaur still uses charge. (which costs stamina)
- [+] force sphere not working! fiexd, needed to limit "radius" to 1
minimum. also added animation.
- [+] reduce max jolt power to 5.
- [+] change initial sky wizard spell to jolt
"reflexive dodging" ability
- [+] first rotation in a turn takes no time
- [+] exploit: if you walk diagonally next to a monster, it moves to
your previous space!
- [+] fix: aigetlastknownpos should return the cell that trails
point to, not the cell _with_ the trails.
- [+] only recognise weapon quality (masterwork etc) if you are skilled
in that weapon or perception
- [+] cope with mosnter necromancers, etc
- [+] parserace should look for necromancer etc.
- [+] if so, set "wantsubjob" to SJ_NECROMANCER etc
- [+] move specialty mage code into "givejobspecialty"
- [+] Make wizard's job name depend on primary spell school.
- [+] "Demonologist", "Firemage", "Icemage", "Necromancer",
"Skymage", "Wizard" (wild)
- [+] instead of getjob() then j->name, use "getjobname(lf)"
- [+] f_jobname
- [+] i should never "hear voices chanting" from an abandoned temple
- [+] for monsters, show "its bite inflicts poison" in io.c racial
knowledge
- [+] casting healing on myself pleased Glorana twice!
- [+] one from casting a life spell
- [+] one from casting healing.
- [+] move ones from spell.c to castspell()
- [+] new flag: f_pleasesgod v0=godid, v1=howmuch
- [+] add to other spell objects:
- [+] f_pleasesgod
- [+] GODFIRE - spelllevel * 2
- [+] GODDEATH = spelllevel
- [+] GODLIFE = spelllevel*2
- [+] GODNATURE: spelllevle*2
- [+] show this in describespell
- [+] for god healing effects, use gainhp() so that it says "Your HP is
fully restored."
- [+] change F_RESISTMAG to be percentage rather than 1-20
- [+] make some gods' pleasure boost power of related spells
- [+] 1 per each positive levle of getpietylev()
- [+] glorana: life
- [+] hecta: death
- [+] only apply auto shortcuts for players.
- [+] subjob_t
- [+] addsubjob()
- [+] killsubjob()
- [+] show subjobs in job descriptions.
- [+] data.c: addsubjob(....
- [+] in job defs:
- [+] f_canhavesubjob sj_xxx
- [+] use this to determine whether to ask about them
- [+] redo getjobname
- [+] remove f_job->Text
- [+] speak with dead should only work on corpses of races which can
talk.
- [+] warrior subclasses
- [+] "Scourge"
- [+] gains magic resistance as you level up
- [+] == 5 + (level * 3) %
- [+] nospells
- [+] no mana
- [+] paladin
- [+] blessed gear
- [+] can will turn undead
- [+] healing magic
- [+] god = glorana.
- [+] cannot use spells if glorana is angry.
- [+] battlemage
- [+] starts with one spell school (fire/ice/air)
- [+] canlearn fire/ice/air spell schools
- [+] limited to adept in all schools
- [+] slightly less hp
- [+] no warrior abilities
delver too.
- [+] mirror image (mental)
- [+] varpower
- [+] makes power 'clone' lfs who look the same as caster
- [+] ie. same race.
- [+] also same job/armour/weps?
- [+] add f_noxp
- [+] add f_nocorpse
- [+] add f_summonedby so they vanish when the caster dies
- [+] add f_phantasm
- [+] vanish after _power_ hits,
- [+] attacks do 0 damage
- [+] don't announce innefectual attacks
- [+] dont cast spells or use abilities
- [+] petify() them if made by the player
- [+] force them to stay close.
- [+] in io.c or getlfname, show "[clone]" if it has f_phantasm
and was created by player
- [+] mosnters try to attack them.
- [+] once one gets hit enough times, it disappears
- [+] if the caster dies or changes level, they disappear.
- [+] can't talk to them
- [+] their obejcts vanish when they die
- [+] don't talk
- [+] make Yumi more about forgiving silly mistakes and avoiding
instakills
- [+] remove liking of healing
- [+] remove like of healing spells
- [+] takes a long time to anger.
- [+] aviod traps (bamf you away before they trigger)
- [+] prayers:
- [+] resist stoning (pray while appropriate creatures around)
- [+] resist paralysis (pray while appropriate creatures around)
- [+] sleep on enemies
- [+] passive powers:
- [+] always warn as if wisdom is high (passive)
- [+] always save when killed right after using stairs
(passive) "well, that seemed unfair."
- [+] gift:
- [+] auto sixth sense
- [+] potions of restoration
- [+] ring of miracles
- [+] shouldn't be able to Offer while enraged.
- [+] don't lose stamina while caffeinated
- [+] new vault: pit with walkway around it
- [+] bug: when worshipping yumi you get "you kill xxx" but they're
still alive
- [+] ... but they're still alive!
- [+] ... for yumi, move KO chance from losehp() to attacklf().
- [+] do the check BEFORE setting 'fatal'
- [+] pass forceko to losehp_real
- [+] bug: adjustdamhardness should only trigger when ismeleedam() is
true, not isphysicaldam()
- [+] greatly reduce motel cost
- [+] change order in attack.c: apply damage THEN announce, to deal
with KO
- [+] do it.
- [+] test KO code.
- [+] then check that feign death still works
- [+] demonskin vest should be flammable or vulnerable to fire.
- [+] time to get up should depend on size.
- [+] less than human: shortnone
- [+] human: normal
- [+] larger than human: longer
- [+] expert unarmed now gives you 'flip'
- [+] reduce damage done by low-level monsters
- [+] change resoration into a spell
- [+] implement
- [+] test
- [+] new spell: ressurection
- [+] corpses need to remember their lf's level
- [+] test
- [+] godstone of life - revives/restores all
- [+] rename "confiscate" to "yoink", and make it take a random object
at power 1, selected at power 2
- [+] gods should attack player if they are Enraged or Furious
- [+] is STR calc to see if you can push a boulder still working?
- [+] change to wizards:
- [+] start at novice in all magic skills (but don't gain initial
spells)
- [+] killing undead should please glorana LOTS. because it's hard to
gain piety with her otherwise.
- [+] restoration spells/potion should hurt undead
- [+] healing spells/potions should hurt undead
- [+] immolate shouldnt work if there is aleady a fire tehre.
CODE FOR WINNING THE GAME:
- [+] get at least one godstone
- [+] exit the dungeon
- [+] find the portal to the realm of gods
- [+] opposing god should appear once you pick up a godstone, and tell
you what to do next.
- [+] "come to the realm of gods and use it to destroy (related
god)"
- [+] "or if you lack the courage, give it to me!"
- [+] "you will find a portal on the surface"
- [+] use the portal to teleport to realm of gods
- [+] implement text for all gods...
- [+] god text in wt_god - should say 'but you werent meant to replace
them!'
- [+] EITHER:
- [+] challenge and defeat the god related to this godstone (more
points. "Crowned the god of xxx.")
- [+] TEST
- [+] offer the godstone to the godstone's opposing god (less
points, "Ascended to demigod-hood.")
- [+] implement
- [+] TEST
GODSTONES:
- [+] klikirak: rage
- [+] done
- [+] (make this one have fire effects too)
- [+] glorana: life
- [+] Felix shouldn't be able to yoink the godstone off you!
- [+] Write up the rest of the Godstone finding text.....
- [+] magic
- [+] battle
- [+] life
- [+] mercy
- [+] you can't hurt gods unless you
- [+] a) have their godstone
- [+] b) are in the realm of gods
- [+] extra suffix text.
- [+] use two lines for each entry.
- [+] have to use modified version of wrapprint for this.
- [+] wrapprint needs a "wrapped_lines_indent_amt" option.
- [+] this should give exactly 24 lines.
hit at point blank range.
- [+] only reduce hit% after first cell?
- [+] increase change of player ko with yumi
- [+] tranq dart and nanodart should be rodshaped.
- [+] genericise purification
- [+] F_PURIFIESTO v0 = newobject
- [+] add toadstool -> shiitake
- [+] posion potion -> water
- [+] acid potion -> water
- [+] rum -> water
- [+] DONT make the original object type known now
- [+] higher level purify food lets you select a cell!
- [+] need f_targettedspell v1 & v2 to specify power.
- [+] druid should get to pick one of 3 spells (from each available
level) upon levelup, not anything!
- [+] implement f_levspellschoolfromx
- [+] TEST!
- [+] implement secondary weapon swap with 'x'
- [+] initial press: unweild curwep. if successful, mark as
secondayr.
- [+] subsequent presses: find secondary wep (or fail). remember
cur. weild secondary. if successful, remove scondary flag and
mark old cur wep as secondary
- [+] when you move an object, it loses secondary flag.
- [+] BUG: I had TWO regions with rtype->id == RG_CAVE!!!
- [+] have added debug code
- [+] think this is fixed - need to remove created regions when i
regenerate a map.
- [+] should be able to sell gems to jewelery store
- [+] sm_sellitems
- [+] shopsell()
- [+] shop has f_cansellobclass xxx, val[0] = pct of full price you
can sell for. normally 50% but 75% for gems.
- [+] allow COUNT - modified askobjectwithflag ?
- [+] OR add an extra *sellshop option to doaskobject ??
- [+] if this is set, only allow selection of objects which
match the shop's f_shopsell flags
- [+] ie. replace wantflags[]
- [+] when passing this, don't also pass wantflag args!!!
- [+] rename shopsell flag to f_shopacceptsflag
- [+] accept F_NONE in shopacceptsflag
- [+] make shopdonate use the same code
- [+] make donating to shops lower their prices ?
- [+] for each 100 value you donate, reduce prices by 1%
- [+] ie. donate 1000 worth, reduce by 10% = 1 level of speech
skill
- [+] change shopsell to use applyshoppricemod
- [+] applyshoppricemod needs a new arg - up or down
- [+] check code in objects.c for naming too! listobs()
- [+] cooked food shouldn't "completely rot away"
- [+] fire l6: meteor - large version of fireball
- [+] burning feet
- [+] evaporate should be a fire spell too.
- [+] more gods should remove curse for you.
- [+] eyebats shouldn't sleep
- [+] make hecta's prayers even more powerful.
- [+] fix bug in bjorn's truestrike effect
- [+] bjorn should un-dull weapons
- [+] fix buggy supply closet definitions - was getting 1-5 of same
object rather than 1-5 different ones
- [+] restrict potion of growth to lower levels.
- [+] change method of determining how much you can carry.
- [+] change initial modification spell to 'enlarge object'
- [+] enlarge object
- [+] door -> seals with surroundings
- [+] rock -> boulder
- [+] sword -> greatsword
- [+] buckler -> next size shield
- [+] bag -> next size bag
- [+] or should this be a different spell?
- [+] immolate
- [+] if a successful unarmed attack, lf catches on fire.
- [+] wizard isn't weilding staff. are fists better?
- [+] freezing touch shouldn't work on dragonwood
- [+] fix bug preventing vision when meditating
- [+] auto shortcuts
- [+] wizards: pri/sec spells are 1/2
- [+] cook: lowest shortcut left.
- [+] statbar not being updated when i drink potion of magic.
- [+] warn that flying will stop mapping.
- [+] bjorn gifts should only be ones which you are skilled in!
- [+] add 'appropriate'
- [+] then apply to god.c
- [+] warn if you pick up poison stuff and you god doesn't like it
- [+] "I hope you're not planning on using that/those...."
- [+] superheat - throw potion like a grenade
* [+] in temples, holy water is just showing up as "potion of water"
- [+] make blessed/silver arrows hurt undead etc
- [+] different temple exit messages based on f_linkgod
- [+] problem: in temples, holy water only casts $5 whereas a blessing
costs around 100!
- [+] adjust cost - increase value of BLESSED potion of water
- [+] test out the new pricing...
- [+] bug in skill descriptions.... never being added.
- [+] why? debug to find out.
- [+] because firstraceclass == NULL
- [+] make monster skill determine whether you can identify them from
footprints, not perception
- [+] lorelev = novice: "you see animal footprints"
- [+] lorelev = beginner: "you see xat footprints"
- [+] perception beginner: "you see fresh xat footprints leading
north"
- [+] linkexit() shouldn't be allowed to fill in cells at the very edge
of the map.
- [+] just say can't fill in if c->locked.
- [+] electrical trap - casts chain lightning
- [+] some traps only trigger if you're on the ground (not flying)
- [+] let you be able to dodge fire traps
- [+] in io.c, show ability timers for canwill
- [+] sacrifice of cursed obs to amberon - move this from "pray" to
"offer".
- [+] once you have prayed to one god, prevent praying to opposing gods.
- [+] implement getopposinggod
- [+] implement this - "xxx ignores you"
- [+] in god display show line in red, and "prayed" as "N/A"
- [+] need an alternate amberon anger effect if you don't have any
blessed objects.
- [+] when using 'm', skill list should show 'canwill' as 'abilities',
not magic.
- [+] when using 'm', skill list should show shortcuts
- [+] change attribs to be 0-100
- [+] getskillbracket type functions
- [+] lf definitions
- [+] this impacts skill checks and their difficulty
- [+] and object boosts / penalties
- [+] and weapon attrreq
- [+] ATTRMOD
- [+] JOBATTRMOD
- [+] io.c: attrmod, jobattrmod
- [+] getstatmod()
- [+] basically anything which calls getattr()!!!
- [+] when you levelup, increase one stat by 5, not 1.
- [+] ATTRSET and ATTRMOD in spells
- [+] make non-lethal kills (ie. knockouts) display in grey rather than
green
- [+] ability: merciful fighting? always does bashing damage, always
ko.
- [+] done
- [+] Chatting to gods shouldn't work
- [+] bug: when running with shift+dir, i'm running past corridors.
- [+] when announcing skill gains, say if they are from a level.
- [+] set lifetime to FROMJOB when giving them.
- [+] if lifetime = FROMJOB, ""you can now use the ability 'xxx'
(warrior skill)"
- [+] grenade/c4 explosions should be able to damage cells!
- [+] change grenades to have bigger radius (dtorth 1)
- [+] automatically call "fireat" for grenades
- [+] impement this
- [+] make the timer shorter!
- [+] add extra checks to stop monsters from attacking allies
- [+] replace "insane"monster behaviour with F_TERRITORIAL v0=range.
- [+] will atatck anything else visible within range xxx
- [+] grave sprite should be able to see in the dark
- [+] instead of saying "An orc [drunk]", change getlfname to return "a
drunken orc" etc
- [+] when you throw an object at someone in a wall, it should fall
onto the ground in front, NOT the wall itself!
- [+] show how MUCH high/low str/agi will affect weapon damage/accuracy
- [+] different shoddy/masterwork text based on weapon types
- [+] bug: monsters never bleed from injuries!
- [+] another bug in getavgdam - negative accuracy returns negative
damage since we modify damage by accuracy!
- [+] within this function, limit accuracy to range 0-100
- [+] bug with options - opt->id never being initialised!
- [+] don't apply "behaviours" to anythuing other than humanoids.
- [+] increase missile accuracy if you are above your target
- [+] (ie you are flying higher them them)
- [+] getflightsizemod()
- [+] monster with tremorsense can 'hear'
- [+] allow attacking of wall cells with normal melee attacks
- [+] glass should shatter
- [+] option: stop running on hearing a sound
- [+] make describerace use downline().
- [+] make certain strengths and weaknesses not show up in player
selection
- [+] An uncursed manriki wraps around the hawk. The hawk falls to the
ground.
A black bear comes into view.
You critically scratch #. The black bear roars.
- [+] check construct_hit_string.
- [+] i was hitting a hawk.
- [+] still some entrances overlapping glyphs.
- [+] genericise checking code in fix_Reachabilty
- [+] Also: in fix_reachability, disallow linking to cells which:
- [+] are adjacent to a door
- [+] are part of a vault with maintain_edge, and are 't marked
as exits.
- [+] looking a bit better now...
- [+] incorrect glyph colour for animated zombies
- [+] grow/shrink potions? to change lf size to fit armour.
- [+] resizelf()
- [+] modification spell (l2)
- [+] grow
- [+] shrink
- [+] potions
- [+] cursed growth does shrink
- [+] make rare monsters / objects only sometimes be known.
- [+] gate spell should always take you to a location wihtout water!!
- [+] enhance speak with dead spell (SPEAKDEAD)
- [+] may ask "how did you die" plus one of the below:
- [+] tell me about the area
- [+] mark stairs on the map
- [+] mark shops on the map
- [+] tell about very rare objects
- [+] tell me about nearby dangers
- [+] tell about odd monsters
- [+] tell about traps
- [+] test
- [+] let you ask peaceful lfs about the surroundings too
- [+] move code into io.c "askaboutarea(char *who)"
- [+] test
- [+] the first time you ask someone for info, randomly determine
whether they know about:
- [+] stairs (high chance)
- [+] shops (medium chance)
- [+] traps (low chance)
- [+] areacomms_danger should include out of depth monsters - need
isoutofdepth(lf)
- [+] room floors should take the entry type from the habitat, NOT just
use ct_room!!!!
- [+] sometimes generate fixed SEWER regionthings
- [+] done
- [+] BUG: canT enter goblin caves again!!!!
- [+] getting "ERROR - can't find opposite end of stairs/portal!"
- [+] FAILED to link stiars: 'tunnel leading up'
- [+] make maps direct you to regionthings.
- [+] region things need unique IDs !!!
- [+] change F_MAPTO
- [+] v0 = src region id
- [+] v1 = src depth
- [+] v2 = regionthing with whatkind = RT_REGIONLINK
- [+] when generating map objects, fill in a random branch entry
- [+] fix getobname code for unknown maps.
- [+] TEST
- [+] with "map to the goblin caves"
- [+] with "map"
- [+] with "map to"
- [+] use "the goblin caves are to the north", not "is to the north"
- [+] is
- [+] isn't
- [+] test reading a map when on the wrong branch
- [+] test reading a map when on the wrong level
- [+] test reading a map when on the right level
- [+] move staircase generation to END of map create
- [+] finalisemap()
- [+] countobswithflagval(obpile, flagid, val0...)
- [+] countmapobswithflagval(map, flagid, v0...)
- [+] jimbo's map should lead you to one of the major branches.
- [+] crit pos shouldn't be higher than you can reach!
- [+] same size or bigger = can reach anything
- [+] 1 size smaller = you can't reach the head
- [+] 2 sizes smaller = can't reach head or hands
- [+] 3 sizes smaller = can't reach head, hands or body
- [+] jimbo's room should contain all the staircases
- [+] make you have to pass a speech check before people will tell you
about the area
- [+] bug in recruitment skillchecks - using wrong attribute, and too
easy.
- [+] rename dwarf to delver
- [+] somtimes say "dons" instead of "puts on"
- [+] stop running for any non-cosmetic object.
- [ ] echoing?
- [+] OPTIONS
- [+] option_t
- [+] id
- [+] letter
- [+] text
- [+] int enabled
- [+] int default
- [+] next/prev
- [+] addoption()
- [+] getoption()
- [+] dooptions()
- [+] list them all (with 'more' for multipages)
- [+] pressing a letter toggles it.
- [+] "display trails"
- [+] make scents be "cosmetic"!
- [+] increaes skeleton's vulnerability to falling
- [+] missing announcement for bleed()
- [+] let rapid ivy cast entangle
- [+] caves
- [+] new regiontype
- [+] new link
- [+] new habitat
- [+] objectlass rarities
- [+] assign obs/mons to habitat
- [+] code to dig caves
- [+] stairs linking to cave region
- [+] when learning random skills:
- [+] prefer lower-level skills
- [+] onyl learn up to adept level
- [+] animate dead crashes if there is no space to place the lifeform!
- [+] increase range of charge ability
- [+] when you gain techusage, check held objects for conferred flags.
- [+] bug: motion scanner working even though i have no tech usage!
- [+] warn player before climbing without climb skill (if wisdom is >=
average)
- [+] regions should have depthmod.
- [+] regionthings should be based on DEPTH, not difficulty!
- [+] rename firstdungeon to maindungeon
- [+] announcearrival broken -always saying 'new area'
- [+] don't use ranged attacks when feigning death if target is adjacent
- [+] don't say 'argh' if you were beheaded.
- [+] The bear cub bites a wooden door with a teeth.--More--
- [+] random levelup skills - only select from skills which we have
used?
- [+] need to chance f_hasskill to use f->val[2] = used_this_level
- [+] when you gain a skill, set f>val[2] = b_false or NA
- [+] add setskillused for all skills!
- [+] make random levleup only pick from used skills.
- [+] TEST
- [+] knowledge skills - practice them when you see a new lf of this
type.
- [+] slithering shoudl hardly ever awaken you - make listen check
harder.
- [+] don't put fireplaces in corridors. F_ONLYINROOM ?
- [+] bug: acid trails from slug disappearing or never appearing?
- [+] snails/slugs
- [+] killed by salt
- [+] vslow
- [+] snails have vhigh armourrating
- [+] slugs have lots of hp and do more damage
- [+] brown/grey 'j' ?
- [+] leave slime/acid trails?
* [+] bug with adding obejcts to shops
- [+] issue with objects dying and killing their flagpiles
- [+] A medium fire dies down a little. A medium fire is no longer
glowing.
- [+] shouldn't say "is no longer glowing" when we're changing the
type... ?
- [+] put a breakpoint on "is no longer glowing"
* [+] let you bless objects using a holy circle somehow (but it might
make the circle disappear?).
- [+] darness bug - need to recalc light for anyone who sees a cell's
lightlevel change.
- [+] call more() after showing vaultentertext()
- [+] remove "inspected" when you ident or makeknown an object.
- [+] BUG - no objects in inventory!!!!
- [+] listobs failing? mylist[0] = null.
MEMLEAK
- [+] finish implementing CLEANUP()
- [+] crash in cleanup() -> killot() -> findleak.c_stuff while freeing
STACKABLE flag from cactus fruit???
- [+] better now?
- [+] now a crash freeing hiddennames!
- [+] forgot to free obmods
- [+] leaking approx. 1 meg per turn!
- [+] where am i leaking?! maybe try valgrind or findleak.c
- [+] findleak.c now finds nothing.
- [+] but i am sitll leaking?????
- [+] related to lifeform count. killing all but player dramatically
slows it.
- [+] check calclos()... looks okay.
- [+] setcellknown() ?no.
- [+] startlfturn?? no.
- [+] remove unused "lf->viscell"
- [+] when there are 2 things in a cell, say "you see x and x here."
- [+] restore original stast when polymorphing back to original form!!!
- [+] when making shops, pick new ones more often.
- [+] change to maps: don't let vaults overlap.
- [+] HARDCODE object values
- [+] potions
- [+] tech
- [+] tools
- [+] rings
- [+] increase evasion skill effects
- [+] changes to animradial... and animradialorth
- [+] combine into one function
- [+] move msg into here
- [+] refs to spellcloud()
- [+] refs to animradial()
- [+] fire should spread onto flammable lifeforms
- [+] bug: attack flurry doesn't work for monk
- [+] let monsters climb even when not facing a wall?
- [+] set their facing first.
- [+] CRASH when you die while climbing (or on a solid cell)
- [+] rings
- [+] stench
- [+] breath water
- [+] detect life
- [+] deceleration
- [+] meditation
- [+] reflection
- [+] boost magic power
- [+] education - gain xpskills more quickly
- [+] crit protection
- [+] greed - detect obs
- [+] ivy - grows!
- [+] ragefungus - bezerk spores
- [+] nutter - drops peanuts
- [+] dish which slightly increases maxhp (beginner level)
- [+] stuffed mushroom. shiitake mushroom + bread
- [+] healing potions should heal even "permenant" injuries
- [+] potions/spells
- [+] summon decoy (chicken horde) spell - "friends!"
- [+] potion of spider climb (arachnid adhesion)
- [+] gloves of the spider
- [+] F_startobwepskill sk_shortblades etc
- [+] change mosnter starting weapons to be based on wepsk, not
specific named weapons
- [+] make wrapprint cope properly with 0 length strings
- [+] fix io.c showlfstats layout
- [+] fountains of xp should always dry up after one use!
- [+] plants shouldn't leave footprints!
- [+] fix overcomplicated code in updateknowncells
- [+] you always "see" allies following you down/up stairs, even if
they are behind you.
- [+] remove dtresist slash from skeletons - their bone skin reduces
this already.
- [+] leave dtresist pierce because it's hard to hit them.
- [+] confirm gold amount when donating to shops
- [+] increase piety by half of any gold donated to temples
- [+] move hp, mp, sp to same line as target, and make them into bars
- [+] HP:[ 11 / 11 ]
- [+] makebar(window,min,max, loss,barcol, losscol)
- [+] print the prefix: "HP:["
- [+] construct the bar string to fit into 10 chars: " 11 /
11 "
- [+] print it one char at a time, setting bg as follows:
- [+] background:
- [+] 0 - min is barcol
- [+] min+1 - min+loss is losscol
- [+] rest is black
- [+] print the suffix: "] "
- [+] remember last dam amount for hp.
- [+] show mp and stamina like this too.
- [+] update viewpoint sooner when moving vertically
- [+] if you can't comprehend the contents of a spellbook, don't ID it!
- [+] hpbar: pass textcol and texcolwithbg
- [+] show f_stability in @e
- [+] don't identify tech inside shops if it's beyond your skill level
- [+] bug: "a cursed +-1 ring of dexterity"
- [+] enraged or deaf lfs shouldn't respond to chats
- [+] drawbar: show mp/sp text in orange if it's at 0.
- [+] allow vegetarians to eat frozen corpses.
- [+] anything flying + stunned loses flying.
- [+] chance for monsters to throw missiles is reduced when acc < C
- [+] use same code as firearms
- [+] undead shouldn't lose consciousness - they should jsut die.
- [+] bazaar
- [+] money vault hsould be vrare
- [+] so should traproom
- [+] rename giant rat to "dire rat"
- [+] don't show anything other than object description and throwing
for unknown tech
- [+] shouldn't be able to rest in a tent if it's not known!
- [+] eyebat corpse increase maxmp?
- [+] blessed missiles should nearly always hit undead
* [+] too easy to dodge thrown missiles?
- [+] spell and wand of culinary abundance
- [+] if a carnivorous animal kills you: "Eaten by a xxx"
* [+] bug: stairsperlev is only ever used in making DUNGEONS.
generecise this ??
- [+] safetorest - should ignore monsters feigning death
- [+] broken nose should reduce smell range
- [+] fresh and stale bread should be interchangable in cooking
- [+] make scroll of permenance act on you, not your objects
- [+] tweak object rarity yet agian...
- [+] bug: hole in roof above player start pos is immediately destroyed.
- [+] change pickaxe to be like resting
- [+] wait first, then if not interrupted, do the dig.
- [+] add cell->hp, celltype->hp. around 100.
- [+] f_digging, x, y, digperturn
- [+] interrupt() will stop this.
- [+] each turn, lower hp of cell by 1.
- [+] make wlaking bakwards take less time based on athletics skill!!!
- [+] at adept, takes no extra time?
- [+] better racial display
- [+] ? for extra info.
- [+] hitdice
- [+] general attribs (str etc)
- [+] don't show description until you press '?'
- [+] addbonustext(flagpile, f_BONDESC, "asdffas") - to avoid
index issues
- [+] remove VULNS from "effects" unless temporary
- [+] isresistantto() etc need to have "int onlytemp"
- [+] remove VULNS from manual BONTEXT flags
- [+] CRASH IN DTVULN CODE!!
- [+] limit '?r' display ??
- [+] what to show
- [+] show races you have encountered
- [+] show races you know about through Lore (adept level)
- [+] show playable races?????
- [+] structs
- [+] race->encountered
- [+] need to save this.
- [+] make EFFECTS only show TEMPORARY effects or ones which don't come
from race?
- [+] automate bondesc/pendesc based on flags!
- [+] vulnarabilities / resist / immun
- [+] vision range!! (visrangemod)
- [+] size? restricted armour.
- [+] stayinroom
- [+] f_humanoid (can use weapons)
- [+] tamable
- [+] seeindark
- [+] caneatraw
- [+] enhancesmell
- [+] caneatraw
- [+] vegeatrian
- [+] cernivore
- [+] fastmetab
- [+] startskill
- [+] tremorsense
- [+] silentmove
- [+] deaf
- [+] flying / levitating
- [+] awareness
- [+] nocturnal / diurnal
- [+] heavyblow
- [+] packattack
- [+] dodges
- [+] autocreateob
- [+] MPMOD
- [+] HPMOD
- [+] MEDITATES
- [+] PHOOTMEM
- [+] canwill "Spells: xx, x, x, x"
- [+] spells:
- [+] animate stone - "power" walls turn into stone golems
- [+] implement spell
- [+] golem
- [+] r_golemstone
- [+] knockback attack
- [+] high str
- [+] fists
- [+] corpsetype and iunsummonob = boulder
- [+] spell power modification - subtract spell level.
- [+] when i go down a drain, make sure the new map links to THE DRAIN
I WENT DOWN. not some otehr one.
- [+] some monsters shouldn't sleep! add new flag: f_nosleep
- [+] make spanner help disarm traps!
- [+] flying creatures shoudl fall to the ground when unconscious
- [+] (this might kill them)
- [+] animate statue - bring statue to life
- [+] excavate - radial, obliterate walls + obs, doesn't affect lfs
- [+] test unicode wall glyph! 0x2588
- [+] use unicode for gas
- [+] change f_glyph so that v1 = symbol, instead of text = symbol
- [+] change code
- [+] change definitions (macro)
- [+] test
- [+] implement puff = UNI_SHADELIGHT
- [+] implement cloud = bolded
- [+] if good, extend to staem etc
- [+] blue background for lfs in the water
- [+] prone in water means effective lower height
- [+] glass/ice cells not shattering properly
- [+] make magic barriers be solid too
- [+] combine lockpick code in io.c and objects.c into the lockpick()
function.
- [+] first ask what to use (if required)
- [+] then ask what dir (if required)
- [+] then ask what to unlock (if reuiqred)
- [+] then do it
- [+] locked containers
- [+] picklocks prompts to try them.
- [+] in addob, use non-inheritable f_lockedchance for both doors
and chests?
- [+] v0 = chance v1 = mod per depth
- [+] doors:
- [+] base 20% chance locked
- [+] every 5 levels, add 10% chance
- [+] add this to chests / safeboxes
- [+] operate doesn't let you open them
- [+] bugs in linkexits and linkexit
- [+] linkexits: wasn't checking the correct exit cell!!!
- [+] lnkexit: wasn't blanking the startcell
GRATINGS:
- [+] flags:
- [+] addflag(lastot->flags, F_OPPOSITESTAIRS,
OT_HOLEINROOF, NA, NA, NULL);
- [+] climbable d_down NA
- [+] BUT you can't climb it if it's locked.
- [+] usestairs() - if you climb a grating and it has no maplink:
- [+] use createregionlink(map, cell, grating_object, NULL,
RG_SEWER, map->region)
- [+] make stench affect enhancedsmell creatures more.
- [+] excavate should only affect SOLID matter.
- [+] going down a drain:
- [+] "You walk down a staircase" should be "climb down a drain"
- [+] deep slime in sewers sohuldn't spread
- [+] deep slime should spread to a slime puddle if it does....
- [+] fix background glyph colour for slime
- [+] killed by drowning should really be "drowned in %s"
SEWER HABITAT
- [+] permenant stench
- [+] if you're in a sewer cell and are not nauseated, add it.
- [+] nauseated doesn't expire in sewers.
- [+] add RG_SEWER
- [+] new regiontype - RG_SEWER
- [+] map:
- [+] pick size 2 - 5
- [+] start at x=2,y=2
- [+] add square 3x3 rooms in gridlike layout (but need space for 5)
- [+] connect rooms to orthogonally adjacent ones with passages
- [+] use addexits(). no exits on outer walls.
- [+] fill all empty cells with low floor and water (but NOt the
one with the exit!)
- [+] any solid with orthogonally adjacent water changes to a
walkway
- [+] cope with different x/y room counts
- [+] cope with differnet vert/horz corridor sizes.
- [+] horz = 2
- [+] vert = 1
- [+] random room size
- [+] allow objectclasses to have f_rarity
- [+] modify getrandomobcalss
- [+] but DONT make objects inherit it!!!
- [+] this is used to override selection hased on habitat - modify
getrandomobcalss appropriately
- [+] random objects/treasure:
- [+] add these only in non-water cells??
- [+] move all obs from water clls to random land cells
- [+] frequent
- [+] vomit
- [+] soggy paper
- [+] rotted food (add f_tainted to it)
- [+] common
- [+] wep/arm
- [+] all wep/arm are shoddy in sewers
- [+] uncommon
- [+] rings (higher than normal chance - they were lost down
sinks)
- [+] occasional tech
- [+] bug: playerstart3 vault filled with walls when made randomly!
- [+] death speech text for intelligent monsters
- [+] 'aaargh!'
- [+] 'this isn't over!'
- [+] BUG: linkexits() - gettings exits in the wrong place. maybe not
taking rotation into account???
- [+] for example in playerstart_5 vault, found an 'exit' at the x:
- [+] this comes from the map flag f_roomexit, x, y
- [+] the flag may have bene added from autodoors()
- [+] have changed code so that f_roomexti uses text field to say
who added it
- [+] must score a hit first THEN pass a critical hit % check.
- [+] when asking for an object form the player's pack, default to NOT
showing long format
- [+] in askobject, pass in actionchar. remember choice for each
actionchar. and use it as a default.
- [+] warning system
- [+] warnabout(char *warntext)
- [+] if already confirmed it, keep going
- [+] otherwise ask to confirm
- [+] confirmations time out after some time...
- [+] replace injury warnings
- [+] reduce spell range
- [+] big bug - way too many critical hits!
- [+] askcoods: accept 'enter' to select a cell
- [+] armour should never reduce damage under 1
- [+] for playable races, show bonus/penalties when selecting them.
- [+] add f_hatesracewithflag with ashkari
- [+] mammoan - no athletics!
- [+] bug writing hiscores - need to escape 's.
- [+] add v2 to F_ATTREQ - scaling.
- [+] will scale up to 3 above/below
- [+] v2 = 1 means "+/- v2 per point above/below"
- [+] more than 3 below means you can't use it. modify "meetsattreq"
- [+] more than 3 above gives no extra bonus.
- [+] this is MANDATORY. add to checks.
- [+] add messages if your skill it slightly too low
- [+] STR scales damage, AGI scales tohit and crit chance
- [+] make sure showlfstats takes this into account
- [+] make sure rolltohit / getdamrange takes this into account
- [+] what do I do with attreq IQ??? mus tmeet it.
- [+] missile weapons: no scaling, must meet reqs
- [+] reduce regular strength dam mod
- [+] you only get attr bonuses if you are skilled with the weapon.
- [+] crash: getrandomrace(NULL, NA) returning null!
- [+] don't give away invisible creature locations in askcoords
- [+] does fireat automatically re-calc lof based on obstacles?
- [+] if so then change haslof in askcoords to be hasKNOWNlof!
- [+] catlike race - ashkari
- [+] bonus
- [+] has climbing, listen
- [+] jump ability
- [+] agi+
- [+] unarmed attack is claws
- [+] balance (stability?)
- [+] eyesight, darkvision
- [+] enhancesmell (only low)
- [+] pens:
- [+] hunger faster
- [+] carnivore
- [+] low-- wis (ie vuln to magic)
- [+] vuln to magic
- [+] vuln to water
- [+] vuln to sound
- [+] low str
- [+] auto rage on dog/wolf/mouse/bird/chicken
- [+] races CANT ahve certain flags
- [+] apply this during giveskill()
- [+] inifniite loop in ?k
- [+] add to balaclava: equipconfer -> f_anonymous
- [+] can't get banned from shops with this!
- [+] when randomly increasing skills, don't select maxed ones.
- [+] remove warning for movement while bleeding
- [+] injuries heal too fast.
- [+] bug: The sound of sounds of fighting awakens you!
- [+] shouldnt be able to rest while airborne!
- [+] make drunkenness give more damage resistance!
- [+] "unseen" etc not working on tombstone
- [+] bug: merloch getting infinite attacks!!
- [+] add "a xxx moves out of view"
- [+] why are wizards starting with 2 cold spells? fixed. was getting
an extra one for gaining a "new" spell skill.
- [+] slowwalking shoudl reduce move volume, not eliminate it.
- [+] i noticed a secret iron door forom 6 cells away!
- [+] make SC_SEARCH not autopassable on natural 20.
- [+] armour can have a SIZE
- [+] remove some occurences of "f_noarmouron" for sz_large,
sz_small creatures
- [+] in "canwear", implement size check. if lf's body size isn't
sz_human then armour must have "f_armoursize -> sz_xxx"
- [+] exception for ears / eyes
- [+] f_multisize
- [+] f_armoursize sz_xxx
- [+] can only wear armour whih is your size
- [+] in io.c, show armour size
- [+] assign f_multisize to objects
- [+] when adding objects
- [+] cope with asking for "large armour" etc
- [+] adding to a lf's pack? make sure armour is the correct fit
- [+] somewhere else? 25% chance of different size. if so,
50/50 as to which way.
- [+] in getobname, show "huge armour" etc
- [+] medium ("halfling size pair of gauntlets"), human
("gauntlets"), or large ("huge gauntlets")
- [+] high sewing/metalwork skills will let you modify armour for
custom fit.
- [+] half the hit points of the object
- [+] implement a multi-level menu system for shops
- [+] text on shop exit ("thank you for your business!")
- [+] shops:
- [+] only let you donate if you can takeoff / unweild it first.
- [+] replace "vending machine" with shop
- [+] make shops/buildings their own category
- [+] this will let us say 'random shop'
- [+] enable stealing from shops
- [+] armour
- [+] book
- [+] weapon
- [+] general
- [+] potion
- [+] hardware
- [+] food
- [+] jeweller
- [+] always show full name for shop items
- [+] temple of xxx -
- [+] actions
- [+] donate
- [+] detect curse
- [+] bless(costs more if equipped)
- [+] absolve sins
- [+] special depending on who the temple is to?
- [+] temple of'xxx' - assign in addobject()
- [+] extend CHA/SPEECH mods to all shops
- [+] disable stacking for shop objects
- [+] hotel/inn
- [+] actions
- [+] pay to rest (for 100 turns)
- [+] if you do this, call startresting() before exitting
shop
- [+] and set some kind of flag so monsters will never
approach
- [+] maybe: f_resting_in_hotel
- [+] and so that they will never wake up you up through
sound
- [+] remove these when you stop resting.
- [+] force you to stop resting once your time expires
- [+] buy food/drink
- [+] weapon shop:
- [+] donate weapons
- [+] armour shop:
- [+] buy armour
- [+] donate armour (so that monsters don't pick it up!)
* [+] firearm reload messages
- [+] don't take f_throwmissile into account when using telekinesis
- [+] ranged weapons: auto reload after firing.
- [+] done.
percentages
- [+] change hardness calculation
- [+] assertion roomidx failure
- [+] map roomids are geetting screwed up.
- [+] especially when i do RESTART MAP GENERATION.
- [+] possible fix is in place...
- [+] maybe make all monsters always have close to max hp
* [+] change weapons to use 'damage rating'
- [+] when reading a spellbook, notify which spells are too hard. OR
don't even list them?
- [+] print "it is too powerful for you to cast" in red
- [+] don't show "[magic]" on identified objects
- [+] why does agility of 12 give +3 accuracy??? should be lower
- [+] why do i suddenly show about rings???
- [+] bug in giveobflag()
- [+] fixed ???
- [+] why could i learn a level 4 fire spell (flame pillar) when my
fire mgic skillw as only lv3 (adept) ???
- [+] bug in getspellpower's enforecement of max spell levels
- [+] higher level spells should cost more to cast.
- [+] l1 = 1
- [+] l2 = 2
- [+] l3 = 4
- [+] l4 = 8
- [+] l5 = 16
- [+] l6 = 32
- [+] lurking horror missing a weapon
- [+] in makedesc_spell, put mp cost in red if you can't cast it
- [+] in progress...
- [+] currently hanging - fixed.
- [+] once done, make it not add spaces
- [+] add spaces manually in showlfstats.
- [+] once done, change all code to use wrapprint instead of
textwithcol
- [+] still an issue - everything in my inventory is coming up bold!
- [+] missing the last word again....
- [+] remove requirement that you have to be able to pick up an object
to eat it
* [+] make ninja weapons be "exotic" or ninjitsu
- [+] ghost missing melee attacks
- [+] make oil lamps last HEAPS longer too
- [+] @ should include weapon bonuses for skill/str
- [+] "headless bones" when you kill a skeleton??
- [+] allow for change of verb instead of always using "Killed by xxx"
- [+] only call maketried() for the player
- [+] don't show 'really attack the peaceful something' if you can't
see it!
- [+] vault: suply closet
- [+] 1 sq room with tools
- [+] why is hecta's pain hitting the player?
- [+] make it so you can only Offer to gods you ahve prayeed to?
- [+] recalc light on:
- [+] darkness/light spells
- [+] eye destroyed
- [+] prevent tumble/jump while grabbed
- [+] prompt to drop when wearing new armour
- [+] canine tracking should be a potion, not a scroll
- [+] some '?' help commands not working.
- [+] add f_critprotection to armour
- [+] crash when tumbling into an lf
- [+] incrase cellknown time when no cartography skill
- [+] change disarm and trip into abilities:
- [+] disarm
- [+] trip
- [+] ninja
- [+] skills:
- [+] athletics (enouhg to tumble)
- [+] throwing
- [+] unarmed
- [+] long blades
- [+] stealth
- [+] objects:
- [+] smoke bombs
- [+] shuriken - another missle. higher dam than darts.
- [+] how will this be different from the rogue class???
- [+] disarm
- [+] trip. maybe make trip polearms confer this ability?
- [+] flip .
cmoe from lore:arcana instead
- [+] rename magic skillls to sorcery:fire etc?
- [+] adjust spell power calculation to take lack of sorcery skill
int oaccount
- [+] allow '\' during getchoice() and getchoicestr()
- [+] so that we can see what we have identified
- [+] lower metabolism while lmeditating
- [+] poisonous mushrooms
- [+] toadstool - poisonous
- [+] shiitake - normal
- [+] recognise via cooking skill
- [+] if you add a blood ob, 1 randmo piece of armour in the pile
becomes bloodstained
- [+] accuracy boost when attacking something who has grabbedyou
- [+] lessen gravitiy should prvent falls
* [+] bug:
- [+] add job descriptions
- [+] handle ESC in askchar
- [+] You attack the helpless the xat! You flatten the xat!
- [+] "the helpless the xat"
- [+] shoiuldn't use "flatten" sinec we're not killing it
- [+] You attack the helpless xat! You kill the xat!
- [+] ...but it wasn't dead!
- [+] flame pillar scroll no longer works
- [+] not asking for target.
- [+] use castspell
- [+] cope with 'ESC' presses during normal travel
- [+] allow "maycancel" in askchar
- [+] make wizards NOT automatically know wild magic
- [+] is F_MPMOD working? check with elf wizard.......
- [+] now it is.
- [+] bug: create an elf, go over it, v - CRASH in makedesc_race.
- [+] removeob() should update burdened status
- [+] ie drinking a potion
- [+] wizards start with a staff and a pointy hat
- [+] don't "stir in your slumber" if meditating
- [+] elves should have higher mp
- [+] dwarves should have lower mp
- [+] when monsters fail to open a door, abandon their targetcell
- [+] might be able to jsut make failing a dooropen count as a move
failure.
- [+] HiGrv didn't stop me from moving? i passed the skill check, need
to have a msg telling me this.
- [+] race descriptions.
- [+] add the descriptions
- [+] ? in @@ shows info on them.
- [+] (add ?=help in the bottom when in @ mode regardless of
showall)
- [+] make clouds expand as they disappate
- [+] modify gethitstokill() to take "useevasion" and "usearmour" as a
parameter
- [+] at adept lore, you get threat comparison. at skilled level you
get exact hit turns.
- [+] make threat calculation use gethitstokill
- [+] TEST new threat calc
* [+] way too easy to notice traps on chests from 4-5 cells away, with
only novice perception
- [+] make cloudkill create puff of poison gas rather than a cloud
- [+] attacking should count as movement (ie dont regen stamina)
- [+] need more body bash criticals.
- [+] torso bruised (acc penalty)
- [+] torso bruised badly (higher acc penalty, low dam penalty)
- [+] ribs broken (huge acc penalty, med dam penalty)
- [+] lungs winded (stam=0 onetimeeffect, fit -1, only lasts a 2-3
turns)
- [+] should stop flying when you lose ocnsciousness...
- [+] warn before moving with f_pain as well. maybe cahnge
confirm_injiury_action ???
- [+] extra warrior skill: aimed strike
- [+] -50%acc
- [+] auto crit on the part you select (if you hit)
- [+] warn before moving/attacking with bleeding injury
- [+] leg slash = hploss form move
- [+] hand slash = hploss from attack
- [+] warn before walking onto pentagram with blessed gear
- [+] explosion should cause dt_explosion injuries?
- [+] massive damage to whatever armour is there
- [+] OR if no armour:
- [+] limbs
- [+] lose hand
- [+] body
- [+] collapsed lung (fitness = 0)k
- [+] ribcrack (like bashing one)
- [+] head
- [+] ringing ears (can't hear anything for a long time)
- [+] burnt eyes (blinded)
- [+] bug: not seeing fall msg during move (fell due to leg injury)
need 'didmsg'
- [+] getrelativedir should always return FRONT when uou have
f_awareness
- [+] bug: shouldn't try to leave trails when inside walls
- [+] announce when armour saves you from critical hits
- [+] F_DONELISTEN isn't working now - i'm getting multiple "you hear
buzzing to the north".
- [+] N_FLY needs to act the same as N_WALK (ie. be NC_MOVEMENT)
- [+] make validatespellcell() work on abilities
- [+] sonic bolt
- [+] mutated bat (sonar - damage)
- [+] merloch (sonic scream - damage)
spells)
- [+] allow dodge/catch of thrown object when there is no thrower (ie.
arrow traps)
- [+] simplify monster spellcasting
- [+] don't use any mp
- [+] select power based on monster hit dice only
- [+] monsters should cast spells less often - use f_castchance,
default of 15% chance
- [+] TEST
- [+] you keep your own mpdice when polymorphing into a mosnter
- [+] fxied: throw a tranq dart, then:
- [+] The cockatrice loses consciousness. The cockatrice falls
asleep.
- [+] bug: can't operate a fridge on the ground cause it's too heavy to
lift
- [+] monsters generated on dark levels should always have seeindark 3-4
- [+] vending machines not working... fixed.
- [+] in getchoicestr:
- [+] if !showall, and if it shows a longdesc, then you hit
backspace, longdesc should be cleared.
- [+] show completion in a different colour
- [+] bug: sometimes we seem to have map->room[x], but no cells with
cell->room->id == thatid!!
- [+] stop vaults from overlapping.
- [+] taking too long to walk down levels - enforce max number of
monster free turns
- [+] inept weapon penalty should be slightly higher
- [+] bad feeling check is too easy.
- [+] skeletons should have f_noinjuries
- [+] shouldn't check for slipping on things while swimming
- [+] tweak how traps + perception skill impact search checks
- [+] bug: sometimes we have no player start position.
- [+] if the vault creation fails, restart map generation.
- [+] only give study scroll ability at high spellcasting skill
- [+] typo: ring (1 charges left)
* [+] god effects when you die:
- [+] pea soup should work in the cell in FRONT of you.
- [+] bug: ring of control seems to work when you _weild_ it!!
- [+] non-lethal weapons
- [+] sword of mercy (at <1hp, ko)
- [+] tranq dart
- [+] add sleeptypes
- [+] change all refernces to f_asleep->val[1] (now an enum)
- [+] change "stirs in its slumber" if unconscious
- [+] change all 'fallasleep' calls
- [+] attacking a ko'd enemy with merciful weapon should do nothing.
- [+] ai shouldn't target ko'd enemies
- [+] ai should stop targetting people once they're dead/ko'd
- [+] bashing damage should sometimes just knock unconscious instead of
killing?
- [+] if their hp would be >= -3, and onein(2)
- [+] different body part names? "metal frame" instead of "body"
- [+] implement F_BPNAME, v0=enum bodypart, text = name
- [+] getbodypartname() needs a lf argument.
- [+] once i add this, also make animals have "front legs" instead
of "arms", "paws" rather than "hands" etc.
- [+] fix calls to getbodypartname to pass in lf or null
- [+] cyborg mods:
- [+] can't wear most armour?
- [+] need f_noarmouron - we HAVE this bp, but can't put armour
on it.
- [+] large rust damage from water
- [+] if you have a bad feeling about an object, mark it as "[bad]"
- [+] f_knownbad
- [+] killing should anger the god of mercy
- [+] monsters should start sprinting if targetlf is sprinting && we
can sprint && we aren't sprinting
* [+] The kobold throws a potion of sleep at you. A potion of sleep
hits you.
A potion of sleep shatters! You are showered in glass shards!
* [+] in getchoicestr, when there is only one valid choice, show its
description below!
- [+] in getchoicestr:
- [+] remember desc_end_y
- [+] if our typed text doesn't match, and desc_end_y is set
- [+] blank out those lines
- [+] in ], show letters and let you view amrour
- [+] Still occasionally have bugs where no up stairs are placed in the
first level!!!!!
- [+] put in debugging to show if we ever destroy a staircase
- [+] test when it happens again.....
- [+] for "pentagram pulses black", if you can't see the estination,
still say "your xxx flies away"
- [+] change listen code: you can only hear one _footstep_ noise per
turn, but any number of other things.
- [+] instead of jobs replaceing hitdice, make them _modify_ maxhp by a
certain %age. ie. f_modmaxhp 80% to get lower.
- [+] jobs can no longer have F_HITDICE
- [+] instead, they have F_MAXHPMOD
- [+] why am i getting wet and drowning while flying??
- [+] show f_canwill SPELLS under abilities, not spells??
- More playable races
- [+] need f_playablerace
- [+] can pick when you start the game (before you pick job)
- [+] human
- [+] implement f_jobattrmod
- [+] MOST JOBS SHOULD USE F_JOBATTRMOD instead of F_STARTATT.
- [+] ALL PLAYABLE RACES must have FULL sets of STARTATT
* [+] elf
* [+] dwarf
- [+] aviad (birdfolk)
- [+] can fly
- [+] vuln to electric attacks
- [+] vuln++ to fire
- [+] ---str
- [+] cyborg
- [+] +str, +int, +dex, +con
- [+] ---cha
- [+] -wis
- [+] vulnerable to lightning, water,cold
- [+] cannot use any magic, or med-high chance of spell failure
- [+] bleeds oil rather than water
- [+] see exact hp damage (f_extrainfo)
- [+] tech usage.
- [+] remember race in highscores.
- [+] rename magic skills: Magic:Cold
- [+] bug: infinite loop in poison arrow trap - make sure the arrow
always dies.
- [+] bug: c4 didn't kill iron door
- [+] implement stamina (float). max is Fit/2
* [+] in startlfturn:
- [+] sprinting drains this.
- [+] ...then stop using f_sprinting for exhausted
- [+] ...and remove f_tired
- [+] if exhausted, stop sprinting. (in modstamina)
- [+] change crushed windpipe
- [+] f_stamcost for abilities.
- [+] modify cancast.
- [+] tumbling
- [+] jumping
- [+] rage
- [+] swimming
- [+] drains stamina like sprinting
- [+] if stamina drops to 0, you start drowning.
- [+] new spell: lethargy (sets stamina to 0)
- [+] if a sleep spell fails, use lethergy instead.
- [+] no attacking while stam = 0 ???
- [+] need to update statbar right away when casting ongoing spells.
- [+] bug: reading an awareness scroll counting as an active spell!
- [+] genericise magic resistance check into a function
- [+] "disorient" - l1 mental spell which randomly turns lf, someitmes
makes them dizzy
- [+] change stun - just means you can't attack, cast spell, use abils
* [+] AI shouldn't look for targets if stunned or no stamina
* [+] why do mosnters end up facing -1 (d_none) ??
- [+] turn undead problem.
- [+] The skeleton turns to flee from you! The skeleton bites you.
- [+] crit which spins you around (bash to body)
- [+] say "you attack xxx from behind" when you ar ebehidn them and
they can't see you
- [+] or "you attack the helpless xxx" when thye just can't see you
- [+] genericise sacrifice text
- [+] fix up weight of heads (8% of body mass)
- [+] make attribss do more:
- [+] iq: determine how soon you learn new skills (ie. modify
SKILLXPPERPOINT)
- [+] fit: determines stamina points.
- [+] wisdom >= AT_HIGH
- [+] warn before wearing/eating/drinking/weilding unknown
bad/cursed objects (low chance)
- [+] use isbadobject()
- [+] chance:
- [+] high = 10%
- [+] vhigh = 30%
- [+] exhigh = 50%
- [-] idea: sacrifice to gods to make them happier
- [+] mercy: weapons
- [+] death: any corpses
- [+] thieves: gold
- [+] make it only protect against missiles? no AR as such
- [+] facing N, walk NW. turn instead of walk! bug in
getrelativedir(). fixed.
- [+] ctrl+dir = turn.
- [+] make novice level listen more useful.
- [+] l2 tech: "styptic" -
- [+] heals certain bleeding injuries
- [+] then if still bleeding() due to low hp, heal back up.
* [+] tool: bandage -fix blood loss
- [+] change enhancedsmell to happen in same place as 'detectlife'
- [+] spells:
- [+] sixth sense - l1 - warns if someone is within 2 cells behind
you. lasts for a single use.
- [+] canine tracking - l2 divination spell, gives temporary
enhanced smell for short range (3).
- [+] heightened awareness - l3 ongoing divination spell to enhance
FOV to 360 degrees
- [+] scrolls for the second two
- [+] apportation
- [+] let wizards pick two secondary spell schools
- [+] start with beginner in primary, novice in sec
- [+] CRASH in linkexit()
- [+] make most monsters either have sk_perception at least novice.
- [+] show success rate when studying scrolls
- [+] bug: unable to drink from fountains anymore
- [+] always use multidrop - this will free up 'D'
- [+] forest tree cluster maps are not working - only a single tree in
each cluster!
- [+] crash - ghost adding footprint to solid cell!
- [+] amberon's wrath for attacking peaceful should happen once per
ATTACK, not once per HIT
- [+] show cells outside LOS as blue or darkgrey
- [+] Don't place normal rooms next to the edge of the map either!!
- [+] getradiuscells(scatter) needs an option to include density
- [+] then make absolute zero have high density
* [+] summoning spells on pentagram will summon a demon instead
- [+] "confusion" / "baffle" mental spell - l2
- [+] add 'concussion' injury (head bash) - confusion effect.
- [+] iswoozy checks for this.
- [+] severed limbs -"frominjury" so taht you can heal them
- [+] linkexit() needs to be able to handle making THREE turns:
- [+] when looking for turnpos, remember each up/down celll
- [+] if we don't find one ("annot find a way to link up") , go
through each up/down cell and look left/right
- [+] fix is in place.
- [+] tested.
- [+] bug: doors being placed on top of rock walls!!! think this is
related to fix_deadends.
- [+] assert statement added.
* [+] bug: no up stairs generated on first dungeon map! was being
removed by clearcell() for overlapping rooms.
- [+] mass stun spell - l4. stuns all in los ?
* [+] make "stun" / massstun durations be 2-4 depending on power
- [+] "restricted" jobs/races?
- [+] don't put shopkeepers in pubs
- [+] make a per-map maxvisrange. the deeper you go, the lower this
gets (ie . it is darker, less ambientlight)
- [+] limit getvisrange(lf) by getmapmaxvisrange()
- [+] map->habitat->maxvisrange. set this during createhabitat()
- [+] reduce maxvisrange
- [+] reduce it to 6
- [+] why can i still see 1 cell?
- [+] why can i still always see my own cell?
- [+] when in pitch black for a certain amount of time, your vision
adjusts to maxrange=1
- [+] ie. getnightvisrange(lf) should be modified by
lf->eyeadjustment
- [+] reset if you can ever see a lit cell.
- [+] when this happens to the player:
- [+] msgs about this
- [+] also force light recalc
- [+] only recalc light when dirty
- [+] if we call "haslos()" for a lf and they have losdirty,
precalclos first.
- [+] vis range problems
- [+] sunglasses/footballhelm visrangereduce isn't working anymore
- [+] it's reducing maxvisrange(lf).
- [+] BUT - my maxvisrange is 5, which is still higher than the
ambient range.
- [+] need to apply reductions AFTER ambient light
- [+] NOW eyeadjustment isn't working. because cell lit is
l_temp, not l_notlit.
- [+] but if this is the case, why can't i see? anwer: because
my visrange has been reduced to 0 due to no ambient light!
- [+] so.... how do i make lightt sources override this?
- [+] maybe say: if a cell is lit, i can see it, even if it's
outside my ambient light.
- [+] falling over isn't reducing your visrange anymore
- [+] why doesn't eyeadjust make the screen update?
- [+] is regular "haslos" code ever used anymore????
- [+] now i can't see lit cells in the darkness again....fixed
- [+] after you calm something, give it xpval0
- [+] show message when calm animals fails
- [+] check all spell sc_resistmag oskillcheck difficulties
- [+] diff should be 20 + (spelllev*2) + power
- [+] l1 spell should be diff 20
- [+] l2 should be diff 24
- [+] ...
- [+] l7 should be diff 34
- [+] bleeding injuries should make armour "bloodstained" (5% chance
per turn)
- [+] msgs for "the sun is starting to set" and "the sun is starting to
rise"
- [+] make 6am, 18pm be constants
- [+] add crushed windpipe - lower Fitness, cannot sprint
* [+] CRASH when going down stairs! another overlapping room bug i
think.
- [+] cockatrices and chickens should cluck
- [+] canwill param: race:xxx;
- [+] define it
- [+] use this in "createmonster"
- [+] use this in "polymorph" when on self
- [+] then remove f_forcepoly
- [+] TEST
- [+] make playerstart vaults able to appear randomly (just don't place
the the "playerstart" object)
- [+] redo texttospellopts() to make it more friendly
- [+] give a list of what we want as args, rather than passing lots
of nulls
- [+] "pw:", &localpowervar etc
- [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during
losehp.
- [+] rename turneffectslf() to startlfturn()
- [+] show hunger level as a bar in @@
- [+] warn before becoming burdened.
- [+] warn when you ARE burdened. at the end of moveob()
- [+] l6 - absolute zero (turn everyone around you to ice, freeze all
obs, turn ground to ice)
- [+] some monsters leave non-meat food behind?
- [+] cactus -> cactus juice/fruit
- [+] dreamfungus -> sleeping powerder
- [+] silver weapons (5% chance on eligible weapons)
- [+] hurt vampires
- [+] vulnerable to mat??? - then use fromob in losehp()
- [+] f_matvuln mt_xxx multiplier
- [+] add some silver weapons
- [+] f_canbediffmat mt_silver 10%
- [+] if f_canbediffmat is true, sometimes change material to
this on creation
- [+] getobname - if material is differnet, show this
- [+] dagger
- [+] sword
- [+] arrow
- [+] bolt
- [+] dart
- [+] addob should accept 'wantdiffmat'
of listen check easier.
- [+] they tend to only wake when i'm 1 sq away
- [+] get rid of sprintf
- [+] replace all with snprintf via macro
- [+] then search for HUGEBUFLEN etc and fix up
- [+] compile with -O2, fix up warnings.
- [+] gaze attacks (ie eyebat, beholder) now need 2way los, and glasses
will protect you
- [+] use "wrapprint" to show physical props in @@
- [+] glowbugs should flash upon death
- [+] should stop gaze attacks (like eyebat)
- [+] golden cobra - acidspit at eyes
- [+] bright flash (glowbug, and make some of them hostile)
- [+] flashbangs (make them more common)
- [+] combine tracking with searching and call it "Perception"
- [+] replace all occurences of SK_xxx
- [+] replace skillcheck (or make it use different skill)
- [+] instead of evasion skill giving a fixed boost, make it change the
evasion bonus due to xp level.
* [+] give monsters free moves when you go back onto a level, BEFORE
placing the player.
- [+] fix dungeon code to eliminate nonlinked rooms
- [+] force all vaults to be at least 3 squares away from map edges
* [+] implement flood-fill test.
- [+] blink should go to random place within lof, not los
- [+] sunglasses shuld reduce nightvis range, not visrange
* [+] since jolt needs adjacency, make it more powerful
- [+] use colours for spell descriptions
- [+] replace 'call wind' with 'zephyr'
* [+] add vault commonality.
- [+] add more common vaults - roundabout etc
* [+] change "addmonster" to take a string arg instrad of RACEID
- [+] pouring cursed water on blessed scroll didn't work.....
- [+] append "...god of xxx" to rc_god lifeforms
- [+] try to attack with f_pain -> INFINITE LOOP.
- [+] ARMOURPIERCE shouldn't hurt armour
- [+] ghast touchparalyze attack isn't working.
* [+] bug: when praying to gods, ones not in heaven aren't listed.
- [+] when a god apepars..."Hecta appears" x2
- [+] attacking fleeing lf should count as a backstab (if you have the
skill)
* [+] "nothing happens" during god spell effects
* [+] allow hunger to work on monsters
- [+] pressing 'a' on @Magic has weird results.
- [+] bug: got a gift form yumi during combat???? what for? healing?
initial vampire implementation
initial god implementation
- [+] they all start off in "heaven" map.
- [+] gods ahve f_piety. starts at 0
- [+] keep track of piety with each god. starts at 0 for each one.
* [+] let planeshift take you to heaven (for debugging)
* [+] everyone has 'pray' ability.
- [+] modpiety(rid, amt)
* [+] piety vals
* [+] when you pray
- [+] isangry(god) - ie is piety < 0
* [+] if you pray when god is angry, bad!
* [+] once piety gets over 200 or so, praying might give you a gift.
* [+] god_appears(lifeform_t *victim)
- [+] if >=0 (indiff / pleased), goes up to indiff over time(1 per
turn).
- [+] regain through doing actions ... in progress
- [+] lose through doing actions only if you have prayed to this god
before (angergodmaybe)
- [+] special: gods don't need LOS to cast spells.
- [+] gods planeshift away if not doing anything else.
* [+] @g to see your piety levels for each god
- [+] ?g for help on gods
- [+] IN general:
- [+] prey = oneoff effect
- [+] gift = ongoing
* [+] makeangry() vs modpiety
* [+] Yumi - fem,mercy/healing - if you die within the first few turns!
Hecta - partial
Avamon - partial
- [+] limit name length
* [+] The fire titan is burnt by a flaming greatsword!
- [+] make ar slightly less effective.
- [+] don't prompt "really walk into xxxdangerousthingxxx" when
carefully walking.
- [+] allow dodge check for web spell.
- [+] speedups in attack.c
- [+] "the centipede bites you" "the centipede hits you"
- [+] how did it get "hit"? it should only have a teeth attack!
- [+] after looking at skills, bottom line of status bar isn't redrawn.
- [+] anything with a --more--
- [+] druids regenerate mana based on nearby plants
- [+] bug: "your young wolf starts casting a spell" when sprinting.
- [+] bug with AI follow code - now fixed.
- [+] make ai pets be able to "smell" the player.
- [+] unarmed adept: break wood (no "ow!" and extra dam to wood/doors)
- [+] automatically give all player pets the ability to see footprints!
* [+] monsters not following properly! fixed now i think.
- [+] mark fountain potiontypes as "tried" after you drink
- [+] replace barbarian with warrior. make it armour-based.
- [+] bug: "A Jimbo comes into view" should be "Jimbo coes into view"
- [+] more findlfags() calls needed in lf.c.
- [+] give jimbo f_dontleaveroom!
HELP SYSTEM
- [+] ?? for commands
- [+] ?s for skills
* [+] trapped doors/objcets
* [+] make careful walking have less chance of triggering some traps
(eg tripwire)
- [+] dex penalty when drunk
- [+] require dex to put on most shoes
- [+] Diety's short sword of pyromania isn't appearing?
- [+] make sure i can tumble over traps
* [+] able to cut tripwires with slashing/chopping/piercing weapons?
- [+] maybe make cmomando have no weapon skill
- [+] make armour more common
- [+] shouldnt be able to swap place with someone who is sleeping
- [+] if you're not in the water, can't see lfs in water (unless they
are adjacent)
- [+] You break free from the zombie! You reintegrate inside a solid
object!--More--
* [+] shopkeepers will charge an extra fee to identify stuff
- [+] shouldn't get an empty flask when I dirnk from a fountain!
- [+] identify and remove curse scrolls should be COMMON
* [+] provide detailed skill descriptions
- [+] dumpoutlines()
- [+] make minotaurs stay in room
- [+] make minotaurs have good smell
- [+] don't auotreveal vaults.
* [+] should be able to fill flasks from fountains
- [+] don't announce corpse decay death while training.
* [+] add the initial godstone at the bottom of firstdungeon
* [+] make fountains names same as their linked potions
- [+] bug: when filling potions from the ground, ground object was
never dryaing up
Beggars
- [+] stealing ability sometimes. run away after using this
* [+] various lots of generic f_talktext->"have a coin to spare?"
World map
- [+] 1-2,1-2: habitat: village
- [+] multiple villages
- [+] vault: island with treasure (or acid island?)
- [+] jump into a water - it splashes small puddles to surrounding
cells
* [+] let dig spell go up/down.
* [+] fountains, random potion effect or water (blue _ or })
- [+] make thingchance and obchance be habitat_t parameters.
work on game goal
- [+] find a way out of the magical dungeon barriers in the first
dungeon
- [+] slime
- [+] troll = t
- [+] lizardman
- [+] ogre
- [+] kobold
- [+] fire sprite
- [+] hobgoblin
- [+] bugbear
- [+] gnoll
- [+] giant
- [+] zombie
- [+] skeleton
* [+] ghoul
- [+] ghast
- [+] can operate spanner to
- [+] jam/unjam a door
* [+] visibility
- [+] initial code for monsters opening doors while giving chase
- [+] acid does more damage to armour
* [+] implement temporary flags.
* [+] implement unknown flags
- [+] mana spike
- [+] energy bolt
- [+] energy blast (hits all in radius)
- [+] flash (like flashbang)
- [+] telekinesis (open/close doors remotely, grab/throw objects
remotely)
- [+] mindscan - knoweldge of hp etc
* [+] airblast (push obs, push someone very far, AND lose obs. break
walls they hit?)
- [+] fireball - sets on fire
- [+] flamepillar
- [+] fire arrow
- [+] spark (light a flammable object)
- [+] flameburst - 2d8+3 damage in a circle
- [+] burning wave - 2d10 damage and set on firea, line towards target
- [+] range 3
- [+] freezing touch (turns an object to ice)
- [+] knock - opens doors
- [+] gas form
- [+] polymorph
- [+] write on floor
- [+] light
- [+] weaken (lose str)
- [+] poison cloud - change cloudkill to this?
- [+] animate dead
- [+] posession
- [+] minor healing
- [+] healing
- [+] turn undead
- [+] identify
- [+] detect magic
- [+] detect aura
- [+] reveal surroundings
- [+] uncontrolled teleport
- [+] speed
- [+] slow
- [+] boost gravity
- [+] create monster
- [+] divine
- [+] wish
- [+] don't say "you see a few things" if one of them is footsteps
* [+] IFMONSTER code failing....because flags are now SORTED!!!
- [+] tumble - askcoords is letting us pick a cell we don't have lof to.
* [+] assign a name to lfs once you hire them
* [+] coloured msgtext
- [+] make min dam reduction from AR be AR/5.
- [+] safebox
- [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with
no getsweaker (val1)
* [+] make fire / ice damage mor elike netheck
- [+] towns should have gates on EVERY side
- [+] forest cells outside town gates need to be CLEARED. (maybe turn
to dirt)
- [+] fix up knock targetting to include magical barriers
- [+] say "open a bag?" not "operate a bag?"
* [+] implement immunetodisease
- [+] sort known skills in @s.
- [+] better damage bonus when attacking someone who is asleep
- [+] practive firearms/throwing
* [+] need objecttype->size
* [+] containers
* [+] change guns so you have to reload them. ("operate")
- [+] crash when loading map with water
- [+] SAVE OBJECT CONTENTSk
- [+] monsters with jobs aren't getting start items
- [+] shopkeeper has shotgun
- [+] bug: monster keeps swapping between shotgun and flail
- [+] when hiring, remember failure.
* [+] Inn
- [+] bug: pets fighting!!! then they all turn on you. never make
allies get angry unless the attacker is the player
* [+] hiring npcs
- [+] chat to pet: "stay close" or "keep your distance"
- [+] new 'furniture' obclass
- [+] allow for 'randomshop' regiontype
* [+] add enchantment school
- [+] cast a scroll of mending on itself. CRASH.
* [+] lessengravity should make you jump better and get knocked back
further
- [+] boostgrav/lessengrav cancel out each other.
* [+] CRASH when you fall down a hole and die.
- [+] problem: master gravitation doesn't let us cast levitat.
getspellschoolknown() should return the HIGHEST known skill, not
the first.
* [+] bug: dregion is null?!??!
* [+] dig a pit, if you cleared out land below, you just stay down
there.
- [+] potion of leveitation
- [+] warning msg when levitate is about to expire
* [+] if you fall upwards to the surface...
* [+] if you are ever on the surface while levitating....
- [+] BUG: cna't go up stairs to surface anymore!!!!!
- [+] get hungry LOTS more quickly when you start sprinting
* [+] monk slow metabolism psionic pell.
- [+] fix buf with lore giving LESS accuracy instead of more.
- [+] food shop
- [+] wand of digging not identified if you dig upwards
* [+] when you make ah ole in the roof, objects above should fall
through right away
* [+] all towns should have:
- [+] give monks more psionics spells.
- [+] sk_throwing skill
- [+] make calm animals use spellpower
* [+] add wisdom
* [+] need to save region data along with maps
* [+] COMBINE armour evasion and accuracy penalty!!!
* [+] make armour reduce accuracy as well (unless you have 'armour'
skill)
- [+] landmine trap
* [+] make friendly monsters of same raceclass swap ammo
- [+] rename 'pull' to 'suck' to avoid confusion with pull metal
* [+] food to fix blindness
- [+] potion of coffee
* [+] genericise statbrackets
* [+] tumble ability
* [+] simplify spell power
* [+] shopkeeprs should be allowed to pursue targets outside of the
shop.
- [+] give shopkeepers a shotgun
* [+] make F_RNDHOSTILE be able to ahve a random chance.
* [+] if you randomly generate food in a shop, still give it a price.
- [+] if peaceful humanoid walks into you, "sorry!"
- [+] sayphrase(lf, SP_SORRY, vol)
- [+] only let you recruit jobs with j_recruitable
- [+] CRASH - summon "monk"
- [+] dogs,
- [+] chickens,
- [+] drunks,
* [+] village objects
- [+] change armourrating AGAIN. instead of a percentage, make it a
number.
- [+] rename inn to "pub", since you can't sleep there.
* [+] random speech code
* [+] genericise sayphrase text based on lf's job
* [+] monks - add rest of abliities
- [+] add fiengdeath ability to some monsters
- [+] getdirtowards/away bug
- [+] metalwork or armour skills let you see armour hp!
* [+] allow players to select their weapon specialties at the start
- [+] make statbar easier to read
* [+] druids
- [+] spark on rum will blow it up!
* [+] evasion skill
- [+] add charisma
* [+] add speech skill
- [+] bug: gate to level 1 took me to the outside!
* [+] bug: not hearing shopkeepers final yell - out of range??
- [+] special corpses: i - a Jimbo corpse should be "Jimbo's corpse"
- [+] when autogenerating monsters, make sure they have ammo for ranged
weapons.
* [+] map to town
- [+] randomly place the town now.
* [+] shopkeeper still doesn't talk to us if we can't see him when we
pick up an object
- [+] i am STILL not hearing when the shopkeeper yells you "stop
thief"!!
* [+] bug: LOTS of dungeon rooms with no exit
- [+] town guards want money
- [+] announce "a xxx falls through a pit"
* [+] make running go around corners
* [+] colourise known skills
- [+] rename constitution to fitness
* [+] scroll of mending - should this fix dulled weapons (by hitting
doors etc)?
- [+] colourise @@ (boldwhite for titles)
* [+] colourise @s
* [+] colourise @m and @e
* [+] implement regions
- [+] new vaultflag: norandom (doesn't rnadomly appear)
* [+] jimbo's lair
* [+] implememnt skill training
* [+] still a bug with flooded rooms having no doors!
* [+] change f_impassable to be a size _range_ which can't pass it.
- [+] metal armour should add to walking volume!
- [+] sewing/metalwork skill to repair cloth/metal armour, instead of
"armour" skill?
- [+] moveob() onto a pit - they fall through!
vault options:
- [+] dlevmin/max:xx appears at this depth/difficulty
- [+] goesin appears in habitat xx (if none of these, can be anywhere)
- [+] habitat has to be a struct first, with a name.
- [+] norandom (don't randomly generate - only from outline)
- [+] pits
- [+] only one can exist in a cell
- [+] replace getemptycelltype() with entries in habitat_t
- [+] make map->habitat a link.
* [+] update linkstairs to do pits
SPELLS:
- [+] shatter (grav/air, break glass, break potions. damage to anyone
nearby)
* [+] repair armour
* [+] armour "hardness" to reduce damage?
- [+] fix resting while poisoned.
- [+] shouldn't be able to attack while ethereal
- [+] cursed scroll of mending should damage stuff
- [+] spark should light unactivated candles/torches instead of
igniting.
* [+] askcoords: add a subprompt param:
* [+] xp levels:
- [+] stealing skill
* [+] alarm spell - level 1 wild magic
- [+] reduce damage when drunk (-1d3)
* [+] better armour material damage immunities
* [+] bug - lots of mosnters on same square - bug with f_numappear
- [+] chat-> "go to x,y" (they must have los to there)
- [+] reduce # objects in rooms again!!!!
* [+] put gatekeeper on DLEV 6
- [+] bug: when doing a heavy blow, don't use weapon effects liek trip.
- [+] don't show "[magic]" or [inspected] at end of game
- [+] knockback bug: You flatten the kobold! The kobold slams into a
rock floor!
- [+] warn before dulling blade.... (if pretty high iq)
- [+] monstesr should not start eating when enemies are nearby!
- [+] increase weight of weapons
- [+] fix up what counts as a heavy wep
- [+] check throwing - i can throw a 6.5 javelin 6 squares with a str
of 7!!
- [+] eat blinkdog corpse for instant blink ability
- [+] true strike (???, next xx attacks alway hits). xx is power/3
- [+] floating disc (summon)
- [+] obscuring mist spell fixes
- [+] evaporate spell - turn water into steam
- [+] monster generation bug? even on dlev10 i'm stil getting mostly
kobolds
- [+] ai infinint eloop again - frost hawk trying to open door
- [+] another infinite loop - not falling through after spell failure.
* [+] reduce attack delay for most weapons.
- [+] letplayer see a tiny bit in the dark (1 cell ?)
- [+] beginner tracking not working - fixed.
- [+] only show "...but do no damage" if you have good knowledge about
their race.
- [+] make gold lighter
* [+] footprints glyph shouldn't override pudles of water!
- [+] only show eviscerate etc if you have good knowledge?
- [+] don't start monsters on the stairs/magical barriers!!!
- [+] stone should be immune to more damage types
* [+] addexits adding way too many exits.
- [+] blessed identify should ID everything
- [+] blessed mending mends all
- [+] don't make noise when slowmoving.
- [+] eyebat dispersal big: The eyebat's strong scent leading north
disappears!
- [+] go over footprint+scent+corpse and pickup:"You can't pick up
footprints!"
* [+] doors can't do on top of each other!!!
* [+] low ground
- [+] make sure you can't have more than one "water" object in a cell.
* [+] make val2 of rarity be "common/uncommon/rare" etc
- [+] more monster types should appear in the forest.
- [+] when i go down stairs into a dark area, "it is pitch black!" is
being cleared.
* [+] helm of the poltergeist
- [+] flying creatures get penalties in webs etc
- [+] blind things shoudln't follow up/donw stairs
- [+] You shout a blood-curdling war cry! The sawgrass turns to flee
from you!
- [+] potions still worth too much. minor healing was 420!!
- [+] AI should only go towards covetted object if it's closer or the
same distanec as target.
- [+] branded objects should be worth LOTS - at the moment they're
worth 1!!
* [+] maybe just adjust value of rarity?
- [+] don't roll spot checks while training!
* [+] replace f_nofeel with:
- [+] revenge did too much damage (50)
* [+] change how AR works
- [+] need to add: "really walk into a falling rock trap" ?
- [+] put only ONE staircase going up on dlev 0
- [+] why am i stopping sprinting after 1 move?
* [+] somehow make sure mosnters can't see footprints in a cell with
mist
- [+] bones shouldn't be able to catch on fire.
- [+] when you levle up, gainskill BEFORE getting new spells
- [+] put out flaming objects after pickup
* [+] don't say "really target yourself?" when using a potion of sleep!!
- [+] enhance a random skill when levelling up? every 2 levels?
- [+] weaken koboldsa little - less change of javelin
- [+] don't drown instantly - take a few turns, depending on CON
* [+] create vault spell for debugging ???
- [+] doors in the middle of rooms.
- [+] highlight selected choice in askstr
- [+] flooded_room being created without walls!!!!!!
- [+] describe spell from levleup not working
* [+] GETROOMEDGE RETURNING NO CELLS for circularroom!!!!!
- [+] fire wizard not prompted to get firedart at l2..
Vaults
* [+] X corridor -
- [+] crosshatch
- [+] should water be ~ instead ?? and change whatever is currently a
tilde to something else...
Initial work on goal:
- [+] surround all stairs with barriers
- [+] start player NEAR stairs (randomadjcell from stairs, allowexpand)
+ methods of escape
- [+] knock scroll
- [+] digging (but it stops the dig from going any further)
- [+] sort OC_ in defs.h
- [+] when a monster UNHIDES, need to redraw!!!
* [+] chain lightning
- [+] teleportation trap
- [+] wish bug with invalid strings: The xxx's strong scent leading
east appears on the ground!
- [+] bug: animals ggetting extra attacks due to unarmed skill.
- [+] change melee attack with 2nd hand to happen at SKILLED level, not
adept.
* [+] infinite loops during creation
- [+] make javelins weigh more
- [+] potions still cost too much.. should be at least 1/3 the cost
- [+] "you feel footprints here". need F_nofeel
- [+] replace f_target with f_targetlf
- [+] wantrange. for melee fighters (default), it's 0. for
spells/archers, it's higiher.
- [+] if we are further away than bestrange, move towards.
- [+] if we are closer than bestrange, move away
- [+] AND: move to wantrange before doing spells etc
- [+] if we have a ranged attack and wantrange is default, increase
it.
- [+] in movetowards/away, cells in the wrong dir should NEVER be
acceptable!
* [+] mflag_push for monsters
http://roguelikedeveloper.blogspot.com/2007/10/unangband-monst
er-ai-part-three.html
- [+] randomly use ranged attacks when adjacent
* [+] show trail in askcoords
- [+] when throwing, pass range to askcoords
- [+] max monsters per room is depth + 1
* [+] why do humans take ages to appear?
- [+] fireball spell is slow
- [+] why can i throw objects through magic barriers?
- [+] add a bonus for mastery of cartography - magic mapping every 50
turns.
- [+] crash with monsters moving off edge of world map
- [+] make magic barriers be ON stairs, not around them.
- [+] handle DIAGONAL entry to maps
- [+] OR make this impossible.
- [+] druid should get auto nature knoeldge as they levle up (levs 5 10
15).
- [+] CRASH flagpile corrupt
- [+] happening during AI movement.
- [+] make lightning storm only hit enemies
- [+] store last known movement dir in TARGETLF and PETOF.
- [+] limit monsters per room not working?!?!
- [+] make askcoords let you show object piles with .
- [+] make askcoords say "A magical barrier (+xx other objects)"
- [+] combine getlastknownmovedir into getlastknowncell
* [+] BUG: secret doors are showing up as . again!
* [+] implement trails (footprints & scent)
* [+] aimovetowardslf(lf, wantattack)
* [+] make pets use wantdist code?
- [+] what does expert/master tracking give you?
- [+] ex: your tracks don't last as long
- [+] ms: you don't leave tracks.
- [+] change f_reducemovement from multiplier to addition
- [+] comma still showing up scents and footprints incorrectly!!!!!!!!
Initial shallow/deep water:
- [+] restrict movement
- [+] check for drowning in turneffectslf AND movelf
- [+] warn before walking onto dangerous objects.
- [+] change how walkdam works for deepwater.
- [+] don't use walkdam flags.
- [+] don't make splashes of water on top of deepwater.
* [+] deep water will drown you if
- [+] don't leave footprints in either
- [+] create steam on fire damage, but don't CONVERT to it.
- [+] f_waterbreathing
- [+] can't drown in water
- [+] extra damage from cold/elec if in deep/shallow water
Initial swimming implementation
* [+] sacred/cursed ground
- [+] vending machine
- [+] don't transfer f_rarity flag when making objects / lifeforms.
Initial work on adding a goal to the game!
- [+] should ALWAYS be blank (' ')
- [+] The fire giant forgecaller incinerates you with a flaming
morningstar.--More-- HP:-115193/139
- [+] barbarian should start with a heavy weapon (to do heavy blow with)
- [+] chang epegasus symbol to Q
- [+] stop sprinting when you open a door, attack, etc
- [+] "the darkmantle vanishes" "the darkmantle appearS" "the
darkmantle steps though the shadows"
- [+] when generating humanoid monsters on dark levels without
seeindark, high chance of them having a torch/candle
- [+] all undead should seeindark
- [+] major healing pot doesn't work
- [+] crossbow should do more damage
* [+] aiming skill - determines accuracy of firearms
* [+] change spellbooks to be a single object ("spellbook")
- [+] call wind spell
- [+] make plants boost power of druid spells
- [+] secret iron door showing up as '.'
- [+] table shoudl be misc, not dfeature
* [+] implement sound volume. 1 - xx
* [+] some monsers have f_varlevel. v0 = max.
- [+] implement 'say'
* [+] bandits should demand a bribe (based on their hit dice)
* [+] replace graph paper with cartography skill
- [+] lightning bolt (air, goes THROUGH all lfs until the target one.
less damage than fireball though.)
- [+] no casting spells while prone
Initial world map implemention.
- [+] maps need flags.
* [+] when in world map, calculate rarity differently based on distance
from 0,0
* [+] allow walking off edge of forest to new map areas
- [+] make eating take longer - depends on lf size and food sizes
* [+] stop eating if something attacks you!
- [+] change spell code to cope with caster = NULL!!
- [+] why are rooms never more than 2 high
* [+] traps
* [+] eating bug again
* [+] disarm trap skill?
- [+] lots of needredraw bugs
- [+] bug with cursor jumping around lots
- [+] draw darkened visible cells in blue
* [+] shadow cloak
- [+] tree shouldn't prevent resting!
- [+] make plants not attack druids
* [+] cooking
- [+] stop eating if your eating object is no longer with you
* [+] FLAG CORRUPTION BUG
- [+] pet walking back and forth on rotted objects
- [+] purified food shouldn't decay anymore.
- [+] plants shouldn't sleep
- [+] RESTING on statbar not being cleared. the add of f_interrupted
was clearing statdirty before f_asleep got removed in killflag().
- [+] AI: don't eat if in battle
- [+] reduce projectile damage
- [+] show raceclass in statbars
- [+] smoke should make you cough.
- [+] when going up levle, only prompt for spells you can cast?? (don't
show "NOTCASTABLE")
- [+] Your young hawk dies. The stirge releases something!
- [+] sleeping thigns shoudn't follow you up/down stairs.
- [+] when throw'ng an object, don't let it stack (otherwise we might
destroy too much)
- [+] don't draw "c - " for nopickup objects.
- [+] saving throw for traps if you know about it.
- [+] druid - get xp for calming animals
- [+] rogue- get xp for picking locks, disarming traps.
- [+] metal should be immune to most damage types
* [+] make heavy blow need HEAVY weapon, not bashing.
- [+] can't rest/train while levitating!
- [+] gas traps only go off once.
- [+] bug: The goblin throws a boulder at you. A boulder misses you.
- [+] don't give short sword skill to wizard.
- [+] hearing range based on listen skill
* [+] coldness disease:
- [+] CRASH when swapping places
- [+] bug: i can teleport into an impassable object!
- [+] add: "really target (your ally)?"
- [+] give wizards school-based skill instead of manaspike + wildmagic
- [+] LevUp still not being cleared!!!
* [+] why is air wizard being prompted for call lightning at level 2???
* [+] summon weapon (summoning)
- [+] hold portal (mod)
- [+] reveal hidden
- [+] stench (death)
- [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3)
- [+] grease (modific) creates oil in a circle
- [+] fear (death)
- [+] seeinvis (div)
- [+] locate obejct (div) tells you where a seen objcet is.
- [+] swap places (transl) "twiddle"
- [+] fire brand (fire, melee attaks deal fire damage)
- [+] iceedge
- [+] lore (div, temporary knowledge from a particular school?)
- [+] icicle (cold, deals cold dam and knocks enemies away)
* [+] chill (ice, 1d3 damage per exposed body part)
- [+] hail storm (ice, big damage in area)
- [+] wall of ice (creates icy wall, hp based on power)
* [+] CRASH in noise() when you swap with your pet!
- [+] if a goblin dodges, you shouldn't get any more attacks.
- [+] armour skill makes armour sustain less damage?
- [+] make orks have higher level tech
- [+] prone on botl (if not asleep/resting) in yellow
- [+] shields not being listed in 'T'akeoff
* [+] why doesn't stickstosnakes show up afetr i read a book?
* [+] why does 'sprint' count as a 'divine power' ???
- [+] make sheilds very good against projectiles
- [+] make smoke just REDUCE vision, not block it.
- [+] noncorporeal should stop grabs!
* [+] don't say 'a javelin is damaged' when you throw it, just apply
the damge
- [+] increase damage bonus with every lore level. +10% each time
(ie. up to 50% at top)
* [+] give accuracy + critical bonus for lore levles too
- [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle]
- [+] Show Pain on botl.
* [+] more staves
- [+] low hitpoint warning for pets (or make them shriek, whine, etc)
- [+] CRITKNOCKDOWN
* [+] FINISH GRIZZLY
- [+] undead should be immune to poison!!
- [+] make code to auto add flags to undead.
- [+] if you ever move a door (ie. airblast), automatically open it.
- [+] young wolf shouldn't be able to open a door!
* [+] You throw a dart at the carpet snake. Your dart misses
you.--More--
- [+] no sprinting while burdneed
- [+] blood should be drawn BELOW stairs
- [+] weilded torch should do 1d4 fire damage (counts as a club)
* [+] The skeleton touches a leather belt then recoils in pain!The
skeleton drops a blessed leather belt.The skeleton puts on a
leather belt.
- [+] don't show "you can cast it at power level xxx" for abilities
* [+] more item randomising
- [+] make grey ooze splatter into acid
- [+] "the vine grabs you" if you walk onto an entangling vine.
- [+] don't start monsters within player's los
- [+] properly randomise sticks to snakes
- [+] stirge
- [+] leech (like stirge but can charge/leap, and slightly more hp /
damage)
- [+] treesnake
- [+] constrictor
- [+] cobra
- [+] stickes to snakes - make caster's weapon revert.
- [+] A something comes into view.
- [+] is invisibility code working properly when you see someone use
the invis spell?
- [+] don't include cosmetic objects in 'you see xxx'
* [+] monsters: don't use spells if you don't have lof.
- [+] pets not following around corners if you move diagonally. fixed a
little.
- [+] summon small animals (2-3 x SZ_SMALL)
* [+] jet of water
- [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc)
- [+] lightning storm (lightbning everyone within los, and more damage)
- [+] summon large animals (SZ_LARGE, horse, bear etc)
- [+] make lamps last heaps longer
* [+] web spell
* [+] spider monstrer
* [+] funnelweb:
* [+] redback:
- [+] if you are wracked with pain, don't clear msg
- [+] check rarity for spiders
* [+] attack/defense mod if there is stickiness in your square
- [+] replace "sticky" with "restrictive"
* [+] make some mosnters start hidden
- [+] adjust spot checks basd on distance
- [+] ensure that attacking stops you hiding
- [+] casting spells stops you from being hidden
- [+] hidden mosnters shouldn't move unless their victim is ADJACENT.
- [+] hidden mosnters shouldn't cast spells, throw missiles, etc unless
their victim is ADJACENT.
- [-] XP CALC
- [+] funnelweb and redback are the same.
- [+] check this is right...... i want funnel web to be worse.
- [+] make hitconfer check in calcxpval take lifetime into account
- [+] ALSO assign an xp rating to each hitconferred flag.
- [+] hardcode this.
* [+] entangle spell
- [+] reveal secret doors if you see them get damaged.
* [+] make askcoords list restrivitce objects
- [+] ACTUALLY make vines not damaged by struggling
* [+] object descriptions, a/an needs to change if showing condition:
"a battered entangling vine"
- [+] wizard levelled up and was prompted for "WISH, GIFT"! shouldn't
happen!
- [+] The human diety reads a blessed scroll of create monster! -- but
nothing happens??
* [+] throw code
- [+] wizard: ask for school specialty at start, from: fire, ice, xxx
? You get this + WILD.
- [+] describe varpower spells
- [+] fix mp cost for varpower spells
- [+] we're not stopping running at staircases anymore for some reason.
- [+] CHARGE ability (like swoop but don't return to original positino)
- [+] need to honor f_canlearn when displaying new skills to learn!
- [+] ai: if we are going to player's last known loc (via targetcell),
abandon if we can SEE the player!
- [+] make shatter() into a function
- [+] oil potion makes oil puddle whan smashed
- [+] make flammable objects be able to convert to others
- [+] replace 'magic item usage' with 'channeling'
- [+] a cloud of darkness descends. this is a *cursed* wand of light.
- [+] spiders shouldn't be able to be stuck in a web!
* [+] spells should be able to have MULTIPLE schools.
- [+] don't bleed into walls
- [+] in @M, use colours to show which spells are too hard so far (ie
cost > maxmp)
* [+] in @M, use schools that you know
* [+] after loading game, barbarian is getting an extra attack?
You miss the eyebat. You punch the eyebat.
- [+] show objects on top of stairs
- [+] stuck mosnters must pass a saving throw to follow you up/down
stairs
- [+] genericise: trytomove(lf)
* [+] add more snakes
- [+] undead can't eat or drink? or MOST undead can't.
* [+] why can MONSTERS shoot webs through things? (but I can't)
- [+] barkskin - doesn't reduce max mp enough?
- [+] The skeleton touches a fuming aqua potion [tried] then recoils in
pain!
The skeleton drops a blessed fuming aqua potion [tried].
The skeleton drinks a fuming aqua potion!
- [+] why can't i use abilites anymore?
- [+] infinite loop bug due to ai only having one ignorecell.
- [+] make sleet storms rust all armour
- [+] make a kind of walkdam that hits armour
- [+] add this as well as walkdam for: acid, fire, water
- [+] Takeoff isn't prompting properly. only showing weapons!
* [+] waterproof obs (ie cloak)
* [+] walkdambp doesn't hurt body if you have a cloak
NATURE SPELLS:
- [+] mending, heals 1d6 damage
- [+] spark
- [+] purify food
- [+] sticks to snakes
- [+] calm animals (power_d4 hd)
* [+] charm animal (works on one animal up to power hit dice, temporary)
- [+] airblast
- [+] barkskin (power +2 AR, firevuln, ongoing)
- [+] soften earth (makes ground into mud)
- [+] warp wood (damages wooden objects)
- [+] repel insects
- [+] reduce poison
- [+] web
- [+] windshield
- [+] call lightning, air
- [+] resist elements, ongoing
- [+] passwall
- [+] poisonbolt
- [+] quench (puts out a fire)
- [+] sleet storm (lowers movement, vision)
- [+] healing
- [+] cure poison
* [+] calming scent
- [+] dig
- [+] entangle
- [+] levitate
- [+] flamepillar
- [+] hailstorm. like sleetstorm but hurts more. power d 6.
- [+] burning wave
- [+] gaseous form
* [+] knowledge skills:
* [+] force makespellchoicelist() to show spells in level order.
* [+] druid
- [+] check OBJECT rarity list (dumplev)
- [+] fix bug where heaps of books suddently appear from dlev 3 onwards
- [+] gain skills on level up for some jobs
- [+] f_levspellschool, v0=lev, v1 = school or ANY - select one
from that school
- [+] make monsters heal faster when resting
- [+] make pet rest when you do
- [+] allow 'R' to heal allies
- [+] F_RESTUNTILALLIES
- [+] mindless/animal mosnters won't throw things
- [+] announceflag for attrset not working
* [+] feeblemind spell - reduces intelligence to ANIMAL.
- [+] ai: if we are carrying too much, drop something
(non-weapons/armour first)
- [+] teleport spell should teleport any adjacent allies too.
* [+] new 'C'hat commands:
* [+] change 'resist elements' potion to 'rum'
* [+] notify when pet is low on hp
- [+] why could a pirate use a biuckler?
* [+] genericise usage of canhaveobmod!
- [+] armour mod: blooodstained. adds scary.
- [+] CRASH when you have two weapons and catch a glowbug in your flask.
* [+] potion of restoration onto frozen axe:
- [+] slow spell repeated message: The brown snake looks sluggish. The
brown snake is now moving slower.
- [+] make you only hear one thing each turn ?
- [+] always draw impassable objects on top
- [+] special ash
- [+] exploding powder - explode in radius 1 around player
(including player)
- [+] concealing powder - create smoke cloud radius 3 around player
- [+] redo levelup logic.
- [+] trigger LevUp when you have 'newskillready'
- [+] announce when you gain level.
- [+] can't gain more experience when LevUp!
- [+] only update maxhp/mp from new level after you train
- [+] diety can't use abilities. fixed.
* [+] when i exit from@S output, statbar isn't redrawn
* [+] make SKILLS page show which skills you can learn.
- [+] In @s, downline isn't showing the title on the second page of
SKILLS...
- [+] show POWER in @M spells page
- [+] ###---
- [+] show cost RANGE in @M for varpower ones
- [+] need getspellcosttext(spellid, power, buf) function
- [+] 25-62MP
- [+] leftover rubbish chars at end of ---- in doheading()
- [+] mosnters should follow you up/down stairs
* [+] different poison types
- [+] implement tremorsense (like darkvision butrun can't be blinded
etc)
* [+] implement HIDE ability
* [+] Thief job
- [+] if you walk into a room and every cell is lit, reveal it all.
- [+] auto-learn jump ability with high athletics skill
* [+] secret doors
- [+] items to spot secret doors
- [+] gem of seeing
- [+] ENHANCESEARCH
- [+] F_SEEINVIS
- [+] spell: "reveal hidden"
- [+] shows secret doors
- [+] removes invisibility
- [+] wand of detect hidden
- [+] ... casts the spell