nexus/attack.h

36 lines
2.3 KiB
C
Raw Permalink Normal View History

2010-12-02 12:17:54 +11:00
#include "defs.h"
- [+] allies should always give out info without payment - [+] ....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
2012-01-06 11:20:57 +11:00
int applyarmourdamage(lifeform_t *lf, object_t *wep, int dam, enum DAMTYPE damtype, lifeform_t *attacker);
2011-03-04 12:22:36 +11:00
void applyarmourdamreduction(lifeform_t *lf, object_t *wep, int reduceamt, int *dam, enum DAMTYPE damtype);
int attackcell(lifeform_t *lf, cell_t *c, int force);
int attacklf(lifeform_t *lf, lifeform_t *victim, object_t *wep, flag_t *damflag);
int attackob(lifeform_t *lf, object_t *o, object_t *wep, flag_t *damflag);
int attackwall(lifeform_t *lf, cell_t *c, object_t *wep, flag_t *damflag);
enum DAMTYPE basedamagetype(enum DAMTYPE dt);
- [+] most monsters which covet food should have snatch - so that you can just drop food for them. - [+] when looking for remote obs, DO include adjacent cells with lfs, if we have the snatch ability. - [+] some long thin levels (80 x 12 ?) - [+] fix code to remove useless doors. - [+] 0 pairs of dirs with empty cells = change door to wall - [+] pick an adjacent empty cell - [+] floodfill the 8 cells around the door. - [+] start with adj cell - [+] can't go more than 1 cell away from door - [+] solid cells or doors will stop movement - [+] if no unfilled cells around the door, bad. - [+] new way of fixing unconnected levels - portal! - [+] pick one spot in each section then place a portal there. - [+] dying should cure poison - [+] tweaks to attack text - [+] floor tile effecst - [+] absorbancy - ie. carpet should absorb water. - [+] converyors - [+] only walkable sometime (crushers?) - [+] in tombstone, show "eaten by Rattus", not "eaten by a rattus" - [+] god of nature should like eating animals all the time, not just when hungry (makes piety gain easier) - [+] announce when eyes are protected from a spellcloud - [+] klikirak should like setting off fire traps. - [+] floodfill() should follow portals to the same level. - [+] show >1 skillpoints in green on status bar - [+] bug: gods are apeparing behind you. - [+] bug in getrandomadjcell - [+] gods' planeshift spells failing? might be fixed now. using getrandomroomcell instead of getrandomcell. - [+] increaes damage dealt by smite evil/good - [+] lightning javelins shouldn't be stackable - [+] monsters not firing ranged weapons! - [+] they just walk back and forth - [+] bug with how i was calling haslof() for cells other than where the mosnter was (in getdiraway()) - [+] turn undead should only work if caster level*2 is >= monster level fullblock basics: - [+] penalties - [+] lowers visrange to 1 - [+] huge attack penalties - [+] huge evasion penalties - [+] vhigh chance of all ranged damage going to shield instead. - [+] buckler = 75 (small) - [+] shield = 80 - [+] large shield = 85 - [+] tower = 90 - [+] plus shield skill*2 - [+] use check_shield_block in all spell effects - [+] this checks whether player is shieldblocoking (or evades??) - [+] then applies damage appropriatly. - [+] new ability; - [+] stopped by: - [+] losing or unequipping the shield - [+] being interrupted - [+] casting a spell or using an ability - [+] exotic weapons should cost more. - [+] maybe prevent prayer until gods have been pleased enough ? - [+] while you're not worshipping anyone, piety gain is x4. - [+] once first one hits 'pleased', they will appear and offer you a place - [+] advantge to this is that you get a gift - [+] picking up new gold should please felix...... - [+] you shoudl only be able to sacrifice untouched gold. this pleases felix double as much as grabbing it. - [+] gods sohuld appear "in a cloud of ..." - [+] bjorn - blood - [+] klik - fire - [+] lumara - bright light
2012-11-09 22:50:52 +11:00
int check_for_block(lifeform_t *lf, lifeform_t *victim, int dam, enum DAMTYPE damtype, int difficulty, char *attackname, int ranged);
- [+] weapon skill of sk_skilled or high gives you a chance to block 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
2011-12-13 03:40:17 +11:00
//void confereffects(flagpile_t *fp, lifeform_t *victim);
- [+] griddler didnt start with trident? - [+] it DID, but it dropped it cuase it was hot. - [+] griddler should be immune to redhot! (testing shows it currently isn't) - [+] once prisoners give you a reward, they shouldn't be allies anymore (ie shouldn't follow you up/down stairs) - [+] portal to realm of gods hsouldn't work until you have a godstone. - [+] why did potion of oil explode when i threw it? - [+] for unique monsters, instead of "jimbo's armour protects it", use "jimbo's armour protects him" - [+] use f_gender - [+] this replaces F_GODOF. - [+] change gods to use this too. - [+] change cloak of shadows - only work if max vis range is low ? - [+] monsters can't see you if they are >=3 away - [+] F_SHADOWED - [+] more amulets - [+] of the traveller (go to a much deeper level or branch when you put it on. go back when you take it off) - [+] implement - [+] usually start cursed - [+] boost piety gain - [+] soul feasting - [+] acrobatics (tumble/jump) - [+] choking - [+] first add f_nobreath - [+] doesn't work if you don't need to breath - [+] hydra blood poisonous - [+] handle "linkrace:xxx splash of blood" - [+] make bleed() use this. - [+] add f_venomblood to r_hydra (and others?) - [+] make filling potions from blood check for f_linkrace->f_venomousblood - [+] maybe handle this more elegantly. - [+] add f_bloodfillob to blood objects (inherit from lf) - [+] fine, but what about addobsinradius? make it populate retobs!!! - [+] change f_venomblood to f_bloodfillob->ot_pot_poison - [+] remove "linkrace:xxx" code from objects.c and from bleed() - [+] flashbang shouldnt affect user (you would look away) - [+] add F_THROWNBY to objects when you throw them. - [+] stop initial revolvers from starting with 'a rubber bullet' - [+] dry ice grenade - csats "snapfreeze" - [+] needs f_spellcloudondeath - [+] implement - [+] spiked club - [+] The hawk critically claws your hands. Your ! - [+] fixed. - [+] need another way to unlock chests - [+] bash them - [+] if it is trapped, high chance that the trap will go off - [+] if you attack something which is locked, it has a small chance of becoming unlocked - [+] rnd(1,your_str) must be > lockdiff! - [+] different unarmed attack verbs for monk - [+] javelin of lightning - [+] when you throw it: - [+] dothrow() calls spelleffects(LTBOLT) - [+] then uses up one charge - [+] if charges are left: - [+] reforms in your hands - [+] otherwise it turns into a normal javelin - [+] shovel - [+] jackhammer (like pickaxe but faster)
2012-04-14 08:52:35 +10:00
void criticalhit(lifeform_t *lf, lifeform_t *victim, enum BODYPART hitpos, object_t *wep, int dam, enum DAMTYPE damtype);
* [+] BUG: books lose their hidden names after load: - [+] bug: on load i can see in all directions, and impassable stuff around me is obliterated! - [+] warn when attacking will rust your weapon (if wis high enough) - [+] yumi should like killing injured things - [+] bug: sandman isn't attacking or casting spells. - wasn't hostile. * [+] bug: not able to sell gems in a jewelery store - [+] when something casts swap places, need to redo los for the target too! - [+] "you feel a wrenching sensation" should have 'more' after it. - [+] stat bonuses for gods - [+] yumi - boost wis - [+] glorana - boost con - [+] Lumara - boost iq - [+] enchant weapon should remove rust too. - [+] only place a pool of blood if monster is large enouhg - [+] when mosnters steal gold, let them take more than just one! - [+] monstres need to retain F_HOSTILE on polymorph! forgot about rndhostile - [+] change some eatconfers to blood confers - [+] make blood splashes combine properly - [+] test with troll blood - [+] when you _kill_ something, drop more blood - [+] when you behead/bisect, do splatter - [+] in knowledge, show: "its blood can be bottled to make xxx" - [+] (at skilled knowledge level) - [+] test.... - [+] replace eatconfer flags with f_fillpot - [+] make sure monsters with fillpot actually bleed - [+] make slash etc damage ALWAYS cause bleed - [+] make projectile damage only cause bleed if the object is pointy (f_missiledam) - [+] make bashing not cause bleed - [+] make sure that bottling blood reduces/kills the object. - [+] robots should bleed oil - [+] CRASH: during lfhasflag(dodges) - lf.c:20201 (getobname - [+] getting ob name of 'rdata' from celldangrous() - [+] but rdata->pile is bad... - [+] and object was a manual. why was a goblin avoiding a manual? - [+] celldangerous() actually set rdata to "deep water" - [+] ....but somehow it changed to point to a manual!!! - [+] getdodgecell() changed it! - [+] bug: when a monster kills anohter: - [+] "the xxx hits the xxx" - [+] (no death message). - [+] either include "xxx dies". or make "xxx kills xxx". - [+] fixed, i think. wasn't calling getkillverb when attacker was a monster.
2012-06-03 08:43:18 +10:00
int damtypecausesbleed(enum DAMTYPE dt, object_t *fromob);
int damtypecausescriteffects(enum DAMTYPE dt);
2011-03-04 12:22:36 +11:00
int getarmourdamreduction(lifeform_t *lf, object_t *wep, int dam, enum DAMTYPE damtype);
void getarrange(int arating, int *min, int *max);
//object_t *getattackwep(lifeform_t *lf, obpile_t **unarmedpile, flag_t **unarmedflag);
2011-02-01 06:16:13 +11:00
enum DAMTYPE getdamtype(object_t *wep);
- [+] change real_getlfname(): - [+] take lifeform_t * for usevis instead of boolean - [+] add new option "useorigrace" for shapechangers - [+] whips - [+] F_WHIP - [+] new skill: sk_whips - [+] basic trais: - [+] high accuracy - [+] lowish dam - [+] pierce/slash/bash damage - [+] some will let you cast 'snatch' and suck - [+] no crit chance - [+] examples: - [+] bull whip (lowest damage) - [+] flail (ie. chain whip ,change type from club to whip) - [+] heavy flail - [+] metal-tipped whip (flail with higher acc) - [+] barbed whip (causes piercing damage as well) - [+] io.c @@ should take extradam into account - [+] describbeob() should show F_EXTRADAM - [+] change morale values - this shoudl default to your TR, otherwise f_morale replaces it. - [+] CRASH in doknowledgelist() - [+] hecta bug: fixed! - [+] You bisect the kobold! The dying kobold shouts "Nooooo!". Hecta's voice grates against your mind: "You allowed my sacrifice to escape!" - [+] is this because i'm calling "flee" after the lf takes fatal damage but before die() is called? - [+] NO, because flee() checks isdead(lf) - [+] it's happening when i kill a monster, and another one of the same type sees me! - [+] change: only trigger this is the player has previously attacked the monster - [+] replace fire titan with balrog - [+] You bisect the giant gnat! The dying giant gnat shouts "Nooooo!". - [+] fixed. - [+] boggart -brown 'n' - [+] made of wood - [+] cause things to disappear - [+] cause milk to sour (low power blight) - [+] scared of salt - [+] demandgold - [+] briar thrash (spiky) - yellow 'T' (grab) - [+] bingebark - red 'T'. wants edible, canwill snatch - [+] leshy (human with leaves) - green 'h' - [+] manticore - red 'm'' - [+] lion, bat lings, man head, tail tipped with iron spikes - [+] carnivore - [+] human sized - [+] shoots 1-6 spikes. each spike does 1d6. too much!! - [+] change this to be 5d3 damage per volley. - [+] ie missiledam 4d3 - [+] can do this once every 50 turns. - [+] can fly - [+] claws - 1d3 1d3 - [+] want gold (non covet)
2012-03-29 07:17:47 +11:00
int getextradamlf(lifeform_t *lf, int *dam, enum DAMTYPE *damtype, int *ndam, int wantmax);
- [+] modifications to alchemy spell - affect stone, not metal - [+] fire/cold spells: - [+] endure fire/cold - [+] L2 - [+] ongoing - [+] like endure elements but only one element. - [+] fire - done - [+] cold - done - [+] negate fire/cold - [+] L3 ongoing - [+] rename "gold coin" to "gold dollar" - [+] announce mosnters losing interest. - [+] if accuracy is too low, chance to fumble your atttack if you miss. - [+] ie. drop weapon - [+] show "please wait' message during initial build. - [+] why can't i fill an empty flask from a potion of blood? - [+] because blood grew into a bigger one - [+] CRASH - go to a shop, 'sell gems', pick a letter not in the list - [+] The giant ant kills the kobold. The kobold dies. - [+] never use "kills" when a monsters is killing another one. - [+] implement CURSED scroll of wishing effects. - [+] stoning - [+] hostile summons - [+] insanity- drop iq prmenantly - [+] golden boulder - [+] proximity mine (l3 tech) - [+] if activated, explodes when someone walks ONTO it (but not _off_ it) - [+] only gtaverage WIS _or_ adept tech knowledge won't walk onto it - [+] rollerskates (wear on feet, move fast fowards) - [+] jet skates (faster version of rollerskates) - [+] only work when ACTIVATED - [+] only work when they have CHARGES left - [+] drain charges when activated (like a jetpack) - [+] cattle prod - piercing DR 1, +10 electical dam while it has charges - [+] f_extradamwithcharges - [+] computers - [+] operable - [+] no pickup (or at least, VERY heavy) - [+] need tech usage to use. - [+] get choices equal to your tech level (novice = random) - [+] choices: - [+] 1 M = map whole level - [+] 2 O = show location of loot (detect objects) - [+] 3 L = show lifeforms - [+] 5 D = explode - [+] 6 I = identify one item. - [+] 7U - unlock all doors + chests - [+] at high techusage you can pick destruct time ?j:e sp
2012-06-25 22:49:53 +10:00
int getextradamwep(object_t *wep, int *dam, enum DAMTYPE *damtype, int *ndam, int fordisplay);
void getdamrange(object_t *o, flag_t *f, int *min, int *max);
//void getdamrange(object_t *o, int *min, int *max);
//void getdamrangeunarmed(flag_t *f, int *min, int *max);
//float getdamreducepct(float armourrating);
int getdamroll(object_t *o, lifeform_t *victim, flag_t *damflag);
//int getunarmeddamroll(flag_t *f);
- [+] 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-25 07:38:59 +11:00
int getstrdammod(lifeform_t *lf);
//obpile_t *getunarmedweapon(lifeform_t *lf, flag_t **uflag);
- [+] fixed CRASH when energy blade vanishes - [+] gods of opposing alignments should never make offers. - [+] new armour flag: - [+] f_underclothing - [+] getequippedob() - get the outer one. - [+] if you have f_underclothing, can wear other armour on top of it. - [+] can't remove underclothes without removing outer first. - [+] TEST with cotton shirt - [+] make sure autoequip handles undercltohing - [+] fix other objects - [+] adjust ']' output - [+] make armour help against some magical damage too - [+] move armour check and reduction into losehpeffects(). - [+] pass damreducedbyarmour to losehpeffects - [+] psionic spells: - [+] dampen missiles - lots of extra evasion vs missiles only * [+] soul link (l4, share damage) - [+] mind sheidl (l4, like the amulet) - [+] delay death (l5, don't die if hp <= 0 and this spell is active) - [+] remote ko (l6) - [+] Silence spell / effect - air. - [+] f_silenced. - [+] announce in io.c - [+] prevents spellcasting - [+] prevents docomms() - [+] prevents reading scrolls - [+] prevents speech-based abilities like warcry and sonic bolt - [+] say() will fail - [+] sayphrase() wil fail - [+] test the spell....... - [+] CRASH when adjusting glyph on edge of map - [+] non-humanoids can't climb without climb skill. - [+] player sohuld be able to swap with unconscious/asleep lfs <= same size - [+] too easy to knock things unconscious??? bug. fixed. - [+] reusable cells being set to empty! think this was a vault definition problem. - [+] demon chameleon / deech - [+] low-level mosnter which can hide
2012-12-06 15:57:13 +11:00
int armourcanstopdam(enum DAMTYPE damtype);
- [+] announce when a web spell hits you - [+] grammar: xxx "flys" into view. need getmoveverbplural() - [+] make yumi's "well, that seems unfair" only work when killed by a mosnter which didn't chase you up. - [+] no unarmed skill descriptions!! - [+] remove pain ability from stink beetle - [+] cockroach - with just high armour rating (10) - [+] bajeetle - lower armour but bite causes pain - [+] yumi - only allow you to gain piety from letting a monster run away ONCE per mosnter - [+] new monster: petrifungus - [+] give merciful fighting for novoice adanced combat - [+] monsters should lose targets when eating - [+] vault: window in wall - [+] fix werewolf hiding code for Rattus (when medium sized) - [+] "you hear a muffled slithering" - this shouldnt be loud enough to go through walls! - [+] selected Evil Adventurer. alignment ended up as NONE - [+] have added debugging - [+] wait for it to happen again - [+] put in code to check at start of turn whethe r my alignment just changed. - [+] my alignment seems to have changed to NONE - [+] POLYMORPH is causing this. - [+] fixed - [+] commando should have low level version of gunblade - [+] electromachete - low pierce + low electric - [+] gunblade - med slash + low explosive - [+] boomstick - med bash + high explosive - [+] commando should start with a few energy packs (need to add this object) - [+] l2 tech - [+] operate it to recharge tech which has charges. - [+] like a scroll of replenishment, but only for tech. - [+] when monsters follow you up stairs, they should face you - [+] jewelry store should buy watches - [+] when exploding cells, remember who caused it - [+] new arg: lifeform_t *causedby - [+] use this when dealing damage, so that it counts as player kill (etC) - [+] explodeob - [+] monks sohuld be very resistant to being scared - [+] gauntlets (or other hard gloves) should increase unarmed damge by 1 - [+] seems almost impossible to break locks on chests by bashing.... check the calc. - [+] fixed. - [+] ekrub should accept sacrifices of plant matter - [+] sebastian - absorbs physical damage to increase damage. - [+] after first hit: +1dam, knockback - [+] after 2nd: +2 dam - [+] etc - [+] vuln to non-physical (fire, magic, cold, elec, etc) - [+] cockroach, plague rat should taint anything it walks on - [+] fix up morale checks. 30 should be 100. therefore: multiply by 3 and a bit. - [+] CRASH during wish for Power - [+] bug: - [+] You whack the pixie. The pixie turns to face you. The pixie turns to flee from you! Amberon's voice booms out from the heavens: "You dare attack an innocent?" Amberon's voice booms out from the heavens: "You dare attack an innocent?" The pixie gestures at itself. - [+] baba yaga's hut - [+] shoudln't be able todrink potions - [+] shouldn't take criticals - [+] don't annoucne time during combat - [+] bug after giving gold to a bandit: - [+] $ - 0 gold dollars - [+] lore: tech... every level says' no special effects' - [+] bug: Strength: 24 (very weak, +1 dmg)* - [+] bug in getstrdammod() - [+] bug: A brown snake walks into view. - [+] should be 'slithers' - [+] mud shouldnt make shoes wet - [+] refridgerator should only have meat in it - [+] some jobs which have whip skills - [+] scourge should always start with a whip. - [+] fighter should be able to pick it - [+] aligned temples sohuld be half price (or free if god is pleased?) - [+] SM_DETECTCURSE - [+] SM_PURCHASEITEMS - [+] SM_BLESS - [+] SM_MIRACLE - [+] re-introduce monster zoos vault - [+] bullwhip shouldn't be able to dull! - [+] banana skin not slippery anoymore - [+] slightly boost player's starting hp - [+] why can vampire bat reach me to damage by boots/trousers? - [+] check out canreachbp() in lf.c - [+] maybe fixed - [+] commando's starting gun should start with normal bullets, never silver - [+] klikirak should grant fire powers - [+] cast pyromania when you pray - [+] gift: immolate every 20 turns - [+] fix trytokillobs() - this might fix some of the infinite loops i'm getting during level creation. - [+] klikirak should give slightly more xp for sacrifing objects - [+] hawks should swoop more often - [+] book colours are incorrect (ie. "red book" isn't red) - [+] i saw "something burns!" while resting... - [+] make hollow trees be green - [+] blessed amnesia shouldn't do anything bad - [+] armour stores shouldn't get hot! - [+] earthworm should only divide from slash damage - not bash - [+] queen ant shoudl be able to summon lots of soldiers - [+] staircases should be on top of ash piles when draring them!! - [+] in fact, staircases should be on top of _everything_ - [+] sanctuary potion should put out fires under you! (or anything with walkdam) - [+] shouldn't be able to smell by's hut - [+] wood wall should be diggable with pickaxe - [+] does shovel actually work? no, but it does now. - [+] dungeon level name - if it has a swamp vault, level is just called "the swamp" - [+] fire damage to bread = toast - [+] only say "the light here is a bit dim" etc if it's different form your previous level - [+] weapon stores shouldn't appear in baba yaha's hut! - [+] i think i said "weapon" but it turned into weapon store. - [+] works in a wish...... is this only a problem in a vault? - [+] test agian..... - [+] during summon mosnter, don't say 'the xxx starts to fly!' before "the xxx appears" - [+] when i read a create monster scroll, this _doesnt_ happen. - [+] when i cast summon small animals and a brian bat appears, it _doesnt_ happen - [+] only seems to happen whan a mosnter uses a summon spell - [+] maybe to do with finalisemonster() or "autogen" being set in addmonster? - [+] fixed now? - [+] walking on water shouldn't extinguish a flaming weapon! - [+] losehp_real needs a 'bodypart' argument - [+] klikirak should like killing plants - [+] do something to stop kilkirak worhipers from scarificeing the entire forest! - [+] if you attack a plant lf in the sylvan forest - [+] nearby plants attack. - [+] 33% chance of a treant: - [+] same if you destroy a plant object - [+] takedamage() needs a "fromlf" arg - [+] or sacrifice one. - [+] _warning_ if you attack a plant object or plant lf. (but don't kill it) - [+] WISDOM warnings: - [+] if you are about to attack an OC_FLORA object in the woods (and have felt the woods get angry once before) - [+] if you are about to attack a RC_PLANT lf in the woods - [+] if you are about to attack a CT_WALLTREE cell in the woods - [+] remove base 'wizard' class...
2012-08-12 15:04:49 +10:00
int iskineticdam(enum DAMTYPE damtype);
- [+] implement getradiuscells() - [+] evaporate spell - turn water into steam - [+] monster generation bug? even on dlev10 i'm stil getting mostly kobolds - [+] ai infinint eloop again - frost hawk trying to open door - [+] another infinite loop - not falling through after spell failure. * [+] reduce attack delay for most weapons. - [+] letplayer see a tiny bit in the dark (1 cell ?) - [+] beginner tracking not working - fixed. - [+] only show "...but do no damage" if you have good knowledge about their race. - [+] make gold lighter * [+] footprints glyph shouldn't override pudles of water! - [+] only show eviscerate etc if you have good knowledge? - [+] don't start monsters on the stairs/magical barriers!!! - [+] stone should be immune to more damage types * [+] addexits adding way too many exits. - [+] blessed identify should ID everything - [+] blessed mending mends all - [+] don't make noise when slowmoving. - [+] eyebat dispersal big: The eyebat's strong scent leading north disappears! - [+] go over footprint+scent+corpse and pickup:"You can't pick up footprints!" * [+] doors can't do on top of each other!!! * [+] low ground - [+] make sure you can't have more than one "water" object in a cell. * [+] make val2 of rarity be "common/uncommon/rare" etc - [+] more monster types should appear in the forest. - [+] when i go down stairs into a dark area, "it is pitch black!" is being cleared. * [+] helm of the poltergeist - [+] flying creatures get penalties in webs etc - [+] blind things shoudln't follow up/donw stairs - [+] You shout a blood-curdling war cry! The sawgrass turns to flee from you! - [+] potions still worth too much. minor healing was 420!! - [+] AI should only go towards covetted object if it's closer or the same distanec as target. - [+] branded objects should be worth LOTS - at the moment they're worth 1!! * [+] maybe just adjust value of rarity? - [+] don't roll spot checks while training! * [+] replace f_nofeel with: - [+] revenge did too much damage (50) * [+] change how AR works - [+] need to add: "really walk into a falling rock trap" ? - [+] put only ONE staircase going up on dlev 0 - [+] why am i stopping sprinting after 1 move? * [+] somehow make sure mosnters can't see footprints in a cell with mist - [+] bones shouldn't be able to catch on fire. - [+] when you levle up, gainskill BEFORE getting new spells - [+] put out flaming objects after pickup * [+] don't say "really target yourself?" when using a potion of sleep!! - [+] enhance a random skill when levelling up? every 2 levels? - [+] weaken koboldsa little - less change of javelin - [+] don't drown instantly - take a few turns, depending on CON * [+] create vault spell for debugging ??? - [+] doors in the middle of rooms. - [+] highlight selected choice in askstr - [+] flooded_room being created without walls!!!!!! - [+] describe spell from levleup not working * [+] GETROOMEDGE RETURNING NO CELLS for circularroom!!!!! - [+] fire wizard not prompted to get firedart at l2.. Vaults * [+] X corridor - - [+] crosshatch - [+] should water be ~ instead ?? and change whatever is currently a tilde to something else... Initial work on goal: - [+] surround all stairs with barriers - [+] start player NEAR stairs (randomadjcell from stairs, allowexpand) + methods of escape - [+] knock scroll - [+] digging (but it stops the dig from going any further)
2011-06-09 18:58:35 +10:00
int ismeleedam(enum DAMTYPE damtype);
- [+] bug: "10 flaming arrows ##########\n are no longer on fire" - [+] bug: when wearing no boots: "A small puddle of water hits you!" - [+] animated zombie keeps changing colour * [+] wizard special case: * [+] bug - walked down stiars on top of a monster - [+] change "haslof" to come from a cell - [+] replace WE_NOTSOLID with WE_WALKABLE - [+] show hp/mp in colour - [+] invis potion should always traget user - [+] generic functions to curse/uncurse an object - [+] not prompting for statgain after training properly. fixed. * [+] pressing a key should interrupt resting * [+] implement doublebuffering for screen - [+] don't show attack dmg for mosnters - [+] reduce sprint time - [+] if a monster is chasing someone (ie has F_TARGET), then don't consider cursed ob ells as valid - [+] don't hear noises when in battle - [+] colourise attribs on status bar * [+] askob/askobmulti - [+] "lockpick with what" showing too much * [+] inventoy colours - [+] "masterwork stick" ?! - [+] poison: save to get rid of poison should be HARDER than save to prevent getting it * [+] why are xats starting off carrying objects ? * [+] small chance of catching a thrown missile if you have very high dex * [+] if you polymorphed on purpose, have a "revert to original form" ability - [+] nausea should only affect humanoids - [+] BUG displaying knowledge when it goes longer than 1 screen. - [+] monsters are attacking each other again! fixed? * [+] BUG: when i load a game, i gain all knowledge! - [+] more pole weapons * [+] disarming weapons * [+] tripping weapons * [+] MORE ISSUES with askobject * [+] validatelf - [+] fix bug with poison triggering too often - [+] chance of retching when nauseated. no hp loss, but takes time. - [+] monsters shouldn't throw stuff if they don't have lof. - [+] fix crash in knockbackob->fireat, caused by thrower == null - [+] let high powered KNOCK knockback creatures again ? - [+] test function to dump out: dungeonlev which_monsters_can_appear - [+] firstaid tells you how long poison will last and whether it's lifethreatenting? * [+] high level listen gives more info - [+] wind shield spell - [+] repels all missiles of speed <= power - [+] variable level spells - [+] F_VARLEVEL - [+] when you cast, say "cast at how much power" with choices "Power II (5 MP)" - [+] show in spell list: "5-10 MP" - [+] replace ARBOOST with MAGICARMOUR - [+] needan() * [+] move psychic shield check into losehp - [+] high level detectlife should show actual lf glyphs - [+] control which jobs can learn which new skills. - [+] F_CANLEARN xxx - [+] remember last target from spells - [+] askcoords = does lf for lastlftarg exist? if not, set it to null - [+] if so, start with it - [+] when you pick one, set it. - [+] F_SHIELDPENALTY - modifies accuracy. * [+] stop wizards from using shields
2011-04-06 17:27:55 +10:00
int isphysicaldam(enum DAMTYPE damtype);
void modifyforsize(int *val, lifeform_t *lf, lifeform_t *victim, int howmuch, enum MODTYPE how);
- [+] better alignment picking - [+] only show valid alignment choices (ie. race & job & subjob alignments don't conflict) - [+] don't show subjobs which aren't valid (ie. vell warrior/paladin) - [+] don't shows jobs which aren't valid (ie. vell druid) - [+] monsters with low wisdom should be able to flee into dangerous cells - [+] ie. wisdom < average - [+] allow selecting your subjob directly, instead of haveing to pick your base job first - [+] restrict low level monsters to only "common" weapons - [+] make consumesouls only work in a given distance - [+] bug: player start room not being linked to rest of map - [+] hawks etc can't swoop away if they somehow get killed/fall asleep during their attack - [+] use adverbs when describing misses ("narrowly miss" "wildly miss" ) - [+] make map light level (well lit etc) determine: - [+] visibility range (remove this from habitat!) - [+] stealth check modifier - [+] show material vulnerabilities in EFFECTS - [+] poison checks are too easy. i had fitness 33 and passed in 1 turn! - [+] i know this is baed on timeleft, so maybe make timeleft count for more ? - [+] bug: infinite loop when player fleeing - [+] imp - [+] TR2 - [+] damage low (sting) - [+] invisibility - [+] immune to cold, fire, electric - [+] magic resist (demon) - [+] regnerate 1hp per turn - [+] remove "modification" school with "wild" - [+] prevent constant 6th sense warnings when something is chasing you - [+] speak with dead should be a divination spell, not death. - [+] hecta worshippers get bonusses for bone weapons - +1 damage. - [+] same with Ekrub and wood weapons
2012-08-01 07:19:04 +10:00
int rolltohit(lifeform_t *lf, lifeform_t *victim, object_t *wep, int *critical, int *fumble, int *missby);
- [+] press ] then \ - CRASH. - [+] if sound is behind walls: - [+] you hear a muffled explosion - [+] int canhear() needs one more optional argument: &numwallspassed - [+] if supplied, fill it in. - [+] in noise(), check numwallspassed. if there were any, then say 'muffled'. or maybe if more than 2? play around with this. - [+] listen skill should also give more info about NON monster sounds - [+] ie. direction, distance. - [+] set user->changinglev when CHECKING stairs in the same way as when we use them. - [+] monk abil - iron fist - use all remaining stamina as damage + knockback * [+] HITCONFER - this should only work if you were attacked through a BITE or CLAW etc. - [+] bug... werewolves etc not attacking properly after shapehifting - [+] some tech/tools should be usable with hands (ie. watch). f_operwithouthands - [+] werewolves sohuld keep f_hitconfer after shapeshifting - [+] done - [+] summoned creatures from ai should never attack their masters!!! - [+] only the PLAYER can be infected by a werewolf? or only HUMANS ? - [+] when a werewolf changes to animal form, no longer hide true race as 'human' - [+] lycanthropy? - [+] how to get it: - [+] drink were-xxx blood (->potion of lycanthropy, never appears randomly) - [+] bitten by a lycanthrope (chance) with hitconfer and fail a con check - [+] change f_lycanthrope so text = racename. - [+] effects when you get it: - [+] right away, add diseased with lycanthropy. incubatino infinite ? - [+] if you are incubating lycanthropy, you always change at the full moon (and get rage, and lose control). - [+] at this point, complete the incubation and... - [+] add f_hatesall - [+] lose control for a while - [+] after you change back the first time, you can change at will. (but there is a risk each time of losing control) - [+] player regains control - [+] remove aicontrolled, hatesall, rage - [+] actually add f_lycanthrope, text=xxx, v0=4 - [+] when f_lycanthrope v0 drops to 0 or less... - [+] canwill shapeshift with race:xxx - [+] how to remove it - [+] remove curse scroll - [+] drink holy water - [+] these will: - [+] cure any incubating curse - [+] cure any f_poisoned curse - [+] cure lycanthropy, and any flags FROMLYCANTHROPY - [+] other effect - [+] wont/cant walk into holy circle? - [+] holy circle hurts you - [+] shouldn't be able to get critical hits on you (ie. injuries) if you ahve heavenly armour - [+] bug in f_poisoned text. i think i've fixed this now. Died on level 2 of the dungeon. Killed by venom poisoning from 5-10 - [+] donated objects count towards xp! - [+] -50% of value if not known. - [+] -25% of value if not id'd - [+] donating objects will anger felix
2012-07-11 14:10:21 +10:00
void wepeffects(flagpile_t *fp, cell_t *where, flag_t *damflag, int dam, int isunarmed);