Commit Graph

262 Commits

Author SHA1 Message Date
Rob Pearce 17461f9c24 - Show value of objects based on your skills
- Morningstar should also deal piercing damage
- potion of greed modified to detect objects based on value
- Two-hand weapons are now usable one-handed with very high STR
- Gain skill points faster
- Scimitar is now AGI based, not STR
- No eating when nauseated
2023-10-10 21:30:16 +11:00
rob 47e0e1fce8 fire god gifts should be fireproof 2022-09-12 21:25:58 +10:00
Rob Pearce fb69950ec2 Removed unsupported options from osx makefile
Fixed some buffer overruns where incorrect size was passed to snprintf
2022-08-29 08:26:02 +10:00
rob ea1df51d08 Replaced flag code with hash tables. Roughly 76% faster. 2022-08-28 16:09:49 +10:00
rob 81c033d7dc Removed sprintf() usage
Now conpiles properly on linux again
2022-08-27 21:38:56 +10:00
Rob Pearce d4861e906f Fix bug in fire damage calculation 2021-11-16 11:23:16 +11:00
Rob Pearce 7a5563de68 *Rats should be immune to disease
*Increase IQ bracket level required to count as "genius"
*prevent baba yaga's hut (or any F_NORANDOM buildings) from being randomly created
2016-07-07 16:25:06 +10:00
Rob Pearce 33c532339c Slightly increase chance of vaults in the main dungeon
When creating vaults, use 50% chance each time of increasing rarity instead of 33%
Make chests have better objects
2016-06-18 18:22:43 +10:00
Rob Pearce 980daa1d8c Ensure that Battlemage's initial three spell schools are unique. 2016-06-14 01:10:33 +10:00
Rob Pearce 729da5bb52 Fixed crash when 'what goes up' is active and a thrown missile is destroyed. 2016-06-13 23:38:45 +10:00
Rob Pearce cd58efb772 Fixed bug in getrandomobofclass() causing "get random food" to fail. 2016-06-13 22:18:24 +10:00
Rob Pearce 4c4c3a3e04 should be able to 'o'perate a lockpick to trigger the 'pick locks' skill using that object. 2016-06-13 09:30:03 +10:00
Rob Pearce 51bdeede32 For cartographer skills, don't shade out some known cells outside of our vision range. - stairs - doors - objects 2016-06-13 09:15:00 +10:00
Rob Pearce 3dd52fa511 When describing an object fmor a shop, show its real (identified) name. 2016-06-13 08:44:14 +10:00
Rob Pearce 6edfb3ee6d bigfix: aigetlastknownpos() fails when one of the adjacent cells is off the edge of the map. 2016-06-12 22:01:02 +10:00
Rob Pearce b7627de8cb F_POWDER items now dissolve in water. 2016-06-09 21:17:39 +10:00
Rob Pearce c6f3f3f9bd - takedamage() should end instantly if object is aleady dead. 2016-06-09 17:11:47 +10:00
Rob Pearce 0f90f3b76f Tweak breakob code again to cope with various numbers of broken object types, not just 2.
Replace all (struct)->weight with (struct)->mass.
2016-06-09 11:24:24 +10:00
Rob Pearce 74b0e9841f Modify getbreakob() to produce less objects - a burned giant newt corpse was turning into ~38 piles of ash! 2016-06-09 10:52:48 +10:00
Rob Pearce a4735d597c MAke object weight functions more meaningful - getobmass() and getobweight() 2016-06-09 10:51:55 +10:00
Rob Pearce d676a33072 Fix crash in ai movement when move was "successful" but target cell was still removed (eg. tried to open an unopenable door). 2016-06-09 10:25:50 +10:00
Rob Pearce fd450ba0c3 - Allow mages to select spells from their primary school through training, by spending points.
- Rename 'weapon attraction' spell to 'guided weapon'
- When showing spells in a book, include their school
- $ key to show current money
2016-06-07 16:52:41 +10:00
Rob Pearce 267f046986 When you fail to disarm a trap on a chest, and it goes off, ensure the trap is removed. 2016-06-06 22:29:20 +10:00
Rob Pearce eabf474c08 Allow random objects with given rarity in vault files "rare random thing" or "vrare random thing"
poolroom.vlt should have slightly less piranhas and a chance of rare objects underwater
2016-06-06 17:07:14 +10:00
Rob Pearce 8456ed6a74 - Option to notify about absorbed into dirt
- Fix crash if no cells found for god to appear.
- When calling fillpot from splashes moved/placed objects, make sure there is sufficient liquid to fill to container.
- Potion of blood sohuld always be a 'dark red potion'
2016-06-06 15:21:47 +10:00
Rob Pearce bd0f37f461 *water appearing/moving onto cells should turn empty flasks into potions if they have F_FILLPOT 2016-06-06 12:15:42 +10:00
Rob Pearce d381e8444c - Introduce MR_BACKTOLAIR to avoid ai code failures.
- Clear message bar before askobject()
- Make towel code include certain small liquids on the ground (splash of water, blood, etc)
2016-06-06 10:28:49 +10:00
Rob Pearce a23bedde10 *When using a towel, make it able to dry off objects on the ground.
*When using a towel, make it wet based on how much you dry off.
*Create Water description should specify that water is created on the ground.
*when creating "a wet xxx", make its wetness time be the maximum.
*fixed bug where F_WET obmods would not show up after the v1 timer value changed (added flags->obmodignore[])
2016-06-04 10:20:34 +10:00
Rob Pearce 9330c00ab3 Uncursing objects now causes them to become unequipped. 2016-06-02 16:35:12 +10:00
Rob Pearce dc48475d8b Cursed eyewear now _reduces_ your vision range. 2016-06-02 16:22:26 +10:00
Rob Pearce 562f3d082b - Dagger of Revenge had incorrect F_LINKGOD.
- Prevent obtaining key items via wishes.
2016-06-02 15:46:30 +10:00
Rob Pearce 89dbff4a63 Potions of (in)competence now modify attributes by 5, not 1.
Add a squeaking hinge trap
Rename doobtraps() to triggerattachedtrap() for readbility.
Make using spanners able to set off traps.....
Make spanners able to unlock anything (chests, doors)
Allow (I)nteraction with adjacent objects, not just impassable ones (but limit what kind of objects this works with).
Remove CMD_CLOSE command ('s') - we can just use 'interact'.
Limit (I)nteractions to cells in front of you.
2016-06-01 23:59:39 +10:00
Rob Pearce 5135352e2a Random object generation was completely broken. Should be a little better now. 2016-06-01 21:09:21 +10:00
Rob Pearce 4a7711d110 Genies should be immune to cold
Objects/lfs made of gas shouldn't be able to be knocked backwards
2016-06-01 16:51:09 +10:00
Rob Pearce 18da62c7bd When checking whether objects are being absorbed by the ground, use "getmaterialstate == MS_LIQUID" rather than just checking meterial id. 2016-06-01 15:44:03 +10:00
Rob Pearce f9a03e40e6 heat metal spell is way too strong, instakilled my char with 50-60 hp. Reduce heat duration from 3-6 turns to 1-2 turns. 2016-06-01 15:38:06 +10:00
Rob Pearce 39160a7c24 Forgot to append hpbuf to objects when describing them. 2016-06-01 15:27:17 +10:00
Rob Pearce cb97ac1f26 When looking at flying creatures, show their height (in metres). 2016-06-01 15:18:52 +10:00
Rob Pearce c4a576d6ca Fix text when reading a map and you're already on top of the target location. 2016-06-01 15:10:40 +10:00
Rob Pearce 4a072fefc8 - Lower range of 'heat metal' to 1.
- Change description for fatal heat damage to 'scalded'.  Only use 'incinerated' for fire damage.
- Immutable objects shouldn't be able to be heated (eg. with "heat metal")
2016-06-01 15:01:07 +10:00
Rob Pearce 8ed4b9aca0 - new l2 death spell: "field of decay" - damage objects / lfs made from organic material
- If not in battle, praying to Hecta will restore stamina / mana, and sometimes cast field of decay
2016-05-31 12:23:39 +10:00
Rob Pearce 99fc225519 - in addob(), prevent placing innate attack objects into non-lf obpiles.
- when parsing object names, require an exact match for innate attack objects.
2016-05-31 10:41:00 +10:00
Robert Pearce e9a2ccb2c8 - Fixed heaps of memory leaks and bad memory usage. This should finally fix the flagpile corruption from 6 years ago!
- forgot to initialise brand->description
- door displaying as "leaf" - definition of knowledge->id was OBCLASS instead of OBTYPE.
- Repeated text:
        Minimum agility to use effectively: 50 to use.Minimum agility to use
        effectively: 50 to use. (bonus at 70).
- change wish text to be more meaningful
- fix failure when loading objects with a bonus from vaults/bones (eg. blessed '+5' sword)
- when raging, don't prompt to really attack when you won't gain xp
- disable flagpile checks
- Use 'interact' to use shops, not 'operate'
- Bad text: You are resistant to: projectiles[-7870t], explosives[-7870t].
- scorpions shouldn't follow you up stairs. (but giant scorpions can)
- make failed relinkob() calls return the original object rather than null, otherwise we get situations where an object becomes NULL and causes a crash.
- make cooking skill description show what size corpses you can cook.
- bug: potion of growth caused instadeath when reverting.
- bug: not showing monster abilites properly
- show raceclass in descriptions (/ v)
- make evasion only work if you're not exhausted
- Felix should be pleased by attacking people while hidden
- Not seeing felix angered messages when donating items
- Holes in roof - you now need to climb to inspect them.
- Fixed crash when hitting @ while producing light.
2016-05-31 00:21:12 +10:00
Rob Pearce 2f80d6ba05 - [+] rewrite gettrrange()
- [+] reduce chances of dulling weapon from hitting things
- [+] crash during save. other save/load fixes.
- [+] simplify xp value calculation.
- [+] fixes for checks to see whether cells are diggable using "dig"
      spell.
- [+] fix shop closed bug - "we are closed" text not appearing.
- [+] sound code mods - should no longer ever hear "muffled slithering"
      (since slithering should be too soft to travel through walls)
- [+] undead will no longer try to heal via resting (since they can't).
2013-01-03 04:39:34 +00:00
Rob Pearce d89e93f64e - [+] tech is now uncommon, not rare.
- [+] bug: crash when linking to map entry objects
- [+] removed some material-based damage immunities
- [+] at night you shouldn't hear "a cash register chiming".
- [+] increase hp of chests
- [+] filling empty flask from potion of fshy lungs resulted in potion
      of water!
- [+] don't take migraine damage from light if your'e blind.
2012-12-31 05:10:13 +00:00
Rob Pearce a42ca5bb37 - [+] operate will turn electromachete on/off
- [+] Interact should also be able to open/close doors
- [+] closing doors should take time.
- [+] remove armourrating from many standard monsters.
- [+] should be able to get nauseated while asleep
- [+] shouldn't be able to generate corpses of unique monsters!
- [+] mental feedback should do more damage.
2012-12-26 06:12:09 +00:00
Rob Pearce 60914f4842 - [+] change cooking skill - make it determien the size of the corpse
you are able to cook.
- [+] then greatly increase chances of getting sick from raw meat.
- [+] and decrease nutrition for raw meat again
- [+] wizard classes should get random spells on level up
- [+] Interact (with adjacent things)
    - [+] add new command
    - [+] bookshelf
    - [+] wardrobes (contain clothes)
    - [+] open barrels
    - [+] computers
- [+] only show "it currently contains..." for containers which you
      have opened.
    - [+] F_BEENOPENED.
- [+] some barrels are randomly jammed
- [+] change jam to be strength check.
- [+] change skillcheck roll - now only 1-50
- [+] monsters shouldn't cast lethargy if you're already exhasted
- [+] lethargy should cancel rage.
- [+] change spellbooks - always id them but you might not be able to
      read them.
new vaults:
- [+] goblin nest
- [+] orc fort
2012-12-23 22:02:52 +00:00
Rob Pearce 67d6d4b30b - [+] clouds of smoke (or anything gaseous) shouldn't be able to fall!
- [+] BUG: after giant ant digs a hole:
    - [+] ERROR - unlinked stairs! should have been linked during map
          creation.
          ERROR - can't find opposite end of stairs/portal!
    - [+] upstaircase on the new level is being linked to a hole.
    - [+] fixed?
    - [+] test again... (dig down, check log.txt for linking to wrong
          type)
- [+] giant ant should be able to dig dirt at will(to escape)
- [+] mimic ??
    - [+] pretends to be an ornate chest.
- [+] new monsters
    - [+] gluon should be an ooze.
    - [+] hag
    - [+] phase spider (wlak through walls!)
    - [+] basilisk
- [+] better description for rusted armour.
- [+] fix crash when creating up holes.
2012-12-19 10:42:22 +00:00
Rob Pearce c1cb8ea62e - [+] new monsters
- [+] creeping coins
        - [+] pretends to be gold
        - [+] poison breath
    - [+] rat swarm
    - [+] locust swarm
    - [+] baby mind leech
        - [+] mind whip
    - [+] adult mind leech
        - [+] mental feedback
        - [+] l5 psionic - drain intellect spell.  3d6 IQ drain.
- [+] summon swarm spell
- [+] ai: only pathfind if we are >= animal intelligence.
- [+] shadow - drain strength
- [+] show: "you swap places with the _sleeping_ lf"
- [+] problem:
    - [+] i have metalwork = beginner, sewing = novice
    - [+] ...but i could resize cloth objects!
- [+] SAVE broken again. fixed? 
- [+] in fixreachability, glass walls count as nonsolid
- [+] aligned temples:
    - [+] detect auras: free
    - [+] curse removal: free
    - [+] blessings: half price
- [+] change surface map.
    - [+] map difficulty should be very high.
2012-12-12 01:00:17 +00:00
Rob Pearce fe41614a1c - [+] better help text for temperature effects in @e
- [+] why wasn't eyebat levitating? fixed. anything with nostam should
      always have 100% stamina.
- [+] pain shouldn't work on undead.
- [+] screamer
    - [+] walking
    - [+] plant. purple brocolli
    - [+] spellcloud scream
        - [+] deafens adjacent creatures for 40-50 turns (doesn't stack)
        - [+] attracts other monsters
    - [+] leaves "screamer slice"
- [+] how do you open a barrel without hurting contents?
    - [+] answer: don't use DT_BASH.
- [+] giant bee
    - [+] sting then die. (cause pain)
- [+] don't get dizzy while running
2012-12-07 04:42:14 +00:00