- [+] generic object: "generator"
- [+] specal text: generator:steam for vault defs
- [+] show flag sources in io.c
- [+] TEST
- [+] remove from MONSTER view.
- [+] paladin shoudl start with first aid skill
- [+] disrupt undead should do heaps more damage - because right now
you'd just use smite evil
- [+] increase disrupt undead from "2-6" to more.
- [+] reduce smite evil's maxpower
- [+] problem: blessed buckler is essentiall the same as tower shield
cause it doesnt get hurt!
- [+] make bigger shields provide more protection
- [+] change F_SEEINDARK so that v1 specifies whether a bright light
blinds you
- [+] getting WAY too many piles of ash from burnign corpses
- [+] combine into "huge pile of ash"
- [+] change food decay
- [+] instead of food losing hp, increase its F_DECAY level
- [+] if F_DECAY too high, it's tainted. >= 50
- [+] ie. update isrotting()
- [+] dramatically lower food hp.
- [+] where does corpse F_OBHP get added? from obclass.
- [+] when we make a corpse override its obhp with the original
mosnter's maxhp.
- [+] when i fix unreachable areas, change all the walls/floors in one
of the unreachable areas!
- [+] ie. change every solid non-vault cell which is adjacent to an
unreachable one.
- [+] test,,,
- [+] make inspection check more difficult
- [+] ohther sound types which monstesr shouldn't turn to watch:
- [+] NC_ENVIRONMENTAL (building, stairs, etc)
- [+] create food should neve create poisonous food.
- [+] bug: giant ant zombie not attacking giant ant
- [+] change table symol to PI
- [+] replace footstool with chair
- [+] allow reusable cells in vaults
- [+] slippery floors should make pushing easier
- [+] when checking stairs i found "Pete footprints"
- [+] new monsters:
- [+] polar bear
- [+] owlbear
- [+] bug: sleeping monsters never waking up.
- [+] "random good weapon" wish broken. fixed now.
- [+] cope with med/small/large dancing weapons
- [+] generice code to check baseid instead of raceid
- [+] handle automatic generation - need to populate:
- [+] select an appropriate object (rarity freq / common,
uncommon, rare)
- [+] copy from obejct to lf:
- [+] OBHP
- [+] SIZE
- [+] OBATTACKDELAY
- [+] bug: always getting 'twisted branch' for small dancing weapon
- [+] bug: crash in attackcell. nweps = 0
- [+] replace thin walls with unicode symbols
- [+] glass
- [+] wood
- [+] metal
- [+] getcellglyph() looks at surrounding cells if required
- [+] too slow?
- [+] attacking helpless undead shouldn't count
- [+] differentiate EXTRADAM from WOUNDING.
- [+] wounding = add damage to ALL attacks
- [+] EXTRADAM = add DIFFERENT type of damage
- [+] psionics on levelup
- [+] make this a "select from iq/10", not a select from any
- [+] if poison needle trap misses, place it on the ground.
- [+] no nauseated effects while asleep.
- [+] if something runs out of view adjacent to you, say "xxx moves
behind you"
- [+] ashkari bug:
- [+] when getting enraged by the sight of something, f_rage runs
out a few turns before f_aicontrolled. should be the same!!!
- [+] enable it
- [+] adjust colour enum definitions
- [+] adjust usage of colour enums in *.c
- [+] redo celltype colours
- [+] redo all lf colours in data.c
- [+] redo all object colours in data.c
- [+] fix potioncolours etc
- [+] get background colours working again.....
- [+] You walk down the staircase... Invalid racename 'random' in
vault monsterzoo
- [+] gaining/losing god bonus - only announce first one you lose/gain!
- [+] knockout bugs:
- [+] "you knock out the pixie"... then there' s pixie corpse.
- [+] shouldn't be able to KO robots!
- [+] don't say "you kill baba yaga's hut", say "you defeat xxx"
- [+] alignment change
- [+] should become evil if you worship hecta
- [+] ...and good if you worship glorana
- [+] -15% xp forever.
- [+] shoudl become prone when hit by falling door trap.
- [+] TEMPERATURE
- [+] habitat->basetemperature
- [+] VCOLD = <=0
- [+] COLD=1-11
- [+] COOL=12-18
- [+] AVERAGE = 19-22
- [+] WARM=23-29
- [+] HOT=30-35
- [+] VHOT=36+
- [+] getcelltemperature()
- [+] start with habitat temperature
- [+] adding/removing/moving nearby fire makes cells hotter
- [+] adding/removing/moving nearby blizzards, hailstorms, ice
etc make cells cooler
- [+] getlftemp()
- [+] start with getcelltemp
- [+] adjust for warm/cold blood, resistances, etc
- [+] hot effects
- [+] stamina is used more quickly
- [+] ice melts very fast (turns to water)
- [+] food goes bad very quickly
- [+] things made of ice take damage every turn. in
startlfturn() ?
- [+] cold effects
- [+] exposed body parts give penalties to accuracy
- [+] -2 to -4 per exposed body part (ie. max -14, -21, -28)
- [+] no effect on furred things like bears. make them
cold-resistant or immune.
* [+] medium chance to shiver... chance to drop weapons
* [+] low chance to catch cold (check cold damage code)
- [+] nothing ever melts
- [+] food never goes bad
- [+] water freezes( turns to ice)
- [+] things made of fire take _extra_ damage (in attack.c)
- [+] Show YOUR temperature in @@
- [+] Show other's temp in @@ if our lore is high enough
- [+] notify when temperature changes.
- [+] just like igniting other fires, fires should deal fire damage
to surrounding cells
- [+] heat/cold should affect SURRONDING cells too.
- [+] maybe: instead of checking cell temp every time, recalc cell
temp whenever:
- [+] create cells with habitat base temperature
- [+] we add a new object
- [+] we move an object
- [+] we remove an object
- [+] SAVE cell temperature now.
- [+] show cold/hot in statusbar.
- [+] cold announcement not working.
- [+] change glaciate:
- [+] create "unnatural coldness" object
- [+] cold snap: (l2)
- [+] create "unnatural coldness" in a radius
- [+] heatwave (l2) or "oppressive heat"
- [+] create "unnatural heat" in a radius
- [+] add fur coats to creatures (ie. resistcold)
- [+] ice cave level
- [+] walls = ice.
- [+] floor = metal
- [+] creation similar to swamp:
- [+] make dungeon
- [+] change solid walls to ice
- [+] limit room size to small.
- [+] floor = snow
- [+] temperature
- [+] base temperature is cold
- [+] ice-themed monsters
- [+] ice-themed objects
- [+] mosnter facing being set to -. debug with forced break. fixed.
- [+] fix territorial monster crash.
- [+] CRASH in celldangerous when undead avoiding holy circles.
- [+] alternate text for 'ineffectually'
- [+] need an announce for bjorn's ecstatic ability (ehavy blow)
- [+] whenever you gain a new godbonus, give you a grace period
- [+] change selectweapon so i can specify valid choices
- [+] have multiple F_SELECTWEAPON flags, v0 = object. (or text?)
- [+] getflags() then pick from these.
- [+] hwen gunpowder inside a barrel explodes:
- [+] say "the barrel explodes", since that's what you can see
- [+] explosion should actually work!!!
- [+] lethargy should drain lots more stamina now that exhaustion
doesn't prevent attacks
- [+] thrown knifes not doing enough damage.
- [+] fireat(): dam = throwdam(2) + speed(2)
dealing 3 damage
- [+] maybe increase throwdam to 4.
- [+] check otehr throwmissiles too
- [+] 'G' isn't remembering direction anymore
- [+] beginner athletics: give skill where misisng in a melee attack
doesn't cost stamina
- [+] klikirak shoudl like ALL obejct desctruction, but PREFER via fire.
- [+] insects shoudl ahve infinite stamina
- [+] replace DIECONVERT planks of wood type code
- [+] instead, materials have dieconvert values based on damage.
- [+] getsmallbreakob(material,damtype)
- [+] getlargebreakob(material, damtype)
- [+] when an object dies, lookup its material and obejct size
- [+] ie. large wooden objects turn into "x planks of wood"
- [+] small ones turn into "x shards of wood"
- [+] then remove TODO: code from changemat() in objects.c
- [+] allow for hardcoded getsmallbrekaob, getbigbreakob
- [+] F_BREAKOB, v0=damtype, v1=howmany, text = what
- [+] remove specific code, like fire damage = pile of ash.
ice+bash = shards, etc.
- [+] can use shards/planks of wood as (poor) weapons.
- [+] jackhammer shoudl be tech, not tool./
- [+] digging tools should make noise
- [+] remove freezing touch spell/scroll
- [+] better listen check when asleep - slithering should very rarely
wake you up
- [+] use adjusted volume value based on sleeping etc.
- [+] breaking locks by bashing should now work.
- [+] I'm often getting "The hollow tree seems to be blocked." when
going to the sylvan woods.
- [+] there is a tree in the way!
- [+] fixed.
- [+] bug: evil players not getting xp for killing helpless. fixed.
- [+] bug: pullobto() not doing correct impassable check.
- [+] another bug: insylvan woods, stairs were on top of water!!!
- [+] ERROR - couldnt find pos for down stairs while making habitat
forest.--More--
- [+] repairing should make noise too
- [+] new flag - USENOISE
- [+] EATCONFER on clove of garlic isn't working
- [+] it's because i'm only checking this if we have MUTABLE.
- [+] use EATMUTATE instead for mutations. then eatconfer works
with everything.
- [+] more crush bugs
- [+] You crush some pieces of broken glass underfoot.
You see 28 pieces of broken glass here.
- [+] You crush some pieces of broken glass underfoot.
You see 28 pieces of broken glass here.
- [+] anything with natural flight sohuld still make noise when flying.
otherwise it's too powerful.
- [+] "wing flapping" . NV FLY
- [+] NOISETEXT NV_FLY
- [+] magical flight can still be silent.
- [+] make how high you can fly depend on the "Flight" or "Natural
Flight" skill.
- [+] F_FLYING v0 = height.
- [+] without this skill, flight is dependant on spell power.
- [+] assign sk_flying to races.
- [+] remove F_FLIGHTEVASION from races. skill now does this
instead.
- [+] validaterace:
- [+] canwill ot_a_flight = need flight skill
- [+] each rank = +1 size level of height.
- [+] if you get the skill while already flying, adjust the flag
- [+] fall from flying if burduned.
- [+] skill also affacts how much your evasion while flying is
boosted.
- [+] this extra EV bonus from flight sohuld only work against
NON flying creatures!
- [+] 5 EV per rank
- [+] have a differnet fly ability
- [+] ability = flight or fly (use flying skill for height)
- [+] implement
- [+] replace monster flight with ability.
- [+] spell = enchanted flight (use spell power for ehgiht)
- [+] check all occurences of FROMSPELL, cope with FROMABIL too.
- [+] don't regenerate stamina when doing natural flight.
- [+] ai: if flying and no stamina left, stop flying.
- [+] ai: only start flying if we have >= 80% stamina.
- [+] how did a nutter miss a mammoan from point blank range?
- [+] the nutter is throwing a peanut - acc = 64, speed = 2
- [+] maybe fixed now.
- [+] felix should like using poison.
- [+] when asking whether you accept a god's offer, give a '?' option,
to give help on that god.
- [+] also have F_GODDECLINE text.
- [+] pipes of peace - calms everyone around you. charges.
damreduced.
- [+] reduce sliperriness of blood now that we get lots more.
- [+] restrict hiscores to scores of >= 1.
- [+] (and remove all current entries with score of 0)
- [+] modifications:
- [+] make levels more sparse
- [+] make "things"more common
- [+] make objects more common (as opposed to lfs)
- [+] monsters with territorial CAN approach if you're sleeping/ko
- [+] monsters with territorial don't get angry if you're sleeping/ko
- [+] CRASH when i tried to dismantle something.
- [+] speed up map generation.
- [+] most time is in createhabitat.
- [+] calcposandmakeroom(). speed this up.
- [+] linkexit()
- [+] FIX reachability algorithm
- [+] unless we can make a dircet path, REMOVE all other code.
- [+] instead, use modified a*
- [+] distance to dest roomm, not dest cell
- [+] = distance to centre of dest room
- [+] cell is okay for pathfinding
- [+] adjcellokforreachability(cell) = true
- [+] cell is the finish spot if:
- [+] it is in a different room and
adjcellokforreachability(cell) = true
- [+] i THINK this is working now.
- [+] f_startobwepsk ... text = "common" not working. fixed.
- [+] need a potion and venom sac
- [+] make more things drop venom sacs - snakes etc
- [+] F_EXTRACORPSE
- [+] operate the venom sac ?
- [+] can do this with first levle chemistry
- [+] different kind of venom - blindness
- [+] "blue venom sac" vs "purple venom sac"
- [+] combiesn to potion of blindness
- [+] more amulets
- [+] common
- [+] of bravery
- [+] of light (common)
- [+] of minor protection (common) (=5 AR
- [+] energy absorbtion (absorb explosions, then pump them out)
- [+] uncommon
- [+] injury prvention (instead of ring)
- [+] rare
- [+] or major protection (not common) +10 AR
- [+] had a missing eye. drunk a healing potino.
- [+] Your head grows back! Your injured head has healed.
- [+] objects with positive F_BONUS should never start cursed
- [+] (in addobject)
- [+] territorial monsters talk when you are approaching their
threshold (but not within it)
- [+] put this in ai_talk()
- [+] if someone almost at territorial range:
- [+] make f_noisetext v2 be SP_xxx. if it's set, just say
this instead.
- [+] it not, N_TERRITORY_APPROACH
- [+] if we can talk, SP_TERRITORY_APPROACH
- [+] possibilities:
- [+] stay away!
- [+] keep back!
- [+] get away froma me!
- [+] don't come any closer!
- [+] that's close enough.
- [+] keep your distance, stranger!
- [+] out of my way!
- [+] test with giant and
- [+] test with insane humanoid
- [+] make territorial creatures not walk too close to things,
unless they are attacking or fleeing
- [+] in willmove(), fail if it is too close to something
- [+] ...unless we have a target lf
- [+] ...or we are fleeing
- [+] jumping when woozy will go to a random cell
- [+] fix autoshortcuts to include starting spells
- [+] still bugs with canreachbp - "The giant rat critically scratches
your wizard hat."
- [+] zombies shoudln't be able to talk.
- [+] allow pets to "cheat" to find player's lcoation.
- [+] need some kind of limit on zombie army creation
- [+] no stairs
- [+] areallies() on two pets returning false
- [+] psychic shove
- [+] push off something, or push them away
- [+] l2 mental
- [+] pushback power+1 cells (max power 3)
- [+] different god message for first prayer.
- [+] fix crash during swapplaces()
- [+] sacrifice of masterwork weapons should work better. shoddy
should be worse.
- [+] bug: shops don't work anymore
- [+] change lessen poison - power always goes to 1
- [+] replace description "spell's power is boosted when cast outside"
with "boosted when cast in a forested area"
- [+] minor healing problem. "at lest 2hp per power" but mxpower 10.
should be maxpwer 5
- [+] wish for 'protection' should give something you can wear without
penalties.
- [+] locate object should give a message when none are found.
- [+] find any four corridors in a square
- [+] where one of them has 4 exits, and the rest have 3
- [+] fill in the ones with 3
- [+] VALGRIND.
- [+] reduce ID costs at shops
- [+] necromancer mods
- [+] start with a dagger, since you don't get early attack spells
- [+] start with limited short blades skill
- [+] start with animate dead (now a level 1 spell)
- [+] increase TR of ice wraith.
- [+] replace strrep function:
- [+] strrep(&mystring, find,replacewith)
- [+] code:
- [+] char *strrep(char **mystring, char *x, char *y)
- [+] char *temp
- [+] temp = dostrrep(x,x,x)
- [+] free(*mystring)
- [+] *mystring = temp
- [+] flag loop in F_IGNORECELL!
- [+] problem: i'm getting f->next == f
- [+] added a new assertino in addflag()
- [+] change how killflagsofid() works, maybe this is the problem.
- [+] i think my "insertbefore" is being freed somehow...v
- [+] fixed with valgrind?
- [+] try harder to link using tunnels rather than portals
- [+] has lots of recruitable people
- [+] plants, magic creatures, etc shoudl have infinite staina
- [+] severed fingers/heads are no longer considered "corpses".
- [+] new kind of bed: pile of straw
- [+] closed shops now work properly.
- [+] stench skillcheck (in makenauseated) - announce this differenlty
to 'nothing happen's
- [+] monsters won't turn to face sounds when fleeing.
- [+] increase accuracy for spear, but reduce accuracy when adjacent
- [+] why didn't cyborg warrior start with bullwhip equiped??
- [+] isbetterwepthan() should take EXTRADAM flag into account
- [+] monster starting skill levels should depend on iq
- [+] no sprinting with injured legs
- [+] more restructions when stunned:
- [+] no throwing
- [+] no operating
- [+] no firearms
- [+] tombstone text: Eaten by a snow troll's halberd
- [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant
corpse! reduced.
- [+] learning certain lore skills should please gods
- [+] repairing should take a lot longer. ie. shoudlbn't be able to do
it during a fight.
- [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR,
v0=material, v1=howmuch
- [+] continuerepairing() should only fix <skill + helpsrepair> hp
per turn.
- [+] announce helpsrepair in obdesc
- [+] coldroom vault:
- [+] ice floor
- [+] ice walls
- [+] ice pillar
- [+] frozen corpses
- [+] new job: gladiator
- [+] sword
- [+] shield
- [+] high shield skill
- [+] high evasion skill
- [+] limited armour skill
- [+] net
- [+] war cry fairly early on
- [+] gust of wind and airblast should drop flying creatures
- [+] fall_from_air().
- [+] trigger then when wind-based effects hit.
- [+] chance of falling depends on size.
- [+] if you polymorph a monster, it should NOT turn back to its
original form!
- [+] criticals dont seem to be happening any more... fixed
- [+] when picking first askcoords target lf, pick the closest
- [+] sakcs etc should contain rarer objects.
- [+] intelligent ai: if exhausted and in battle, and faster than
opponent, flee.???
- [+] easy way to fix reachability:
- [+] is there a solid cell which is:
- [+] adjacent to both a filled and an unfilled area?
- [+] not a fixed vault wall?
- [+] if so, just clear it.
- [+] genericise getrandomrace flags
- [+] some containers should have mini/tiny monsters inside!
- [+] f_hashidinglf, v0=rid
- [+] if you loot it, monster jumps out
- [+] ...and gets a free hit!
- [+] perception lets you see the container moving (only if it
weighs less than what is inside it)
- [+] genericise getrandomcell() with conditionsets.
* [+] condset_t
- [+] then replace all getrandomadjcell() calls...
- [+] remove getrandomroomcells
- [+] then remove WE_xxx
- [+] gain it at beginner level shields
- [+] make ai use it
- [+] if i've been hit by a ranged attack.
- [+] if intelligent: if my target has a ranged weapon AND i'm
not adjacent AND i'm in range.
- [+] make ai stop using it
- [+] if i'm adjacent to my target
- [+] OR
- [+] if i have no target
- [+] OR
- [+] if i'm not in battle
- [+] don't show 'bloodstained' if blind
- [+] dusur digs hole in floor
- [+] CRASH. who->timespent == 0
- [+] when portalling to same levle, don't say 'you arrive back at levl
xx'
- [+] instead: 'you arrive elsewhere in level xx'
- [+] maybe: when exhausted:
- [+] you can still attack, but...
- [+] attacks deal 0.75% damage
- [+] attack speed lowered.
- [+] change of fumbling your attack if you miss.
- [+] ...then monsters can have stamina again.
- [+] the %s looks exhausted.
- [+] if ai is exhausted, wait.
can just drop food for them.
- [+] when looking for remote obs, DO include adjacent cells with lfs,
if we have the snatch ability.
- [+] some long thin levels (80 x 12 ?)
- [+] fix code to remove useless doors.
- [+] 0 pairs of dirs with empty cells = change door to wall
- [+] pick an adjacent empty cell
- [+] floodfill the 8 cells around the door.
- [+] start with adj cell
- [+] can't go more than 1 cell away from door
- [+] solid cells or doors will stop movement
- [+] if no unfilled cells around the door, bad.
- [+] new way of fixing unconnected levels - portal!
- [+] pick one spot in each section then place a portal there.
- [+] dying should cure poison
- [+] tweaks to attack text
- [+] floor tile effecst
- [+] absorbancy - ie. carpet should absorb water.
- [+] converyors
- [+] only walkable sometime (crushers?)
- [+] in tombstone, show "eaten by Rattus", not "eaten by a rattus"
- [+] god of nature should like eating animals all the time, not just
when hungry (makes piety gain easier)
- [+] announce when eyes are protected from a spellcloud
- [+] klikirak should like setting off fire traps.
- [+] floodfill() should follow portals to the same level.
- [+] show >1 skillpoints in green on status bar
- [+] bug: gods are apeparing behind you.
- [+] bug in getrandomadjcell
- [+] gods' planeshift spells failing? might be fixed now. using
getrandomroomcell instead of getrandomcell.
- [+] increaes damage dealt by smite evil/good
- [+] lightning javelins shouldn't be stackable
- [+] monsters not firing ranged weapons!
- [+] they just walk back and forth
- [+] bug with how i was calling haslof() for cells other than
where the mosnter was (in getdiraway())
- [+] turn undead should only work if caster level*2 is >= monster level
fullblock basics:
- [+] penalties
- [+] lowers visrange to 1
- [+] huge attack penalties
- [+] huge evasion penalties
- [+] vhigh chance of all ranged damage going to shield instead.
- [+] buckler = 75 (small)
- [+] shield = 80
- [+] large shield = 85
- [+] tower = 90
- [+] plus shield skill*2
- [+] use check_shield_block in all spell effects
- [+] this checks whether player is shieldblocoking (or evades??)
- [+] then applies damage appropriatly.
- [+] new ability;
- [+] stopped by:
- [+] losing or unequipping the shield
- [+] being interrupted
- [+] casting a spell or using an ability
- [+] exotic weapons should cost more.
- [+] maybe prevent prayer until gods have been pleased enough ?
- [+] while you're not worshipping anyone, piety gain is x4.
- [+] once first one hits 'pleased', they will appear and offer you
a place
- [+] advantge to this is that you get a gift
- [+] picking up new gold should please felix......
- [+] you shoudl only be able to sacrifice untouched gold. this
pleases felix double as much as grabbing it.
- [+] gods sohuld appear "in a cloud of ..."
- [+] bjorn - blood
- [+] klik - fire
- [+] lumara - bright light
- [+] bug: i was able to repair leather armour usint the metalwork
skill.
- [+] fix bug with vell not getting starting weapon.
- [+] monsters: don't walk on producelsight obs if you have sensitive,
uncovered eyes.
- [+] (if wis >= animal)
- [+] snakes shoudl have f_enhancesmell and bad eyesight. also lower
their tremossense range
- [+] new lore: skills which auto makeknown() objects based on rarity.
- [+] lore:chemistry - potions
- [+] lore:relics = rings/amulets
- [+] lore:language = scrolls / books
- [+] also study scrolls
- [+] lore:arcana: wands+magic creatures
- [+] finalise work to redo god piety
- [+] amberon
- [+] thrilled = poly immune,
- [+] glorana
- [+] t = auto bless weapons / arm
- [+] ekrub
- [+] e = autotangle (instead of d)
- [+] yumi
- [+] e = 90 save life chance
- [+] felix
- [+] p = enhance stealth ?
- [+] t = enhance search 20
- [+] e = enhance lockpick 50
- [+] make dagger stronger than combat knife (but combat knife is
faster)
- [+] optimise makefile.
- [+] swapplaces message not appearing.
- [+] fix exploit for dizziness with 'A'
- [+] every time we ask for a direction, use askdirection(prompt).
make this do dizziness check.
- [+] no shieldblocking or dodging if you have no stamina.
- [+] object rarity bugs
- [+] i'm finding way too many books! might be fixed now... ?
- [+] never finding wands
- [+] added debugging to see if there is a problem with wands....
- [+] adjust footstep sound based on material
- [+] carpet = soft
- [+] stone = normal
- [+] tiles = loud
- [+] in @e, "you ar etipsy" should also talk about damage resistance.
- [+] don't show starting abilities if you are a diety.
- [+] don't say 'xx walks out of view' if they didn't move on purpose
- [+] CRASH - summon weapon then drop the energy blade.
* [+] CRASH when fumbling attack using energy blade.
- [+] fighter with wisdom 31. novice perception skill. noticied
teleport trap right in front of me. chances?
- [+] maybe make it you can never detect anything further away than
your perception skill.
- [+] fix bug in geteffecttime()
- [+] announce starting spells at beginning of game
- [+] in skill help, highlight your current level. Maybe: "At Novice
level>>> Unskilled weapons etc..."
- [+] inept level lore shouldn't show "Adept Stealth" as a strength
- [+] when you / then move over a cell with footprints short "Dirt
(with human footprints)"
- [+] or "Dirt (with xxx foorprints leading east)
- [+] typo in killer text - an vs a
- [+] get over here! should give you enough time to attack ?
- [+] felix prayer should remove impassable objects.
- [+] robots shoudl have big penalties to getting up checks. slip,
fall, etc.
- [+] fix bug when falling off a fence.
- [+] BUG: no los when i climb on top of a wooden fence. why?
- [+] F_BLOCKSVIEW needs new option: v1 = true means dont block
if you are standing on it
* [+] engineering / construction skill - replaces 'traps'
- [+] fixed bug where you couldn't rest when you pet was visible.
- [+] bug: aigetlastknownpos populating lastx & lasty with different
info from the the cell returned.
- [+] this has happening when following the direction of a scent.
- [+] remove display of "xx throws xxx towards you" if you can't see
the source and something is in the way.
- [+] druid should alway sbe able to swap with plants.
- [+] peaceful check should do this
- [+] try agian...
* [+] problem- create water can be used instead of soften earth ???
- [+] detect life should help with checking stairs.
- [+] pentagrams should heal the undead.
- [+] ekrub - don't et you sacrifice the flower that appears.
* [+] when doing check for piety on eating animals
- [+] don't auto give druid short blade skill due to sickle
- [+] soften earth on boulder... turn it to mud
- [+] adept psychology - receive change for gems.
- [+] BUG: announceflagloss is never happening.
- [+] new nature spell - absorb wood
- [+] clank - robot, chomp to steal health, self destruct
- [+] new tech
- [+] l0
- [+] chewing gum (jam doors with it) - this should be food
though.
- [+] plants shoudl HELP druid from level 4 onwards
- [+] clean up skill ability code
- [+] automate skill descriptions based on skillwills "you gain the
'xxx' ability"
- [+] auto-learn spells from initial spellbook, rather than having to
read it manually
- [+] finding rings of unholiness everywhere.
- [+] because it's the only rare ring!
- [+] fixed by making ALL rings be uncommon
- [+] first time you slip on something, suggest using 's'
- [+] sewing / metalwork: get resize and enhance earlier.
- [+] bug with engineering seeing through one wall!s
- [+] rogue/knifedancer / blademaster - throwing, extra skill with
small blades. starts with extra knives.
- [+] replace all SUBJOBS with plain regular JOBs
- [+] fix "needobforstaff" for wizards!
- [+] sewer should have mossy rock floor. slippery.
- [+] new specialist classes:
- [+] rogue/assassin (no stealing, no traps, lockpicking, better
stealth+backstab, poison knives)
- [+] minor healing spell is too powerful. should do 5-10hp max.
- [+] reveal hidden is not powerful enough for l4. move to l2.
- [+] reduce effects of stench as TR gets higher
- [+] lumara should accept sacrifice of anything magic.
- [+] oil lamp not making my viison longer! (on dlev11)
- [+] just describe f_produceslight in io.c
- [+] with no evasion skill, agi does way less for EV.
- [+] fungus clouds should be in 1 radius, non orthogonal
- [+] try putting monster zoo back in?
- [+] STILL bugs detecting trapped doors ages away!
- [+] detected one 8 away, perception novice!
- [+] when a monster necromancer is made, i'm prompted for spell
school!!!
- [+] new mushroom: greycap. looks like a miniature snowy mountain.
grants cold resistance
- [+] shop opening hours
- [+] F_OPENHOURS
- [+] v0 = start (inclusive)
- [+] v1 = end (inclusive)
- [+] v2 = sayphrase
- [+] SP_CLOSEDTILMORN (come back in the morning)
- [+] SP_CLOSEDTILNIGHT (come back tonight)
- [+] SP_CLOSEDTILHOUR (come back after x oclock!)
- [+] make shops only be open during the day.
- [+] make some temples only be open at night (eg. hecta)
- [+] grammar: xxx "flys" into view. need getmoveverbplural()
- [+] make yumi's "well, that seems unfair" only work when killed by a
mosnter which didn't chase you up.
- [+] no unarmed skill descriptions!!
- [+] remove pain ability from stink beetle
- [+] cockroach - with just high armour rating (10)
- [+] bajeetle - lower armour but bite causes pain
- [+] yumi - only allow you to gain piety from letting a monster run
away ONCE per mosnter
- [+] new monster: petrifungus
- [+] give merciful fighting for novoice adanced combat
- [+] monsters should lose targets when eating
- [+] vault: window in wall
- [+] fix werewolf hiding code for Rattus (when medium sized)
- [+] "you hear a muffled slithering" - this shouldnt be loud enough to
go through walls!
- [+] selected Evil Adventurer. alignment ended up as NONE
- [+] have added debugging
- [+] wait for it to happen again
- [+] put in code to check at start of turn whethe r my alignment
just changed.
- [+] my alignment seems to have changed to NONE
- [+] POLYMORPH is causing this.
- [+] fixed
- [+] commando should have low level version of gunblade
- [+] electromachete - low pierce + low electric
- [+] gunblade - med slash + low explosive
- [+] boomstick - med bash + high explosive
- [+] commando should start with a few energy packs (need to add this
object)
- [+] l2 tech
- [+] operate it to recharge tech which has charges.
- [+] like a scroll of replenishment, but only for tech.
- [+] when monsters follow you up stairs, they should face you
- [+] jewelry store should buy watches
- [+] when exploding cells, remember who caused it
- [+] new arg: lifeform_t *causedby
- [+] use this when dealing damage, so that it counts as player
kill (etC)
- [+] explodeob
- [+] monks sohuld be very resistant to being scared
- [+] gauntlets (or other hard gloves) should increase unarmed damge by
1
- [+] seems almost impossible to break locks on chests by bashing....
check the calc.
- [+] fixed.
- [+] ekrub should accept sacrifices of plant matter
- [+] sebastian - absorbs physical damage to increase damage.
- [+] after first hit: +1dam, knockback
- [+] after 2nd: +2 dam
- [+] etc
- [+] vuln to non-physical (fire, magic, cold, elec, etc)
- [+] cockroach, plague rat should taint anything it walks on
- [+] fix up morale checks. 30 should be 100. therefore: multiply by 3
and a bit.
- [+] CRASH during wish for Power
- [+] bug:
- [+] You whack the pixie. The pixie turns to face you.
The pixie turns to flee from you!
Amberon's voice booms out from the heavens:
"You dare attack an innocent?" Amberon's voice booms out
from the heavens:
"You dare attack an innocent?" The pixie gestures at itself.
- [+] baba yaga's hut
- [+] shoudln't be able todrink potions
- [+] shouldn't take criticals
- [+] don't annoucne time during combat
- [+] bug after giving gold to a bandit:
- [+] $ - 0 gold dollars
- [+] lore: tech... every level says' no special effects'
- [+] bug: Strength: 24 (very weak, +1 dmg)*
- [+] bug in getstrdammod()
- [+] bug: A brown snake walks into view.
- [+] should be 'slithers'
- [+] mud shouldnt make shoes wet
- [+] refridgerator should only have meat in it
- [+] some jobs which have whip skills
- [+] scourge should always start with a whip.
- [+] fighter should be able to pick it
- [+] aligned temples sohuld be half price (or free if god is pleased?)
- [+] SM_DETECTCURSE
- [+] SM_PURCHASEITEMS
- [+] SM_BLESS
- [+] SM_MIRACLE
- [+] re-introduce monster zoos vault
- [+] bullwhip shouldn't be able to dull!
- [+] banana skin not slippery anoymore
- [+] slightly boost player's starting hp
- [+] why can vampire bat reach me to damage by boots/trousers?
- [+] check out canreachbp() in lf.c
- [+] maybe fixed
- [+] commando's starting gun should start with normal bullets, never
silver
- [+] klikirak should grant fire powers
- [+] cast pyromania when you pray
- [+] gift: immolate every 20 turns
- [+] fix trytokillobs() - this might fix some of the infinite loops
i'm getting during level creation.
- [+] klikirak should give slightly more xp for sacrifing objects
- [+] hawks should swoop more often
- [+] book colours are incorrect (ie. "red book" isn't red)
- [+] i saw "something burns!" while resting...
- [+] make hollow trees be green
- [+] blessed amnesia shouldn't do anything bad
- [+] armour stores shouldn't get hot!
- [+] earthworm should only divide from slash damage - not bash
- [+] queen ant shoudl be able to summon lots of soldiers
- [+] staircases should be on top of ash piles when draring them!!
- [+] in fact, staircases should be on top of _everything_
- [+] sanctuary potion should put out fires under you! (or anything
with walkdam)
- [+] shouldn't be able to smell by's hut
- [+] wood wall should be diggable with pickaxe
- [+] does shovel actually work? no, but it does now.
- [+] dungeon level name - if it has a swamp vault, level is just
called "the swamp"
- [+] fire damage to bread = toast
- [+] only say "the light here is a bit dim" etc if it's different form
your previous level
- [+] weapon stores shouldn't appear in baba yaha's hut!
- [+] i think i said "weapon" but it turned into weapon store.
- [+] works in a wish...... is this only a problem in a vault?
- [+] test agian.....
- [+] during summon mosnter, don't say 'the xxx starts to fly!' before
"the xxx appears"
- [+] when i read a create monster scroll, this _doesnt_ happen.
- [+] when i cast summon small animals and a brian bat appears, it
_doesnt_ happen
- [+] only seems to happen whan a mosnter uses a summon spell
- [+] maybe to do with finalisemonster() or "autogen" being set in
addmonster?
- [+] fixed now?
- [+] walking on water shouldn't extinguish a flaming weapon!
- [+] losehp_real needs a 'bodypart' argument
- [+] klikirak should like killing plants
- [+] do something to stop kilkirak worhipers from scarificeing the
entire forest!
- [+] if you attack a plant lf in the sylvan forest
- [+] nearby plants attack.
- [+] 33% chance of a treant:
- [+] same if you destroy a plant object
- [+] takedamage() needs a "fromlf" arg
- [+] or sacrifice one.
- [+] _warning_ if you attack a plant object or plant lf. (but
don't kill it)
- [+] WISDOM warnings:
- [+] if you are about to attack an OC_FLORA object in the
woods (and have felt the woods get angry once before)
- [+] if you are about to attack a RC_PLANT lf in the woods
- [+] if you are about to attack a CT_WALLTREE cell in the woods
- [+] remove base 'wizard' class...
- [+] maxlevel 1
- [+] make sure this is better than 'mending' since it only affects
metal
- [+] l4 hone metal - give a weapon "of penetration" (F_ARMOURPIERCE)
temporarily (permenantly at l3)
Unique monster code.
- [+] place these durign map generation:
- [+] x% chance of having each unique monster appearing
- [+] F_UNIQUE vals:
- [+] v0 = pct chance of appearing
- [+] v1 = branch id to appear in
- [+] text "%d-%d" = min/max depth
Unique monsters:
- [+] king of rats - lots of rat pets - 33%, 2-4
- [+] pete - spiderman, shoot webs, jump, climb - 33% chance between 5-7
- [+] only show valid alignment choices (ie. race & job & subjob
alignments don't conflict)
- [+] don't show subjobs which aren't valid (ie. vell
warrior/paladin)
- [+] don't shows jobs which aren't valid (ie. vell druid)
- [+] monsters with low wisdom should be able to flee into dangerous
cells
- [+] ie. wisdom < average
- [+] allow selecting your subjob directly, instead of haveing to pick
your base job first
- [+] restrict low level monsters to only "common" weapons
- [+] make consumesouls only work in a given distance
- [+] bug: player start room not being linked to rest of map
- [+] hawks etc can't swoop away if they somehow get killed/fall asleep
during their attack
- [+] use adverbs when describing misses ("narrowly miss" "wildly miss"
)
- [+] make map light level (well lit etc) determine:
- [+] visibility range (remove this from habitat!)
- [+] stealth check modifier
- [+] show material vulnerabilities in EFFECTS
- [+] poison checks are too easy. i had fitness 33 and passed in 1
turn!
- [+] i know this is baed on timeleft, so maybe make timeleft count
for more ?
- [+] bug: infinite loop when player fleeing
- [+] imp
- [+] TR2
- [+] damage low (sting)
- [+] invisibility
- [+] immune to cold, fire, electric
- [+] magic resist (demon)
- [+] regnerate 1hp per turn
- [+] remove "modification" school with "wild"
- [+] prevent constant 6th sense warnings when something is chasing you
- [+] speak with dead should be a divination spell, not death.
- [+] hecta worshippers get bonusses for bone weapons - +1 damage.
- [+] same with Ekrub and wood weapons
- [+] stealth check to not make ANY noise when hiding is easier.
- [+] redo skillchecks to use a percentage, not d20!
- [+] new function behaviour:
- [+] skillcheck()
- [+] roll a die. d100? d50?
- [+] modifyskillcheckroll() - apply modifiers (based on
attribs, etc). higher roll is better.
- [+] store die roll in *result
- [+] difficulty 70 means "must roll higher than 70" = 30%
chance.
- [+] if roll >= what you need, you pass.
- [+] skillcheckvs()
- [+] each roll a die
- [+] modify die roll for both of you
- [+] who is higher
- [+] now modify ALL calls to skillcheck() to be pctage based.
- [+] in general, difficulty of 20 ->diff 95 (ie. 5% base
chance)
- [+] each +/- 1 will chance difficulty by 5%
- [+] ie. multiply current values by 5
- [+] IN
- [+] attack
- [+] io
- [+] lf
- [+] move
- [+] objects
- [+] shops
- [+] spell
- [+] then REMOVE getskillcheckchance()
- [+] auto fail poison check on low roll
- [+] let everyone attempt to climb climbobstacles.
- [+] potion of oil isn't smashing when thrown
- [+] shatter() was failing because the EXPLODEONDAM check was
incorrect.
- [+] fix felix money sacrifice exploit . done.
- [+] change collapsing door trap - first check for F_DOORFALLOB
instead of just checking material. that way we can cope with iron
gates etc.
- [+] done
- [+] define doorfallob for iron gate - 4-5 iron bars
they get out of sight.
- [+] some kind of obstacle which you must CLIMB over
- [+] objects
- [+] metal barricade (also breakable)
- [+] pile of rubble (not breakable)
- [+] F_CLIMBOBSTACLE
- [+] need a climb check of difficulty v0 to move ON to it. if you
fail, you fall off in a random direction.
- [+] if you don't ahve the climbing skill, you can't move onto it.
- [+] ...and EVERYONE needs to be able to learn swimming & climbing
- [+] vaults:
- [+] room with heaps of these in rows - "fortified_room"
- [+] room with lots of these over a pit - "pit_path"
- [+] room with lots of these over fires (or something
damaging) - "firepit"
- [+] if you're standing on something with "climbobstacle", you
count as being higher
- [+] tables should have CLIMBOBSTACLE diff 5
- [+] vault - pit with archers on the side
- [+] cope with "monster_name with _objectname_"
- [+] cope with objects of name "random firearm"
- [+] BUG: "Gather up the spoils of battle!" A masterwork weapon store
appears!--More--
- [+] rarity on wands seems broken...
- [+] god gifts are happening too often when god is just 'pleased'
- [+] on levels where floor is carpet, don't create vaults with obs
made of MT_FIRE
- [+] bjorn prayer's forcesphere radius should depend on piety level
- [+] collapsing door trap - need f_doortrap to restict this to just
doors
- [+] make more shops let you donate
- [+] bookstore
- [+] jewellery store
- [+] rename blood hawk to hunting hawk
- [+] offering a bribe to creatures should make them move likely to
helkp you, AND reset the "auto don't help' flag
- [+] change "get lost " message to "get lost, <racename>" if your race
is different.
- [+] sayphrase() needs a new arg: lifeform_t *talkingto
- [+] colours for spell effect.
- [+] eg. "the flame dart hits xxx" should use CC_BAD
- [+] muddy room - mud should be immutable.
- [+] maybe change rage - you lose control totally and just attack
anything in sight?
- [+] do it.
- [+] don't train when enraged
- [+] don't hear sounds when enraged
- [+] RAGE effects: strength bonus, accuracy bonus, infinite
stamina, never flee,
- [+] fix bug in skill point calculation
- [+] CRASH - someone got their turn BEFORE the player!
- [+] new poisontype field - contracttext
- [+] hecta's pray effect not working.
- [+] adjust food poisioning check difficulty based on food age
- [+] check OBHP percentage of max.
- [+] >= 80% obhp means -30% difficulty check
- [+] ring of unholiness should confer dtvuln holy.
- [+] fix colour on spellclouds
- [+] fix bug with spellclouds not affecting centre cell.
- [+] if you are frozen, heat does extra damage and cold does none.
- [+] when frozen, lessen chance of melting.
- [+] reduce bite damage of snakes
- [+] balaclava should protect from gas
- [+] make some floor types (like carpet) be multicoloured
- [+] celltype->altcolour
- [+] if altcolour is not C_NONE then use it where (x + y) % 2 is
true.
- [+] don't regain stamina while training
- [+] random text in shops - sayphrase needs to cope with lf == null
- [+] done
- [+] fixed - hecta gifted me with a bamboo staff, but i'm inept with
staves!
- [+] BUG: in vault.vlt.
- [+] "30% chance of door" really means "otherwise empty cell"
- [+] need to be able to say "else put a wall here"
- [+] so change:
- [+] c:type:what[:pct]
- [+] to this:
- [+] c:type:what[:pct][:alttype:altwhat]
- [+] vlegend_t needs
- [+] enum VAULTTHING tt2
- [+] char *what2
- [+] they default to VT_NONE, NULL
- [+] secret doors should take their fake wall type from the vault spec
- [+] vaults need f_celltypeempty/solid flags
- [+] add via: solid:xxx in vault def
- [+] recycler
- [+] donate anything
- [+] if sound is behind walls:
- [+] you hear a muffled explosion
- [+] int canhear() needs one more optional argument:
&numwallspassed
- [+] if supplied, fill it in.
- [+] in noise(), check numwallspassed. if there were any, then say
'muffled'. or maybe if more than 2? play around with this.
- [+] listen skill should also give more info about NON monster sounds
- [+] ie. direction, distance.
- [+] set user->changinglev when CHECKING stairs in the same way as
when we use them.
- [+] monk abil - iron fist - use all remaining stamina as damage +
knockback
* [+] HITCONFER - this should only work if you were attacked through a
BITE or CLAW etc.
- [+] bug... werewolves etc not attacking properly after shapehifting
- [+] some tech/tools should be usable with hands (ie. watch).
f_operwithouthands
- [+] werewolves sohuld keep f_hitconfer after shapeshifting
- [+] done
- [+] summoned creatures from ai should never attack their masters!!!
- [+] only the PLAYER can be infected by a werewolf? or only HUMANS ?
- [+] when a werewolf changes to animal form, no longer hide true race
as 'human'
- [+] lycanthropy?
- [+] how to get it:
- [+] drink were-xxx blood (->potion of lycanthropy, never
appears randomly)
- [+] bitten by a lycanthrope (chance) with hitconfer and fail
a con check
- [+] change f_lycanthrope so text = racename.
- [+] effects when you get it:
- [+] right away, add diseased with lycanthropy. incubatino
infinite ?
- [+] if you are incubating lycanthropy, you always change at
the full moon (and get rage, and lose control).
- [+] at this point, complete the incubation and...
- [+] add f_hatesall
- [+] lose control for a while
- [+] after you change back the first time, you can change at
will. (but there is a risk each time of losing control)
- [+] player regains control
- [+] remove aicontrolled, hatesall, rage
- [+] actually add f_lycanthrope, text=xxx, v0=4
- [+] when f_lycanthrope v0 drops to 0 or less...
- [+] canwill shapeshift with race:xxx
- [+] how to remove it
- [+] remove curse scroll
- [+] drink holy water
- [+] these will:
- [+] cure any incubating curse
- [+] cure any f_poisoned curse
- [+] cure lycanthropy, and any flags FROMLYCANTHROPY
- [+] other effect
- [+] wont/cant walk into holy circle?
- [+] holy circle hurts you
- [+] shouldn't be able to get critical hits on you (ie. injuries) if
you ahve heavenly armour
- [+] bug in f_poisoned text. i think i've fixed this now.
Died on level 2 of the dungeon.
Killed by venom poisoning
from 5-10
- [+] donated objects count towards xp!
- [+] -50% of value if not known.
- [+] -25% of value if not id'd
- [+] donating objects will anger felix
- [+] BUG when i enter baba yaga's hut:
- [+] ERROR - couldn't link stairs back to map entry object.--More--
- [+] was assuming that exitdir was up/down. for entering the
hut, the direction is "in".
- [+] lots of missing text colours - fixed.
- [+] is 'appropriate' working? i got a sun hat!
- [+] yes, but "armour" should mean "ar >= 1", to differentiate
from 'clothing'
- [+] also, size sohuld match for armour.
- [+] time code (if you have a watch):
- [+] things which occur at certain times
- [+] "glorana's peace" - morning twilight and sunrise.
- [+] boost life spells
- [+] glorana worshippers gain some special - regen.
- [+] midnight = "witching hour"
- [+] boost necromancy
- [+] werewolves always change to wolf
- [+] implement an auto-cast for player lycanthropes
- [+] when a ling parasite enters a corpse:
- [+] add some kind of flag so that when it dies, a living ling
parasite appears on top of the corpse.
- [+] F_CORPSELF
- [+] if you burn your hands on an equipped shield, drop it autoatically
* [+] sewer stairs problem
- [+] if something redhot/flaming takes water damage, it will make
steam.
- [+] ring of unholiness(blessed things burn you - just add undead flag?
- [+] gods of purity/life will warn you first.
- [+] fixed crash checking for blocking attacks from adhesive lfs.
- [+] glorana cure poison doesn't work
- [+] cancast is returning FALSE but E_OK.
- [+] glorana isn't getting canwill ot_s_curepoison
- [+] got it - was using getspellschool() instead of
spellisfromschool()
- [+] giant spider not casting web
- [+] .oO { can't cast web right now (lowiq) (mpcost=4, i have 0) }
- [+] FIXED, and also fixed validateraces() check for this kind of
thing.
- [+] cats are now territorial with rndhostile rather than always
hostile
- [+] do final cursed wish scroll effect - magic
- [+] get a suicide spell?
- [+] thornspike armour.
- [+] new slashing weapons
- [+] new weapon: vibroblade
- [+] short blade
- [+] slashing 8
- [+] extra high crit chance
- [+] new weapon: nanoblade
- [+] short blade
- [+] slashing 10
- [+] unlimited armour piercing
- [+] laser sword
- [+] longblade
- [+] fast!
- [+] not dullable
- [+] armour piercing (not as much as nanoblade)
- [+] high critical (not as much as vibroblade)
- [+] gunblade
- [+] extra explosive damage while it has charges.
- [+] glorana accepts sacrifice of weapons, instead of food.
- [+] ekrub acceps sacrifice of food.
- [+] bug in pirate description:
- [+] Its (). It has no left hand.
- [+] god description should show prayer results. ie. "yumi will
respond to prayer by xxx"
- [+] if glorana likes you while you're sleeping say, "you dream of a
choir singing" instead of "you hear".
- [+] eating garlic gives stench.
- [+] cope with "armorpierce NA" - "will not reduce damage at all"
- [+] fire/cold spells:
- [+] endure fire/cold
- [+] L2
- [+] ongoing
- [+] like endure elements but only one element.
- [+] fire - done
- [+] cold - done
- [+] negate fire/cold
- [+] L3 ongoing
- [+] rename "gold coin" to "gold dollar"
- [+] announce mosnters losing interest.
- [+] if accuracy is too low, chance to fumble your atttack if you miss.
- [+] ie. drop weapon
- [+] show "please wait' message during initial build.
- [+] why can't i fill an empty flask from a potion of blood?
- [+] because blood grew into a bigger one
- [+] CRASH - go to a shop, 'sell gems', pick a letter not in the list
- [+] The giant ant kills the kobold. The kobold dies.
- [+] never use "kills" when a monsters is killing another one.
- [+] implement CURSED scroll of wishing effects.
- [+] stoning
- [+] hostile summons
- [+] insanity- drop iq prmenantly
- [+] golden boulder
- [+] proximity mine (l3 tech)
- [+] if activated, explodes when someone walks ONTO it (but not
_off_ it)
- [+] only gtaverage WIS _or_ adept tech knowledge won't walk onto
it
- [+] rollerskates (wear on feet, move fast fowards)
- [+] jet skates (faster version of rollerskates)
- [+] only work when ACTIVATED
- [+] only work when they have CHARGES left
- [+] drain charges when activated (like a jetpack)
- [+] cattle prod - piercing DR 1, +10 electical dam while it has
charges
- [+] f_extradamwithcharges
- [+] computers
- [+] operable
- [+] no pickup (or at least, VERY heavy)
- [+] need tech usage to use.
- [+] get choices equal to your tech level (novice = random)
- [+] choices:
- [+] 1 M = map whole level
- [+] 2 O = show location of loot (detect objects)
- [+] 3 L = show lifeforms
- [+] 5 D = explode
- [+] 6 I = identify one item.
- [+] 7U - unlock all doors + chests
- [+] at high techusage you can pick destruct time ?j:e sp
- [+] unique monsters shouldn't get things like 'hungry'
- [+] A some bread flies through the air toward you. A some bread hits
you.
- [+] related to using "FEELTEXT"
- [+] fixed - need to set "no_a" when using feeltext.
- [+] bug: ice wraith drops a bog wraith corpse
- [+] ...why ?
- [+] wish for 'ice wraith corpse', and i end up with 'bog wraith
corpse'
- [+] racename is "wraith", not "ice wraith"
- [+] ...because "p" was just "wraith corpse", what happened to
"ice" ?
- [+] wishing for "bog wraith corpse", p is "bog wraight corpse"
was expected.
- [+] for some reason the prefix "ice " is special...
- [+] it's because "ice" is the name of a material
- [+] need isvalidoverridemat()
- [+] don't show attribs as options when levelling up if the base score
is maxed.
- [+] bug donating money
- [+] bug: wearing gauntlets, someone cast heat metal on me. my
gauntlets didn't hurt me?
- [+] nor did my armour??
- [+] they get set to 'a red-hot xxx'
- [+] ...but don't deal damage.
- [+] touch() needs to differentiate touching something (with your
hands) from it touching you!
- [+] ie. int onpurpose argument.
- [+] bjorn no longer being pleased by defeating all foes...
- [+] monster modification at nighttime/daytime
- [+] undead are stronger at night (bonus on all skillchecks &
tohit) +/- 15%
- [+] undead are weaker during the day (penalty to skillchecks &
tohit)
- [+] plants are stronger during the day
- [+] describe in adept level knowledge
- [+] more work on hydra
- [+] poison breath - autocreate poison gas in front of it
- [+] cases where head not severed
- [+] criticalhit() needs to know about the weapon which was
used (or NULL)
- [+] then:
- [+] flaming weapon cauterises wound
- [+] silver does too
- [+] in this case after severing a head:
- [+] don't regrow more
- [+] lower TR
- [+] lose f_hasattack
- [+] if it was the last head, it dies.
- [+] fishfolk should have extra evasion in water, and aviads in air
- [+] implmement
- [+] apply to races:
- [+] fishfolk
- [+] aviad
- [+] nimble creatures with aquatic
- [+] nimble creatures with natural flight
- [+] announce in makedesc_race, beginner level knowledge.
- [+] bug: on load i can see in all directions, and impassable stuff
around me is obliterated!
- [+] warn when attacking will rust your weapon (if wis high enough)
- [+] yumi should like killing injured things
- [+] bug: sandman isn't attacking or casting spells. - wasn't hostile.
* [+] bug: not able to sell gems in a jewelery store
- [+] when something casts swap places, need to redo los for the target
too!
- [+] "you feel a wrenching sensation" should have 'more' after it.
- [+] stat bonuses for gods
- [+] yumi - boost wis
- [+] glorana - boost con
- [+] Lumara - boost iq
- [+] enchant weapon should remove rust too.
- [+] only place a pool of blood if monster is large enouhg
- [+] when mosnters steal gold, let them take more than just one!
- [+] monstres need to retain F_HOSTILE on polymorph! forgot about
rndhostile
- [+] change some eatconfers to blood confers
- [+] make blood splashes combine properly
- [+] test with troll blood
- [+] when you _kill_ something, drop more blood
- [+] when you behead/bisect, do splatter
- [+] in knowledge, show: "its blood can be bottled to make xxx"
- [+] (at skilled knowledge level)
- [+] test....
- [+] replace eatconfer flags with f_fillpot
- [+] make sure monsters with fillpot actually bleed
- [+] make slash etc damage ALWAYS cause bleed
- [+] make projectile damage only cause bleed if the object is
pointy (f_missiledam)
- [+] make bashing not cause bleed
- [+] make sure that bottling blood reduces/kills the object.
- [+] robots should bleed oil
- [+] CRASH: during lfhasflag(dodges) - lf.c:20201 (getobname
- [+] getting ob name of 'rdata' from celldangrous()
- [+] but rdata->pile is bad...
- [+] and object was a manual. why was a goblin avoiding a manual?
- [+] celldangerous() actually set rdata to "deep water"
- [+] ....but somehow it changed to point to a manual!!!
- [+] getdodgecell() changed it!
- [+] bug: when a monster kills anohter:
- [+] "the xxx hits the xxx"
- [+] (no death message).
- [+] either include "xxx dies". or make "xxx kills xxx".
- [+] fixed, i think. wasn't calling getkillverb when attacker was
a monster.
- [+] minor grammer fixes in skill descriptions and looting choices
- [+] crash when donating objects to a shop.
- [+] only allow lock breaking with bashing wepons
- [+] make minor undead like skeletons not pursue once you're out of
sight.
- [+] don't allow damaged objects to stack
- [+] wyrmspawn should be able to learn master wyrm lore!
- [+] fixed crash when operating tech which asks for a target cell
- [+] bug in bones
- [+] invalid at() definition: 'at(0,0) ob:an uncursed bone club'
[vault:bones7/loading flags] Invalid line: [at(0,0) ob:an
uncursed bone club]
- [+] when monsters polymorph into a new race, don't change their
allegiance (ie. dont inherit f_hostile)
- [+] don't want boulders or other impassable objects in starting room
- [+] lumara should give you one more mp if you are already full
- [+] reduce radius of gas trap
- [+] fixed description for mana spike
- [+] increase damage of wild spells
- [+] 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.
- [+] it DID, but it dropped it cuase it was hot.
- [+] griddler should be immune to redhot! (testing shows it
currently isn't)
- [+] once prisoners give you a reward, they shouldn't be allies
anymore (ie shouldn't follow you up/down stairs)
- [+] portal to realm of gods hsouldn't work until you have a godstone.
- [+] why did potion of oil explode when i threw it?
- [+] for unique monsters, instead of "jimbo's armour protects it", use
"jimbo's armour protects him"
- [+] use f_gender
- [+] this replaces F_GODOF.
- [+] change gods to use this too.
- [+] change cloak of shadows - only work if max vis range is low ?
- [+] monsters can't see you if they are >=3 away
- [+] F_SHADOWED
- [+] more amulets
- [+] of the traveller (go to a much deeper level or branch when
you put it on. go back when you take it off)
- [+] implement
- [+] usually start cursed
- [+] boost piety gain
- [+] soul feasting
- [+] acrobatics (tumble/jump)
- [+] choking
- [+] first add f_nobreath
- [+] doesn't work if you don't need to breath
- [+] hydra blood poisonous
- [+] handle "linkrace:xxx splash of blood"
- [+] make bleed() use this.
- [+] add f_venomblood to r_hydra (and others?)
- [+] make filling potions from blood check for
f_linkrace->f_venomousblood
- [+] maybe handle this more elegantly.
- [+] add f_bloodfillob to blood objects (inherit from lf)
- [+] fine, but what about addobsinradius? make it populate
retobs!!!
- [+] change f_venomblood to f_bloodfillob->ot_pot_poison
- [+] remove "linkrace:xxx" code from objects.c and from bleed()
- [+] flashbang shouldnt affect user (you would look away)
- [+] add F_THROWNBY to objects when you throw them.
- [+] stop initial revolvers from starting with 'a rubber bullet'
- [+] dry ice grenade - csats "snapfreeze"
- [+] needs f_spellcloudondeath
- [+] implement
- [+] spiked club
- [+] The hawk critically claws your hands. Your !
- [+] fixed.
- [+] need another way to unlock chests
- [+] bash them
- [+] if it is trapped, high chance that the trap will go off
- [+] if you attack something which is locked, it has a small
chance of becoming unlocked
- [+] rnd(1,your_str) must be > lockdiff!
- [+] different unarmed attack verbs for monk
- [+] javelin of lightning
- [+] when you throw it:
- [+] dothrow() calls spelleffects(LTBOLT)
- [+] then uses up one charge
- [+] if charges are left:
- [+] reforms in your hands
- [+] otherwise it turns into a normal javelin
- [+] shovel
- [+] jackhammer (like pickaxe but faster)
- [+] gather flame - l1: nearby fire boosts next spell's power.
casttimme 2
- [+] boil blood - l2: when monster dies, it explodes (like a
fireball?)
- [+] maybe: create player lf BEFORE creating maps
- [+] then move player to start pos and add pets etc
- [+] then kill mons in los
- [+] this will let us correctly adjust hostility even on dlev 1
- [+] goat (yellow 'q', 1hd)
- [+] charge
- [+] horn attack
- [+] eats anything!
- [+] f_caneatmaterial
- [+] calculate nutrition based on weight...
- [+] chimera(9hd, 9tr, mutant) - purple 'm' - goat/lion/wyrm, 3 headed.
- [+] LARGE
- [+] Morale 13-14
- [+] EVIL
- [+] Hostile
- [+] swoop
- [+] can breath fire - use burning wave
- [+] melee attacks:
- [+] bite (lion head) (3)
- [+] bite (dragon head) (5:w)
- [+] gore (horns) (3)
- [+] 2 x claw (4)
- [+] TOTAL 18
- [+] but... do maxattacks = 4, not 5.
- [+] slash attack: chance to remove a head.
- [+] this makes it lose one bite attack and (maybe) its breath
weapon.
- [+] hydra
- [+] 5-12 heads
- [+] each head has bite attack
- [+] hit dice / tr based on heads
- [+] regenerate 2 heads each time one is severed
- [+] when placing any vault with maintainedge, set "LOCKED" for all
cells
- [+] change all mapmaking code to honour LOCKED(not just digdungeon)
- [+] room placement code
- [+] cave
- [+] dungeon
- [+] forest
- [+] sewer
- [+] swamp
- [+] fixed. BUG: TRAVEL to the swamp, walk up stairs...
- [+] ERROR - stairs should link to existing map ('dungeon L7 (id
#3)', depth 7), but
it has no free stairs.--More--
- [+] walking _down_ is okay.
- [+] was only checking to link entryob when we were going DOWN
stairs.
- [+] place fixed vaults _BEFORE_ creating habitats ???
- [+] this will only work after all creation routines honour
"->locked"
- [+] set locked on all fixed vault cells after making them.
- [+] better code for removal of internal doors.
- [+] bug! fleeing monsters taking no time!
- [+] brainbat
- [+] consume corpses to regain life? make this a normal death spell.
- [+] f_consumesouls
- [+] anything that dies in sight nearby heals her.
- [+] "%s consumes the soul of the dying %s ?"
- [+] give this to baba yaga
- [+] loading bug with map flags:
- [+] getting a flag with text = "flags"
- [+] am i saving something else with a space in it ???
- [+] %s in fscanf doesn't handle spaces!
- [+] in save.c, when I'm liable to get spaces in a string,
replace %s with:
- [+] sscanf("%[ a-xA-Z0-9+'*/-]")
- [+] earthwyrm
- [+] divine into two monsters if slashed
- [+] appear in ant nests
- [+] sourges shouldn't learn spells from books
- [+] MR doesn't affect canwill spells?
- [+] innate MR (ie. fromrace or from scource) doesn't affect spells
either.
- [+] too many potions of water! made it common rather than frequent.
now NO frequent potions.
- [+] getting 'wake t someone runmmaging through your pack' when noone
nearby
- [+] maybe this flag isn't gettginre removed properly?
- [+] polymorph should fix injuries first
* [+] for missing hand injuries, select the hand AFTER main switch()
* [+] shouldn't be able to weild 2-handed weapons if you only have 1
hand!!!
- [+] "travel" spell should let you go to RT_HABITAT things.
- [+] fix crash validating f_spotted flag
- [+] don't always put "The " on unique objects.
- [+] use F_THE for this instead.
- [+] godstones should still have F_THE
- [+] don't place staircases inside MAINTAINEDGE vaults!!
- [+] burning a wood floor only makes a hole in the ground if there are
more levels underneath!
- [+] end of caves:
- [+] both bossrooms should have goblin king and red wyrmling
- [+] stone key.
- [+] need a vault flag which say s: add f_stayinroom to everyone who
is created in this room
- [+] done: "keepmonsinroom"
- [+] cope with a branch's entry stairs coming from a vault
- [+] killing unique monsters with necrotic damage should still leave a
corpse.
- [+] make "ornate chest" which has rare objects
- [+] put it in branch endings and make it a rare object
- [+] f_extrainfo in fireat() should show damage _after_ adjustment
- [+] BUG: swamp rooms aren't connected!!!!
- [+] end of forest branch:
- [+] vault containing baba yaga's hut
- [+] bone fence around it
- [+] skeletons
- [+] the hut.
- [+] baba yaga's hut
- [+] cabin on chicken legs
- [+] f_timid!
- [+] jump
- [+] claw attacks
- [+] walks around
- [+] corpsetype = link to inside the hut
- [+] made of dragonwood (ie. hardness 5)
- [+] Don't say "You kill the walking hut".
- [+] text when it dies: "Exhausted, the hut slumps to the
ground."
- [+] inside the hut = small level with baba yaga
- [+] new regiontype: babayaga's hut
- [+] new habitat: byhut
- [+] making the habitat: only has a single vault. (one with
tag 'byhut')
- [+] diff layouts
- [+] circular
- [+] square
- [+] baba yaga herself
- [+] baba yaga
- [+] weighs 50kg
- [+] obs:
- [+] key!
- [+] hp: 135 = 22 hitdice (d6)
- [+] 75% magic resistance
- [+] attribs
- [+] str: exhigh
- [+] iq: exhigh
- [+] wis: exhigh
- [+] agi: average
- [+] con: high
- [+] cha: exlow
- [+] fire, cold, magic, poison resist
- [+] immune to necrotic
- [+] abilities
- [+] seeinvis
- [+] awareness
- [+] claw/teeth attacks.
- [+] claw = 8 DR
- [+] teeth = 6 DR
- [+] maxattacks = 2
- [+] grab ability
- [+] spells??????
- [+] fear
- [+] weaken
- [+] summon insects/animals
- [+] entangle
- [+] blink
- [+] when she dies, unlock the hut door.
- [+] delving code.
- [+] new digging code:
- [+] delve()
- [+] delve_pullcell
- [+] etc
- [+] h_antnest
- [+] creaetantnest calls delve() functions.
- [+] insert this in the main dungeon somewhere
- [+] populate with monsters (set rarity)
- [+] place queen ant on the map.
- [+] via new regionthing type RT_LF
- [+] branch ends should have a boss with a key!
- [+] jimbo
- [+] babayaga
- [+] cave boss (dragon ?)
- [+] 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)
- [+] take lifeform_t * for usevis instead of boolean
- [+] add new option "useorigrace" for shapechangers
- [+] whips
- [+] F_WHIP
- [+] new skill: sk_whips
- [+] basic trais:
- [+] high accuracy
- [+] lowish dam
- [+] pierce/slash/bash damage
- [+] some will let you cast 'snatch' and suck
- [+] no crit chance
- [+] examples:
- [+] bull whip (lowest damage)
- [+] flail (ie. chain whip ,change type from club to whip)
- [+] heavy flail
- [+] metal-tipped whip (flail with higher acc)
- [+] barbed whip (causes piercing damage as well)
- [+] io.c @@ should take extradam into account
- [+] describbeob() should show F_EXTRADAM
- [+] change morale values - this shoudl default to your TR, otherwise
f_morale replaces it.
- [+] CRASH in doknowledgelist()
- [+] hecta bug: fixed!
- [+] You bisect the kobold! The dying kobold shouts "Nooooo!".
Hecta's voice grates against your mind:
"You allowed my sacrifice to escape!"
- [+] is this because i'm calling "flee" after the lf takes
fatal damage but before die() is called?
- [+] NO, because flee() checks isdead(lf)
- [+] it's happening when i kill a monster, and another one of
the same type sees me!
- [+] change: only trigger this is the player has previously
attacked the monster
- [+] replace fire titan with balrog
- [+] You bisect the giant gnat! The dying giant gnat shouts "Nooooo!".
- [+] fixed.
- [+] boggart -brown 'n'
- [+] made of wood
- [+] cause things to disappear
- [+] cause milk to sour (low power blight)
- [+] scared of salt
- [+] demandgold
- [+] briar thrash (spiky) - yellow 'T' (grab)
- [+] bingebark - red 'T'. wants edible, canwill snatch
- [+] leshy (human with leaves) - green 'h'
- [+] manticore - red 'm''
- [+] lion, bat lings, man head, tail tipped with iron spikes
- [+] carnivore
- [+] human sized
- [+] shoots 1-6 spikes. each spike does 1d6. too much!!
- [+] change this to be 5d3 damage per volley.
- [+] ie missiledam 4d3
- [+] can do this once every 50 turns.
- [+] can fly
- [+] claws - 1d3 1d3
- [+] want gold (non covet)
- [+] saving "a clear fountain"
- [+] getobnametrue() needs to show "a fountain of xxxx" or "a
water fountain"
- [+] addobject() needs to handle "fountain of xxx" or "water
fountain"
- [+] don't generate bones file while debugging
- [+] should amour really be 'battered' at 98% ?
- [+] make 85 and abve still mean 'pristine'
- [+] reduce bjorn cowardice anger amount
- [+] snakes shouldnt follow up stairs
- [+] fix broken f_accuracymod.
- [+] unicode for trees and dense bushland.
- [+] bug loading again......related to gratings
- [+] don't inherit alignment when giving jobs to monsters
- [+] change lf summoning to better control hostility
- [+] gods should be able to see invisible
- [+] travel spell to quickly get around branches
- [+] treant / ent = green T
- [+] old/normal/young
- [+] older = slower
- [+] elder can cast 'animate tree' ?
- [+] bug: when you offer a godstone to a god outside of realm of gods,
they are saying "no" but still taking it.
- [+] gods should yell out a warning when you walk over a new godstone
- [+] this lets the player know that picking it up will anger that
god.
- [+] then add f_donewarning to it.
F_AISPELLTARGETOVERRIDE v2.
- [+] change code:
- [+] F_AISPELLTARGETOVERRIDE v0=spellid, v1=F_AICASTTOxxx
v2=TT_xxx text=pctchance or NULL.
- [+] aispellok(xx, purpose) : check this _before_ checking
spell->f_aicasttoxxx
- [+] add spelltargetoverride for vampire
- [+] add spelltargetoverride for werewolf
- [+] retain F_FLEEFROM on polymorph.
- [+] lycanthropes
- [+] show up as "human" unless your animal/magic lore is high
enough
- [+] vulnerable to silver weapons
- [+] Wererat (3hd, weapon damage)
- [+] uses short blades
- [+] stench
- [+] want alcohol?
- [+] transform into fast version of rat. plague rat?
- [+] summon small animals. summon # override? "count:"
- [+] Werewolf (4hd, 6 dam)
- [+] summon wolves ?
- [+] shapeshift to dire wolf
- [+] regenerates
- [+] firstaid skill (fast healing when resting)
- [+] Werebear
- [+] 6 hd
- [+] shapeshift to grizzly bear
- [+] summon 2-3 black bears
- [+] firstaid skill (fast healing)
- [+] shapeshifting monsters sometimes start as animal form
- [+] if you are good/evil different alignments, mosnters should flat
out refuse to join you.
- [+] more different sayphrases for recruitment.
- [+] when placing homelevobs, try to stick to rooms, not corridors
- [+] getrandomroomcell() needs WE_xxx argument.
- [+] implement cellmatchescondition(c, cond)
- [+] real_getrandomadjcell() should use this too
- [+] swoop ability should only work with claw attacks
- [+] F_FORCEATTACKOB
- [+] getweapons() needs to honour this.
- [+] spell.c: check if you have the right attack type
- [+] aispellok: only if you have the right attack yype
- [+] horse - 2hd, brown u
- [+] Hippogriff (3hd , horse/eagle, 'u') - yellow
- [+] centaur (4hd, u) - grey
- [+] make pegasus be cyan
- [+] CATs
- [+] Griffon (7hd, tr4-5, u, hates horses) - lion/eagle - yellow
'f'
- [+] if monster dodges your first atatack, cancel the second!
- [+] make god anger/happiness fade over time, unless they are enraged
(1 per turn ?)
- [+] chance of fading is 1 in (abs(piety)/100)
- [+] don't include " [tried] when dumping bones!
- [+] "repair all"!
- [+] implement repairall
- [+] make repairall like eating (auto action)
- [+] time taken when you fall down should be longer
- [+] F_STAYINROOM monsters will go back to their lair if they ahve no
target.
- [+] more object decay in bones files:
- [+] blood splashes/pools become blood stines
- [+] all objects have a 1/4 chance of vanishing (someone picked
them up)
- [+] resting should only please glorana if your'e actually worshipping
her!
- [+] exploit: stand outside jimbo's room and pelt him! fixed.
- [+] random "behaviours" for more/less hp
- [+] around dlev 8-9, monsters are too easy. at this point i'm
dealing 10-20 damage per hit.
- [+] give monsters a "Challenge Rating" seperate to their hitdice.
- [+] instead of gethitdice(), use getcr()
- [+] change dumpmonsters
- [+] use cr() to determine what monsters will appear, not hit dice.
- [+] that way i can have certain mosnters have more hp, but still
appear higher in the dungeon
- [+] initially, assign CRs based on hit dice
- [+] when rolling hitdice for monsters, always give maximum, then
go up/down by 15%
- [+] monsters shoiuld always know spells from their spellbooks.
- [+] warn before eating your own kind if it will anger your god, and
you wisdom is high.
- [+] make disease way worse if you eat your own race's corpse!
- [+] CRASH when i try to cook firebug corpse
* [+] bones files:
- [+] when your leg is bleeding, don't lose hp for ATTACKING, only for
MOVING.
- [+] bug: issue with skill display if you learn higher than your max
level by reading a book!
- [+] in this case, reading the book should fail.
- [+] when you start worshipping felix, allow you to learn lockpicking
& thievery to full level!
- [+] infinite loop when an ashkari enters rage while already eating.
- [+] felix prayer should always unlock all nearby doors
- [+] if you add f_calwill xxx, v1=112312 v2=NA, make v2 = v1.
- [+] that way we can confer it!
- [+] say "this is xxx!" after wearing a new amulet.
- [+] fork / knife should make you eat faster.
- [+] double the hp of most armour again
AMULETS
- [+] add new bodypart = neck
- [+] object hiddennames
* [+] nouns
* [+] adjectives
- [+] flight (canwill fly)
- [+] enhance spell power
- [+] victimization (makes everything hostile) (no auto id)
- [+] blinking
- [+] anger (canwill rage)
- [+] vs poison (poison immune)
- [+] vs magic (magic resistance)
- [+] common
- [+] feather fall (dt_fall dmg = 0)
- [+] don't "slam into the ground", just "float gently to the
ground"
- [+] of amplification (boost listening skillchecks, allow you to
listen at stairs)
- [+] peaceful sleep (don't get woken up by sound, cursed)
- [+] chef's amulet(lower metabolism)
- [+] thief's amulet (lockpicking)
- [+] oval
- [+] chasm
- [+] room split in 4 by glass
- [+] concentricroom
- [+] Crash when a vault uses the object 'hole in the ground'
- [+] better method of giving spells to monsters
- [+] f_randomspellcount v0=amt
- [+] f_randomspellschool v0=ss_xxx v1=minlevel v2=maxlevle, text
= pw:xxx or null
- [+] if power not given:
- [+] castig power is (starting depth / 2)
- [+] limited by spell's max level.
- [+] OR
- [+] f_randomspellcount v0=amt
- [+] f_randomspellposs v0=spellid, optional text = power.
- [+] include these in validateraces
- [+] populate monsters...
- [+] TEST! (with fire sprite, check if it casts a spell other then
fire dart)
- [+] if monster is randomly given the job "j_wizard", you MUST pick a
subjob too!
- [+] go back to using CANCAST for monster spells, so that they show up
properly in a mind scan.
- [+] druid should start with sickle as secondary weapon.
- [+] healing not hurting undead - should be fixed now.
- [+] add description of spell powe calculation to spell skills
- [+] increase obhp of armour
- [+] i was a druid, levelled up to l4, and didn't get a new spell!
FIXED. wasn't refreshing LEVSPELLSCHOOLFROMX.
- [+] make it a lot harder to get "beheaded" etc.
- [+] show real object name in "killed by a thrown xxx" even if you
didn't see it
- [+] short blades shouldn't be able to behead.
- [+] monster threat calc should take #attacks into account!
- [+] CTRL-DIR to turn isn't working agian. fixed.
- [+] make peasoup have range 1, rather than just going straight in
front of you.
- [+] power 1 glyph of wardning useless. fixed.
- [+] reduce zombie maxattacks to 1.
- [+] bug: Are alcohol no longer covered in (null).--More--
- [+] make merlochs much more rare.
- [+] light recalc is MASSIVELY slow on some levels.
- [+] for now: remove dark levels completely?
- [+] "You see 2 sheet of ices here."
- [+] remove F_FROZEN when you cook something.
- [+] frostbite should do a little more damage. d4 instead of d3.
- [+] "%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
- [+] monsters shouldn't weild lit torches
- [+] maybe reduce the damage that they do?
- [+] change allomancy to work like psionics
- [+] change colour of carpetted floor? to what though? red.
- [+] amberon should only accept sacrifice of KNOWN cursed objects!
- [+] infinite loop when going into a sewer. fix_reachability keeps
failing.
- [+] in linkexit()
- [+] startdir getitng set to DC_E! should be orthog only!
- [+] because forcedir is DC_E!
- [+] Mummy? made of paper (ie flammable). rotting touch. curse.
corpsetype = sand or ash, and blank paper.
* [+] inflicts rotting disease "mummy's curse"
- [+] can cast cause fear (but not very often, 50 turns or so)
- [+] vuln to fire (1-8)
- [+] vuln to holy (2-8)
- [+] greater mummy
- [+] more hd
- [+] lots more damage
- [+] stronger fear spell
- [+] no vuln to anything
- [+] magic resistance
- [+] priest spells. - death disease evil revenge, guardianship.
some new ones:
- [+] rot:
- [+] instead of losing hp, lose str+fit and just no healing ?
- [+] wyvern
- [+] wyrm without breath weapon
- [+] ice demon
- [+] shardshot, power 3 (ie 3d6)
- [+] snow troll
- [+] implement
- [+] - frostbite, range 1 "exhales a freezing wind"
- [+] griddler, small demon, fire dam attack, heat metal ability,
carries a permenantly red-hot weapon
- [+] curse (curses equipped objects)
- [+] applys a curse to 1-power equipped objects.
- [+] applies a -1 penalty too, if it's a weapon/armour/can have
bonuses.
- [+] protection from good.
- [+] repel the next "power" attacks from good-aligned lfs
- [+] casttoattack xxx
- [+] this needs the player to have an alignment!!! (base it on the
job)
FROM PREVIOUS COMMITS:
- [+] if you polymorph into something with nopack, MELD your pack ?
- [+] move all from lf->pack to lf->meldpack
- [+] have to SAVE meldpack too.
- [+] monsters which attack if you get too close
- [+] eg. wolf
- [+] do they attack other monsters in range too? or just players?
- [+] poisontype_t
- [+] define them all
- [+] ie. each poison type has a fixed damage amount.
- [+] check poisonisfatal()
- [+] check F_POISONED bit in startlfturn
- [+] salmonella. like food poisoning but causes more damage.
- [+] small chance of getting sick from raw meat?
- [+] FIT check to avoid.
- [+] raw meat = gastroenteritis.
- [+] raw chicken = salmonella
- [+] rotting food = either gastro (66%) or salmonella (33%)
- [+] new monster-only jobs
- [+] guard
- [+] has lots of armour and f_noflee and f_stayinroom
- [+] set climbing difficulty based on cell type as well as material