- [+] it is because makelitradius is calling setlosdirty. and when
you do setlosdirty(player), it redraws!
- [+] solution: disable all redraws during calclight(), then
afterward reenable them!!
- [+] found two maps. read the first one. now reading the second one
doesn't identify it (make because isknown is now true!)
- [+] plants still being counted as "helpless"
- [+] combine all save data into 1 file
- [+] gamesave.dat
- [+] mapxxx.dat
- [+] regions.dat
- [+] rename elf to "Selnor"
- [+] make food poisoning last longer!
- [+] bug: pet starting in water
- [+] ability to pay at shops using gems? but no change.
- [+] implement
- [+] require speech skill at a certain level (novice)
- [+] reveal attack location for unseen attacks
- [+] bug: poisonbolt spell shouldn't cause fire damage to objects!
- [+] return to your original form after dying when polymorphed, but
just retain SOME hp
- [+] new spell: shapeshift
- [+] like polymorph but only affects yourself and always controlled
- [+] you have to pick something you can see
- [+] spell power determiens hitdice you can copy
- [+] purify food now works on all your objects, not just one
- [+] Nature god(farming, creation)
- [+] Ekrub
- [+] doesn't like wyrms because they destroy things?
- [+] objects
- [+] has a pitchfork vs dragons
- [+] longbow of xxx
- [+] sun hat
- [+] overalls
- [+] gloves
- [+] effects:
- [+] canwill all nature spells
- [+] likes
- [+] killing animals (but only while hungry)
- [+] killing dragons
- [+] casting nature spells
- [+] creating objects or lfs (wish, monsters, food)
- [+] dislikes:
- [+] destroying objects
- [+] attackob()
- [+] throwing a flask which shatters
- [+] crush objects underfoot
- [+] via non-nature spells...?
- [+] poison
- [+] attacking plants
- [+] casting poison spells (same with other antipoison gods!)
- [+] sacrifice:
- [+] animal corpses
- [+] dragon corpses
- [+] pray:
- [+] battle:
- [+] will come to your aid against wyrms
- [+] OTHERWISE:
- [+] entangle enemies
- [+] lightning
- [+] summon plants to help you
- [+] nonbattle:
- [+] purify food on player
- [+] THEN one of the following:
- [+] cure poison
- [+] fix hunger or give food
- [+] heal
- [+] give ammo (if ranged weapon equipped and out of ammo)
- [+] give it.
- [+] make it "of seeking" (ie. always hits)
- [+] mend armour
- [+] bless armour
- [+] gifts
- [+] ability: calm animals, power 10
- [+] can shapeshift into a bear
- [+] resist poison
- [+] resist cold
- [+] ranged weapon
- [+] magic ammo for ranged weapons
- [+] angry (minor)
- [+] no nature spells work while god is angry ?
- [+] taint your food and any food you touch
- [+] summons entangling vines around you
- [+] angry (major)
- [+] one of:
- [+] cloudkill
- [+] summon storm
- [+] surround you with sawgrass
- [+] when announcing new ability/spell gains, show spell power, and
allow override of lower power ones.
- [+] make "lessen gravity" also let you hold more. 15kg per power
level.
- [+] fix broken autoshortcut()
- [+] calmanimals now awards gives 25% xp (druids get 50%)
- [+] show "tried on xxx]" for scrolls.
- [+] char *knowledge_t->triedon
- [+] update maketried()
- [+] update getobname()
- [+] potion of grow/shrink should only be temporary
- [+] sizetimer v0 = newsize, v1=timeleft
- [+] bug: blessed scroll of id not being destroyed after reading it
- [+] option: autopickup_used_missiles
- [+] give everyone 1 free object drop/pickup per turn. after that
it takes time.
- [+] add the option
- [+] add f_usedplayermissile to objects before firing them.
- [+] if you walk onto an object with f_usedplayermissile
- [+] AND autopickup_used_missiles is set
- [+] ...then pick it up.
- [+] ...and remove the flag.
- [+] cooked food shouldn't "completely rot away"
- [+] fire l6: meteor - large version of fireball
- [+] burning feet
- [+] evaporate should be a fire spell too.
- [+] more gods should remove curse for you.
- [+] eyebats shouldn't sleep
- [+] make hecta's prayers even more powerful.
- [+] fix bug in bjorn's truestrike effect
- [+] bjorn should un-dull weapons
- [+] fix buggy supply closet definitions - was getting 1-5 of same
object rather than 1-5 different ones
- [+] restrict potion of growth to lower levels.
- [+] change method of determining how much you can carry.
- [+] change initial modification spell to 'enlarge object'
- [+] enlarge object
- [+] door -> seals with surroundings
- [+] rock -> boulder
- [+] sword -> greatsword
- [+] buckler -> next size shield
- [+] bag -> next size bag
- [+] or should this be a different spell?
- [+] immolate
- [+] if a successful unarmed attack, lf catches on fire.
- [+] wizard isn't weilding staff. are fists better?
- [+] freezing touch shouldn't work on dragonwood
- [+] fix bug preventing vision when meditating
- [+] auto shortcuts
- [+] wizards: pri/sec spells are 1/2
- [+] cook: lowest shortcut left.
- [+] statbar not being updated when i drink potion of magic.
- [+] warn that flying will stop mapping.
- [+] bjorn gifts should only be ones which you are skilled in!
- [+] add 'appropriate'
- [+] then apply to god.c
- [+] warn if you pick up poison stuff and you god doesn't like it
- [+] "I hope you're not planning on using that/those...."
- [+] superheat - throw potion like a grenade
- [+] retain items on polymorph if new race has f_nopack or nobodypart
for equipped stuff
- [+] move obs to lf->polypack
- [+] save this!
- [+] fix bugs with remembering/restoring stats on polyrevert.
- [+] scroll of permenance should make conferred attribute changes
permenant
- [+] change strength damage mod to be range -2 to 2 (instead of a
percentage)
- [+] corrected poison/methane gas difference.
- [+] hecta gift: necromancy books
- [+] damagecell()
- [+] make rock walls turn to rubble ("50-100 stones")
- [+] change to lore skill: incrase damage by a fixed amount, not a
percentage.
- [+] felix effect: evaulation (identify obs)
- [+] god piety should never change once thy are ignoring you.
- [+] shields should protect against crit hits
- [+] hecta no longer gives unholy water?
- [+] I'm able to use OT_A_SHIELDBASH with 0 stamina.
- [+] CRASH during loading
- [+] fixed
- [+] ...but check for more....
- [+] quaff potion of fury - "you're too tired to do that right now"
- [+] player was being prompted for locaiton when monster tried to wear
a bandage.
- [+] closing iron gates is making them opaque.
- [+] only add blocksview if the objectTYPE has it.
- [+] fountains of experience not drying up.
- [+] looking for tracks on stairs. never finding any!!
- [+] shop descriptions not working anymore.
- [+] left hand got destroyed by explosion.
- [+] i then wore a ring... and it went on "left finger"!
- [+] all spell effects should cease just before death.
- [+] crystal shield/armour shouldn't call wear() but rather just set
f_equipped directly.
- [+] bedrooms/kitchens should have tiled or carpet floors?
- [+] tiled = less stability (especially with water!!)
- [+] carpet = more stability
- [+] fire skeleton
- [+] firebug
- [+] ice wraith
- [+] winter wolf
- [+] skoob (snowman)
- [+] crymidia can cast crystal spells
- [+] blastbug
- [+] bilco - casts flood at itself.
- [+] rubber-like things
- [+] slug
- [+] snail
hand", CRASH.
- [+] rogue should start with novice speed and throwing
- [+] better method of sneaking - just hiding in one spot isn't
effective.
- [+] get "hide" at novice level
- [+] at beginner level, you can move while hiding. ( but if
someone hears you, they spot you)
- [+] if you can't see an object (ie in inventory it just comes up as
"a potion"), make the description be generic.
- [+] stealth shouldn't affect movement noise uless you are hiding
- [+] move slower when hiding.
- [+] trying to hide while already hiding will cancel it.
- [+] rename f_sneak to f_movecarefully
- [+] move "you attack the helpless xxx" into construct_hit_string.
- [+] light level should affect stealth checks.
- [+] flying should only impact stealth checks to make noise, not to
hide.
- [+] sprint should stop hiding!
- [+] weapon brand: of protection. gives AR.
- [+] make sure i show this in showlfarmour ]
- [+] shouldn't be able to backstab plants
- [+] no hiding while producing light.
- [+] changing armour should stop you from hiding.
- [+] let you hide when you can see monsters, but they instantly get
F_SPOTTED.
- [+] different verbs for god voices
- [+] remove "enhanced smell" from xat and dire rat.
- [+] make guns usually start with ammo
- [+] gain attrib point on _every_ levelup, but 2 each time not 5.
- [+] this means that we now gain 6 stat points every 3 levels
rather than 5, but they can be spread out.
- [+] rogue modifications
- [+] change starting backstab level from beginner -> novice
- [+] generated monsters: "It is sleeping. It is flying."
- [+] should be sleeping AND flying!
- [+] remove duplicate tanglemissile code.
- [+] change F_ATTREQ - split up penalty cutoff and bonus cutoff
- [+] needs a "boostafter" param.
- [+] ie.
- [+] needs at least ATTREQ agility to USE it.
- [+] if you are less than this, start applying penalty.
- [+] v2 = BOOSTAFTER level. (CHANGE)
- [+] if you are above this amount, start applying bonus.
- [+] text = scalepercent. (CHANGE)
- [+] adjust code
- [+] adjust defs
- [+] explain in io.c
- [+] test
- [+] new felix pray effect: invisibiltity
weapon!
- [+] new option when chatting:
- [+] "care to trade knowledge?"
- [+] works if:
- [+] you have a skill which they don't know (or a spell
which they don't know)
- [+] otherwise "there is nothing you can teach me."
- [+] AND ONE OF
- [+] works if they know a spell which you don't know (but
are able to learn)
- [+] works if they have the same skills as you, but better,
- [+] works if they have the a skill which you don't, AND
they are >= adept
- [+] otherwise "i fear there is nothing useful i can
teach you"
- [+] TEST
- [+] can only do this once per person ("i have nothign more i
can teach you")
- [+] if high speech, you can pick what to learn. otherwise
it's random.
- [+] bug: human rogue asking to learn 'summon weapon' but not
skilled in summoning!!!
- [+] TEST AGAIN!
- [+] speech skill determines what you can ask people about!
- [+] nov:any dangers?
- [+] beg:any useful items around?
- [+] ad:trade knowledge?
- [+] sk:join me?
- [+] (but make skillchecks harder otherwise by the time you get
the rigth speech skill level, you'll always pass!)
- [+] pay to repair. 3 gold per hp. then modify total by speech.
- [+] "splash of water" shouldn't stop you from running. at the moment
when your boots are wet you can never run because you keep
dropping water!
- [+] make delvers vuln to light
- [+] reduce potion of growth rarity
- [+] make resist poison skillcheck difficulty harder.
- [+] make holycircle/pentagram detect cursed/blessed items too
- [+] "your %s feels warm/cold"
- [+] spear shoudl have f_rodshaped
- [+] light not blinding creatures for long enough
- [+] The area is lit by a magical light! The skeleton is blinded!
The skeleton turns to flee from you! The skeleton can see
again.
(forgot its name))
- [+] INFINITE LOOP during linkexit() on sewer map.
- [+] cursed scroll of light wasn't updating view properly...
- [+] when you use a tunnel, don't say "you walk down the staircase"
- [+] use mandatory value of f_climbable text="tunnel" or
"staircase" etc
- [+] ice sprite ? (because it's water based)
- [+] sawgrass
- [+] change how repair works
- [+] always repair to 100%
- [+] skill determiens lowest hp percentage at which you can still
repair it
- [+] helper obs lower rather than increase cutoffpct
- [+] felix should take all gold and gems when you die.
- [+] reduce javelin weight
- [+] felix should accept gems as sacrifice too.
- [+] don't show "nothing happens" when felix casts reveal hidden.
- [+] when checking if an object will block a door from closing, use
the same code as when checking whether a lf is too big.
- [+] The sound of a voice: "Braaaains... awakens you!
- [+] Missing the last quote!
- [+] check firearm reloading times (F_RELOADTURNS)
- [+] add option: "automatically relaod empty firearms"
* [+] in temples, holy water is just showing up as "potion of water"
- [+] make blessed/silver arrows hurt undead etc
- [+] different temple exit messages based on f_linkgod
- [+] problem: in temples, holy water only casts $5 whereas a blessing
costs around 100!
- [+] adjust cost - increase value of BLESSED potion of water
- [+] test out the new pricing...
- [+] bug in skill descriptions.... never being added.
- [+] why? debug to find out.
- [+] because firstraceclass == NULL
- [+] make monster skill determine whether you can identify them from
footprints, not perception
- [+] lorelev = novice: "you see animal footprints"
- [+] lorelev = beginner: "you see xat footprints"
- [+] perception beginner: "you see fresh xat footprints leading
north"
- [+] linkexit() shouldn't be allowed to fill in cells at the very edge
of the map.
- [+] just say can't fill in if c->locked.
- [+] electrical trap - casts chain lightning
- [+] some traps only trigger if you're on the ground (not flying)
- [+] let you be able to dodge fire traps
- [+] in io.c, show ability timers for canwill
- [+] sacrifice of cursed obs to amberon - move this from "pray" to
"offer".
- [+] once you have prayed to one god, prevent praying to opposing gods.
- [+] implement getopposinggod
- [+] implement this - "xxx ignores you"
- [+] in god display show line in red, and "prayed" as "N/A"
- [+] need an alternate amberon anger effect if you don't have any
blessed objects.
- [+] when using 'm', skill list should show 'canwill' as 'abilities',
not magic.
- [+] when using 'm', skill list should show shortcuts
- [+] change attribs to be 0-100
- [+] getskillbracket type functions
- [+] lf definitions
- [+] this impacts skill checks and their difficulty
- [+] and object boosts / penalties
- [+] and weapon attrreq
- [+] ATTRMOD
- [+] JOBATTRMOD
- [+] io.c: attrmod, jobattrmod
- [+] getstatmod()
- [+] basically anything which calls getattr()!!!
- [+] when you levelup, increase one stat by 5, not 1.
- [+] ATTRSET and ATTRMOD in spells
- [+] make non-lethal kills (ie. knockouts) display in grey rather than
green
- [+] ability: merciful fighting? always does bashing damage, always
ko.
- [+] done
- [+] Chatting to gods shouldn't work
- [+] bug: when running with shift+dir, i'm running past corridors.
- [+] when announcing skill gains, say if they are from a level.
- [+] set lifetime to FROMJOB when giving them.
- [+] if lifetime = FROMJOB, ""you can now use the ability 'xxx'
(warrior skill)"
- [+] grenade/c4 explosions should be able to damage cells!
- [+] change grenades to have bigger radius (dtorth 1)
- [+] automatically call "fireat" for grenades
- [+] impement this
- [+] make the timer shorter!
- [+] add extra checks to stop monsters from attacking allies
- [+] replace "insane"monster behaviour with F_TERRITORIAL v0=range.
- [+] will atatck anything else visible within range xxx
- [+] grave sprite should be able to see in the dark
- [+] instead of saying "An orc [drunk]", change getlfname to return "a
drunken orc" etc
- [+] when you throw an object at someone in a wall, it should fall
onto the ground in front, NOT the wall itself!
- [+] show how MUCH high/low str/agi will affect weapon damage/accuracy
- [+] different shoddy/masterwork text based on weapon types
- [+] bug: monsters never bleed from injuries!
- [+] another bug in getavgdam - negative accuracy returns negative
damage since we modify damage by accuracy!
- [+] within this function, limit accuracy to range 0-100
- [+] bug with options - opt->id never being initialised!
- [+] don't apply "behaviours" to anythuing other than humanoids.
- [+] increase missile accuracy if you are above your target
- [+] (ie you are flying higher them them)
- [+] getflightsizemod()
- [+] change bloodsplatter for full leeches to no longer use fireat code
- [+] was a bug - wasn't handling NA for speed in F_DIESPLATTER
- [+] change fireat code to not announce "xxx flies through the
air" for platters
- [+] fix it so that things flying through the air (via fragments())
can hit people.
- [+] when calling fragments(), don't announce every single "a shard
flies at xxx"
- [+] fireat() needs "announcethrow"
- [+] stop running when adjacent to any monster (evne peaceful)
- [+] monsters should always turn to face their attackers, even if they
aren't adjacent.
- [+] multiple ring types are getting the same hiddenname:
- [+] Rings
ring of strength (flourite ring)
ring of stench (flourite ring)
- [+] validateobs now checks for this.
- [+] nearly everything seems to have 2 entries.
- [+] maybe also put a check inside addhiddenname!
- [+] addhiddenname no longer triggering dupes.
- [+] bug: planeshift not working when cast by enemies.
- [+] bug: skillxp being boosted by massive amounts sometimes
- [+] Exp Level: 15 (32150 XP, -1581 for next)
- [+] bug in getlfaccuracy - returning 9937 and boosting xpval by
massive amounts!
- [+] motel bug:
- [+] How many hours will you pay for (you have $1073)? 4 hours
($440)
You start resting (in your motel room)... You finish resting.
You wake up.
"Sleep well!"
- [+] say"sleep well" BEFORE sleeping!
- [+] for some reason i'm gaining massive amounts of skill points!
- [+] killed giant ant, got 3 points???
- [+] pointsforsp not going up fast enough, especially at high
levles (13+)
- [+] was a bug in getlfaccuracy
- [+] yumi should only check attacking helpless on your FIRST attack.
- [+] if you have subsequent ones, they're ok since you can't
control them!
- [+] don't please or anger gods when fighting gods
need to delete all the map flags we added.
- [+] in fix_reachability, never create corridors on the perimeter of
the map.
- [+] realmofgods should be a fixed vault. like stomach. no exits.
- [+] bug: addmosnter() not setting lf->born when autogen = false
- [+] bug: monsters trying to pick up objects with f_nopickup
- [+] gods shouldn't flee after stealing.
- [+] regenerating troll corpses!
- [+] F_REVIVETIMER v0 = cur v1 = max. if v0 = v1, change object
to race v2.
- [+] + troll corpses do NOT decay.
- [+] worm stomach now uses tag:stomach rather than f_vaultisstomach
- [+] fire sprite should drop corpse AND fire
--This linee and those below, will be ignored--
M nexus.c
M attack.c
M text.c
M objects.c
M vault.c
M lf.c
M data.c
M map.c
M spell.c
M defs.h
M ai.c
M vaults/stomach1.vlt
- [+] monster with tremorsense can 'hear'
- [+] allow attacking of wall cells with normal melee attacks
- [+] glass should shatter
- [+] option: stop running on hearing a sound
- [+] make describerace use downline().
- [+] make certain strengths and weaknesses not show up in player
selection
- [+] An uncursed manriki wraps around the hawk. The hawk falls to the
ground.
A black bear comes into view.
You critically scratch #. The black bear roars.
- [+] check construct_hit_string.
- [+] i was hitting a hawk.
- [+] still some entrances overlapping glyphs.
- [+] genericise checking code in fix_Reachabilty
- [+] Also: in fix_reachability, disallow linking to cells which:
- [+] are adjacent to a door
- [+] are part of a vault with maintain_edge, and are 't marked
as exits.
- [+] looking a bit better now...
- [+] incorrect glyph colour for animated zombies
- [+] grow/shrink potions? to change lf size to fit armour.
- [+] resizelf()
- [+] modification spell (l2)
- [+] grow
- [+] shrink
- [+] potions
- [+] cursed growth does shrink
- [+] make rare monsters / objects only sometimes be known.
- [+] only show map name if it is IDENTIFIED, not just known.
- [+] don't allow jumping onto impassable object
- [+] food doesn't rot if it's on ice
- [+] rename fly to gnat
- [+] 'reflection' mod for shields
- [+] bounces thrown objects stuff back
- [+] b - a silver shoddy bastard sword
- [+] show object's condition before changed material state?
- [+] bug: torches aren't lighting up walls when walking in corridor!
- [+] scrolls with f_scrollneedsob should say 'tried on object'
- [+] dungeon light
- [+] lit shoudl be "illuminated" and be an enum
- [+] IL_FULLYLIT
- [+] IL_WELLLIT (dark, candelabras in every room and moss
every 4 steps)
- [+] IL_DIM (dark, torches in rooms and moss every 6 steps)
- [+] IL_SHADOWY (dark, torches in some rooms and moss every 8
steps)
- [+] IL_FULLYDARK (ocassionally moss in rooms, otherwise no
light at all)
- [+] need more fixed light source objects:
- [+] moonmoss and sunmoss
- [+] if not fully lit, map illumination level determines how often
light sources are placed, and what type.
- [+] special monster behaviour (perception or lore will show this?)
- [+] insane monsters (attacks anything)
- [+] hunting for food (hungry, add covets food)
- [+] returning to lair with plunder (extra treasure)
- [+] timid (lower morale, maybe add f_timid or alwaysflees)
- [+] drugged (never flee)
- [+] drunk
- [+] diseased (start with a non-lethal disease. eating its corpse
infects you)
- [+] determined (will chase the player for longer)
- [+] lazy (chase for less time)
- [+] only show if perception >= skilled)
- [+] only show monster jobs if lorelev >= beginner
- [+] bug: cursed scrolls no longer having bad effects. fixed.
- [+] after you fool a monster by feigning death, it shouldn't target
you for a while.
- [+] prevent wands from being blessed/cursed.
- [+] bug: still no displayed text when your pet dies.
- [+] update: this seems to happen when a monster is killed by
another monster
- [+] The bear cub claws the dog. The dog wakes up.
- [+] fixed!
- [+] hwen monsters start with weapons/sheilds, their starting skill
should be based on hit dice.
- [+] max skill is hitdice / 3
- [+] wake up player before giving god gift!
- [+] "a goblin shaman moves out of view"
- [+] but i didnt hav ehigh enough lore!
- [+] maybe real_getlfname needs "showall". check this istneda of
usevis to see whether to show job.
- [+] crash when objects fall through a hole and the lower hole needed
to be moved slightly.
- [+] bug: invisibility is fooling even things with 'enhancesmell'
- [+] water onto dirt only makes mud if there isn't some already there.
- [+] monk fists DR should max out at 12 or so, since #attacks keeps
going up!
- [+] don't show god pleaseing messages when asleep
- [+] bug: showing '%s dodges" when you can't see it.
- [+] fix rarity of wands
- [+] reward at bottom of caves:
- [+] godstone of war (cases RAGE on everyone near you)
Goblin cave bosses:
- [+] goblin king
- [+] young dragon
- [+] You walk down the staircase...
ERROR - can't find opposite end of stairs/portal!
- [+] You walk down the staircase... ERROR - unlinked stairs!
- [+] This is related to the fact that all the staircases came from
Jimbo's vault
- [+] For some reason we're not linking them when they come for ma
vault!!!
- [+] "joining unliked stairs" section not working???
- [+] it calls getstairdestination, but this DOESNT call
linkstairs!
- [+] maby: call autolink everytime i add stairs ? or only do
this during createvault ?
- [+] automatically remove useless doors (ie. ones where all adjacent
walkable cells are in the same room)
- [+] in fix_reachability i'm drawing a corridor through vault/room
walls. <- probably this one.
- [+] don't allow auto reachability to enter rooms through the
wrong side wall.
- [+] TEST during regular playtests, see if maps look better.
- [+] quality on doors.
- [+] sturdy / plain / shoddy doors. this impacts the hp
- [+] stone doors (solid / plain /crumbling)
- [+] metal ( reinforced / plain / rusty)
- [+] only show this if perception >= beginner
- [+] dungeon shapes
- [+] new cell attribute - locked.
- [+] calcroompos can't make rooms on locked cells.
- [+] normal
- [+] cross
- [+] circle
- [+] turret
- [+] - premask out blocked cells before generation!
- [+] minion code - if leader dies,
- [+] minions drop morale
- [+] and might either immediately flee
- [+] need lastdamlf
- [+] if wisdom >= gtaverage, automatically turn off lamps when you go
to sleep
- [+] "scratch"/"gnaw" etc should be based on actual damage hp amount,
not percentage.
- [+] change getattackverb()
- [+] 1-2
- [+] 3-6
- [+] 8-12
- [+] 12-18
- [+] 18+
- [+] shop objects should start with all flags known.
- [+] allow usage of godstones without id'ing them first. this will id
them.
- [+] weapon/armour shop should resize armour for you for a cost.
- [+] chanelling bonus
- [+] novice
- [+] tell you when wand is low on charges (0-3)
- [+] beginner
- [+] let you determine exact remaining charges in wands once
it is == 1!
- [+] adept
- [+] let you determine exact remaining charges in wands once
it is <= 3!
- [+] skilled:
- [+] let you determine exact remaining charges in wands once
it is <= 6!
- [+] master
- [+] lets you always see full amount of want charges.
- [+] lets you convert your mp into wand charges? "imbue item"
- [+] ....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
- [+] gate spell should always take you to a location wihtout water!!
- [+] enhance speak with dead spell (SPEAKDEAD)
- [+] may ask "how did you die" plus one of the below:
- [+] tell me about the area
- [+] mark stairs on the map
- [+] mark shops on the map
- [+] tell about very rare objects
- [+] tell me about nearby dangers
- [+] tell about odd monsters
- [+] tell about traps
- [+] test
- [+] let you ask peaceful lfs about the surroundings too
- [+] move code into io.c "askaboutarea(char *who)"
- [+] test
- [+] the first time you ask someone for info, randomly determine
whether they know about:
- [+] stairs (high chance)
- [+] shops (medium chance)
- [+] traps (low chance)
- [+] areacomms_danger should include out of depth monsters - need
isoutofdepth(lf)
- [+] room floors should take the entry type from the habitat, NOT just
use ct_room!!!!
- [+] sometimes generate fixed SEWER regionthings
- [+] done
- [+] BUG: canT enter goblin caves again!!!!
- [+] getting "ERROR - can't find opposite end of stairs/portal!"
- [+] FAILED to link stiars: 'tunnel leading up'
- [+] make maps direct you to regionthings.
- [+] region things need unique IDs !!!
- [+] change F_MAPTO
- [+] v0 = src region id
- [+] v1 = src depth
- [+] v2 = regionthing with whatkind = RT_REGIONLINK
- [+] when generating map objects, fill in a random branch entry
- [+] fix getobname code for unknown maps.
- [+] TEST
- [+] with "map to the goblin caves"
- [+] with "map"
- [+] with "map to"
- [+] use "the goblin caves are to the north", not "is to the north"
- [+] is
- [+] isn't
- [+] test reading a map when on the wrong branch
- [+] test reading a map when on the wrong level
- [+] test reading a map when on the right level
- [+] move staircase generation to END of map create
- [+] finalisemap()
- [+] countobswithflagval(obpile, flagid, val0...)
- [+] countmapobswithflagval(map, flagid, v0...)
- [+] jimbo's map should lead you to one of the major branches.
- [+] crit pos shouldn't be higher than you can reach!
- [+] same size or bigger = can reach anything
- [+] 1 size smaller = you can't reach the head
- [+] 2 sizes smaller = can't reach head or hands
- [+] 3 sizes smaller = can't reach head, hands or body
- [+] jimbo's room should contain all the staircases
- [+] make you have to pass a speech check before people will tell you
about the area
- [+] bug in recruitment skillchecks - using wrong attribute, and too
easy.
- [+] rename dwarf to delver
- [+] somtimes say "dons" instead of "puts on"
- [+] stop running for any non-cosmetic object.
- [ ] echoing?
- [+] OPTIONS
- [+] option_t
- [+] id
- [+] letter
- [+] text
- [+] int enabled
- [+] int default
- [+] next/prev
- [+] addoption()
- [+] getoption()
- [+] dooptions()
- [+] list them all (with 'more' for multipages)
- [+] pressing a letter toggles it.
- [+] "display trails"
- [+] make scents be "cosmetic"!
- [+] increaes skeleton's vulnerability to falling
- [+] missing announcement for bleed()
- [+] let rapid ivy cast entangle
- [+] caves
- [+] new regiontype
- [+] new link
- [+] new habitat
- [+] objectlass rarities
- [+] assign obs/mons to habitat
- [+] code to dig caves
- [+] stairs linking to cave region
- [+] when learning random skills:
- [+] prefer lower-level skills
- [+] onyl learn up to adept level
- [+] animate dead crashes if there is no space to place the lifeform!
- [+] increase range of charge ability
- [+] when you gain techusage, check held objects for conferred flags.
- [+] bug: motion scanner working even though i have no tech usage!
- [+] warn player before climbing without climb skill (if wisdom is >=
average)
- [+] regions should have depthmod.
- [+] regionthings should be based on DEPTH, not difficulty!
- [+] rename firstdungeon to maindungeon
- [+] announcearrival broken -always saying 'new area'
- [+] don't use ranged attacks when feigning death if target is adjacent
- [+] don't say 'argh' if you were beheaded.
- [+] The bear cub bites a wooden door with a teeth.--More--
- [+] random levelup skills - only select from skills which we have
used?
- [+] need to chance f_hasskill to use f->val[2] = used_this_level
- [+] when you gain a skill, set f>val[2] = b_false or NA
- [+] add setskillused for all skills!
- [+] make random levleup only pick from used skills.
- [+] TEST
- [+] knowledge skills - practice them when you see a new lf of this
type.
- [+] slithering shoudl hardly ever awaken you - make listen check
harder.
- [+] don't put fireplaces in corridors. F_ONLYINROOM ?
- [+] bug: acid trails from slug disappearing or never appearing?
- [+] snails/slugs
- [+] killed by salt
- [+] vslow
- [+] snails have vhigh armourrating
- [+] slugs have lots of hp and do more damage
- [+] brown/grey 'j' ?
- [+] leave slime/acid trails?
- [+] make skeletons vuln to fall
- [+] sz_tiny an below objects shouldn't block doors from closing
- [+] double message for energy blast trap
- [+] scroll of charging/replenishment
- [+] random wands - maxcharges shouldn't be fixed to the start amount
of charges. should be the highest possible start amount!
- [+] fixes to jammed door opening
- [+] flying creatures are too hard to hit.
- [+] make armour piercing be a number not a boolean on/off
- [+] make axes be armour piercing.
- [+] change display of armour piercing in io.c to reflect f->val[0]
- [+] change"of sharpness" to "of penetration", and make it use
f_armourignore, not f_armourpiercing
- [+] You start training... . Your frozen battered lit torch freezes
some more.
Your training is interrupted! Something burns you.
- [+] but i didnt even have a torch! got this msg for someone else?
- [+] Frozen by a ice sprite's frozen battered lit torch.
- [+] don't show the condition
- [+] STILL problems with jammed doors opening on the first try
- [+] add more armour sizes for tiny etc, but leave it so that only
medium/human/large are randomly generated.
- [+] battery - chargable things take power from this (anything with
f_replenishable)
- [+] do this during usecharge()
- [+] only if it's known.
- [+] show charges in makedesc_ob
- [+] nullify spell (wild)
- [+] nullify wand
- [+] don't allow criticals on plants since they don't have blood,
ribs, etc
- [+] gremlin (tools/tech/wands don't work)
(combine two).
- [+] get dizzy if you turn too much.
- [+] stomach
- [+] obejcts - gems etc (check phone)
- [+] if you kill it form inside, you get expelled.
- [+] don't say "you hear fighting" when things are attacking you!
- [+] fix crash in polymorph code
- [+] All bandits should demand gold
- [+] when you give it to them, thel ALL get satisfied.
- [+] more flagpile corruption still happening.
- [+] wasn't allcoating enough space for losdark in precalclos.
- [+] still missing death announcement for plauyer pets
- [+] reduce #attacks for young hawk to 1
- [+] mercy
- [+] say this to intelligent mosnters then pass a speech check
- [+] if you pass:
- [+] they say something
- [+] they ko you
- [+] monstesr shouldn'ts randomly move into unconscious/dead lfs
- [+] monsters should take wanted obs from adjacent unconscious lfs
- [+] when you wake up: "some/all of your items are missing..."
- [+] at beginner weapon skill level: exposed strike - takes longer but
higher accuracy?
- [+] impaler frog
- [+] sinkmite
- [+] drills for hands
- [+] canwill Ot_s_dig
- [+] targetting:
- [+] fleeing: downwards
- [+] can drill downwards to flee
- [+] can dig through walls
- [+] necrons:
- [+] trapper - blue
- [+] reaper - red
- [+] scythe
- [+] hurricane strike
- [+] bug: necron reaper is not preffering its weapon for attacks....
why?
- [+] check attackcell()
- [+] fix colour in retaliation text
- [+] need to announce hurricane strike ability
- [+] amnesia scroll - lose all skill points!
- Hecta effects
- [+] flay flesh (bleed depending on hitdice)
- [+] hecta's servent (skeletal hand rises, cannot move, grabs adjacent
lfs, drags underground)
- [+] 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
- [+] symptoms
- [+] often happens right after creating a new map (ie. trigger
it through a gate spell)
- [+] bug in createriver(). fixed.
- [+] somehow casting GATE is causing object flagpiles on
the PLAYER's map to become corrupted.
- [+] "the young hawk wakes up" CRASH, flagpile corrupt on
stone.
- [+] object itself seems okay.
- [+] o->flags is becoming corrupt!!!
- [+] so all its flags are becoming corrupt (id = massive
number, next = fffff)
- [+] traceback:
- [+] #0 0x0000000100081188 in killflag (f=0x103321090) at
flag.c:815
#1 0x0000000100081b3a in timeeffectsflag
(f=0x103321090, howlong=1) at flag.c:1075
#2 0x00000001000825f8 in timeeffectsflags
(fp=0x1038e0600) at flag.c:1302
#3 0x0000000100129b01 in timeeffectsob
(o=0x1036e2460) at objects.c:11877
#4 0x0000000100005114 in timeeffectsworld
(map=0x102aa1a00, updategametime=-1) at nexus.c:1685
#5 0x0000000100003a28 in donextturn
(map=0x102aa1a00) at nexus.c:952
#6 0x00000001000029b1 in main (argc=1,
argv=0x7fff5fbff848) at nexus.c:525
- [+] try this: in timeeffectsflags on objects, check PREVIOUS
object's flagpile.
- [+] try this: add checkflagS() after updatefpindex
- [+] NOT happening during timeeffectsob().
- [+] compile with optimisation.................
- [+] hapepning in createmap. but objects on the PLAYER's map
are being corrupted, not the new one.
- [+] happening in addrandomthing()
- [+] happening in addmonster().
- [+] lf = addmonster(c, R_RANDOM, NULL,
B_TRUE, 1, B_TRUE, nadded);
- [+] (glowbug was created)
- [+] happening in addlf()
- [+] glowbug again!! to do with light recalc ??
- [+] happening in setrace()
- [+] happening while inheriting F_AWARENESS. have double
checked to confirm this!
- [+] in HASLOS????!!
- [+] addflag->flagcausesloscalc, so haslos for all on the map.
problem happens when we call haslos() for the lf getting
F_AWARENESS added.
- [+] is the problem that doing a los recalc breaks when we are
still missing half our racial flags ?
- [+] QUICK FIX:
- [+] dont recalc los for any lf where born = 0. just set
nlos to 0
- [+] and manually recalc los just before returning from
addlf
- [+] put sawgrsaas back to being common, not frequent
- [+] is this finally fixed now? i think so!!
- [+] if so, remove calls to "checkallflags" and most calls to
checkflags()
- [+] remove agility bonuses for weapon acc. now comes just from
skill and from agi scaling on weapons.
- [+] maybe difference in hit dice is a bad way to determine
shieldblock difficulty.
- [+] ...because the player rapidly gets higher than all other
monsters on their dungeonlev.
- [+] maybe just use monster's hitdice, ignore players.
- [+] bug: abilities costing no stamina?
- [+] in addmap, i am not initialising enough nextmap[]s
- [+] flag.c bug: don't need to set player->losdirty when recalcing
light on a different map
- [+] lfs with F_DOESNTMOVE weren't attacking
- [+] manuals are starting off known. why??
- [+] they don't appear in knowledge, so don't appear to have a
hiddenname at all.
- [+] make magical barriers block view.
- [+] when describing armour / shield penalty, say
- [+] "will lower your accuracy by 1"
- [+] instead of
- [+] "will lower your accuracy by 5%"
- [+] make firstaid skill incrase your hp per level
- [+] high agility seems to be giving a MASSIVE accuracy increase when
higher than weapon's stat.
- [+] maybe remove or reduce AGI acc bonuses.
- [+] sack started off containing a FOOD VENDOR!@#
- [+] size check obviously isn't working.
- [+] need "obfits" in givestartobs!!
- [+] hitting ESC when firing with F doesn't cancel.f
- [+] hunter should start with fur cloak
- [+] spellbooks are too cheap ($12)
- [+] remove'p' for lockpick- just operate the lockpickobject.
- [+] removed,
- [+] ...but now tha tI've removed 'p' for picklocks, can i still
use 'o' on a dagger or similar?
- [+] NO
- [+] maybe turn "pick lock" into a still
- [+] how do you gain this? level 1 lockpicking
- [+] then make lockpicks etc non-operable
- [+] fix crash when drunk lfs take damage
- [+] sleeping powder costs nothing
- [+] memleaks??? 700mb usage!!
- [+] valgrind
- [+] found a memleak problem: definitely lost: 10,719,039
bytes in 11,420 blocks
- [+] not killing flags when we kill an object!!!!! fixed now.
- [+] memory usage is now ticking up heaps more slowly.
- [+] investigate further with valgrind again.....
- [+] when summoning, prefer cells for which the player has los.
- [+] make jammed doors harder to open.
- [+] no forcing a door open on your first go. should be:
- [+] the door is jammed!
- [+] you force it open.
- [+] used f_jammed v1 = known
some damtypes
- [+] BUT each weapon can only block certain damtypes (whereas
shields can block all melee damtypes)
- [+] add f_canblock to some weapons
- [+] add f_canblock to shields
- [+] check_for_block() should be a function
- [+] getallshields()
- [+] move othermod in SC_SHIELDBLOCK out of skillcheck().
calculate the bonus beforehand instead??
- [+] update descriptions for weapon skills
- [+] can only block if you have full attrib requirements for this
weapon
- [+] update io.c to show what weapons/shields can block. "it can
block xx, xx and xx damage"
- [+] weapons can't ever block projectiles
- [+] make pickup/drop actions heaps faster
- [+] better description of agi/str affecting weapon accuracy/dam
- [+] stinkbeetle should be hostile, and should have bite attack ,not
zapper
- [+] don't recover stamina while training
- [+] add seetext for "a blaring siren"
- [+] draw up a matrix for weapon types
- [+] draw it up for:
- [+] accuracy
- [+] damage
- [+] attack speed
- [+] crit chance
- [+] then adjust weapon stats
- [+] in shops, "?" now lets you examine an object
- [+] add canwill option for abilities: "stamcost:" (to override
stamina cost)
- [+] add it.
- [+] bug: pickaxe not working
- [+] "you start digging". but nothign more.
- [+] salt kills:
- [+] frog
- [+] impaler frog
- [+] canwill jump
- [+] ranged tongue attack
- [+] killed by salt
- [+] BUG; getting manuals with no contents
- [+] odd-sized armour should cost more.
- [+] need to set statdirty when we change armour.
- [+] when we say "you see x and y here", don't include obs we can't see
- [+] no evasion if grabbed/grabbing
- [+] polyrevert only usable if you cast the spell AND it's controlled
- [+] salt kills leeches, causes pain in lfs who are bleeding
- [+] raging ai will attack anything
- [+] rage gives big morale boost
- [+] potion of fury
- [+] don't run onto water if it will hurt you!
- [+] bad brands should be cursed more often. brands should have
"startcursedchance"
- [+] brand->blessstatus, br->blesschance
light level changes
- [+] try implementing "haslosdark"
- [+] TEST TEST TEST - at the moment this is causing massive
amounts of redraws!!!
- don't announce sounds when we can see the source (but monsters still hear them)
- [+] remove damage from jumping onto other lfs
- [+] when you jump in water or something lands in water: "you hear a
splash"
- [+] tweaks to how evasion works.
- [+] The book crumbles to dust. Your manual is no longer glowing.
FIXED.
- [+] fix msghistbuf for askchar - not showing your choice.
- [+] in shops, show prices in red if you can't afford them.
- [+] retaliate should only work if you're still adjecent
- [+] show Ravenous in RED
- [+] no xp for rapid ivy clones
- [+] make weapon of impact only knockback 33% of the time (instead of
always)
- [+] don't set F_NOSCORE when quitting.
- [+] some scrolls cost $1??
- [+] You see a masterwork shoddy club here.
- [+] shouhldn't be able to have both!!!
- [+] change bleeding code. lowhp doesn't mean bleeding.
- [+] also change flee on bleed etc
* [+] bug with adding obejcts to shops
- [+] issue with objects dying and killing their flagpiles
- [+] A medium fire dies down a little. A medium fire is no longer
glowing.
- [+] shouldn't say "is no longer glowing" when we're changing the
type... ?
- [+] put a breakpoint on "is no longer glowing"
* [+] let you bless objects using a holy circle somehow (but it might
make the circle disappear?).
- [+] darness bug - need to recalc light for anyone who sees a cell's
lightlevel change.
- [+] call more() after showing vaultentertext()
- [+] remove "inspected" when you ident or makeknown an object.
- [+] BUG - no objects in inventory!!!!
- [+] listobs failing? mylist[0] = null.
MEMLEAK
- [+] finish implementing CLEANUP()
- [+] crash in cleanup() -> killot() -> findleak.c_stuff while freeing
STACKABLE flag from cactus fruit???
- [+] better now?
- [+] now a crash freeing hiddennames!
- [+] forgot to free obmods
- [+] leaking approx. 1 meg per turn!
- [+] where am i leaking?! maybe try valgrind or findleak.c
- [+] findleak.c now finds nothing.
- [+] but i am sitll leaking?????
- [+] related to lifeform count. killing all but player dramatically
slows it.
- [+] check calclos()... looks okay.
- [+] setcellknown() ?no.
- [+] startlfturn?? no.
- [+] remove unused "lf->viscell"
- [+] when there are 2 things in a cell, say "you see x and x here."
- [+] restore original stast when polymorphing back to original form!!!
- [+] when making shops, pick new ones more often.
- [+] change to maps: don't let vaults overlap.
- [+] HARDCODE object values
- [+] potions
- [+] tech
- [+] tools
- [+] rings
- [+] increase evasion skill effects
- [+] changes to animradial... and animradialorth
- [+] combine into one function
- [+] move msg into here
- [+] refs to spellcloud()
- [+] refs to animradial()
- [+] fire should spread onto flammable lifeforms
- [+] bug: attack flurry doesn't work for monk
- [+] let monsters climb even when not facing a wall?
- [+] set their facing first.
- [+] CRASH when you die while climbing (or on a solid cell)
- [+] rings
- [+] stench
- [+] breath water
- [+] detect life
- [+] deceleration
- [+] meditation
- [+] reflection
- [+] boost magic power
- [+] education - gain xpskills more quickly
- [+] crit protection
- [+] greed - detect obs
- [+] ivy - grows!
- [+] ragefungus - bezerk spores
- [+] nutter - drops peanuts
- [+] dish which slightly increases maxhp (beginner level)
- [+] stuffed mushroom. shiitake mushroom + bread
- [+] healing potions should heal even "permenant" injuries
- [+] potions/spells
- [+] summon decoy (chicken horde) spell - "friends!"
- [+] potion of spider climb (arachnid adhesion)
- [+] gloves of the spider
- [+] F_startobwepskill sk_shortblades etc
- [+] change mosnter starting weapons to be based on wepsk, not
specific named weapons
- [+] make wrapprint cope properly with 0 length strings
- [+] fix io.c showlfstats layout
- [+] fountains of xp should always dry up after one use!
- [+] plants shouldn't leave footprints!
- [+] fix overcomplicated code in updateknowncells
- [+] you always "see" allies following you down/up stairs, even if
they are behind you.
- [+] remove dtresist slash from skeletons - their bone skin reduces
this already.
- [+] leave dtresist pierce because it's hard to hit them.
- [+] confirm gold amount when donating to shops
- [+] increase piety by half of any gold donated to temples
- [+] move hp, mp, sp to same line as target, and make them into bars
- [+] HP:[ 11 / 11 ]
- [+] makebar(window,min,max, loss,barcol, losscol)
- [+] print the prefix: "HP:["
- [+] construct the bar string to fit into 10 chars: " 11 /
11 "
- [+] print it one char at a time, setting bg as follows:
- [+] background:
- [+] 0 - min is barcol
- [+] min+1 - min+loss is losscol
- [+] rest is black
- [+] print the suffix: "] "
- [+] remember last dam amount for hp.
- [+] show mp and stamina like this too.
- [+] update viewpoint sooner when moving vertically
- [+] if you can't comprehend the contents of a spellbook, don't ID it!
- [+] hpbar: pass textcol and texcolwithbg
- [+] show f_stability in @e
- [+] don't identify tech inside shops if it's beyond your skill level
- [+] bug: "a cursed +-1 ring of dexterity"
- [+] enraged or deaf lfs shouldn't respond to chats
- [+] drawbar: show mp/sp text in orange if it's at 0.
- [+] allow vegetarians to eat frozen corpses.
- [+] anything flying + stunned loses flying.
- [+] chance for monsters to throw missiles is reduced when acc < C
- [+] use same code as firearms
- [+] undead shouldn't lose consciousness - they should jsut die.
- [+] bazaar
- [+] money vault hsould be vrare
- [+] so should traproom
- [+] rename giant rat to "dire rat"
- [+] don't show anything other than object description and throwing
for unknown tech
- [+] shouldn't be able to rest in a tent if it's not known!
- [+] eyebat corpse increase maxmp?
- [+] blessed missiles should nearly always hit undead
* [+] too easy to dodge thrown missiles?
- [+] spell and wand of culinary abundance
- [+] if a carnivorous animal kills you: "Eaten by a xxx"
* [+] bug: stairsperlev is only ever used in making DUNGEONS.
generecise this ??
- [+] safetorest - should ignore monsters feigning death
- [+] broken nose should reduce smell range
- [+] fresh and stale bread should be interchangable in cooking
- [+] make scroll of permenance act on you, not your objects
- [+] tweak object rarity yet agian...
- [+] bug: hole in roof above player start pos is immediately destroyed.
- [+] change pickaxe to be like resting
- [+] wait first, then if not interrupted, do the dig.
- [+] add cell->hp, celltype->hp. around 100.
- [+] f_digging, x, y, digperturn
- [+] interrupt() will stop this.
- [+] each turn, lower hp of cell by 1.
- [+] make wlaking bakwards take less time based on athletics skill!!!
- [+] at adept, takes no extra time?
- [+] better racial display
- [+] ? for extra info.
- [+] hitdice
- [+] general attribs (str etc)
- [+] don't show description until you press '?'
- [+] addbonustext(flagpile, f_BONDESC, "asdffas") - to avoid
index issues
- [+] remove VULNS from "effects" unless temporary
- [+] isresistantto() etc need to have "int onlytemp"
- [+] remove VULNS from manual BONTEXT flags
- [+] CRASH IN DTVULN CODE!!
- [+] limit '?r' display ??
- [+] what to show
- [+] show races you have encountered
- [+] show races you know about through Lore (adept level)
- [+] show playable races?????
- [+] structs
- [+] race->encountered
- [+] need to save this.
- [+] make EFFECTS only show TEMPORARY effects or ones which don't come
from race?
- [+] automate bondesc/pendesc based on flags!
- [+] vulnarabilities / resist / immun
- [+] vision range!! (visrangemod)
- [+] size? restricted armour.
- [+] stayinroom
- [+] f_humanoid (can use weapons)
- [+] tamable
- [+] seeindark
- [+] caneatraw
- [+] enhancesmell
- [+] caneatraw
- [+] vegeatrian
- [+] cernivore
- [+] fastmetab
- [+] startskill
- [+] tremorsense
- [+] silentmove
- [+] deaf
- [+] flying / levitating
- [+] awareness
- [+] nocturnal / diurnal
- [+] heavyblow
- [+] packattack
- [+] dodges
- [+] autocreateob
- [+] MPMOD
- [+] HPMOD
- [+] MEDITATES
- [+] PHOOTMEM
- [+] canwill "Spells: xx, x, x, x"
- [+] spells:
- [+] animate stone - "power" walls turn into stone golems
- [+] implement spell
- [+] golem
- [+] r_golemstone
- [+] knockback attack
- [+] high str
- [+] fists
- [+] corpsetype and iunsummonob = boulder
- [+] spell power modification - subtract spell level.
- [+] when i go down a drain, make sure the new map links to THE DRAIN
I WENT DOWN. not some otehr one.
- [+] some monsters shouldn't sleep! add new flag: f_nosleep
- [+] make spanner help disarm traps!
- [+] bug: knocking a sleeping lf unconscious fails, they kepe
sleeping. need to change the f_sleeping flag!
- [+] another secret door bug: can identify them in askcoords!! fixed.
- [+] wrong order for text:
- [+] You attack the helpless kobold! You kill the kobold!
The kobold shouts "This isn't over!".
- [+] SOLUTION: say "the dying kobold shouts ...."
- [+] only use death text somtimes. random chance.
- [+] force player sarting dir to be the one with the most LOS cells.
- [+] avian/ashkari monks
- [+] at both initial creation and levleup:
- [+] need to update hasattack claws, not hasattack fists.
- [+] genericise this to just use whatever f_hasattack flag you
have?
- [+] bug with flying creatures falling:
- [+] You miss the giant bat. The giant bat bites you.
The giant bat stops flying. The giant bat falls to the
ground.
The giant bat's ribs are cracked!
- [+] was causing ATTACKER to fall, not defender.
- [+] fix bug with objects falling through pits.
- [+] new sewer map type:
- [+] BUG: getting empty map!!!
- [+] roomon etc is good.
- [+] but map empty
- [+] probably an issue with corridor vs section size...
- [+] make drains be locked again
- [+] grating causes stench
- [+] monsters:
- [+] aquatic animals (piranha, merloch, etc)
- [+] slimes
- [+] troglodytes (and anything which causes stench)
- [+] rats
- [+] water snakes
- [+] drains should make sounds ("you hear a drip")
- [+] snakes shouldn't get nauseated.
- [+] F_NOSMELL.
- [+] feigh death shouldn't work on things which are attached to you
(leech/mosquitoid)
- [+] stores should never sell gold coins!!!
- [+] givestartobs() - give a potion of water instead if it's going
to a shop
- [+] no resting when raged
- [+] make MAXIMUM map height higher. bumped from 20 to 30.
- [+] grating cell/object?
- [+] liquids fall through it.
- [+] to unlock it:
- [+] loosen with spanner
- [+] knock spell
- [+] pick the lock
- [+] lock hacker
- [+] flying creatures shoudl fall to the ground when unconscious
- [+] (this might kill them)
- [+] animate statue - bring statue to life
- [+] excavate - radial, obliterate walls + obs, doesn't affect lfs
- [+] test unicode wall glyph! 0x2588
- [+] use unicode for gas
- [+] change f_glyph so that v1 = symbol, instead of text = symbol
- [+] change code
- [+] change definitions (macro)
- [+] test
- [+] implement puff = UNI_SHADELIGHT
- [+] implement cloud = bolded
- [+] if good, extend to staem etc
- [+] blue background for lfs in the water
- [+] prone in water means effective lower height
- [+] glass/ice cells not shattering properly
- [+] make magic barriers be solid too
- [+] combine lockpick code in io.c and objects.c into the lockpick()
function.
- [+] first ask what to use (if required)
- [+] then ask what dir (if required)
- [+] then ask what to unlock (if reuiqred)
- [+] then do it
- [+] locked containers
- [+] picklocks prompts to try them.
- [+] in addob, use non-inheritable f_lockedchance for both doors
and chests?
- [+] v0 = chance v1 = mod per depth
- [+] doors:
- [+] base 20% chance locked
- [+] every 5 levels, add 10% chance
- [+] add this to chests / safeboxes
- [+] operate doesn't let you open them
- [+] bugs in linkexits and linkexit
- [+] linkexits: wasn't checking the correct exit cell!!!
- [+] lnkexit: wasn't blanking the startcell
GRATINGS:
- [+] flags:
- [+] addflag(lastot->flags, F_OPPOSITESTAIRS,
OT_HOLEINROOF, NA, NA, NULL);
- [+] climbable d_down NA
- [+] BUT you can't climb it if it's locked.
- [+] usestairs() - if you climb a grating and it has no maplink:
- [+] use createregionlink(map, cell, grating_object, NULL,
RG_SEWER, map->region)
- [+] make stench affect enhancedsmell creatures more.
- [+] excavate should only affect SOLID matter.
- [+] going down a drain:
- [+] "You walk down a staircase" should be "climb down a drain"
- [+] deep slime in sewers sohuldn't spread
- [+] deep slime should spread to a slime puddle if it does....
- [+] fix background glyph colour for slime
- [+] killed by drowning should really be "drowned in %s"
SEWER HABITAT
- [+] permenant stench
- [+] if you're in a sewer cell and are not nauseated, add it.
- [+] nauseated doesn't expire in sewers.
- [+] add RG_SEWER
- [+] new regiontype - RG_SEWER
- [+] map:
- [+] pick size 2 - 5
- [+] start at x=2,y=2
- [+] add square 3x3 rooms in gridlike layout (but need space for 5)
- [+] connect rooms to orthogonally adjacent ones with passages
- [+] use addexits(). no exits on outer walls.
- [+] fill all empty cells with low floor and water (but NOt the
one with the exit!)
- [+] any solid with orthogonally adjacent water changes to a
walkway
- [+] cope with different x/y room counts
- [+] cope with differnet vert/horz corridor sizes.
- [+] horz = 2
- [+] vert = 1
- [+] random room size
- [+] allow objectclasses to have f_rarity
- [+] modify getrandomobcalss
- [+] but DONT make objects inherit it!!!
- [+] this is used to override selection hased on habitat - modify
getrandomobcalss appropriately
- [+] random objects/treasure:
- [+] add these only in non-water cells??
- [+] move all obs from water clls to random land cells
- [+] frequent
- [+] vomit
- [+] soggy paper
- [+] rotted food (add f_tainted to it)
- [+] common
- [+] wep/arm
- [+] all wep/arm are shoddy in sewers
- [+] uncommon
- [+] rings (higher than normal chance - they were lost down
sinks)
- [+] occasional tech
- [+] bug: playerstart3 vault filled with walls when made randomly!
- [+] death speech text for intelligent monsters
- [+] 'aaargh!'
- [+] 'this isn't over!'
- [+] BUG: linkexits() - gettings exits in the wrong place. maybe not
taking rotation into account???
- [+] for example in playerstart_5 vault, found an 'exit' at the x:
- [+] this comes from the map flag f_roomexit, x, y
- [+] the flag may have bene added from autodoors()
- [+] have changed code so that f_roomexti uses text field to say
who added it
- [+] why don't i see "%s dies" when my ally dies?
- [+] cause it was behind me. added sound to tell us about this.
- [+] bug: s - 2 four leavesed clover
- [+] random portals
- [+] genericise code for making destination
- [+] check gate spell
- [+] enter a portal which doesn't go anywhere = generate a
destination.
- [+] increase range of all light sources
- [+] ring of hunger should override vege/carni
SOMETHING is there.
- [+] do this in getscannedthing . glyph = 'X'
- [+] make grabbing force a redraw if the target is the player!!
- [+] fix crash for fountain of ambrosia (because potion name starts
with 'vial' not 'potion')
- [+] show X for latched on monsters too
- [+] and make latching onto the player force a redraw too
- [+] chnage f_rage flag redraw to be done in flagcausesredraw()
- [+] shop bugs
- [+] bug: food vendor only had 3 pieces of food
- [+] bg: jewellery store had no items!!
- [+] getrandomobject bug
- [+] bug - wantrr too low!!!
- [+] if wantrr gets to 0 and still nothing, start ticking up from
original value.
- [+] bug: rings cost $0
- [+] need a warning before invisibility runs out
- [+] make most recipe food heal you a bit
- [+] if interrupted halfway through training, remember where we were
up to
- [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0]
(v1 is the goal)
- [+] when you start resting, if you don't already have it, add it:
- [+] v1 = 50;
v1 = modifybystat(traincounter, player,
A_IQ);
- [+] v0 = 0
- [+] if you DO have it, drop v0 by 25 modified by IQ. minimum
of 0.
- [+] when you train, INC the counter, don't dec it.
- [+] when v0 = v1, your'e done.
- [+] when you finish training, kill the flag.
- [+] shadowcat meat - produce and see through smoke
- [+] split aimove up into sections
- [+] emergencies
- [+] healing
- [+] housekeeping
- [+] inventory mgt urgent
- [+] attacks
- [+] pre-movement
- [+] movement along existing paths
- [+] boredom
- [+] go back to my shop
- [+] look for something to attack
- [+] gods go home
- [+] training
- [+] inventory_mgt_nonurgent
- [+] repairing armour - move this to inventory mgt??
- [+] snakes "slither into a wall", not walk. use F_WALKVERB
- [+] animate stone spell - turn statues to pets.
- [+] can't be both a vegetarian and carnivore! race overrides job.
- [+] "your tail brushes up against xxx"
- [+] cats should be able to eat raw meat.
- [+] don't include f_nopickup objects when you use ','
- [+] bed - can use this as restob, equivilant of tent
- [+] "a goblin corpse stands up" - this shoudl trigger a redraw.
- [+] warn when attacking with LevUp that you won't get any xp.
- [+] whenever you train, remove knowledge of the "really atatck and
get no xp" warning.
- [+] bodypart_t[MAXBODYPARTS]
- [+] enum BODYPART id
- [+] char *name
- [+] add defs to all races
- [+] fix quadrapeds - not all have tails!
- [+] remove f_bodypartname - use addbodypart instead
- [+] update hasbp
- [+] remove occurences of F_NOBODYPART in races
- [+] fix up getrandombodypart functions
- [+] getrandomonbodypart
- [+] getcrithitpos
- [+] copy with null returns
- [+] check all occurences of MAXBODYPARTS, change to "for each
bodypart of this lf/race"
- [+] show nobodypart differently in io.c
- [+] criticals: hindlegs / frontlegs -> legs
- [+] makeunusual shaped be part of the body part. then remove
F_NOARMOURON
- [+] critical hits on new body parts
- [+] wing crits
- [+] bash - wings are bruised - reduced flight speed
- [+] slash
- [+] - wings are torn - can't fly. implement in cancast.
- [+] bleeding - flying hurts
- [+] explosive
- [+] destroyed - can't fly!
- [+] tail crits
- [+] slash
- [+] bleeding
- [+] bash
- [+] bruised - accuracy lowered
- [+] fractured - randomly move the wrong way like
drunkenness
- [+] explosive
- [+] lacerated - randomly fall like hamstrung
- [+] don't prompt for moving into dangerous cells f moving randomly
due to drunkenness etc
- [+] bug: double criticals?
- [+] You flatten the kobold! The kobold loses consciousness.
The kobold's hand is swollen! The kobold's leg is broken!
- [+] all f_flying races should have f_canwill ot_s_fly with no
spellcasttext
- [+] RANDOM MONSTER BUGS
- [+] levle 1: always getting goblins/kobolds
- [+] levle 2: always getting poltergeists
- [+] debug getrandomrace()....
- [+] enforce f_rarity val[2] != NA!!
- [+] empty levels
- [+] whenever we pick rr=frquent, we're getting no monsters
- [+] start MONSTER randomness at COMMON
- [+] bug: i lost f_size when i died when polymorphed!
- [+] yumi should only hate killing helpless things, not ANYTHNIG!
- [+] make armour more common than weapons, since this tends to get
damaged
- [+] bookshelf (contains scrolls/books)
- [+] wardrobe (contains armour)
- [+] coffin sometimes contains corpses
- [+] not getting enough objects now ??
- [+] must score a hit first THEN pass a critical hit % check.
- [+] when asking for an object form the player's pack, default to NOT
showing long format
- [+] in askobject, pass in actionchar. remember choice for each
actionchar. and use it as a default.
- [+] warning system
- [+] warnabout(char *warntext)
- [+] if already confirmed it, keep going
- [+] otherwise ask to confirm
- [+] confirmations time out after some time...
- [+] replace injury warnings
- [+] reduce spell range
- [+] big bug - way too many critical hits!
- [+] askcoods: accept 'enter' to select a cell
- [+] armour should never reduce damage under 1
- [+] for playable races, show bonus/penalties when selecting them.
- [+] add f_hatesracewithflag with ashkari
- [+] mammoan - no athletics!
- [+] bug writing hiscores - need to escape 's.
- [+] add v2 to F_ATTREQ - scaling.
- [+] will scale up to 3 above/below
- [+] v2 = 1 means "+/- v2 per point above/below"
- [+] more than 3 below means you can't use it. modify "meetsattreq"
- [+] more than 3 above gives no extra bonus.
- [+] this is MANDATORY. add to checks.
- [+] add messages if your skill it slightly too low
- [+] STR scales damage, AGI scales tohit and crit chance
- [+] make sure showlfstats takes this into account
- [+] make sure rolltohit / getdamrange takes this into account
- [+] what do I do with attreq IQ??? mus tmeet it.
- [+] missile weapons: no scaling, must meet reqs
- [+] reduce regular strength dam mod
- [+] you only get attr bonuses if you are skilled with the weapon.
- [+] crash: getrandomrace(NULL, NA) returning null!
- [+] don't give away invisible creature locations in askcoords
- [+] does fireat automatically re-calc lof based on obstacles?
- [+] if so then change haslof in askcoords to be hasKNOWNlof!
- [+] catlike race - ashkari
- [+] bonus
- [+] has climbing, listen
- [+] jump ability
- [+] agi+
- [+] unarmed attack is claws
- [+] balance (stability?)
- [+] eyesight, darkvision
- [+] enhancesmell (only low)
- [+] pens:
- [+] hunger faster
- [+] carnivore
- [+] low-- wis (ie vuln to magic)
- [+] vuln to magic
- [+] vuln to water
- [+] vuln to sound
- [+] low str
- [+] auto rage on dog/wolf/mouse/bird/chicken
- [+] races CANT ahve certain flags
- [+] apply this during giveskill()
- [+] 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.
- [+] inifniite loop in ?k
- [+] add to balaclava: equipconfer -> f_anonymous
- [+] can't get banned from shops with this!
- [+] when randomly increasing skills, don't select maxed ones.
- [+] remove warning for movement while bleeding
- [+] injuries heal too fast.
- [+] bug: The sound of sounds of fighting awakens you!
- [+] shouldnt be able to rest while airborne!
- [+] make drunkenness give more damage resistance!
- [+] "unseen" etc not working on tombstone
- [+] bug: merloch getting infinite attacks!!
- [+] add "a xxx moves out of view"
- [+] why are wizards starting with 2 cold spells? fixed. was getting
an extra one for gaining a "new" spell skill.
- [+] slowwalking shoudl reduce move volume, not eliminate it.
- [+] i noticed a secret iron door forom 6 cells away!
- [+] make SC_SEARCH not autopassable on natural 20.
- [+] armour can have a SIZE
- [+] remove some occurences of "f_noarmouron" for sz_large,
sz_small creatures
- [+] in "canwear", implement size check. if lf's body size isn't
sz_human then armour must have "f_armoursize -> sz_xxx"
- [+] exception for ears / eyes
- [+] f_multisize
- [+] f_armoursize sz_xxx
- [+] can only wear armour whih is your size
- [+] in io.c, show armour size
- [+] assign f_multisize to objects
- [+] when adding objects
- [+] cope with asking for "large armour" etc
- [+] adding to a lf's pack? make sure armour is the correct fit
- [+] somewhere else? 25% chance of different size. if so,
50/50 as to which way.
- [+] in getobname, show "huge armour" etc
- [+] medium ("halfling size pair of gauntlets"), human
("gauntlets"), or large ("huge gauntlets")
- [+] high sewing/metalwork skills will let you modify armour for
custom fit.
- [+] half the hit points of the object
- [+] implement a multi-level menu system for shops
- [+] text on shop exit ("thank you for your business!")
- [+] shops:
- [+] only let you donate if you can takeoff / unweild it first.
- [+] replace "vending machine" with shop
- [+] make shops/buildings their own category
- [+] this will let us say 'random shop'
- [+] enable stealing from shops
- [+] armour
- [+] book
- [+] weapon
- [+] general
- [+] potion
- [+] hardware
- [+] food
- [+] jeweller
- [+] always show full name for shop items
- [+] temple of xxx -
- [+] actions
- [+] donate
- [+] detect curse
- [+] bless(costs more if equipped)
- [+] absolve sins
- [+] special depending on who the temple is to?
- [+] temple of'xxx' - assign in addobject()
- [+] extend CHA/SPEECH mods to all shops
- [+] disable stacking for shop objects
- [+] hotel/inn
- [+] actions
- [+] pay to rest (for 100 turns)
- [+] if you do this, call startresting() before exitting
shop
- [+] and set some kind of flag so monsters will never
approach
- [+] maybe: f_resting_in_hotel
- [+] and so that they will never wake up you up through
sound
- [+] remove these when you stop resting.
- [+] force you to stop resting once your time expires
- [+] buy food/drink
- [+] weapon shop:
- [+] donate weapons
- [+] armour shop:
- [+] buy armour
- [+] donate armour (so that monsters don't pick it up!)
* [+] firearm reload messages
- [+] don't take f_throwmissile into account when using telekinesis
- [+] ranged weapons: auto reload after firing.
- [+] done.
- [+] replace:
- [+] Something critically savages your body.
Your uncursed suit of ring mail protects you.
Your suit of ring mail is damaged!
- [+] with:
- [+] Something critically savages your suit of ring mail.
- [+] Your suit of ring mail is damaged!
- [+] tremorsense shouldn't see flying creatures
- [+] rename blink to "bamf"
- [+] add F_containsmeat for non-vegetarian foods
- [+] use this in vegetarian checks instead of mt_Flesh
- [+] "what goes up" spell
- [+] "equal and opposite" spell
- [+] why didn't cyborg ninja start with weapon weilded?
- [+] getbestwepon - accuracy was counting for too much. have
changed calculation.
- [+] why is wizard's staff not enchanted???
- [+] elephant race - Pachyon or Mammoan
- [+] bonus
- [+] Leather skin
- [+] str++
- [+] photo mem
- [+] high listen skill
- [+] good smell
- [+] penalty
- [+] slow movement
- [+] no armour on ears
- [+] agi-
- [+] low eyesight
- [+] vuln to sonic
- [+] vegetarian
- [+] other
- [+] large
- [+] throw salt to blind targets
- [+] if you learn a new spell school skill while game is in progress,
gain a 1st level spell too.
- [+] for random roast meat, always use base race
- [+] ie. orc, not "elite orc"
- [+] (ie. human, not 'town guard')
- [+] remove "prepare food" skill.
- [+] use "cook" instead
- [+] startskill should be a modifier, not absolute.
- [+] ie. elf can have sk_ranged, so can hunter. these will now
stack.
- [+] chance for ai to use a firearm is lowered based on firearm
accuracy
- [+] bug: massively high amount of skillxp needed for a point
- [+] firearms should do more damage at pointblank range.
- [+] icicle bugs - getrandomadjcell for knockback failing
- [+] still a bug with firearm accuracy updating
- [+] 2 squares away, move towards enemy - it doesn't update!
- [+] display all valid hits in brown
- [+] wear melted wax in ears to reduce sonic damage
- [+] ranged skillls
- [+] adp
- [+] fast reloading
- [+] exp
- [+] fire through lifeforms! lof_wallstop instead of lof_need
- [+] mas
- [+] extra dam.
- [+] object HP issue:
- [+] head: b - an uncursed helmet [AR:3] [110%]
- [+] body: c - an uncursed suit of ring mail [AR:6] [173%]
- [+] hands: d - an uncursed battered pair of gauntlets
[AR:2] [86%]
- [+] are objects taking negative damage??
- [+] have put an assertion in to check
- [+] wait for it to happen again...
- [+] add hitchance to askcoords when throwing/shooting
- [+] code it
- [+] test for throw
- [+] add for telekeniis too
- [+] add for guns:
- [+] "targetted: something [x%]"
- [+] "bow->Target->xxx [x%]"
- [+] show gun target on botl
- [+] redo throw accuracy:
- [+] 100 to hit yourself
- [+] apply per-cell penalty based on:
- [+] throwing / ranged skill (more)
- [+] AGI (lesser)
- [+] wetsuit description not showing dtresist cold!!
- [+] hunter job
- [+] wetsuit (covers multiple body parts), prot from cold
- [+] announce bleeding damage from injuries
- [+] only mark _weapons_ as 'tried' when weilding them
- [+] change random items:
- [+] fix wantrr bug
- [+] test...
- [+] new function: enum RARITY pickrarity()
- [+] check for all wantrr = xxx and use pickrarity instead.
- [+] give classes a RR_RARITY
- [+] common
- [+] weapon / armour / money / missile
- [+] furniture
- [+] misc
- [+] rock
- [+] uncommon
- [+] potion / scroll / food
- [+] rare
- [+] trap
- [+] tech/tool
- [+] dfeature (pentagram, vending machine, etc)
- [+] vrare
- [+] wand
- [+] ring
- [+] book
* [+] rewrite wrappers
* [+] marge getrandomobofclass and getrandomob
- [+] bug: telling allies to attack something they can't see. need a
msg for this.
- [+] Norman->Attack->A young hawk [flying, facing NE]
- [+] Cancelled.
- [+] bug: allies not regaining hp when asleep! fixed.
- [+] you can now always 'see' your allies if you have LOH
- [+] ie. scannedcell
- [+] ie. cansee
- [+] player luck should cause better random item creation, and easier
monsters
- [+] pickrr() needs arg to say what it is for (vault , ob, lf)
- [+] meals have special effects. eg:
- [+] easy:
- [+] mushroom + water = mushroom soup = restore a little
stamina
- [+] tomato + water = tomato soup = restore a little stamina
- [+] apple + stone = fruit juice (don't kill the stone)
- [+] cheese + bread = cheese sandwich = restore all food and
stamina
- [+] rum + chocolate = rum ball = cure pain, restore some hp
- [+] med:
- [+] corpse + water + salt = jerky
- [+] mushroom + water + beef = beef strogonoff = filling,
temporary Fitness boost
- [+] garlic + bread + clover = garlic bread = produce stench
like a trogolodyte
- [+] bread + meat + tomato = hot dog = temporary strength
- [+] water + sugar + 2 berries = potion of red cordial = speed
boost
- [+] hard
- [+] peanut + stone + salt + bread = peanut butter sandwich =
super filling, restore all stamina, temp fitness boost
- [+] rum + chocolate + sugar + berry = fruit cake = restores
all stamina and hp and mp
- [+] implement recipe_t
- [+] int ningerdients
- [+] enum OBTYPE ingredient[MAXINGREDS]
- [+] int count[MAXINGREDS]
- [+] int cosumeingredient[MAXINGREDS] (boolean)
- [+] makedesc_ob should show the recipe for it, if cooking skill is
high enough
- [+] cooking skill determines how many ingredients you can use
- [+] ie. beginner = you can make recipes which need 2 ingredients
- [+] redo "cook" ability.
- [+] can combine ingredients using recipes to make meals
- [+] ingredients must be known!
- [+] chef job
- [+] attr
- [+] gtaverage agility
- [+] low fitnesss
- [+] objects:
- [+] meat cleaver (slashing, low acc, high crit)
- [+] apron (rubber, low protection)
- [+] chef hat (cloth, low protection)
- [+] butane torch (flambe on adjacent lifeform)
- [+] abilities
- [+] rage at lv3
* [+] skills
- [+] chef job
- [+] attr
- [+] gtaverage agility
- [+] low fitnesss
- [+] objects:
- [+] meat cleaver (slashing, low acc, high crit)
- [+] apron (rubber, low protection)
- [+] chef hat (cloth, low protection)
- [+] butane torch (flambe on adjacent lifeform)
- [+] abilities
- [+] rage at lv3
* [+] skills
- [+] chef steak knives aren't stacking. - because they weren't
f_stackable!
- [+] chicken soup - cures poison
- [+] finish ob donate code
- [+] chance of becoming pet
- [+] only certain races
- [+] only f_tamable (but harder than pets)
- [+] implement lfflammable
- [+] io.c announcements ( move from shatter())
- [+] fire effect
- [+] sugar water
- [+] gaining skills too quickly at higher levles
- [+] maybe make it get slightly harder each time.
- [+] keep a count of total skillpoints ever gained
- [+] fixes to rollhitdice
- [+] missile weapons doing no damage!!
- [+] no sprinting while levitating / flyign
- [+] icicle spell should deal piercing damage if lf can't be pushed
out of the way
- [+] 'thrust' ability isn't showing up in ABILS
- [+] give slight accuracy penalty when thrusting
- [+] fixed shieldblock difficulty in melee combat
- [+] increased maxstamina
- [+] don't require stamina to move!
- [+] "You hear a roars."
- [+] remove duplicate corpse rot code
- [+] CRASH
- [+] malloc: *** error for object 0x1349d94f8: incorrect checksum
for freed object - object was probably modified after being
freed.
- [+] #7 0x00000001000f438a in addobject (where=0x134edc060,
name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at
objects.c:983
#8 0x00000001000f298d in addobfast (where=0x134edc060,
oid=OT_CLAWS) at objects.c:409
#9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at
lf.c:5194
#10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236
- [+] fixed ?
- [+] instead of everything >=6 being dark, make a CHANCE to be dark
starting at l6.
- [+] why do i ese gem of seeing so often
- [+] because i need more types or 'rock'
- [+] have to cook food before eating it?
- [+] need novice cooking skill for preparecorpse ability
- [+] otherwise you only get a very small amount of nutrition (10%)
- [+] split ob piles before eating them
- [+] detect poison should detect poison traps
- [+] telling your ally to rest until healed isn't working...
- [+] wasn't taking injuries or stamina into account.
- [+] change druid spells
- [+] start with 3 random spells
- [+] on levelup, select a random nature spell (up to your highest
level)
- [+] crash when generating monster warriors
- [+] bug: calling taketime twice when attacks fail?
- [+] (once in attackcell(), then again in attacklf() or
attackob())
- [+] weapon changes:
- [+] in general, lower accuracy for piercing weapons
- [+] in general, raise accuracy for slashing / bashing weapons
- [+] long piercing weapons (ie. spear) give you a 'thrust' ability
(attack 2 cells away)
- [+] long slashing weapons cannot be used if < 3 open cells around
you (f_needspace)
- [+] maybe: you can't "hear" your unseen ally if they are asleep
- [+] need to draw after flying things swoop away, in case they block
your view.
- [+] raceslaying weapons
- [+] dragon - dragonslaying
- [+] animal - butchering
- [+] plant - of blight
- [+] undead - of divine power
- [+] magic - of antimagic
- [+] brand restriction
- [+] brands: f_onlygoeson ot_xxx
- [+] brands: f_onlygoesondt dt_xxx
- [+] check this in brandappliesto
- [+] "pyromania" spell
- [+] for all fires or burning objects in sight: (implement
getflamingobs() )
- [+] "the fire flares!" (fire objects regain full hp, burning
flags gain lifetime)
- [+] large fire obs:surround it with smaller ones.
- [+] small fire obs: make bigger
- [+] burning obs: make a small fire
- [+] give it to red dragons
- [+] ai casting... (if fire in sight)
- [+] blue dragon - lightning
- [+] ancient has chain lightning
- [+] flood ? lowlevel
- [+] gust of wind
- [+] white dragon - cold
- [+] pea soup
- [+] hailstorm
- [+] ancient: absolute zero ?
- [+] after waking it just goes to sleep again!!!
- [+] bug:npc warriors aren't starting with a weapon
- [+] shouldn't be able to shieldblock if youre asleep!!!
- [+] allies sohuld announce what they are doing
- [+] "I'm attacking a goblin"
- [+] I just killed a goblin
- [+] I need some rest soon...
- [+] make sure only HUMANS do this...hu
- [+] F_EXTRADESC v0 should be 'order'.
- [+] makedesc_skill should honour this
- [+] makedesc_spell
- [+] same with other makedesc() functions
- [+] auto-inc this when adding them.
- [+] allies not properly following me downthe stairs
- [+] armour that can cover multiple body parts
- [+] f_goesonmulti
- [+] multiple f_equipped flags.
- [+] handle multiple f_equipped in takeoff()
- [+] all required bodyparts must both be clear
- [+] if not, prompt to remove both things.
- [+] check all code for f_equipped copes with multiple
occurences...
- [+] display as: f - a wetsuit (worn over body and on legs)
- [+] update io.c. "it is worn over xxx and yyy)"
- [+] heat metal spell
- [+] weilded metal burns hands and you drop it (unless immunte to
fire/burn)
- [+] metal armour damages you (1-4 each)
- [+] metal lifeforms take huge damage
- [+] all lifeforms should have at least novice level knowledge of
their own raceclass
- [+] new raceclass - dragons
- [+] define it
- [+] define skill for it
- [+] make jobs know the skill
- [+] red dragon
- [+] high armourrating
- [+] swoop
- [+] fly
- [+] breath weapon
- [+] spells
- [+] heat metal
- [+] fireball
- [+] burning wave
- [+] want gold
- [+] immune to fire
- [+] red dragon hatchling
- [+] generally lwoer power, only has heat metal and spark ?
- [+] spellcasttext for individual spells
- [+] ancient red dragon
- [+] higher hp and armourrating
- [+] more damage
- [+] more spells
- [+] climb "into"walls
- [+] stopclimbing(int onpurpose)
- [+] can we move forwards?
- [+] if not:
- [+] if onpurpose, fail
- [+] otherwise fall onto whoever is there??? or
they block you from falling??
- [+] move forwards
- [+] kill f_climbing flag
- [+] startclimbing()
- [+] move onto the wall
- [+] set your facing to face away from the wall.
- [+] add F_CLIMBING
- [+] must pass a CLIMB check first or you fail to climb!
- [+] can't climb if burdened
- [+] once climbing:
- [+] can't cast spells
- [+] cannot change facing
- [+] always strafe if you go sideways
- [+] change los functions to let you see out!
- [+] different move verb ("climb" instead of move/fly)
- [+] different canmove() code
- [+] you can only move sideways (along the wall) or
forwards (off the wall)
- [+] ie. cellindir(lf, lf->facing) == newcell
(forwards)
- [+] OR
- [+] ie. cellindir(lf, lf->facing + 2 (wrapped))
== newcell (right)
- [+] OR
- [+] ie. cellindir(lf, lf->facing - 2 (wrapped))
== newcell (left)
- [+] AND you can only move sidways if:
- [+] the new cell is a wall
- [+] the cell in (lf->facing) of the new cell is
NOT a wall
- [+] if you climb off a wall, tell the player that they
stopped climbing
- [+] moving while climbing:
- [+] must pass a sc_climb skill check to move
- [+] costs 1 stamina to move
- [+] warn before climbing if your stam == 1
- [+] attacking
- [+] large penalty to hit the climber (higher for
smaller monstesr)
- [+] if monsters miss you and you are climbing, chance
they'll give up.
- [+] attacking FROM a wall gets a big penalty unless
you are very skilled at climbing
- [+] startlfturn
- [+] lose stam each turn.
- [+] if stam drops to 0, you fall off or stop climbing
- [+] you fall if burdened
- [+] don't regen stam while climing
- [+] ai:
- [+] monsters won't start targeting lfs who are climbing
- [+] monsters don't pay stamina to move while climb
- [+] make monsters be able to climb when fleeing
- [+] let you climb down holes instead of falling