Commit Graph

34 Commits

Author SHA1 Message Date
Rob Pearce d2588bdd98 - [+] replace causesvomit with vomitob
- [+] 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?
2012-02-09 21:00:10 +00:00
Rob Pearce 0ce77ec00b - [+] firebug should deal 1 fire damage to anything on the ground
- [+] f_damagegroundobs v0=dam, v1=damtype
    - [+] add a similar thing ice wraith (they cause cold damage)
- [+] psionic spells:  baffle and disorient too similar?  make one a
      lower level ?
    - [+] make disorient face them away from you!
- [+] ekrub shouldn't get angry for crushing glass underfoot
    - [+] OR... warn before you do this if you worship ekrub
- [+] don't drip water while inside a wall (ie. ethereal)
- [+] don't show "[tried on xxx]" for objects in store inventories!
- [+] make "i bestow a gift" msg change depending on god
- [+] potion of etherealness spell disappating twice?
    - [+] ie. stopspell being called twice.
    - [+] spell effect now chacks for existing noncorporealness
- [+] different god msg if they are angered but still pleased
    - [+] "don't do that again!"
    - [+] "ahem!"
    - [+] "i won't tolerate further transgressions"
    - [+] etc
- [+] io.c not showing that druid is vegetarian.
    - [+] show this only if ilfetime !=  FROMRACE
    - [+] don't show it otherwise, since it's a racial trait.
    - [+] change hasflag_real to have "int lifetimeexception"
    - [+] same with:
        - [+] VEGERATIRNA
        - [+] CARNIVORE
        - [+] PARTVEGETARIAN
        - [+] F_SIZE??
        - [+] VISRANGEMOD
- [+] stickstosnakes - make this not affect the CASTER's equiped
      weapon, but it doesnt affect weapons of others.
    - [+] implemment
    - [+] make spell description describe this.
- [+] make safebox not be stealable
2012-02-04 23:26:16 +00:00
Rob Pearce c1bccc652c - [+] fixed crash related to F_CASTINGSPELL
- [+] change god names to "god of xxx/yyy/zzz"
- [+] i'm pleasing the god of life somehow unknown. why?
    - [+] from sleeping!
    - [+] was checking !isasleep(god), not !isasleep(player)
- [+] ai object stealing code not working
- [+] chance to wake up when someone is stealing your objects ?
    - [+] stealer makes an easy stealth check
- [+] fix crash in steal()
- [+] when fix_reachability kills a wall, add rubble as if the wall
      fell down.
- [+] if you burn yourself on something, automatically drop it.
- [+] ai shouldn't try to wear dangerous objects.
- [+] f_hot objects count as dangerous
- [+] if metal takes fire damage, it gets F_HOT (unknown)
    - [+] touch() will burn you, and make the flag known ("red hot") 
    - [+] if you are wearing F_HOT armour, take damage from it.
    - [+] modify how heat metal spell works
    - [+] when something catches on fire, it also gains F_HOT 
    - [+] test heat metal
- [+] firebug and fire sprite should have f_extracorpse "small fire"
- [+] in makedesc_skill, only show each "at xxx level" heading once
- [+] ice wraith shuld be flying.  ghast shouldnt be levitating.
- [+] MENDING should fix rust.
- [+] BUG: ERROR - unlinked stairs! should have been linked during map
      creation.
    - [+] was on Dlev 9
    - [+] stairs were going to the swamp.... and swamp had no stairs!!!
    - [+] in finalisemap: swamp was misisng stairtypes!
2012-02-03 05:55:19 +00:00
Rob Pearce b1abb5ad76 - [+] reduce F_WALKDAM on fire objects to 1d4,2d4,3d4
- [+] bug: getvaulttype causes infinite loop if none found.
- [+] flameburst from klikirak offer shouldn't incrase piety further.
- [+] fireball / flame pillar spell: mark that the player created the
      fire
    - [+] ... so that when it damages otehr objects, damge caomes form
          the playerh
- [+] make shieldbash stun effect last longer
2012-02-02 05:26:14 +00:00
Rob Pearce d97c0c9421 - [+] redo heaven vault to cater for 10 gods
- [+] Klikirak- male,fire and destruction
    - [+] appears as a fire elemental?
    - [+] abilities
        - [+] create fire underneath
        - [+] retaliate with fire
        - [+] burning touch
        - [+] canwill all fire spells 
    - [+] sacrifice
        - [+] anything flammable
        - [+] added effect: cast flame burst
    - [+] pray:
        - [+] set  all nearby objects on fire
        - [+] unfreeze weapons
        - [+] hurt monsters with fire spells
    - [+] gift:
        - [+] fire resist / immunity
        - [+] pyromania on weapon
        - [+] fire magic
    - [+] angry (minor):
        - [+] blast with small fire
    - [+] angry (major)
        - [+] blast you with fire (and surround you)
    - [+] likes
        - [+]  burning objects (sparking flammable, throwing objects
              onto fire)
        - [+] casting fire spells
        - [+] killing with fire
    - [+] dislikes
        - [+] casting cold spells
        - [+] causing cold damage
        - [+] creating anything (create monster / wish / create food)
- [+] what is the difference between "purity" and "life" ?
    - [+] purity:  get rid of curses, bad objects, bad food, remove bad
          statuses
    - [+] mercy:  "undo" mistakes, avoid instakills
    - [+] life:  healing, raise from dead, protection
- [+] life goddess - glorana
    - [+] appearance:
        - [+] glowing white light
    - [+] abilities
        - [+] cast all life spells
        - [+] regenerates hp very fast
    - [+] objects
        - [+] none
    - [+] likes
        - [+] destroying undead
        - [+] using life magic
        - [+] healing (as per yumi)
    - [+] dislikes
        - [+] necromancy spells
        - [+] attacking peaceful lfs
    - [+] pray
        - [+] healing
        - [+] restore mp
        - [+] protection spell
    - [+] gift
        - [+] regeneration
        - [+] firstaid skill
        - [+] life magic skill / spellbooks
        - [+] increase max hp
    - [+] angry(minor)
        - [+] life magic fails
        - [+] slow natural healing rate
    - [+] angry(major)
        - [+] no healing
        - [+] reduce max hp!
    - [+] sacrifice
        - [+] healing potions
        - [+] restoration potions
        - [+] bandages
        - [+] food
- [+] protection spell:
    - [+] divine armour
    - [+] blocks on a certain amount of damage.
    - [+] all damage goes to it! (NOT like psychic armour which just
          increases AR)
    - [+] NOT an ongoing spell.
- [+] ai: if you have a weapon of xxx slaying, use it when appropriate.
      (getbestweapon)
- [+] amberon - change abilities to be more focused on removing bad
      status effects
- [+] amberon gifts you with potions of restoration
- [+] felix is now god of thievery and vengeance.
- [+] felix now gives your weapon f_revenge.
2012-02-02 04:33:24 +00:00
Rob Pearce 660481c27e - [+] show varpower spell effects in @E
- [+] don't say "you hear xxx" for your pet's footsteps
- [+] when hungry, ekrub likes eating animal corpses, rather than
      killing animals
- [+] failed spells now always make spelleffect() return B_TRUE.
- [+] stickstosnakes now works on non-wood objects.
- [+] light spell can only blind people at high level
- [+] amberon shouls accept sacfirice of evil corpses
- [+] tweak potion rarity
- [+] attacking helpless evil creatures shoudln't anger amberon
2012-02-01 20:56:07 +00:00
Rob Pearce 5506fdcc86 - [+] bug: getobvlue price keeps going up
- [+] 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
2012-02-01 01:31:36 +00:00
Rob Pearce ee42bdc73f - [+] rename dragon to wyrm
- [+] 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
2012-01-29 22:47:43 +00:00
Rob Pearce a4ac951f15 - [+] remove "inscribe" spell for now.
- [+] beginner perception should let you see next to you.
- [+] fix trail directions when checking stairs
- [+] make labyrinth vault be a proper labyrinth shape
- [+] 'spark' should affect floor obs even if there is a lf there.
- [+] cursed scroll of awareness should blind you for 10-20 turns.
- [+] bug: monsters trying to flee through locked drainage grate.s
- [+] new god: Bjorn the battlelord
    - [+] Pray effects:
        - [+] bless weapon
        - [+] bezerk 
        - [+] true strike
        - [+] haste
    - [+] Likes: battles (ie. kill last enemy in lof)
    - [+] Dislike:
        - [+] calming
        - [+] poison
        - [+] magic (wands, spells etc)
        - [+] retreat (moving away with back turned) "Coward!"
    - [+] gifts:
        - [+] weapons, armour
    - [+] sacrifice:
        - [+] untouched battle spoils
        - [+] after dropping objects, add f_battlespoils if YOU killed
              the ownert.
        - [+] remove this if/when the object gets moved again
        - [+] splatter blood
    - [+] minor anger:
        - [+] rust your armour / weapon
    - [+] major anger:
        - [+] destroy your armour
        - [+] destroy your weapon
        - [+] summon lots of enemies
- [+] new god: Lumara - fem, magic
    - [+] likes:
        - [+] most things which train magic skills
            - [+] ie. casting spells
        - [+] using wands
        - [+] reading scrolls
    - [+] dislikes:
        - [+] missile weapons
    - [+] pray:
        - [+] restore mp if low
        - [+] identify books/scrolls
        - [+] remove curses
    - [+] gift:
        - [+] spellbooks
        - [+] manuals of spell schools
        - [+] extra mp
    - [+] angry minor:
        - [+] lose mp
        - [+] forget a spell
    - [+] angry:
        - [+] spells stop working (100% failure chance)
        - [+] forget all spells
        - [+] polymorph you into something bad
    - [+] sacrifice
        - [+] weapons / armour
2012-01-25 09:20:15 +00:00
Rob Pearce 5f4454d56a - [+] increase damage for missiles
- [+] 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
2012-01-24 20:38:59 +00:00
Rob Pearce 4a32308310 - [+] dual wield, then weild -, say "y" to "weild nothing in your left
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
2012-01-23 07:16:18 +00:00
Rob Pearce 804f72f5c7 - [+] monsters vulnerable to lightning
- [+] 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"
2012-01-19 03:42:10 +00:00
Rob Pearce 80a8edf471 - [+] increase accuracy of blessed 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
2012-01-18 23:11:55 +00:00
Rob Pearce f7061b45ca - [+] in shops, show 'ESC when done, ? to describe/purchase'
- [+]    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
2012-01-10 03:40:43 +00:00
Rob Pearce 6d57f7ebe3 - [+] text issue: Bthe goblin archer pack attacks you!
- [+] Operate what (ESC=quit,?=list): a malachite wand
      Dig in which direction (- to cancel) [-]? u
    - [+] somewhere in ther,e put "this is a wand of digging!"
- [+] wand of reveal hidden
    - [+] "a rock wall is magically revealed"
    - [+] need to reveal it firtst.
- [+] bug: always showing blast of energy trap text, even when it hits
      someone else.
- [+] maps shouldn't be stackable
    - [+] it's cause multiple maps to join into one!
- [+] don't show [activated] on unknown tech
2012-01-07 22:47:06 +00:00
Rob Pearce 8d0d14b8dc - [+] change noise() calls to use enum sv_
- [+] 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)
2011-12-28 05:06:47 +00:00
Rob Pearce 585876caee - [+] high metalwork/sewing lets you make things into masterwork
(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)
2011-12-20 08:03:15 +00:00
Rob Pearce edd16853c8 - [+] CRASH in killflag()
- [+] 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
2011-12-16 19:54:08 +00:00
Rob Pearce 0f99007c2a added bazaar vault.
- [+] 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
2011-12-09 00:37:02 +00:00
Rob Pearce 9da88f06e3 - [+] ob1() macros
- [+] 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.
2011-12-05 17:03:47 +00:00
Rob Pearce 10e4713940 - [+] shops on a level should make loud sounds every few turns. (onein3)
- [+] 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.
2011-11-16 00:57:21 +00:00
Rob Pearce 7f809977ce - [+] chage skill descriptions to use Accuray Rating numbers, not
percentages
- [+] change hardness calculation
- [+] assertion roomidx failure
    - [+] map roomids are geetting screwed up.
    - [+] especially when i do RESTART MAP GENERATION.
    - [+] possible fix is in place...
- [+] maybe make all monsters always have close to max hp
* [+] change weapons to use 'damage rating'
- [+] when reading a spellbook, notify which spells are too hard. OR
      don't even list them?
- [+] print "it is too powerful for you to cast" in red
- [+] don't show "[magic]" on identified objects
- [+] why does agility of 12 give +3 accuracy??? should be lower
- [+] why do i suddenly show about rings???
    - [+] bug in giveobflag()
    - [+] fixed ???
- [+] why could i learn a level 4 fire spell (flame pillar) when my
      fire mgic skillw as only lv3 (adept) ???
    - [+] bug in getspellpower's enforecement of max spell levels
- [+] higher level spells should cost more to cast.
    - [+] l1 = 1
    - [+] l2 = 2
    - [+] l3 = 4
    - [+] l4 = 8
    - [+] l5 = 16
    - [+] l6 = 32
- [+] lurking horror missing a weapon
- [+] in makedesc_spell, put mp cost in red if you can't cast it
2011-10-24 16:46:19 +00:00
Rob Pearce c79a0403c2 - [+] wizard staff should deal 1 extra magic damage as long as you can
pay it
    - [+] use "enchanted" weapon mod?
    - [+] test
    - [+] why aren't obmods working on start obs?
    - [+] why isn't wizard starting with staff weilded
        - [+] because gamemode was GM_LOADING
        - [+] use something different during character gen.
- [+] use different text for followup weapon hits (extradam)
    - [+] "you hit the xxx" (first one)
    - [+] "the xxx burns" (second)
    - [+] "magic blasts the xxx"
    - [+] "the xxx is chilled"
    - [+] move all of this into construct_hit_string(lf, victim, wep,
          damtype, dam, damnum)
    - [+] test
    - [+] move getkillvebr()  and getattackverb() into text.c
    - [+] make attackob() use the same code
- [+] spellbooks now contain multiple spells
    - [+] they have an associated SKILL (not spell)
    - [+] they have contents (a list of spells)
    - [+] hiddenname isn't getting assigned
    - [+] contents aren't getitng filled in
    - [+] when you read them, you learn all the spells (if you can)...
          OR prompt what to read
    - [+] DONT give wizards spells on levelup anymore?
- [+] gods should say WHY they are angry.
    - [+] angergodmaybe, angergod need to take enum GODANGERREASON
        - [+] change definitions
        - [+] change calls
    - [+] add new godsay text into angergod()
2011-10-20 17:15:24 +00:00
Rob Pearce 168a3c49ff - [+] bug: wrapprint() needs to cope with long lines which wrap!!!
- [+] in progress...
    - [+] currently hanging - fixed.
    - [+] once done, make it not add spaces
    - [+] add spaces manually in showlfstats.
    - [+] once done, change all code to use wrapprint instead of
          textwithcol
    - [+] still an issue - everything in my inventory is coming up bold!
    - [+] missing the last word again....
- [+] remove requirement that you have to be able to pick up an object
      to eat it
* [+] make ninja weapons be "exotic" or ninjitsu
- [+] ghost missing melee attacks
- [+] make oil lamps last HEAPS longer too
- [+] @ should include weapon bonuses for skill/str
- [+] "headless bones" when you kill a skeleton??
- [+] allow for change of verb instead of always using "Killed by xxx"
- [+] only call maketried() for the player
- [+] don't show 'really attack the peaceful something' if you can't
      see it!
- [+] vault: suply closet
    - [+] 1 sq room with tools
- [+] why is hecta's pain hitting the player?
- [+] make it so you can only Offer to gods you ahve prayeed to?
- [+] recalc light on:
    - [+] darkness/light spells
    - [+] eye destroyed
- [+] prevent tumble/jump while grabbed
- [+] prompt to drop when wearing new armour
- [+] canine tracking should be a potion, not a scroll
- [+] some '?' help commands not working.
- [+] add f_critprotection to armour
- [+] crash when tumbling into an lf
- [+] incrase cellknown time when no cartography skill 
- [+] change disarm and trip into abilities:
    - [+] disarm
    - [+] trip
- [+] ninja
    - [+] skills:
        - [+] athletics (enouhg to tumble)
        - [+] throwing
        - [+] unarmed
        - [+] long blades
        - [+] stealth
    - [+] objects:
        - [+] smoke bombs
        - [+] shuriken - another missle. higher dam than darts.
    - [+] how will this be different from the rogue class???
        - [+] disarm
        - [+] trip. maybe make trip polearms confer this ability?
        - [+] flip .
2011-10-18 23:08:14 +00:00
Rob Pearce 4eeb8cfe43 - [+] get rid of "sorcery" skill, and move 'study scrolls' ability to
cmoe from lore:arcana instead
    - [+] rename magic skillls to sorcery:fire etc?
    - [+] adjust spell power calculation to take lack of sorcery skill
          int oaccount
- [+] allow '\' during getchoice() and getchoicestr()
    - [+] so that we can see what we have identified
- [+] lower metabolism while lmeditating
- [+] poisonous mushrooms
    - [+] toadstool - poisonous
    - [+] shiitake - normal
    - [+] recognise via cooking skill
- [+] if you add a blood ob, 1 randmo piece of armour in the pile
      becomes bloodstained
- [+] accuracy boost when attacking something who has grabbedyou
- [+] lessen gravitiy should prvent falls
* [+] bug:
- [+] add job descriptions
- [+] handle ESC in askchar
- [+] You attack the helpless the xat!  You flatten the xat!
    - [+] "the helpless the xat"
    - [+] shoiuldn't use "flatten" sinec we're not killing it
- [+] You attack the helpless xat!  You kill the xat!
    - [+] ...but  it wasn't dead!
- [+] flame pillar scroll no longer works
    - [+] not asking for target.
    - [+] use castspell
- [+] cope with 'ESC' presses during normal travel
- [+] allow "maycancel" in askchar
- [+] make wizards NOT automatically know wild magic
- [+] is F_MPMOD working?  check with elf wizard.......
    - [+] now it is.
- [+] bug: create an elf, go over it, v - CRASH in makedesc_race.
- [+] removeob() should update burdened status
    - [+] ie drinking a potion
- [+] wizards start with a staff and a pointy hat
- [+] don't "stir in your slumber" if meditating
- [+] elves should have higher mp
- [+] dwarves should have lower mp
- [+] when monsters fail to open a door, abandon their targetcell
    - [+] might be able to jsut make failing a dooropen count as a move
          failure.
- [+] HiGrv didn't stop me from moving? i passed the skill check, need
      to have a msg telling me this.
- [+] race descriptions. 
    - [+] add the descriptions
    - [+] ? in @@ shows info on them.
    - [+] (add ?=help in the bottom when in @ mode regardless of
          showall)
- [+] make clouds expand as they disappate
- [+] modify gethitstokill() to take "useevasion" and "usearmour" as a
      parameter
- [+] at adept lore, you get threat comparison.  at skilled level you
      get exact hit turns.
- [+]  make threat calculation use gethitstokill
- [+] TEST new threat calc
* [+] way too easy to notice traps on chests from 4-5 cells away, with
      only novice perception
- [+] make cloudkill create puff of poison gas rather than a cloud
- [+] attacking should count as movement (ie dont regen stamina)
- [+] need more body bash criticals.
    - [+] torso bruised (acc penalty)
    - [+] torso bruised badly (higher acc penalty, low dam penalty)
    - [+] ribs broken (huge acc penalty, med dam penalty)
    - [+] lungs winded (stam=0 onetimeeffect, fit -1, only lasts a 2-3
          turns)
- [+] should stop flying when you lose ocnsciousness...
- [+] warn before moving with f_pain as well. maybe cahnge
      confirm_injiury_action ???
- [+] extra warrior skill:  aimed strike
    - [+] -50%acc
    - [+] auto crit on the part you select (if you hit)
2011-10-12 21:15:48 +00:00
Rob Pearce 2db53bca61 - [+] when throwin gn aobject, warn if you have no LOF (just like
spells)
- [+] allow dodge/catch of thrown object when there is no thrower (ie.
      arrow traps)
- [+] simplify monster spellcasting
    - [+] don't use any mp
    - [+] select power based on monster hit dice only
    - [+] monsters should cast spells less often  - use f_castchance,
          default of 15% chance
    - [+] TEST
    - [+] you keep your own mpdice when polymorphing into a mosnter
- [+] fxied: throw a tranq dart, then:
    - [+] The cockatrice loses consciousness.  The cockatrice falls
          asleep.
- [+] bug: can't operate a fridge on the ground cause it's too heavy to
      lift
- [+] monsters generated on dark levels should always have seeindark 3-4
- [+] vending machines not working... fixed.

- [+] in getchoicestr:
    - [+]  if !showall, and if it shows a longdesc, then you hit
          backspace, longdesc should be cleared.
    - [+] show completion in a different colour
- [+] bug: sometimes we seem to have map->room[x], but no cells with
      cell->room->id == thatid!!
    - [+] stop vaults from overlapping.
- [+] taking too long to walk down levels - enforce max number of
      monster free turns
- [+] inept weapon penalty should be slightly higher
- [+] bad feeling check is too easy.
- [+] skeletons should have f_noinjuries
- [+] shouldn't check for slipping on things while swimming
- [+] tweak how traps + perception skill impact search checks 
- [+] bug: sometimes we have no player start position.
    - [+] if the vault creation fails, restart map generation.
- [+] only give study scroll ability at high spellcasting skill
- [+] typo:  ring (1 charges left)
* [+] god effects when you die:
- [+] pea soup should work in the cell in FRONT of you.
- [+] bug: ring of control seems to work when you _weild_ it!!
- [+] non-lethal weapons
    - [+] sword of mercy (at <1hp, ko)
    - [+] tranq dart
- [+] add sleeptypes
    - [+] change all refernces to f_asleep->val[1] (now an enum)
    - [+] change "stirs in its slumber" if unconscious
    - [+] change all 'fallasleep' calls
    - [+] attacking a ko'd enemy with merciful weapon should do nothing.
    - [+] ai shouldn't target ko'd enemies
- [+] ai should stop targetting people once they're dead/ko'd
- [+] bashing damage should sometimes just knock unconscious instead of
      killing?
    - [+] if their hp would be >= -3, and onein(2)
- [+] different body part names? "metal frame" instead of "body"
    - [+]  implement F_BPNAME, v0=enum bodypart, text = name
    - [+] getbodypartname() needs a lf argument.
    - [+] once i add this, also make animals have "front legs" instead
          of "arms", "paws" rather than "hands" etc.
    - [+] fix calls to getbodypartname to pass in lf or null
- [+] cyborg mods:
    - [+] can't wear most armour?
        - [+] need f_noarmouron - we HAVE this bp, but can't put armour
              on it.
    - [+] large rust damage from water
- [+] if you have a bad feeling about an object, mark it as "[bad]"
    - [+] f_knownbad
- [+] killing should anger the god of mercy
2011-09-22 02:00:16 +00:00
Rob Pearce 5bd96d7e5a - [+] bug in skillpoint % display in @@
- [+] make detect life last longer
- [+] stirge should have enhacnesmell
- [+] plants should never "turn to face you". 
    - [+]  they should be able to see in all dirs.
    - [+] don't announce "turns to face" if the lf has f_awareness
- [+] AGAIN: walk on to a dark place and i can still see my own cell! 
      needed >= instead of > in celllitfor
- [+] don't show sacrifice text if you can't see
- [+] butterflies shouldn't produce light.
- [+] peaceful things shouldn't turn to face you all the time (only low
      % chance)
- [+] CRASHES when killing flags
    - [+] killflag() was dereferencing f-> after freeing it.
- [+] skill which aren't ready not showing up in 'm' list
    - [+] i think a previous fix for spells broke this...
    - [+] whatever it was, it shoudl only apply to spells, not
          abilities.
- [+] don't show @G if you're looking at someone else.
- [+] sunrise code didn't work - i immediately went to full fov!
    - [+] was a bug in isnighttime().
- [+] jimbo needs more hp
- [+] diningroom should have a fridge, instead of all food being on
      ground.
- [+] bug: "it is pitch black" as soon as you use stairs....... need to
      recalc light 
- [+] show temp lit areas as bold
    - [+] do it.
    - [+] test.......
- [+] notification of being followed to other maps/stairs:
    - [+] "you walk up the stairs. xxx follows you."
    - [+] implement.
- [+] move sacrifice code to god.c
- [+] change twoewapon->master to make your second weapon act like a
      shield
    - [+] ie. getshield() returns it.
    - [+] act like low level shield skill. special case in
          SC_SHIELDBLOCK
- [+] make twoweaponers only be able to use secondary weapons in which
      they are skilled.
2011-09-15 01:40:26 +00:00
Rob Pearce 1f6429e305 - [+] intelligent (ie. more than animal) ai shouldn't move if it will
cause damage
    - [+] move_will_hurt()
        - [+] ie. if in PAIN, or appropriate injury.
- [+] if you're deaf, use "the xx says something" rather than "the xx
      says yy"
- [+] STILL reachability errors in dlev 6 (jimbos' lair not linked)
- [+] new forest habitat mechanism - clusters of trees
- [+] bashing injury if you are slammed into a wall?
- [+] jimbo didn't have a weapon! "+2 halberd" not working
- [+] if you don't have knowledge about a creature, still show items
      (but only equipped ones)
- [+] listen skill should take longer to train
- [+] candle should last longer
- [+] carrot grants temp darkvision
- [+] shouldn't be able to eat stuff from floor while levitating
- [+] CHANGE f_hitdice to use text
- [+] fear spell from dretch always failing even on l1 player.  why?
* [+] summondemon spell
- [+] adjust spell damage - 1d6 per level.
ice spells:
- [+] l4 - ice armour (higher power means more pieces of ice armour)
    - [+] (power/3)+1 pieces of armour. ie. 1 - 4
    - [+] order:  body,helmet, gloves, feet
    - [+] 4AC each.
* [+] l5 - shardshot (higher level ray damage, does less damage the
      further away it goes)
- [+] l5 - snap freeze ? turn one lf to ice?
- [+] more things which use light attacks (ie. make glasses useful)
- [+] replace bp_righthand with bp_rightfinger
- [+] bug in blink spell: "Nothing seems to happen."
- [+] make metal resist bite/slash/chop, not be immune.
- [+] fix shatter spell on glass wall
* [+] bug: in jimbos vault and plaeyrstart2, exits are being added in
      in appropriate places.
* [+] make player's starting point be a "prison_cell" vault.
- [+] earplugs - stop all sound.  
    - [+] make f_deaf an intrinsic (ie. announcements)
    - [+] add the object
critical hits:
- [+] "you hit xxx" "xxx turns to flee" "xxx's leg is bruised"
    - [+] need losehp to NOT trigger fightback in this case - we will
          trigger it ourself after crithit.
    - [+] pass this as a param?
- [+] critical eye hits
    - [+] scraped eyelid (slash, lower accuracy)
    - [+] black eye (bash, lower vision range and charisma)
    - [+] destroyed eye (pierce, permenant lower vision range!)
- [+] injuries heal heaps faster when asleep
- [+] redo f_injured flag to use an "enum INJURY" IJ_xxx
- [+] change how it is applied
- [+] change how it is announced (io.c)
- [+] change how effects work (search for F_INJURY)
- [+] pierce
    - [+] pierced artery: v.high bleed
    - [+] stabbed heart (instant death, very unlikely)
- [+] slash:
    - [+] cut flexor tendon (cannot weild ANY weapon)
    - [+] slashed hamstring (fall. skillcehck every time you move, 
          vslow movement)
    - [+] severed finger
        - [+] finger drops to the ground
        - [+] ring drops to the ground
        - [+]  (get nobodypart bp_rightfinger or bp_leftfinger)
- [+] bash:
    - [+] dislocated arm (cannot weild anything heavy in that hand)
    - [+] broken rib (reduced carrying capacity)
    - [+] swelled ankle (cannot remove or put on boots)
2011-09-05 22:04:51 +00:00
Rob Pearce c181893ae4 - [+] sleeping mosnters aren't waking up soon enough!!! make difficulty
of listen check easier.
    - [+] they tend to only wake when i'm 1 sq away
- [+] get rid of sprintf
    - [+] replace all with snprintf via macro
    - [+] then search for HUGEBUFLEN etc and fix up
- [+] compile with -O2, fix up warnings.
- [+] gaze attacks (ie eyebat, beholder) now need 2way los, and glasses
      will protect you
- [+] use "wrapprint" to show physical props in @@
- [+] glowbugs should flash upon death
- [+] should stop gaze attacks (like eyebat)
- [+] golden cobra - acidspit at eyes
- [+] bright flash (glowbug, and make some of them hostile)
- [+] flashbangs (make them more common)
- [+] combine tracking with searching and call it "Perception"
    - [+] replace all occurences of SK_xxx
    - [+] replace skillcheck (or make it use different skill)
2011-08-31 17:33:35 +00:00
Rob Pearce 16fb58c3cf 2011-08-17 20:57:43 +00:00
Rob Pearce 907ed43e40 - [+] calm animals should please mercy god
- [+] fix crash in godappears() if no cells free enxt to player
* [+] hecta's drain life didn't work?  MR?
2011-08-10 16:39:32 +00:00
Rob Pearce cdd7d69532 * [+] why did i get a gift from yumi in the middle of a battle?
- [+] need alignment. f_alignment.  default neutral.
- [+] slight change to armour damage calc
- [+] thrown poisoned weapons don't work!
- [+] holy aura spell. lv3 cleric.
* [+] are kobolds working properly??  seem buggy
* [+] calmed down a war hound with a mushroom.
- [+] use wisdom for checks for unwise things, not iq.
* [+] hecta should only care about attacking evil creatures if they
      were NOT hostile.
- [+] optimise:
    - [+] use getflags() more often.
    - [+] lookforobs() - redo code for ai wanting things.
    * [+] precalclos - 28%
    * [+] hasbetterweapon()
    - [+] haslos - 27.3%
- [+] when you move now, you don't have los to your previous cell on
      the first drawscreen when your turn starts!!!!!
- [+] ai is coming too close before firing ranged weapons. allow them
      to stay within 2 - maxrange if they have a weapon.
- [+] also let them fire form furhter away!
* [+] give healing potion to hurt (intelligent) lf to calm them down?
* [+] Amberon (m) purity, righteousness
* [+] Hecta - female, death, undead, evil, night
* [+] Felix -  male, thieves, greed
* [+] bug - i found jimbo dead!
- [+] cave vault (different wall types, boulder at the entrance, lots of
      food, bears)
2011-08-10 02:40:29 +00:00
Rob Pearce 00f9d4e0bf - [+] vampire gas cloud not working for player
- [+] monsters should only weild weapons if they are better than their
      inbuilt attcaks!
- [+] show dtected obkects in bold green
- [+] bug: can blink into impassable objects
- [+] infinite loop in ai turn for porcupine.
    - [+] movetowards()
* [+] vampires
- [+] vampire changes back to its original form.  CRASH.
2011-08-05 21:34:35 +00:00
Rob Pearce 81c7f37eff - [+] outdoor bug: at -1,-1. travel south. end up at 0,0!!!
- [+] blink should go to random place within lof, not los
- [+] sunglasses shuld reduce nightvis range, not visrange
* [+] since jolt needs adjacency, make it more powerful
- [+] use colours for spell descriptions
- [+] replace 'call wind' with 'zephyr'
* [+] add vault commonality.
- [+] add more common vaults - roundabout etc
* [+] change "addmonster" to take a string arg instrad of RACEID
- [+] pouring cursed water on blessed scroll didn't work.....
- [+] append "...god of xxx" to rc_god lifeforms
- [+] try to attack with f_pain -> INFINITE LOOP.
- [+] ARMOURPIERCE shouldn't hurt armour
- [+] ghast touchparalyze attack isn't working.
* [+] bug: when praying to gods, ones not in heaven aren't listed.
- [+] when a god apepars..."Hecta appears" x2
- [+] attacking fleeing lf should count as a backstab (if you have the
      skill)
* [+] "nothing happens" during god spell effects
* [+] allow hunger to work on monsters
- [+] pressing 'a' on @Magic has weird results.
- [+] bug: got a gift form yumi during combat???? what for? healing?
initial vampire implementation
initial god implementation
- [+] they all start off in "heaven" map.
- [+] gods ahve f_piety. starts at 0
- [+] keep track of piety with each god. starts at 0 for each one.
* [+] let planeshift take you to heaven (for debugging)
* [+] everyone has 'pray' ability.
- [+] modpiety(rid, amt)
* [+] piety vals
* [+] when you pray
- [+] isangry(god) - ie is piety < 0
* [+] if you pray when god is angry, bad!
* [+] once piety gets over 200 or so, praying  might give you a gift. 
* [+] god_appears(lifeform_t *victim)
- [+] if >=0 (indiff / pleased), goes up to indiff over time(1 per
      turn).
- [+] regain through doing actions ... in progress
- [+] lose through doing actions only if you have prayed to this god
      before (angergodmaybe)
- [+] special: gods don't need LOS to cast spells.
- [+] gods planeshift away if not doing anything else.
* [+] @g to see your piety levels for each god
- [+] ?g for help on gods
- [+] IN general:
    - [+] prey = oneoff effect
    - [+] gift = ongoing
    * [+] makeangry() vs modpiety
* [+] Yumi - fem,mercy/healing - if you die within the first few turns!
Hecta - partial
Avamon - partial
2011-08-03 18:43:05 +00:00