you are able to cook.
- [+] then greatly increase chances of getting sick from raw meat.
- [+] and decrease nutrition for raw meat again
- [+] wizard classes should get random spells on level up
- [+] Interact (with adjacent things)
- [+] add new command
- [+] bookshelf
- [+] wardrobes (contain clothes)
- [+] open barrels
- [+] computers
- [+] only show "it currently contains..." for containers which you
have opened.
- [+] F_BEENOPENED.
- [+] some barrels are randomly jammed
- [+] change jam to be strength check.
- [+] change skillcheck roll - now only 1-50
- [+] monsters shouldn't cast lethargy if you're already exhasted
- [+] lethargy should cancel rage.
- [+] change spellbooks - always id them but you might not be able to
read them.
new vaults:
- [+] goblin nest
- [+] orc fort
- [+] add nonausea rather than nosmell sometimes.
- [+] rats should eb able to smell, but not get nauseated.
- [+] fix triumph pleasure for bjorn. must be no monsters within
LOF... or within radius ?
- [+] and make it very low piety gain.
- [+] remember which level we got flags form
- [+] flag_t -> fromlev
- [+] announce this in getflagcourse
- [+] undead qualities
- [+] no criticals
- [+] don't naturally heal
- [+] don't breath
- [+] drainlevel(fromlf)
- [+] check for dtresist necrotic
- [+] fitness saving throw (difficulty is 100 + fromlf's level*6)
- [+] call loselevel()
- [+] loselevel()
- [+] announce.
- [+] drop maxhp.
- [+] adjust hp appropriately
- [+] lose any flags where >fromlev is too high.
- [+] handle monk f_hasattack specially.
- [+] getmonkdr(level)
- [+] getmonkattacks(level)
- [+] keep track of what stats we gained and lose them again.
- [+] TEST level drain with cursed xp pot
- [+] TEST level drain with stats...
- [+] prevent drinking when wearing full-face masks like gas
mask/football helmet
- [+] implement f_COVERSFACE.
- [+] add it to objects.
- [+] check it when doing caneat() candrink()
- [+] up their AC bonus too
- [+] large scorpion
- [+] hellhound
- [+] large primalities
- [+] new vault flag: usehabitat:xxx
- [+] means "set the habitat of all vault cells to xxx"
- [+] real_getrandomob() should be given a CELL, not MAP.
- [+] getrandomobofclass() should be given a CELL, not MAP.
- [+] use CELL habitat to determine random obs
- [+] apply to caves
- [+] vault scatter: ignore locked cells (ie. reusable ones)
new vaults
- [+] dualroom
- [+] sauna - vhot!
- [+] pentagram and demons
new pionic spells
- [+] chi bolt - low dam ranged attack 1d4
- [+] chi strike (l4) - add 1d4 explosive damage to melee hits
- [+] make more shops let you donate
- [+] bookstore
- [+] jewellery store
- [+] rename blood hawk to hunting hawk
- [+] offering a bribe to creatures should make them move likely to
helkp you, AND reset the "auto don't help' flag
- [+] change "get lost " message to "get lost, <racename>" if your race
is different.
- [+] sayphrase() needs a new arg: lifeform_t *talkingto
- [+] colours for spell effect.
- [+] eg. "the flame dart hits xxx" should use CC_BAD
- [+] muddy room - mud should be immutable.
- [+] maybe change rage - you lose control totally and just attack
anything in sight?
- [+] do it.
- [+] don't train when enraged
- [+] don't hear sounds when enraged
- [+] RAGE effects: strength bonus, accuracy bonus, infinite
stamina, never flee,
- [+] fix bug in skill point calculation
- [+] CRASH - someone got their turn BEFORE the player!
- [+] new poisontype field - contracttext
- [+] hecta's pray effect not working.
- [+] adjust food poisioning check difficulty based on food age
- [+] check OBHP percentage of max.
- [+] >= 80% obhp means -30% difficulty check
- [+] ring of unholiness should confer dtvuln holy.
- [+] fix colour on spellclouds
- [+] fix bug with spellclouds not affecting centre cell.
- [+] if you are frozen, heat does extra damage and cold does none.
- [+] when frozen, lessen chance of melting.
- [+] reduce bite damage of snakes
- [+] balaclava should protect from gas
- [+] make some floor types (like carpet) be multicoloured
- [+] celltype->altcolour
- [+] if altcolour is not C_NONE then use it where (x + y) % 2 is
true.
- [+] don't regain stamina while training
- [+] random text in shops - sayphrase needs to cope with lf == null
- [+] done
- [+] fixed - hecta gifted me with a bamboo staff, but i'm inept with
staves!
- [+] BUG: in vault.vlt.
- [+] "30% chance of door" really means "otherwise empty cell"
- [+] need to be able to say "else put a wall here"
- [+] so change:
- [+] c:type:what[:pct]
- [+] to this:
- [+] c:type:what[:pct][:alttype:altwhat]
- [+] vlegend_t needs
- [+] enum VAULTTHING tt2
- [+] char *what2
- [+] they default to VT_NONE, NULL
- [+] secret doors should take their fake wall type from the vault spec
- [+] vaults need f_celltypeempty/solid flags
- [+] add via: solid:xxx in vault def
- [+] recycler
- [+] donate anything
23-24!
- [+] highest TR is about 20.
- [+] gettrrange()
- [+] F_NUMCONVERT xx text
- [+] if stack reaches xx in number, change to obtype "text"
- [+] eg. blood splash x 5 = large pool of blood
- [+] troll blood -> healing potions
- [+] shopkeepers
- [+] remove F_SHOPITEM - this was used for old shop code.
- [+] "shop" vaults
- [+] village map (but leave the habitat for use in bazaar vault
etc)
- [+] vault: support for random monsters - use "random" for name
- [+] vault flag: f_monsstayinvault
- [+] vaults for goblin caves
- [+] pool of water
- [+] small hut
- [+] brick wall
- [+] trapped corridor
- [+] pranksters dust (makes everyone invisible)
- [+] allow c_random for animations
- [+] random chance of different kind of wallfloor when creating
dungeons
- [+] brick wall (slightly weeaker, orange/red)
- [+] metal wall
- [+] wood ??
- [+] instead of using map->habitat->solidcelltype, use
getsolidcelltype(map)
- [+] this checks map for f_solidcelltype
- [+] if not there, uses map->habitat->solidcelltype.
- [+] vaults should be able to inherit empty/solid types from map
- [+] x:cell:EMPTY
- [+] ....but only about their home level!
- [+] f_startmapid
- [+] cave entrances should make noise
- [+] drip
- [+] echoing
- [+] cope with multiple f_makesnoise flags on objects (pick one
randomly)
- [+] showlfstats skill display bug - "MORE" keystroke doesn't fall
through.
- [+] You impale the chicken! The chicken turns to face you.
- [+] shouldn't turn to face if your'e dead!
- [+] nulllify spell not populating seenbyplayer
- [+] crash in createfakes()
- [+] animals hsould still walk onto SHARP objects.
- [+] secret doors showing up as empty remembered cells when you look
away from them (and have lowish cartography)
- [+] don't call remove_deadends on vaults.
- [+] when walking down stairs to level 3:
- [+] ERROR - stairs link to existing map 3('dungeon L2 (id #3)',
depth 2), but it has no free stairs
- [+] ie. Level 3 has too many up staircases ? no. 3 on all of them.
- [+] FIXED. countstairs() was including too much. now using
countmapobs(map, stairtype) instead.
- [+] The goblin rogue a half-sized leather armour (null).
- [+] fixed crash when you cast rage on someone who is eating.
- [+] crash when catching a glowbug in a flask
- [+] use canreachbp code when selecting armour to damage as well....
ie newt can't hit your helmet!
- [+] BUG: "tunnel doing up" went down!
- [+] for monsters:auto raise lf stats to match starting weapons
- [+] crash in aigetspelltarget() for CLIMB
- [+] should deactiveate all spells on polymorph
- [+] allow usage of FEIGNDEATH while prone.
- [+] make coprses non-stackable
- [+] CRASH in animatedead
- [+] shouldn't say 'you attack x from behind' if x has awareness
- [+] create 1 vault
- [+] must have:
- [+] ot_playerstart
- [+] ot_stomachexit
- [+] swallow ability moves to there
- [+] when the lf dies, destroy the map
- [+] TEST
- [+] mover object
- [+] moves you if you didn't move
- [+] f_pushdir, v0 = dir
- [+] invisible obejct
- [+] may flip them horizontally
- [+] chance to dodge the swallow
- [+] rename green ooze to "sizzling slime"
- [+] don't put traps on top of stairs!!
- [+] remove unneeded extra redraw when changing levels.
- [+] make ']' show object AR bonusss
- [+] don't even call precalclos during endgame.
- [+] don't say "you see footprints and footprints here"
- [+] break grabs when you fall unconscious
- [+] bug - ring of wounding not working.
- [+] crash in free(npcnames) !!!!! pointer being freed was not
allcoated
- [+] grave sprite
- [+] glutworm
- [+] swallows you
- [+] eats all objects
- [+] canines/felines should die from chocolate
- [+] weapons with multiple damtypes
- [+] at adept skilllevel, you can change type (but only with
weapons you're pr_skilled or higher in)
- [+] f_altdamtype xx. must have altdam for normal dam too.
- [+] fire primality
Hecta effect: - [+] necrotic beam
- [+] fix bug with beggars
- [+] prompt before giving money in C-d
- [+] bug: allies walking into walls
- [+] make your own race / job more likely to kjoin for less gold
- [+] new rarity level: rr_frequent ?
- [+] add it
- [+] in swamp, aquatic things are freqentut
- [+] swamp level:
- [+] createdungeon (but use different h_habitat. how do i do this?)
- [+] then remove all doors
- [+] then change all walls into deep water
- [+] add rarity for monsterss
- [+] add rarity for objects
- [+] add f_nolink for vaults which aren't linked to rest of map
- [+] fishbowl vault
- [+] change misisle dam calculation - add firespeed rather than
multiply.
- [+] forced shops at certain level intervals
- [+] implmement RT_OBJECT text=objectname
- [+] add buildings at levles 2-4 5- 7 8 - 10 11-13 14-16 17-19
20-22 23 -25
- [+] split sp_ally_attack into attack and attack_unseen
- [+] base throwspeed on throwin gskill, not strength
- [+] make it much harder to catch thrown missiles
- [+] try to place RT_OBJECTs in rooms
- [+] maybe get rid of sound lowering for 's'lowwalk. this should be
based on stealth!
- [+] don't let you walk down stairs if there's an impassable object in
the way.
- [+] king piranhas shouldn't leap out of the water!
- [+] don't catch thrown missiles if it will burden us
- [+] in @@, show "accuracy" as a seperate line, not with your weapon.
- [+] higher chance of learning psionics on level up.
- [+] fix up monster hp - too easy to kill most things in one hit with
dam = 4-12, 2 attacks (ie. l6 monk)
- [+] dump out all mosnters sorted by hit dice (show avg hp)
- [+] fix them up
- [+] vault->entertext - ie "you enter a dining room"
- [+] make random monster generation go by hitdice AND rarity rr_.
IGNORE rarity value.
- [+] start with hd = level. sometimes incrase
- [+] remove all rarity values from monsters
- [+] disorient might need to be higher level than stun
- [+] make psionic spell mp cost be level, rather than level^2?
- [+] ai bug:
- [+] .oO { looking for a target . }
.oO { found an enemy target - lfid 256 (human) ! }
.oO { default - moving randomly }
- [+] reduce cost for higher levle spells agian.
- [+] prevent player from eating an ice sheid!
- [+] bug when eating from the floor with multiple food items there
- [+] assassin's blink spell - teleport behind and facing someone.
medium level translocation.
- [+] make "chunk of roast meat" be "chunk of roast goblin meat"
- [+] and base nutrition on corpse type
- [+] highlevel sixth sense should let you turn to face it
* [+] add prompt text to msg hist:
- [+] sixth sense should only pick up hostile monsters
- [+] need a good reason that wizards can't wear armour.
- [+] if isplayer(), failure chance depends on any arm/shield
penalties
- [+] show f_impassable in describeob()
- [+] no walking backwards/sideways if you're stuck in a web/vine. can
only turn.
- [+] objects for protection:
- [+] eyeglasses (+vision)
- [+] safety goggles
- [+] ERROR - stairs link to existing map 0('the surface(0,0) (id #0)',
depth 1), but it has no free stairs.
- [+] when we restart map regeneration, must first REMOVE
referenecs to this map!!!
- [+] implemented.
- [+] fixed bug with sleep interruption
- [+] You attack the helpless the dwarf monk! You flatten the dwarf
monk!
The dwarf monk loses consciousness. damage's robe protects it.
- [+] add stamina cost to other abilities
- [+] add descriptions to lore skills
- [+] make athletics skill give you more stamina?
* [+] monstesr stopping fleeing when they can't see player
- [+] fix bug with redrawing when you open a door.
- [+] fix bug where pleasing gods during killflag() causes crash.
- [+] creatures >= 2 sizes bigger than you should block los
- [+] explosion trap should kill doors
- [+] redo getflags to take more args
- [+] genericise isprisoner code
* [+] jimbo's lair needs a portal back to dlev1
* [+] linkexits still not working properly. fixed i think!
- [+] rename some spells
- [+] make max spell level be 6 (to match up with pr_master)
- [+] modify mp per level by sk_sorcery/2
- [+] bug: reading a blessed scroll of manding does nothing!
- [+] improved crit effects
- [+] bash
- [+] slash
- [+] fire dam cauterises slash wounds
- [+] cold dam fixes brusing
- [+] add crit chance to weapons. (default of xxx)
- [+] stirges shouldn't be able to latch on if you have no exposed body
parts
- [+] 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
* [+] DIETY is slow.
- [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0
again!!!
* [+] ALLOW ROTATING OF VAULTS
- [+] BUG: dig X only goes 1 cell.
- [+] add a U shaped turn vault.
- [+] change wehre i apply HADRNESS for lfs! - don't use
adjustdammaterial cause we inherit there
- [+] make obchance/thingchance part of habitat_t
- [+] make sense surroundings take cartography skill into account
* [+] BUG: rotated at() etc not working.
- [+] if you fail stealing, the target should get angry!!!
- [+] make sure to redraw stat bar when mind scan finishes.
- [+] villages
- [+] initial code
* [+] town gaurds. stand next to the gate
- [+] potion shop vault
- [+] implement
- [+] potion shop isn't getting potions!!
- [+] and getting wrong floor type.
* [+] stop shop from always being at the top left.
- [+] make sure its x/y arent too close to edge of map (at
least 5 away)
- [+] vault param. f_mapmargin, 5
- [+] make calcroompos take x/y margin
- [+] don't put auto obs inside vaults
- [+] town walls
- [+] more kinds of shops
* [+] signs outside shops
- [+] bug with ai swapping between firearms and twohanded weapons.
fixed.
* [+] make _CELLS_ have habitats!
- [+] move vaultchance to a habitat param instead of
getvaultchance()
* [+] shopkeepers (special race)
village things:
- [+] barrels,
- [+] guards,
- [+] statue
- [+] thrown objects should still take damage if blocked via a shield
* [+] hardness (must do dam >= xx to hurt)
* [+] WATER spread mods
* [+] very powerful spells have casttime
- [+] allow linkstairs() to take a parameter rather than always jsut
searching for the other end
- [+] when digging holes, only use getrandomadjcell if there is an lf
in the way. and then use WE_NOLF. clear out solid cells
- [+] show armour EVASION penalty in describeob
- [+] teleportation trap. You reintegrate inside a solid object! You
die.--More--.
- [+] riverroom vault
* [+] water: swap { and ~ again??
- [+] make "large puddle of water" evaporate more quickly
* [+] special glyph case: for deep water
* [+] 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)
- [+] 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
* [+] vaiultlegend_t
* [+] vaultdef_t
- [+] implement addlegend()
- [+] implement addvault()
- [+] function to read in a vault from a data file
- [+] vs_noid
- [+] vs_loadingmap
- [+] vs_loadinglegend
- [+] vs_loadingflags
- [+] vs_loading
- [+] load all vaultdefs in at start
- [+] change createroom to calculate the posistion
- [+] for each room, give a %chance of haivng a vault. (based on
habitat?)
* [+] createvault(map_t, roomid?, char *vaultid)
- [+] mapdata with letters
* [+] MSG up vault errors on load.
- [+] Select job _before_ generating first map.
* [+] make addob() handle door flags:
* [+] addob() improvements
* [+] wish bug: first object goes in pack, rest on ground.
- [+] genericise getroomedge()
- [+] finish 'autodoors' (at the end, add doors if none already done)
- [+] at(x,y):type:what:pct -> f_vaultob / vaultlf / vaultcell, v0=x,
v1=y, v2=pct text=what
* [+] "what" can be:
* [+] scatter:y1:x2:y2:what:chance%:howmany
* [+] some way to make the @map bit just say 'random room at least 2x4'
- [+] make "scatter" able to take range instead of count.
- [+] make "scatter"able to take x% instead of count.
- [+] upsidedown chars no longer working with winch()
- [+] ensure no DUPE ids
- [+] make legend take percentages (optional)
- [+] make "at" take negative values...
OPTIONS
- [+] autodoors - put doors on edges like with normal dungeon rooms.
* [+] autopop - fill with obs/monsters like normal rooms
VAULT FILES
- [+] flooded room
- [+] labyrinth
- [+] vault (lots of money, locked secret doors)
- [+] monster zoos (money and monsters)
- [+] diningroom - lots of tables and chairs
- [+] circleroom
- [+] pillared room
- [+] glass pillared room
- [+] cockatrice lair (statues)
- [+] traproom - need "random trap". need OC_TRAP.
- [+] BUG: piranhas walking out of water sometimes.......
- [+] add startatt x-y rather than just a bracket. use text field.
- [+] make teleport auto move away form lfs
- [+] add minotaur