nexus/flag.c

1832 lines
45 KiB
C
Raw Permalink Normal View History

- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
#include <assert.h>
#include <signal.h>
2010-12-02 12:17:54 +11:00
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "defs.h"
#include "flag.h"
2011-08-18 06:57:43 +10:00
#include "god.h"
2011-02-01 06:16:13 +11:00
#include "io.h"
#include "lf.h"
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
#include "map.h"
#include "nexus.h"
2011-02-01 06:16:13 +11:00
#include "objects.h"
#include "spell.h"
2010-12-02 12:17:54 +11:00
#include "text.h"
extern enum GAMEMODE gamemode;
extern int needredraw;
extern int statdirty;
2011-02-01 06:16:13 +11:00
2011-08-18 06:57:43 +10:00
extern lifeform_t *godlf[];
extern int ngodlfs;
2011-03-16 15:45:46 +11:00
extern lifeform_t *player;
extern int flagcheck;
int flagdb = B_FALSE;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
altflagval_t *addaltval(flag_t *f, enum FLAG id, int val1, int val2, int val3, char *text) {
f->altval = malloc(sizeof(altflagval_t));
f->altval->id = id;
f->altval->val[0] = val1;
f->altval->val[1] = val2;
f->altval->val[2] = val3;
if (text) {
f->altval->text = strdup(text);
} else {
f->altval->text = strdup("");
}
return f->altval;
}
void addcondition(flag_t *f, enum FLAGCONDITION fc, int chance) {
f->condition = fc;
f->chance = chance;
}
2010-12-02 12:17:54 +11:00
flag_t *addflag(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, char *text) {
return addflag_real(fp, id, val1, val2, val3, text, PERMENANT, B_KNOWN, -1);
2011-02-01 06:16:13 +11:00
}
flag_t *addflagifneeded(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, char *text) {
if (!hasflag(fp, id)) {
return addflag_real(fp, id, val1, val2, val3, text, PERMENANT, B_KNOWN, -1);
}
return NULL;
}
2011-02-01 06:16:13 +11:00
flag_t *addtempflag(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, char *text, int timeleft) {
return addflag_real(fp, id, val1, val2, val3, text, timeleft, B_KNOWN, -1);
2011-02-01 06:16:13 +11:00
}
int getflaghash(enum FLAG fid) {
int h;
h = (int) fid % NHASHBUCKETS;
assert(h >= 0);
assert(h < NHASHBUCKETS);
return h;
}
flag_t *addflag_real(flagpile_t *fp, enum FLAG id, int val1, int val2, int val3, char *text, int lifetime, int known, long obfromid) {
lifeform_t *lf;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
flag_t *f = NULL;
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
//map_t *redolight = NULL;
int redrawscreenatend = B_FALSE;
int redrawstatatend = B_FALSE;
2010-12-02 12:17:54 +11:00
int i;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
int rv;
int hash;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
enum { NONE, FIRST, FIRST2, MIDDLE, LAST } fml = NONE;
2010-12-02 12:17:54 +11:00
//checkflagpile(fp);
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
2011-02-01 06:16:13 +11:00
// identified things mean all new flags are autmaticlaly known.
if (hasflag(fp, F_IDENTIFIED)) {
known = B_KNOWN;
}
// debug
if (id == F_DOOR) {
if (fp->ob && fp->ob->type->id == OT_LEAF) {
raise(SIGINT);
}
}
if (fp->owner && (id == F_VAULTISPLAYERSTART)) {
dblog("added vaultisplayerstart");
}
if (id == F_INTERRUPTED) {
if (fp->owner == player) {
dblog("player got interrupted");
}
}
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
// impossible flags
- [+] add more vrare vaults to reduce likelihood of cockatrice lair! - [+] bazaar - [+] money vault hsould be vrare - [+] so should traproom - [+] rename giant rat to "dire rat" - [+] don't show anything other than object description and throwing for unknown tech - [+] shouldn't be able to rest in a tent if it's not known! - [+] eyebat corpse increase maxmp? - [+] blessed missiles should nearly always hit undead * [+] too easy to dodge thrown missiles? - [+] spell and wand of culinary abundance - [+] if a carnivorous animal kills you: "Eaten by a xxx" * [+] bug: stairsperlev is only ever used in making DUNGEONS. generecise this ?? - [+] safetorest - should ignore monsters feigning death - [+] broken nose should reduce smell range - [+] fresh and stale bread should be interchangable in cooking - [+] make scroll of permenance act on you, not your objects - [+] tweak object rarity yet agian... - [+] bug: hole in roof above player start pos is immediately destroyed. - [+] change pickaxe to be like resting - [+] wait first, then if not interrupted, do the dig. - [+] add cell->hp, celltype->hp. around 100. - [+] f_digging, x, y, digperturn - [+] interrupt() will stop this. - [+] each turn, lower hp of cell by 1. - [+] make wlaking bakwards take less time based on athletics skill!!! - [+] at adept, takes no extra time? - [+] better racial display - [+] ? for extra info. - [+] hitdice - [+] general attribs (str etc) - [+] don't show description until you press '?' - [+] addbonustext(flagpile, f_BONDESC, "asdffas") - to avoid index issues - [+] remove VULNS from "effects" unless temporary - [+] isresistantto() etc need to have "int onlytemp" - [+] remove VULNS from manual BONTEXT flags - [+] CRASH IN DTVULN CODE!! - [+] limit '?r' display ?? - [+] what to show - [+] show races you have encountered - [+] show races you know about through Lore (adept level) - [+] show playable races????? - [+] structs - [+] race->encountered - [+] need to save this. - [+] make EFFECTS only show TEMPORARY effects or ones which don't come from race? - [+] automate bondesc/pendesc based on flags! - [+] vulnarabilities / resist / immun - [+] vision range!! (visrangemod) - [+] size? restricted armour. - [+] stayinroom - [+] f_humanoid (can use weapons) - [+] tamable - [+] seeindark - [+] caneatraw - [+] enhancesmell - [+] caneatraw - [+] vegeatrian - [+] cernivore - [+] fastmetab - [+] startskill - [+] tremorsense - [+] silentmove - [+] deaf - [+] flying / levitating - [+] awareness - [+] nocturnal / diurnal - [+] heavyblow - [+] packattack - [+] dodges - [+] autocreateob - [+] MPMOD - [+] HPMOD - [+] MEDITATES - [+] PHOOTMEM - [+] canwill "Spells: xx, x, x, x" - [+] spells: - [+] animate stone - "power" walls turn into stone golems - [+] implement spell - [+] golem - [+] r_golemstone - [+] knockback attack - [+] high str - [+] fists - [+] corpsetype and iunsummonob = boulder - [+] spell power modification - subtract spell level. - [+] when i go down a drain, make sure the new map links to THE DRAIN I WENT DOWN. not some otehr one. - [+] some monsters shouldn't sleep! add new flag: f_nosleep - [+] make spanner help disarm traps!
2011-12-04 09:33:37 +11:00
if ((id == F_POISONED) && isimmuneto(fp, DT_POISON, B_FALSE)) return NULL;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
if ((id == F_VEGETARIAN) && hasflag(fp, F_CARNIVORE)) return NULL;
if ((id == F_PARTVEGETARIAN) && hasflag(fp, F_CARNIVORE)) return NULL;
if ((id == F_CARNIVORE) && (hasflag(fp, F_VEGETARIAN) || hasflag(fp, F_PARTVEGETARIAN)) ) return NULL;
// no dupes allowed
if (id == F_LINKRACE) {
if (hasflagval(fp, F_LINKRACE, val1, val2, val3, NULL)) {
return NULL;
}
}
if (id == F_FILLPOT) {
if (hasflagval(fp, F_FILLPOT, val1, NA, NA, NULL)) {
return NULL;
}
}
// overrite NA rarity
if ((id == F_RARITY) && (val3 == NA)) {
val3 = RR_COMMON;
}
- [+] make zombies eat flesh. - [+] warn before eating your own kind if it will anger your god, and you wisdom is high. - [+] make disease way worse if you eat your own race's corpse! - [+] CRASH when i try to cook firebug corpse * [+] bones files: - [+] when your leg is bleeding, don't lose hp for ATTACKING, only for MOVING. - [+] bug: issue with skill display if you learn higher than your max level by reading a book! - [+] in this case, reading the book should fail. - [+] when you start worshipping felix, allow you to learn lockpicking & thievery to full level! - [+] infinite loop when an ashkari enters rage while already eating. - [+] felix prayer should always unlock all nearby doors - [+] if you add f_calwill xxx, v1=112312 v2=NA, make v2 = v1. - [+] that way we can confer it! - [+] say "this is xxx!" after wearing a new amulet. - [+] fork / knife should make you eat faster. - [+] double the hp of most armour again AMULETS - [+] add new bodypart = neck - [+] object hiddennames * [+] nouns * [+] adjectives - [+] flight (canwill fly) - [+] enhance spell power - [+] victimization (makes everything hostile) (no auto id) - [+] blinking - [+] anger (canwill rage) - [+] vs poison (poison immune) - [+] vs magic (magic resistance) - [+] common - [+] feather fall (dt_fall dmg = 0) - [+] don't "slam into the ground", just "float gently to the ground" - [+] of amplification (boost listening skillchecks, allow you to listen at stairs) - [+] peaceful sleep (don't get woken up by sound, cursed) - [+] chef's amulet(lower metabolism) - [+] thief's amulet (lockpicking)
2012-03-05 21:31:21 +11:00
// special case which lets us confer f_canwill. (with conferred flags, we can't
// supply val[2]).
if (id == F_CANWILL) {
if ((val3 == NA) && (val2 > 0)) {
val2 = val3;
}
}
- [+] bug: when ally can't see you it goes to sleep - [+] after waking it just goes to sleep again!!! - [+] bug:npc warriors aren't starting with a weapon - [+] shouldn't be able to shieldblock if youre asleep!!! - [+] allies sohuld announce what they are doing - [+] "I'm attacking a goblin" - [+] I just killed a goblin - [+] I need some rest soon... - [+] make sure only HUMANS do this...hu - [+] F_EXTRADESC v0 should be 'order'. - [+] makedesc_skill should honour this - [+] makedesc_spell - [+] same with other makedesc() functions - [+] auto-inc this when adding them. - [+] allies not properly following me downthe stairs - [+] armour that can cover multiple body parts - [+] f_goesonmulti - [+] multiple f_equipped flags. - [+] handle multiple f_equipped in takeoff() - [+] all required bodyparts must both be clear - [+] if not, prompt to remove both things. - [+] check all code for f_equipped copes with multiple occurences... - [+] display as: f - a wetsuit (worn over body and on legs) - [+] update io.c. "it is worn over xxx and yyy)" - [+] heat metal spell - [+] weilded metal burns hands and you drop it (unless immunte to fire/burn) - [+] metal armour damages you (1-4 each) - [+] metal lifeforms take huge damage - [+] all lifeforms should have at least novice level knowledge of their own raceclass - [+] new raceclass - dragons - [+] define it - [+] define skill for it - [+] make jobs know the skill - [+] red dragon - [+] high armourrating - [+] swoop - [+] fly - [+] breath weapon - [+] spells - [+] heat metal - [+] fireball - [+] burning wave - [+] want gold - [+] immune to fire - [+] red dragon hatchling - [+] generally lwoer power, only has heat metal and spark ? - [+] spellcasttext for individual spells - [+] ancient red dragon - [+] higher hp and armourrating - [+] more damage - [+] more spells
2011-11-07 13:12:04 +11:00
// auto-increment order for EXTRADESC flag
if ((id == F_EXTRADESC) && (val1 == NA)) {
flag_t *retflag[MAXCANDIDATES];
int nretflags;
int nextorder = 0,i;
getflags(fp, retflag, &nretflags, F_EXTRADESC, F_NONE);
for (i = 0; i < nretflags; i++) {
int this;
this = retflag[i]->val[0];
if (this == NA) this = 0;
if (this >= nextorder) nextorder = this+1;
}
val1 = nextorder;
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] bug: when ally can't see you it goes to sleep - [+] after waking it just goes to sleep again!!! - [+] bug:npc warriors aren't starting with a weapon - [+] shouldn't be able to shieldblock if youre asleep!!! - [+] allies sohuld announce what they are doing - [+] "I'm attacking a goblin" - [+] I just killed a goblin - [+] I need some rest soon... - [+] make sure only HUMANS do this...hu - [+] F_EXTRADESC v0 should be 'order'. - [+] makedesc_skill should honour this - [+] makedesc_spell - [+] same with other makedesc() functions - [+] auto-inc this when adding them. - [+] allies not properly following me downthe stairs - [+] armour that can cover multiple body parts - [+] f_goesonmulti - [+] multiple f_equipped flags. - [+] handle multiple f_equipped in takeoff() - [+] all required bodyparts must both be clear - [+] if not, prompt to remove both things. - [+] check all code for f_equipped copes with multiple occurences... - [+] display as: f - a wetsuit (worn over body and on legs) - [+] update io.c. "it is worn over xxx and yyy)" - [+] heat metal spell - [+] weilded metal burns hands and you drop it (unless immunte to fire/burn) - [+] metal armour damages you (1-4 each) - [+] metal lifeforms take huge damage - [+] all lifeforms should have at least novice level knowledge of their own raceclass - [+] new raceclass - dragons - [+] define it - [+] define skill for it - [+] make jobs know the skill - [+] red dragon - [+] high armourrating - [+] swoop - [+] fly - [+] breath weapon - [+] spells - [+] heat metal - [+] fireball - [+] burning wave - [+] want gold - [+] immune to fire - [+] red dragon hatchling - [+] generally lwoer power, only has heat metal and spark ? - [+] spellcasttext for individual spells - [+] ancient red dragon - [+] higher hp and armourrating - [+] more damage - [+] more spells
2011-11-07 13:12:04 +11:00
lf = fp->owner;
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
/*
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
if (gamemode == GM_GAMESTARTED) {
if (id == F_PRODUCESLIGHT) {
if (lf && lf->cell && (lf->cell->map == player->cell->map)) {
// someone started producing light
redolight = lf->cell->map;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
} else if (fp->ob) {
cell_t *obloc;
obloc = getoblocation(fp->ob);
if (obloc && (obloc->map == player->cell->map)) {
// an object started producing light
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
redolight = obloc->map;
}
}
} else if (id == F_ASLEEP) {
// someone fell asleep - ie their glyph will turn upsidedown
if (lf && (isplayer(lf) || cansee(player, lf))) {
redolight = lf->cell->map;
}
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
}
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
*/
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
// determine bucket
hash = getflaghash(id);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
////////////////////////////////
// ACTUAL FLAG ADDITION IS HERE
////////////////////////////////
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
if (fp->first[hash] == NULL) {
fp->first[hash] = (flag_t *)calloc(1, sizeof(flag_t));
f = fp->first[hash];
2010-12-02 12:17:54 +11:00
f->prev = NULL;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// also the last
fp->last[hash] = f;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
f->next = NULL;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
fml = FIRST;
2010-12-02 12:17:54 +11:00
} else {
flag_t *ff,*insertbefore = NULL,*insertafter = NULL;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// we will keep flags sorted.
// find correct position in list...
ff = fp->first[hash];
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
while (ff && (ff->id < id)) {
ff = ff->next;
}
if (ff) {
insertbefore = ff;
insertafter = ff->prev;
}
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
if (ff) {
// start or middle of list
// insert BEFORE this one
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
flag_t *newone = NULL;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
flag_t *prev;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
prev = ff->prev;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
// allocate new flag
newone = (flag_t *)calloc(1, sizeof(flag_t));
assert(newone != NULL);
assert(newone != ff);
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// link to previous element
if (prev) {
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
flag_t *origpn;
//f = (flag_t *)malloc(sizeof(flag_t)); assert(f);
//prev->next = f;
origpn = prev->next;
prev->next = newone;
assert(prev->next != origpn);
assert(prev->next != ff);
//f = prev->next;
f = newone;
fml = MIDDLE;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
} else {
// first one
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
//fp->first = (flag_t *)calloc(1, sizeof(flag_t));
fp->first[hash] = newone;
assert(fp->first[hash] != NULL);
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
//f = fp->first;
f = newone;
fml = FIRST2;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
assert(prev != f);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
f->prev = prev;
// link to next element
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
assert(ff != f);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
f->next = ff;
ff->prev = f;
} else {
// last one. insert at end of list.
f = fp->last[hash];
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
f->next = (flag_t *)malloc(sizeof(flag_t)); /// <- died here!
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
f->next->prev = f;
f = f->next;
fp->last[hash] = f;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
f->next = NULL;
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
fml = LAST;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
/*
2010-12-02 12:17:54 +11:00
// go to end of list
f = fp->last;
f->next = malloc(sizeof(flag_t));
f->next->prev = f;
f = f->next;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
*/
2010-12-02 12:17:54 +11:00
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
assert(f->prev != f);
assert(f->next != f);
2010-12-02 12:17:54 +11:00
// fill in props
2011-02-01 06:16:13 +11:00
f->id = id;
f->lifetime = lifetime;
f->origlifetime = lifetime;
2011-02-01 06:16:13 +11:00
f->known = known;
f->obfrom = obfromid;
- [+] add f_nostam to undead. - [+] add nonausea rather than nosmell sometimes. - [+] rats should eb able to smell, but not get nauseated. - [+] fix triumph pleasure for bjorn. must be no monsters within LOF... or within radius ? - [+] and make it very low piety gain. - [+] remember which level we got flags form - [+] flag_t -> fromlev - [+] announce this in getflagcourse - [+] undead qualities - [+] no criticals - [+] don't naturally heal - [+] don't breath - [+] drainlevel(fromlf) - [+] check for dtresist necrotic - [+] fitness saving throw (difficulty is 100 + fromlf's level*6) - [+] call loselevel() - [+] loselevel() - [+] announce. - [+] drop maxhp. - [+] adjust hp appropriately - [+] lose any flags where >fromlev is too high. - [+] handle monk f_hasattack specially. - [+] getmonkdr(level) - [+] getmonkattacks(level) - [+] keep track of what stats we gained and lose them again. - [+] TEST level drain with cursed xp pot - [+] TEST level drain with stats... - [+] prevent drinking when wearing full-face masks like gas mask/football helmet - [+] implement f_COVERSFACE. - [+] add it to objects. - [+] check it when doing caneat() candrink() - [+] up their AC bonus too - [+] large scorpion - [+] hellhound - [+] large primalities - [+] new vault flag: usehabitat:xxx - [+] means "set the habitat of all vault cells to xxx" - [+] real_getrandomob() should be given a CELL, not MAP. - [+] getrandomobofclass() should be given a CELL, not MAP. - [+] use CELL habitat to determine random obs - [+] apply to caves - [+] vault scatter: ignore locked cells (ie. reusable ones) new vaults - [+] dualroom - [+] sauna - vhot! - [+] pentagram and demons new pionic spells - [+] chi bolt - low dam ranged attack 1d4 - [+] chi strike (l4) - add 1d4 explosive damage to melee hits
2012-12-03 16:12:29 +11:00
f->fromlev = NA;
2010-12-02 12:17:54 +11:00
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
f->skillfrom = NULL;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
f->altval = NULL;
f->condition = FC_NOCONDITION;
f->chance = 100;
2010-12-02 12:17:54 +11:00
// first blank values
for (i = 0; i < 3; i++) {
2010-12-07 18:34:26 +11:00
f->val[i] = NA;
2010-12-02 12:17:54 +11:00
}
for (i = 0; i < 3; i++) {
f->obmodignoreval[i] = B_FALSE;
}
2010-12-02 12:17:54 +11:00
f->val[0] = val1;
f->nvals = 1;
if (val2 != NA) {
f->val[1] = val2;
f->nvals++;
}
if (val3 != NA) {
2010-12-07 18:34:26 +11:00
f->val[2] = val3;
2010-12-02 12:17:54 +11:00
f->nvals++;
}
if (text) {
f->text = strdup(text);
} else {
f->text = strdup("");
}
f->pile = fp;
- [+] 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-17 06:54:08 +11:00
//checkflagpile(fp);
//updatefpindex(fp);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
2011-02-01 06:16:13 +11:00
// notify
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
if (f->pile->owner) {
if ( ((gamemode == GM_CHARGEN) && isplayer(f->pile->owner)) ||
((gamemode == GM_GAMESTARTED) && announceflaggain(f->pile->owner, f)) ) {
if (gamemode == GM_GAMESTARTED) {
if (flagcausesinterrupt(f, GL_GAIN)) {
addflag(f->pile, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
}
// only some flags will interrupt player actions
/*
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
switch (f->id) {
case F_RUNNING:
case F_TRAINING:
case F_AUTOCMD:
- [+] BUG: trying to go down stairs from L7 (6?) - [+] You walk down the staircase... ERROR - can't find opposite end of stairs/portal! - [+] You walk down the staircase... ERROR - unlinked stairs! - [+] This is related to the fact that all the staircases came from Jimbo's vault - [+] For some reason we're not linking them when they come for ma vault!!! - [+] "joining unliked stairs" section not working??? - [+] it calls getstairdestination, but this DOESNT call linkstairs! - [+] maby: call autolink everytime i add stairs ? or only do this during createvault ? - [+] automatically remove useless doors (ie. ones where all adjacent walkable cells are in the same room) - [+] in fix_reachability i'm drawing a corridor through vault/room walls. <- probably this one. - [+] don't allow auto reachability to enter rooms through the wrong side wall. - [+] TEST during regular playtests, see if maps look better. - [+] quality on doors. - [+] sturdy / plain / shoddy doors. this impacts the hp - [+] stone doors (solid / plain /crumbling) - [+] metal ( reinforced / plain / rusty) - [+] only show this if perception >= beginner - [+] dungeon shapes - [+] new cell attribute - locked. - [+] calcroompos can't make rooms on locked cells. - [+] normal - [+] cross - [+] circle - [+] turret - [+] - premask out blocked cells before generation! - [+] minion code - if leader dies, - [+] minions drop morale - [+] and might either immediately flee - [+] need lastdamlf - [+] if wisdom >= gtaverage, automatically turn off lamps when you go to sleep - [+] "scratch"/"gnaw" etc should be based on actual damage hp amount, not percentage. - [+] change getattackverb() - [+] 1-2 - [+] 3-6 - [+] 8-12 - [+] 12-18 - [+] 18+ - [+] shop objects should start with all flags known. - [+] allow usage of godstones without id'ing them first. this will id them. - [+] weapon/armour shop should resize armour for you for a cost. - [+] chanelling bonus - [+] novice - [+] tell you when wand is low on charges (0-3) - [+] beginner - [+] let you determine exact remaining charges in wands once it is == 1! - [+] adept - [+] let you determine exact remaining charges in wands once it is <= 3! - [+] skilled: - [+] let you determine exact remaining charges in wands once it is <= 6! - [+] master - [+] lets you always see full amount of want charges. - [+] lets you convert your mp into wand charges? "imbue item"
2012-01-09 15:02:26 +11:00
case F_PRODUCESLIGHT:
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
break;
case F_ASLEEP:
if (f->val[2] == NA) { // ie. sleeping, not resting
addflag(f->pile, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
}
break;
default:
addflag(f->pile, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
break;
}
*/
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
f->known = B_TRUE;
if (f->obfrom) {
object_t *ob;
ob = findobbyid(f->pile->owner->pack, f->obfrom);
if (ob) {
flag_t *f2 = NULL;
switch (f->lifetime) {
case FROMOBEQUIP:
f2 = hasflagval(ob->flags, F_EQUIPCONFER, f->id, NA, NA, NULL);
break;
case FROMOBHOLD:
f2 = hasflagval(ob->flags, F_HOLDCONFER, f->id, NA, NA, NULL);
break;
case FROMOBACTIVATE:
f2 = hasflagval(ob->flags, F_ACTIVATECONFER, f->id, NA, NA, NULL);
break;
}
if (f2) {
f2->known = B_TRUE;
}
}
2011-02-01 06:16:13 +11:00
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
}
// player flags which cause a redraw
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
rv = flagcausesredraw(f->pile->owner, f->id);
if (rv < redrawscreenatend) redrawscreenatend = rv;
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
if (flagcausesstatredraw(f->pile->owner, f->id)) redrawstatatend = B_TRUE;
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] add a bunch of gemstones - worth points - [+] 'thrust' ability isn't showing up in ABILS - [+] give slight accuracy penalty when thrusting - [+] fixed shieldblock difficulty in melee combat - [+] increased maxstamina - [+] don't require stamina to move! - [+] "You hear a roars." - [+] remove duplicate corpse rot code - [+] CRASH - [+] malloc: *** error for object 0x1349d94f8: incorrect checksum for freed object - object was probably modified after being freed. - [+] #7 0x00000001000f438a in addobject (where=0x134edc060, name=0x0, canstack=0, wantlinkholes=-1, forceoid=OT_CLAWS) at objects.c:983 #8 0x00000001000f298d in addobfast (where=0x134edc060, oid=OT_CLAWS) at objects.c:409 #9 0x00000001000b621b in getbestweapon (lf=0x114439ff0) at lf.c:5194 #10 0x00000001000087fa in aiturn (lf=0x114439ff0) at ai.c:1236 - [+] fixed ? - [+] instead of everything >=6 being dark, make a CHANCE to be dark starting at l6. - [+] why do i ese gem of seeing so often - [+] because i need more types or 'rock' - [+] have to cook food before eating it? - [+] need novice cooking skill for preparecorpse ability - [+] otherwise you only get a very small amount of nutrition (10%) - [+] split ob piles before eating them - [+] detect poison should detect poison traps - [+] telling your ally to rest until healed isn't working... - [+] wasn't taking injuries or stamina into account. - [+] change druid spells - [+] start with 3 random spells - [+] on levelup, select a random nature spell (up to your highest level)
2011-11-08 12:19:25 +11:00
} else if (f->pile->ob) {
if (gamemode == GM_GAMESTARTED) {
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
2011-02-01 06:16:13 +11:00
if (announceobflaggain(f->pile->ob, f)) {
f->known = B_TRUE;
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
2011-02-01 06:16:13 +11:00
}
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
if (flagcausesloscalc(f->id)) {
cell_t *where = NULL;
// everyone who can see this cell recalcs their los
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
where = getflagpilelocation(f->pile);
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
if (where) {
lifeform_t *l;
for (l = where->map->lf ; l ; l = l->next) {
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
if (haslos(l, where)) {
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
setlosdirty(l);
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
//precalclos(l);
if (isplayer(l)) {
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
if (!redrawscreenatend) redrawscreenatend = B_TRUE;
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
}
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
}
// special effects
if (f->pile->owner) {
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
float pct;
switch (f->id) {
case F_ASLEEP:
stopallspellsexcept(f->pile->owner, OT_S_ALARM, OT_NONE);
break;
case F_NONCORPOREAL:
killflagsofid(f->pile->owner->flags, F_BEINGSTONED);
break;
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
case F_RAGE:
f->val[0] = f->pile->owner->hp; // remember old maxhp
f->val[1] = f->pile->owner->maxhp; // remember old maxhp
pct = (float)f->pile->owner->hp / (float)f->pile->owner->maxhp;
f->pile->owner->maxhp = (float)f->pile->owner->maxhp * 1.5;
f->pile->owner->hp = pct * (float)f->pile->owner->maxhp;
break;
default:
break;
}
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
//if ((gamemode == GM_GAMESTARTED) && (redrawscreenatend || redrawstatatend || redolight)) {
if ((gamemode == GM_GAMESTARTED) && (redrawscreenatend || redrawstatatend )) {
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
/*
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
if (redolight) {
- [+] 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
//dblog("CALCINGLIGHT from flag\n");
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
if (!redrawscreenatend) redrawscreenatend = B_TRUE;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
calclight(redolight);
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
if (redolight == player->cell->map) {
setlosdirty(player);
}
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
//precalclos(player);
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
*/
- [+] 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
//dblog("DRAWINGSCREEN from flag\n");
if (redrawscreenatend) needredraw = B_TRUE;
if (redrawstatatend) statdirty = B_TRUE;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
if (redrawscreenatend == B_FORCE) {
forceredraw();
} else {
drawscreen();
}
- [+] 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-17 06:54:08 +11:00
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
}
- [+] 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-17 06:54:08 +11:00
//checkflagpile(fp);
//if (gamemode == GM_GAMESTARTED) checkmapflags(player->cell->map); // debugging
//checkflagpile(fp);
2010-12-02 12:17:54 +11:00
return f;
}
2011-02-01 06:16:13 +11:00
flagpile_t *addflagpile(lifeform_t *owner, object_t *ob) {
int i;
2010-12-02 12:17:54 +11:00
flagpile_t *fp;
fp = malloc(sizeof(flagpile_t));
foreach_bucket(i) {
fp->first[i] = NULL;
fp->last[i] = NULL;
//fp->nitems = 0;
}
2011-02-01 06:16:13 +11:00
fp->owner = owner;
fp->ob = ob;
2010-12-02 12:17:54 +11:00
return fp;
}
- [+] add more vrare vaults to reduce likelihood of cockatrice lair! - [+] bazaar - [+] money vault hsould be vrare - [+] so should traproom - [+] rename giant rat to "dire rat" - [+] don't show anything other than object description and throwing for unknown tech - [+] shouldn't be able to rest in a tent if it's not known! - [+] eyebat corpse increase maxmp? - [+] blessed missiles should nearly always hit undead * [+] too easy to dodge thrown missiles? - [+] spell and wand of culinary abundance - [+] if a carnivorous animal kills you: "Eaten by a xxx" * [+] bug: stairsperlev is only ever used in making DUNGEONS. generecise this ?? - [+] safetorest - should ignore monsters feigning death - [+] broken nose should reduce smell range - [+] fresh and stale bread should be interchangable in cooking - [+] make scroll of permenance act on you, not your objects - [+] tweak object rarity yet agian... - [+] bug: hole in roof above player start pos is immediately destroyed. - [+] change pickaxe to be like resting - [+] wait first, then if not interrupted, do the dig. - [+] add cell->hp, celltype->hp. around 100. - [+] f_digging, x, y, digperturn - [+] interrupt() will stop this. - [+] each turn, lower hp of cell by 1. - [+] make wlaking bakwards take less time based on athletics skill!!! - [+] at adept, takes no extra time? - [+] better racial display - [+] ? for extra info. - [+] hitdice - [+] general attribs (str etc) - [+] don't show description until you press '?' - [+] addbonustext(flagpile, f_BONDESC, "asdffas") - to avoid index issues - [+] remove VULNS from "effects" unless temporary - [+] isresistantto() etc need to have "int onlytemp" - [+] remove VULNS from manual BONTEXT flags - [+] CRASH IN DTVULN CODE!! - [+] limit '?r' display ?? - [+] what to show - [+] show races you have encountered - [+] show races you know about through Lore (adept level) - [+] show playable races????? - [+] structs - [+] race->encountered - [+] need to save this. - [+] make EFFECTS only show TEMPORARY effects or ones which don't come from race? - [+] automate bondesc/pendesc based on flags! - [+] vulnarabilities / resist / immun - [+] vision range!! (visrangemod) - [+] size? restricted armour. - [+] stayinroom - [+] f_humanoid (can use weapons) - [+] tamable - [+] seeindark - [+] caneatraw - [+] enhancesmell - [+] caneatraw - [+] vegeatrian - [+] cernivore - [+] fastmetab - [+] startskill - [+] tremorsense - [+] silentmove - [+] deaf - [+] flying / levitating - [+] awareness - [+] nocturnal / diurnal - [+] heavyblow - [+] packattack - [+] dodges - [+] autocreateob - [+] MPMOD - [+] HPMOD - [+] MEDITATES - [+] PHOOTMEM - [+] canwill "Spells: xx, x, x, x" - [+] spells: - [+] animate stone - "power" walls turn into stone golems - [+] implement spell - [+] golem - [+] r_golemstone - [+] knockback attack - [+] high str - [+] fists - [+] corpsetype and iunsummonob = boulder - [+] spell power modification - subtract spell level. - [+] when i go down a drain, make sure the new map links to THE DRAIN I WENT DOWN. not some otehr one. - [+] some monsters shouldn't sleep! add new flag: f_nosleep - [+] make spanner help disarm traps!
2011-12-04 09:33:37 +11:00
int canbemadepermenant(enum FLAG id) {
switch (id) {
case F_BLIND:
case F_BREATHWATER:
case F_CAFFEINATED:
case F_DEAF:
case F_DETECTAURAS:
case F_DETECTOBS:
case F_DETECTMETAL:
case F_DISEASEIMMUNE:
case F_DRUNK:
case F_ENHANCESEARCH:
case F_ENHANCESMELL:
case F_EXTRAINFO:
case F_EXTRALUCK:
case F_FLYING:
case F_PHOTOMEM:
case F_REFLECTION:
case F_SEEINDARK:
case F_SEEINVIS:
case F_STABILITY:
case F_STENCH:
case F_TREMORSENSE:
return B_TRUE;
default: break;
}
return B_FALSE;
}
void changeflagtext(flag_t *f, char *newtext) {
free(f->text);
if (newtext) {
f->text = strdup(newtext);
} else {
f->text = strdup("");
}
}
/*
void//checkflagpile_mapobs(map_t *m) {
- [+] 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-17 06:54:08 +11:00
cell_t *c;
object_t *o;
int nbad = 0,x,y;
for (y = 0; y < m->h; y++) {
for (x = 0; x < m->w; x++) {
c = getcellat(m, x, y);
if (c) {
for (o = c->obpile->first ; o ; o = o->next) {
if (fpisbad(o->flags)) {
dblog("bad flagpile found in ob %s at (%d,%d)",o->type->name, c->x, c->y);
nbad++;
}
}
}
}
}
if (nbad) {
dblog("total bad flagpiles: %d", nbad);
assert("found bad flagpiles in checkmapflags!" == 0);
}
}
void//checkflagpile_maplfs(map_t *m) {
lifeform_t *l;
if (!flagcheck) return;
for (l = m->lf ; l ; l = l->next) {
//checkflagpile(l->flags);
}
}
void//checkflagpile(flagpile_t *fp) {
if (!flagcheck) return;
- [+] 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-17 06:54:08 +11:00
if (fpisbad(fp)) {
assert("flagpile is corrupt!" == 0);
- [+] 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-17 06:54:08 +11:00
}
}
- [+] 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-17 06:54:08 +11:00
int fpisbad(flagpile_t *fp) {
flag_t *f;
int i;
if (!flagcheck) return B_FALSE;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = f->next) {
if (f->next) {
if(f->next->prev != f) {
dblog("flag after %d is bad! its prev = 0x%x, should be this flag (0x%x)",f->id, f->next->prev, f);
return B_TRUE;
}
}
if (fp->ob && fp->owner) {
dblog("flag %d has both ob and owner",f->id);
return B_TRUE;
}
}
- [+] 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-17 06:54:08 +11:00
}
return B_FALSE;
}
*/
- [+] 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-17 06:54:08 +11:00
// returns # of flags copied
int copyflag(flagpile_t *dst, flagpile_t *src, enum FLAG id) {
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
flag_t *f;
int ndone = 0, i;
foreach_bucket(i) {
for (f = src->first[i] ; f ; f = f->next) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// gone past the requrested id's number - ie. it's not there.
//if (f->id > id) break;
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
if (f->id == id) {
- [+] 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 11:57:21 +11:00
flag_t *newf;
newf = addflag_real(dst, f->id, f->val[0], f->val[1], f->val[2], f->text,
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
f->lifetime, f->known, -1);
- [+] 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 11:57:21 +11:00
newf->condition = f->condition;
newf->chance = f->chance;
newf->origlifetime = f->origlifetime;
- [+] 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 11:57:21 +11:00
if (f->altval) {
addaltval(newf, f->altval->id,
f->altval->val[0],
f->altval->val[1],
f->altval->val[2],
f->altval->text);
}
ndone++;
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
}
}
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
}
return ndone;
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
}
2011-02-01 06:16:13 +11:00
void copyflags(flagpile_t *dst, flagpile_t *src, int lifetime) {
- [+] 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 11:57:21 +11:00
flag_t *f,*newf;
int i;
foreach_bucket(i) {
for (f = src->first[i] ; f ; f = f->next) {
// omit certain flags
if (lifetime == FROMBRAND) {
if ((f->id == F_ONLYFOROBTYPE) ||
(f->id == F_ONLYFORDAMTYPE) ||
(f->id == F_ONLYFORWEPSKILL)) {
continue;
}
}
newf = addflag_real(dst, f->id, f->val[0], f->val[1], f->val[2], f->text,
(lifetime == NA) ? f->lifetime : lifetime, f->known, -1);
// newf might not be set, if (for example) we are coyping a duplicate
// f_linkrace flag.
if (newf) {
newf->condition = f->condition;
newf->origlifetime = f->origlifetime;
newf->chance = f->chance;
if (f->altval) {
addaltval(newf, f->altval->id,
f->altval->val[0],
f->altval->val[1],
f->altval->val[2],
f->altval->text);
}
}
}
}
2011-02-01 06:16:13 +11:00
}
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
int countflags(flagpile_t *fp) {
flag_t *f;
int count = 0, i;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = f->next) {
count++;
}
}
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
return count;
}
int countflagsofid(flagpile_t *fp, enum FLAG fid) {
flag_t *f;
int count = 0, i;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = f->next) {
if (f->id == fid) count++;
}
}
return count;
}
void dumpflags(flagpile_t *fp) {
flag_t *f;
dblog("START FLAGDUMP");
int i;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = f->next) {
dblog("[b=%d] fid=%d, v0=%d v1=%d v2=%d text=[%s]",
i, f->id, f->val[0], f->val[1], f->val[2], f->text);
}
}
dblog("END FLAGDUMP");
}
// returns TRUE if knowingly gaining/losing this flag will
// interrupt player actions like resting, training or eating.
int flagcausesinterrupt(flag_t *f, enum GAINORLOSS gol ) {
switch (f->id) {
case F_ASLEEP:
if (f->val[2] == NA) { // ie. sleeping, not resting
return B_TRUE;
}
break;
case F_BEINGSTONED:
case F_CONFUSED:
- [+] bug: notime being set in timeeffectslf() but NOT being UNSET!!! - [+] air spells: - [+] create whirlwind - make a single whirlwind - [+] implement - [+] ethereal steed - move very fast and levitate - [+] f_autocreateob whirlwind behind you - [+] whirlwind object throws any lfs/objects around randomly - [+] tornado - creates a single tornado at a given location (more powerful). it moves around randomly, kills adjacent walls. - [+] F_OBMOVESRANDOMLY - [+] find an adjacent cell (walls ok) - [+] kill any walls there - [+] move there - [+] hurricane - creates a cross cloud of whirlwinds (very powerful!). these move around randomly and kills adjacent walls. - [+] implement - [+] make them all move TOGETHER. - [+] djinni / genie - [+] invisibility - [+] gaseous form - [+] illusion? mirror image ? - [+] permenant ethereal steed effects - [+] airblast - [+] gust of wind - [+] efreeti - [+] wall of fire (new spell) - [+] gas form - [+] enlarge - [+] flame pillar - [+] when summoning a monster with a lifeob, place it under them? - [+] druid should learn canwill plantwalk at some point... level 7 - [+] allow f_cancast to have a timer too, like canwill. (so that monsters only cast certain spells sometimes) - [+] is ai plantwalk working? - [+] seems to... - [+] but then i get "something casts a spell at you!" - [+] aigetspelltarget is setting targlf to player. FIXED. - [+] ai keeps on casting plantwalk after doing it once. - [+] ai needs to sto fleeing after casting plantwalk successfully! - [+] this is because after stealing, we are fleeing for a time limit, rather than PERMENANT - [+] once this is fixed, add spellcasttext plantwalk = null for dryad. - [+] NEw code: if you teleport, and you were fleeing, and you can no longer have LOF to the one uou're fleeing from, STOP. - [+] The dryad vanishes! A dryad moves out of view.--More-- - [+] don't say both! - [+] change CHARMEDBY code for player: - [+] walk towards charmer, then give them your stuff! - [+] dryad brown 'T' (tree creature) - [+] knife - [+] must stay near oak tree - [+] can "plantwalk" between oak trees (or other plants). - [+] cast spell at cell with plant, warps you to a random one - [+] for player: reveal all cells with trees, then ask you which one. - [+] range 1 - [+] maxpower 1 - [+] ai casting: must be a plant in range. - [+] emergency code: if not within lifeob range, move back! - [+] can cast sleep - [+] wants gold/gems/weapons - [+] home oak tree contains gems - [+] steal - [+] stayinroom - [+] charm - [+] AI shouldn't ever walk away from life ob! - [+] ai homeob gems aren't appearing
2012-03-07 22:46:55 +11:00
case F_CHARMEDBY:
case F_FEIGNINGDEATH:
case F_FLYING:
case F_LEVITATING:
case F_NONCORPOREAL:
case F_PAIN:
case F_PARALYZED:
case F_POISONED:
case F_RAGE:
case F_SPRINTING:
case F_STUNNED:
return B_TRUE;
case F_BLIND:
case F_CAFFEINATED:
case F_DRUNK:
case F_FROZEN:
case F_GRABBEDBY:
case F_HOTFEET:
case F_INJURY:
case F_INVISIBLE:
if (gol == GL_GAIN) return B_TRUE;
break;
default:
break;
}
return B_FALSE;
}
int flagcausesloscalc(enum FLAG fid) {
switch (fid) {
case F_ASLEEP:
case F_BLIND:
case F_BLOCKSVIEW:
- [+] 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
case F_FULLSHIELD:
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
case F_NIGHTVISRANGEMOD:
* [+] bug: map structure being corrupted. - [+] reduce hardness values * [+] problem with skills: as you level up , you learn them less often * [+] throw objects to set off traps - [+] combination strike ability at expert wep level - [+] reduce skill bonus to sc_stealth and sc_search - [+] modify descriptions for all spells to explain the effect of spell power - [+] make chill work more like frostbite (but less powerful) - [+] make beginner skills still only cost 1. above there thye csost more - [+] modify cha check based on remaining hp% (ie. less attractive if you're bleeding everywhere!) - [+] am i getting all level up skill messages? don't think i saw "you can now detect magic" as a wizard. - [+] can use "more()" more often now that it checks strlen(msgbuf) first. - [+] make askchar etc call more() first. - [+] falling over should lower your visrange. - [+] missile size should impact how hard it is to catch it - [+] backstabbing doesn't seem to work..... fixed now ? - [+] all non-movement actions should stop sprinting. Cold spells: - [+] l1 - glaciate (turns water to sheets of ice) - [+] l1 - snowball (minor cold damage in a ball, 1 to all) - [+] l2 - e "train" to train skills or go up a levle, instead of 'R'. - [+] better way to learn spells (without spellbooks) - [+] transcribe from scrolls using "study scroll"ability - [+] sc_learnmagic - [+] (int/2) + yourlevel + sorceryskill + BONUS:(spellskill*2) - [+] difficulty is 20 + spelllevel*3 - [+] you lose the scroll even if it fails - [+] same for learning from a spellbook! - [+] but difficulty is 15 + sorceryskill + spelllevel*3 - [+] make pea soup be targetted. ie. make mist on top of your enemy, not you! - [+] implement maximum level in f_canlearn. - [+] wizards - short blades at novice. - [+] limit spell skills for some other classes? ce shield? creates a shield
2011-08-31 06:10:43 +10:00
case F_PRONE:
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
case F_PRODUCESLIGHT:
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
case F_SEEINDARK:
- [+] 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
case F_SHADOWED:
case F_AWARENESS:
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
case F_VISRANGE:
case F_VISRANGEMOD:
return B_TRUE;
default: break;
}
return B_FALSE;
}
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
// eitehr returns:
// B_FALSE - gaining/losing the flag doesn't neccessitate a redraw
// B_TRUE - need to mark the game window as dirty when you see someone gaining/losing this flag
// B_FORCE - need to CLEAR the game window to force a redraw.
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
int flagcausesredraw(lifeform_t *lf, enum FLAG fid) {
if (!lf) return B_FALSE;
if (isplayer(lf)) {
// player
switch (fid) {
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_ASLEEP:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_BLIND:
case F_DETECTLIFE:
case F_DETECTOBS:
Monster AI improvements: - [+] replace f_target with f_targetlf - [+] wantrange. for melee fighters (default), it's 0. for spells/archers, it's higiher. - [+] if we are further away than bestrange, move towards. - [+] if we are closer than bestrange, move away - [+] AND: move to wantrange before doing spells etc - [+] if we have a ranged attack and wantrange is default, increase it. - [+] in movetowards/away, cells in the wrong dir should NEVER be acceptable! * [+] mflag_push for monsters http://roguelikedeveloper.blogspot.com/2007/10/unangband-monst er-ai-part-three.html - [+] randomly use ranged attacks when adjacent * [+] show trail in askcoords - [+] when throwing, pass range to askcoords - [+] max monsters per room is depth + 1 * [+] why do humans take ages to appear? - [+] fireball spell is slow - [+] why can i throw objects through magic barriers? - [+] add a bonus for mastery of cartography - magic mapping every 50 turns. - [+] crash with monsters moving off edge of world map - [+] make magic barriers be ON stairs, not around them. - [+] handle DIAGONAL entry to maps - [+] OR make this impossible. - [+] druid should get auto nature knoeldge as they levle up (levs 5 10 15). - [+] CRASH flagpile corrupt - [+] happening during AI movement. - [+] make lightning storm only hit enemies - [+] store last known movement dir in TARGETLF and PETOF. - [+] limit monsters per room not working?!?! - [+] make askcoords let you show object piles with . - [+] make askcoords say "A magical barrier (+xx other objects)" - [+] combine getlastknownmovedir into getlastknowncell * [+] BUG: secret doors are showing up as . again! * [+] implement trails (footprints & scent) * [+] aimovetowardslf(lf, wantattack) * [+] make pets use wantdist code? - [+] what does expert/master tracking give you? - [+] ex: your tracks don't last as long - [+] ms: you don't leave tracks. - [+] change f_reducemovement from multiplier to addition - [+] comma still showing up scents and footprints incorrectly!!!!!!!! Initial shallow/deep water: - [+] restrict movement - [+] check for drowning in turneffectslf AND movelf - [+] warn before walking onto dangerous objects. - [+] change how walkdam works for deepwater. - [+] don't use walkdam flags. - [+] don't make splashes of water on top of deepwater. * [+] deep water will drown you if - [+] don't leave footprints in either - [+] create steam on fire damage, but don't CONVERT to it. - [+] f_waterbreathing - [+] can't drown in water - [+] extra damage from cold/elec if in deep/shallow water Initial swimming implementation * [+] sacred/cursed ground - [+] vending machine - [+] don't transfer f_rarity flag when making objects / lifeforms. Initial work on adding a goal to the game!
2011-05-25 12:12:00 +10:00
case F_ENHANCESMELL:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_FASTMOVE:
- [+] if you put a water object onto dirt, it should become a mud object instead. - [+] dynamic morale - [+] whenever you fail a moral check, your moral gets a bit lower - [+] opposite if you pass it. - [+] make morale checks depend more on morale - [+] after you flee, become timid - [+] in io.c, show current morale if lorelev is high enough. "looks scared/timid/confident" - [+] implement f_timid: - [+] (will only move into melee range if it is behind you) * [+] checks: - [+] monsters can't attack while prone. always jsut stand up. - [+] call initiatemove even when atatcking - [+] bug: monsters not gaining abilities frmo skills - [+] bug when creating monsters with jobs: "xx looks foolish" etc - [+] tohit penalty for small monster hitting flying or levitating things (lower penalty for levitating) * [+] if you are flying and get hit, you drop to the ground? - [+] make feign death code better for mosnters - [+] moving should cose STAMREGEN points (ie don't regenerate stamina if you move) - [+] maybe: when you finish sprinting, drop stamina to -2 - [+] until it gets back, you can't move at all - [+] bug: stuck in moveto(), after walking up stairs to a new levle - [+] happened again right after "The young wolf starts sprinting! The young wolf flees down the staircase." - [+] was getting stuck in donextturn because we weren't on the plaeyr's map - taketime was returning. - [+] shield bash skill - [+] gain it at shieldlev beginner - [+] costs stamina - [+] pass a skill check based on shield skill and shield value to stun enemy - [+] only works if shield has hardness - [+] only works if you're the same size or larger than the opponent - [+] damages your shield (1d3 hp ?)
2011-10-06 09:08:13 +11:00
case F_FEIGNINGDEATH:
- [+] young hawk moving very slowly? was healing. - [+] make monsters heal faster when resting - [+] make pet rest when you do - [+] allow 'R' to heal allies - [+] F_RESTUNTILALLIES - [+] mindless/animal mosnters won't throw things - [+] announceflag for attrset not working * [+] feeblemind spell - reduces intelligence to ANIMAL. - [+] ai: if we are carrying too much, drop something (non-weapons/armour first) - [+] teleport spell should teleport any adjacent allies too. * [+] new 'C'hat commands: * [+] change 'resist elements' potion to 'rum' * [+] notify when pet is low on hp - [+] why could a pirate use a biuckler? * [+] genericise usage of canhaveobmod! - [+] armour mod: blooodstained. adds scary. - [+] CRASH when you have two weapons and catch a glowbug in your flask. * [+] potion of restoration onto frozen axe: - [+] slow spell repeated message: The brown snake looks sluggish. The brown snake is now moving slower. - [+] make you only hear one thing each turn ? - [+] always draw impassable objects on top - [+] special ash - [+] exploding powder - explode in radius 1 around player (including player) - [+] concealing powder - create smoke cloud radius 3 around player - [+] redo levelup logic. - [+] trigger LevUp when you have 'newskillready' - [+] announce when you gain level. - [+] can't gain more experience when LevUp! - [+] only update maxhp/mp from new level after you train - [+] diety can't use abilities. fixed. * [+] when i exit from@S output, statbar isn't redrawn * [+] make SKILLS page show which skills you can learn. - [+] In @s, downline isn't showing the title on the second page of SKILLS... - [+] show POWER in @M spells page - [+] ###--- - [+] show cost RANGE in @M for varpower ones - [+] need getspellcosttext(spellid, power, buf) function - [+] 25-62MP - [+] leftover rubbish chars at end of ---- in doheading() - [+] mosnters should follow you up/down stairs * [+] different poison types - [+] implement tremorsense (like darkvision butrun can't be blinded etc) * [+] implement HIDE ability * [+] Thief job - [+] if you walk into a room and every cell is lit, reveal it all. - [+] auto-learn jump ability with high athletics skill * [+] secret doors - [+] items to spot secret doors - [+] gem of seeing - [+] ENHANCESEARCH - [+] F_SEEINVIS - [+] spell: "reveal hidden" - [+] shows secret doors - [+] removes invisibility - [+] wand of detect hidden - [+] ... casts the spell
2011-04-14 09:44:29 +10:00
case F_HIDING:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_INVISIBLE:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_PRODUCESLIGHT:
case F_PRONE:
case F_SECRET:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_SEEINDARK:
case F_SEEINVIS:
case F_AWARENESS:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_SPRINTING:
case F_SLOWMOVE:
return B_TRUE;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
case F_GRABBEDBY:
case F_ATTACHEDTO:
case F_RAGE:
return B_FORCE;
break;
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
default:
break;
}
} else if (haslos(player, lf->cell)) {
switch (fid) {
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_ASLEEP:
case F_HIDING:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
case F_INVISIBLE:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_PRODUCESLIGHT:
case F_PRONE:
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
return B_TRUE;
default:
break;
}
// nonplayer
}
return B_FALSE;
}
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
int flagcausesstatredraw(lifeform_t *lf, enum FLAG fid) {
if (!lf || !isplayer(lf)) return B_FALSE;
switch (fid) {
case F_ASLEEP:
- [+] 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 18:16:18 +11:00
case F_ARBOOST:
Monster AI improvements: - [+] replace f_target with f_targetlf - [+] wantrange. for melee fighters (default), it's 0. for spells/archers, it's higiher. - [+] if we are further away than bestrange, move towards. - [+] if we are closer than bestrange, move away - [+] AND: move to wantrange before doing spells etc - [+] if we have a ranged attack and wantrange is default, increase it. - [+] in movetowards/away, cells in the wrong dir should NEVER be acceptable! * [+] mflag_push for monsters http://roguelikedeveloper.blogspot.com/2007/10/unangband-monst er-ai-part-three.html - [+] randomly use ranged attacks when adjacent * [+] show trail in askcoords - [+] when throwing, pass range to askcoords - [+] max monsters per room is depth + 1 * [+] why do humans take ages to appear? - [+] fireball spell is slow - [+] why can i throw objects through magic barriers? - [+] add a bonus for mastery of cartography - magic mapping every 50 turns. - [+] crash with monsters moving off edge of world map - [+] make magic barriers be ON stairs, not around them. - [+] handle DIAGONAL entry to maps - [+] OR make this impossible. - [+] druid should get auto nature knoeldge as they levle up (levs 5 10 15). - [+] CRASH flagpile corrupt - [+] happening during AI movement. - [+] make lightning storm only hit enemies - [+] store last known movement dir in TARGETLF and PETOF. - [+] limit monsters per room not working?!?! - [+] make askcoords let you show object piles with . - [+] make askcoords say "A magical barrier (+xx other objects)" - [+] combine getlastknownmovedir into getlastknowncell * [+] BUG: secret doors are showing up as . again! * [+] implement trails (footprints & scent) * [+] aimovetowardslf(lf, wantattack) * [+] make pets use wantdist code? - [+] what does expert/master tracking give you? - [+] ex: your tracks don't last as long - [+] ms: you don't leave tracks. - [+] change f_reducemovement from multiplier to addition - [+] comma still showing up scents and footprints incorrectly!!!!!!!! Initial shallow/deep water: - [+] restrict movement - [+] check for drowning in turneffectslf AND movelf - [+] warn before walking onto dangerous objects. - [+] change how walkdam works for deepwater. - [+] don't use walkdam flags. - [+] don't make splashes of water on top of deepwater. * [+] deep water will drown you if - [+] don't leave footprints in either - [+] create steam on fire damage, but don't CONVERT to it. - [+] f_waterbreathing - [+] can't drown in water - [+] extra damage from cold/elec if in deep/shallow water Initial swimming implementation * [+] sacred/cursed ground - [+] vending machine - [+] don't transfer f_rarity flag when making objects / lifeforms. Initial work on adding a goal to the game!
2011-05-25 12:12:00 +10:00
case F_ATTRMOD:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_BLIND:
- [+] climbing - [+] climb "into"walls - [+] stopclimbing(int onpurpose) - [+] can we move forwards? - [+] if not: - [+] if onpurpose, fail - [+] otherwise fall onto whoever is there??? or they block you from falling?? - [+] move forwards - [+] kill f_climbing flag - [+] startclimbing() - [+] move onto the wall - [+] set your facing to face away from the wall. - [+] add F_CLIMBING - [+] must pass a CLIMB check first or you fail to climb! - [+] can't climb if burdened - [+] once climbing: - [+] can't cast spells - [+] cannot change facing - [+] always strafe if you go sideways - [+] change los functions to let you see out! - [+] different move verb ("climb" instead of move/fly) - [+] different canmove() code - [+] you can only move sideways (along the wall) or forwards (off the wall) - [+] ie. cellindir(lf, lf->facing) == newcell (forwards) - [+] OR - [+] ie. cellindir(lf, lf->facing + 2 (wrapped)) == newcell (right) - [+] OR - [+] ie. cellindir(lf, lf->facing - 2 (wrapped)) == newcell (left) - [+] AND you can only move sidways if: - [+] the new cell is a wall - [+] the cell in (lf->facing) of the new cell is NOT a wall - [+] if you climb off a wall, tell the player that they stopped climbing - [+] moving while climbing: - [+] must pass a sc_climb skill check to move - [+] costs 1 stamina to move - [+] warn before climbing if your stam == 1 - [+] attacking - [+] large penalty to hit the climber (higher for smaller monstesr) - [+] if monsters miss you and you are climbing, chance they'll give up. - [+] attacking FROM a wall gets a big penalty unless you are very skilled at climbing - [+] startlfturn - [+] lose stam each turn. - [+] if stam drops to 0, you fall off or stop climbing - [+] you fall if burdened - [+] don't regen stam while climing - [+] ai: - [+] monsters won't start targeting lfs who are climbing - [+] monsters don't pay stamina to move while climb - [+] make monsters be able to climb when fleeing - [+] let you climb down holes instead of falling
2011-11-03 09:34:15 +11:00
case F_CLIMBING:
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
case F_CONFUSED:
- [+] 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 12:00:16 +10:00
case F_DRUNK:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_EATING:
case F_FASTMOVE:
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
case F_FLYING:
- [+] 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
case F_FULLSHIELD:
case F_GRAVBOOSTED:
- [+] prevent 'A' (forceattack) behind you - [+] replace: - [+] Something critically savages your body. Your uncursed suit of ring mail protects you. Your suit of ring mail is damaged! - [+] with: - [+] Something critically savages your suit of ring mail. - [+] Your suit of ring mail is damaged! - [+] tremorsense shouldn't see flying creatures - [+] rename blink to "bamf" - [+] add F_containsmeat for non-vegetarian foods - [+] use this in vegetarian checks instead of mt_Flesh - [+] "what goes up" spell - [+] "equal and opposite" spell - [+] why didn't cyborg ninja start with weapon weilded? - [+] getbestwepon - accuracy was counting for too much. have changed calculation. - [+] why is wizard's staff not enchanted??? - [+] elephant race - Pachyon or Mammoan - [+] bonus - [+] Leather skin - [+] str++ - [+] photo mem - [+] high listen skill - [+] good smell - [+] penalty - [+] slow movement - [+] no armour on ears - [+] agi- - [+] low eyesight - [+] vuln to sonic - [+] vegetarian - [+] other - [+] large - [+] throw salt to blind targets - [+] if you learn a new spell school skill while game is in progress, gain a 1st level spell too. - [+] for random roast meat, always use base race - [+] ie. orc, not "elite orc" - [+] (ie. human, not 'town guard') - [+] remove "prepare food" skill. - [+] use "cook" instead - [+] startskill should be a modifier, not absolute. - [+] ie. elf can have sk_ranged, so can hunter. these will now stack. - [+] chance for ai to use a firearm is lowered based on firearm accuracy - [+] bug: massively high amount of skillxp needed for a point - [+] firearms should do more damage at pointblank range. - [+] icicle bugs - getrandomadjcell for knockback failing - [+] still a bug with firearm accuracy updating - [+] 2 squares away, move towards enemy - it doesn't update! - [+] display all valid hits in brown - [+] wear melted wax in ears to reduce sonic damage - [+] ranged skillls - [+] adp - [+] fast reloading - [+] exp - [+] fire through lifeforms! lof_wallstop instead of lof_need - [+] mas - [+] extra dam. - [+] object HP issue: - [+] head: b - an uncursed helmet [AR:3] [110%] - [+] body: c - an uncursed suit of ring mail [AR:6] [173%] - [+] hands: d - an uncursed battered pair of gauntlets [AR:2] [86%] - [+] are objects taking negative damage?? - [+] have put an assertion in to check - [+] wait for it to happen again... - [+] add hitchance to askcoords when throwing/shooting - [+] code it - [+] test for throw - [+] add for telekeniis too - [+] add for guns: - [+] "targetted: something [x%]" - [+] "bow->Target->xxx [x%]" - [+] show gun target on botl - [+] redo throw accuracy: - [+] 100 to hit yourself - [+] apply per-cell penalty based on: - [+] throwing / ranged skill (more) - [+] AGI (lesser) - [+] wetsuit description not showing dtresist cold!! - [+] hunter job - [+] wetsuit (covers multiple body parts), prot from cold - [+] announce bleeding damage from injuries - [+] only mark _weapons_ as 'tried' when weilding them - [+] change random items: - [+] fix wantrr bug - [+] test... - [+] new function: enum RARITY pickrarity() - [+] check for all wantrr = xxx and use pickrarity instead. - [+] give classes a RR_RARITY - [+] common - [+] weapon / armour / money / missile - [+] furniture - [+] misc - [+] rock - [+] uncommon - [+] potion / scroll / food - [+] rare - [+] trap - [+] tech/tool - [+] dfeature (pentagram, vending machine, etc) - [+] vrare - [+] wand - [+] ring - [+] book * [+] rewrite wrappers * [+] marge getrandomobofclass and getrandomob - [+] bug: telling allies to attack something they can't see. need a msg for this. - [+] Norman->Attack->A young hawk [flying, facing NE] - [+] Cancelled. - [+] bug: allies not regaining hp when asleep! fixed. - [+] you can now always 'see' your allies if you have LOH - [+] ie. scannedcell - [+] ie. cansee - [+] player luck should cause better random item creation, and easier monsters - [+] pickrr() needs arg to say what it is for (vault , ob, lf) - [+] meals have special effects. eg: - [+] easy: - [+] mushroom + water = mushroom soup = restore a little stamina - [+] tomato + water = tomato soup = restore a little stamina - [+] apple + stone = fruit juice (don't kill the stone) - [+] cheese + bread = cheese sandwich = restore all food and stamina - [+] rum + chocolate = rum ball = cure pain, restore some hp - [+] med: - [+] corpse + water + salt = jerky - [+] mushroom + water + beef = beef strogonoff = filling, temporary Fitness boost - [+] garlic + bread + clover = garlic bread = produce stench like a trogolodyte - [+] bread + meat + tomato = hot dog = temporary strength - [+] water + sugar + 2 berries = potion of red cordial = speed boost - [+] hard - [+] peanut + stone + salt + bread = peanut butter sandwich = super filling, restore all stamina, temp fitness boost - [+] rum + chocolate + sugar + berry = fruit cake = restores all stamina and hp and mp - [+] implement recipe_t - [+] int ningerdients - [+] enum OBTYPE ingredient[MAXINGREDS] - [+] int count[MAXINGREDS] - [+] int cosumeingredient[MAXINGREDS] (boolean) - [+] makedesc_ob should show the recipe for it, if cooking skill is high enough - [+] cooking skill determines how many ingredients you can use - [+] ie. beginner = you can make recipes which need 2 ingredients - [+] redo "cook" ability. - [+] can combine ingredients using recipes to make meals - [+] ingredients must be known! - [+] chef job - [+] attr - [+] gtaverage agility - [+] low fitnesss - [+] objects: - [+] meat cleaver (slashing, low acc, high crit) - [+] apron (rubber, low protection) - [+] chef hat (cloth, low protection) - [+] butane torch (flambe on adjacent lifeform) - [+] abilities - [+] rage at lv3 * [+] skills - [+] chef job - [+] attr - [+] gtaverage agility - [+] low fitnesss - [+] objects: - [+] meat cleaver (slashing, low acc, high crit) - [+] apron (rubber, low protection) - [+] chef hat (cloth, low protection) - [+] butane torch (flambe on adjacent lifeform) - [+] abilities - [+] rage at lv3 * [+] skills
2011-11-15 05:21:40 +11:00
case F_GUNTARGET:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_HASNEWLEVEL:
case F_HIDING:
* [+] bug: map structure being corrupted. - [+] reduce hardness values * [+] problem with skills: as you level up , you learn them less often * [+] throw objects to set off traps - [+] combination strike ability at expert wep level - [+] reduce skill bonus to sc_stealth and sc_search - [+] modify descriptions for all spells to explain the effect of spell power - [+] make chill work more like frostbite (but less powerful) - [+] make beginner skills still only cost 1. above there thye csost more - [+] modify cha check based on remaining hp% (ie. less attractive if you're bleeding everywhere!) - [+] am i getting all level up skill messages? don't think i saw "you can now detect magic" as a wizard. - [+] can use "more()" more often now that it checks strlen(msgbuf) first. - [+] make askchar etc call more() first. - [+] falling over should lower your visrange. - [+] missile size should impact how hard it is to catch it - [+] backstabbing doesn't seem to work..... fixed now ? - [+] all non-movement actions should stop sprinting. Cold spells: - [+] l1 - glaciate (turns water to sheets of ice) - [+] l1 - snowball (minor cold damage in a ball, 1 to all) - [+] l2 - e "train" to train skills or go up a levle, instead of 'R'. - [+] better way to learn spells (without spellbooks) - [+] transcribe from scrolls using "study scroll"ability - [+] sc_learnmagic - [+] (int/2) + yourlevel + sorceryskill + BONUS:(spellskill*2) - [+] difficulty is 20 + spelllevel*3 - [+] you lose the scroll even if it fails - [+] same for learning from a spellbook! - [+] but difficulty is 15 + sorceryskill + spelllevel*3 - [+] make pea soup be targetted. ie. make mist on top of your enemy, not you! - [+] implement maximum level in f_canlearn. - [+] wizards - short blades at novice. - [+] limit spell skills for some other classes? ce shield? creates a shield
2011-08-31 06:10:43 +10:00
case F_ICESLIDE:
case F_INJURY:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_INVISIBLE:
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
case F_LEVITATING:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_PARALYZED:
case F_POISONED:
case F_PRODUCESLIGHT:
case F_PRONE:
case F_RAGE:
- [+] 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
case F_SILENCED:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_SPRINTING:
case F_SLOWMOVE:
- [+] add autopop to playerstart vaults - [+] rename magic skills: Magic:Cold - [+] bug: infinite loop in poison arrow trap - make sure the arrow always dies. - [+] bug: c4 didn't kill iron door - [+] implement stamina (float). max is Fit/2 * [+] in startlfturn: - [+] sprinting drains this. - [+] ...then stop using f_sprinting for exhausted - [+] ...and remove f_tired - [+] if exhausted, stop sprinting. (in modstamina) - [+] change crushed windpipe - [+] f_stamcost for abilities. - [+] modify cancast. - [+] tumbling - [+] jumping - [+] rage - [+] swimming - [+] drains stamina like sprinting - [+] if stamina drops to 0, you start drowning. - [+] new spell: lethargy (sets stamina to 0) - [+] if a sleep spell fails, use lethergy instead. - [+] no attacking while stam = 0 ??? - [+] need to update statbar right away when casting ongoing spells. - [+] bug: reading an awareness scroll counting as an active spell! - [+] genericise magic resistance check into a function - [+] "disorient" - l1 mental spell which randomly turns lf, someitmes makes them dizzy - [+] change stun - just means you can't attack, cast spell, use abils * [+] AI shouldn't look for targets if stunned or no stamina * [+] why do mosnters end up facing -1 (d_none) ?? - [+] turn undead problem. - [+] The skeleton turns to flee from you! The skeleton bites you. - [+] crit which spins you around (bash to body) - [+] say "you attack xxx from behind" when you ar ebehidn them and they can't see you - [+] or "you attack the helpless xxx" when thye just can't see you - [+] genericise sacrifice text - [+] fix up weight of heads (8% of body mass) - [+] make attribss do more: - [+] iq: determine how soon you learn new skills (ie. modify SKILLXPPERPOINT) - [+] fit: determines stamina points. - [+] wisdom >= AT_HIGH - [+] warn before wearing/eating/drinking/weilding unknown bad/cursed objects (low chance) - [+] use isbadobject() - [+] chance: - [+] high = 10% - [+] vhigh = 30% - [+] exhigh = 50% - [-] idea: sacrifice to gods to make them happier - [+] mercy: weapons - [+] death: any corpses - [+] thieves: gold
2011-09-15 08:42:54 +10:00
case F_STUNNED:
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
case F_TRAINING:
return B_TRUE;
default:
break;
}
return B_FALSE;
}
2010-12-02 12:17:54 +11:00
flag_t *hasflag(flagpile_t *fp, int id) {
return hasflag_real(fp, id, NA, NULL, NA);
2011-02-01 06:16:13 +11:00
}
flag_t *hasflagknown(flagpile_t *fp, int id) {
return hasflag_real(fp, id, B_TRUE, NULL, NA);
2011-02-01 06:16:13 +11:00
}
/*
flag_t *flag_bsearch(flagpile_t *fp, int id, int *iterp) {
flag_t *f,*searchfrom = NULL;
int pos;
int iter = 0;
int l,r;
// binary search for this flag id.
l = 0;
r = fp->nitems-1;
while (!searchfrom) {
//if (db) dblog(" iter#%d: l=%d,r=%d", iter, l, r);
if (r < l) {
// NOT FOUND.
//if (db) dblog(" r < l: not found!");
break;
} else if (fp->item[l]->id > id) {
// NOT FOUND.
//if (db) dblog(" leftid %d > wantid %d. not found!",fp->item[l]->id, id);
break;
} else if (fp->item[r]->id < id) {
// NOT FOUND.
//if (db) dblog(" rightid %d > wantid %d. not found!",fp->item[r]->id, id);
break;
}
// half way inbetween l and r
pos = ((l+r)/2);
f = fp->item[pos];
//if (db) dblog(" iter#%d: pos=%d. item here is %d (looking for %d)", iter, pos, f->id, id);
if (f->id == id) {
// go back to first occurence
while (f->prev && (f->prev->id == id)) {
f = f->prev;
iter++;
}
searchfrom = f;
break;
} else if (f->id > id) {
// go left
r = pos-1;
} else {
// go right
l = pos+1;
}
iter++;
}
if (iterp) *iterp += iter;
return searchfrom;
}
*/
flag_t *flag_hsearch(flagpile_t *fp, int id, int *iterp) {
flag_t *f,*searchfrom = NULL;
int hash;
int iter = 0;
hash = getflaghash(id);
for (f = fp->first[hash]; f ; f=f->next) {
iter++;
if (f->id == id) {
searchfrom = f;
break;
}
}
if (iterp) *iterp += iter;
return searchfrom;
}
flag_t *hasflag_real(flagpile_t *fp, int id, int wantknown, flag_t *exception, int lifetimeexception) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
flag_t *f,*foundflag = NULL, *searchfrom = NULL;
2011-02-01 06:16:13 +11:00
lifeform_t *owner;
int iter = 0,subiter = 0;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
int db = B_FALSE;
owner = fp->owner;
if (flagdb) db = B_TRUE;
if (db) dblog("call to hasflag %d in flagpile", id);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// find first occurence of this id
//searchfrom = flag_bsearch(fp, id, &iter);
searchfrom = flag_hsearch(fp, id, &iter);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// now find a valid one
f = searchfrom;
//while (f && (f->id == id)) { for binary search
while (f) {
int valid = B_FALSE;
if (f->id == id) {
valid = B_TRUE;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
if (f == exception) valid = B_FALSE;
if ((lifetimeexception != NA) && (f->lifetime == lifetimeexception)) valid = B_FALSE;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
if ((wantknown != NA) && (f->known != wantknown)) valid = B_FALSE;
if (owner && (f->lifetime == FROMJOB) && !getjob(owner)) valid = B_FALSE;
* [+] fire should set equipped obs on fire too * [+] trapped doors/objcets * [+] make careful walking have less chance of triggering some traps (eg tripwire) - [+] dex penalty when drunk - [+] require dex to put on most shoes - [+] Diety's short sword of pyromania isn't appearing? - [+] make sure i can tumble over traps * [+] able to cut tripwires with slashing/chopping/piercing weapons? - [+] maybe make cmomando have no weapon skill - [+] make armour more common - [+] shouldnt be able to swap place with someone who is sleeping - [+] if you're not in the water, can't see lfs in water (unless they are adjacent) - [+] You break free from the zombie! You reintegrate inside a solid object!--More-- * [+] shopkeepers will charge an extra fee to identify stuff - [+] shouldn't get an empty flask when I dirnk from a fountain! - [+] identify and remove curse scrolls should be COMMON * [+] provide detailed skill descriptions - [+] dumpoutlines() - [+] make minotaurs stay in room - [+] make minotaurs have good smell - [+] don't auotreveal vaults. * [+] should be able to fill flasks from fountains - [+] don't announce corpse decay death while training. * [+] add the initial godstone at the bottom of firstdungeon * [+] make fountains names same as their linked potions - [+] bug: when filling potions from the ground, ground object was never dryaing up Beggars - [+] stealing ability sometimes. run away after using this * [+] various lots of generic f_talktext->"have a coin to spare?" World map - [+] 1-2,1-2: habitat: village - [+] multiple villages - [+] vault: island with treasure (or acid island?) - [+] jump into a water - it splashes small puddles to surrounding cells * [+] let dig spell go up/down. * [+] fountains, random potion effect or water (blue _ or }) - [+] make thingchance and obchance be habitat_t parameters. work on game goal - [+] find a way out of the magical dungeon barriers in the first dungeon - [+] slime - [+] troll = t - [+] lizardman - [+] ogre - [+] kobold - [+] fire sprite - [+] hobgoblin - [+] bugbear - [+] gnoll - [+] giant - [+] zombie - [+] skeleton * [+] ghoul - [+] ghast - [+] can operate spanner to - [+] jam/unjam a door * [+] visibility - [+] initial code for monsters opening doors while giving chase - [+] acid does more damage to armour * [+] implement temporary flags. * [+] implement unknown flags - [+] mana spike - [+] energy bolt - [+] energy blast (hits all in radius) - [+] flash (like flashbang) - [+] telekinesis (open/close doors remotely, grab/throw objects remotely) - [+] mindscan - knoweldge of hp etc * [+] airblast (push obs, push someone very far, AND lose obs. break walls they hit?) - [+] fireball - sets on fire - [+] flamepillar - [+] fire arrow - [+] spark (light a flammable object) - [+] flameburst - 2d8+3 damage in a circle - [+] burning wave - 2d10 damage and set on firea, line towards target - [+] range 3 - [+] freezing touch (turns an object to ice) - [+] knock - opens doors - [+] gas form - [+] polymorph - [+] write on floor - [+] light - [+] weaken (lose str) - [+] poison cloud - change cloudkill to this? - [+] animate dead - [+] posession - [+] minor healing - [+] healing - [+] turn undead - [+] identify - [+] detect magic - [+] detect aura - [+] reveal surroundings - [+] uncontrolled teleport - [+] speed - [+] slow - [+] boost gravity - [+] create monster - [+] divine - [+] wish
2011-07-21 11:43:45 +10:00
//if (owner && (f->lifetime == FROMSKILL) && !getskill(owner, xxx)) valid = B_FALSE;
2011-02-01 06:16:13 +11:00
}
if (valid) {
foundflag = f;
break;
} else {
f = f->next;
subiter++;
}
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
if (db) dblog("finished - %s - iter=%d, subiter=%d", foundflag ? "found it" : "NOT FOUND",iter,subiter);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
return foundflag;
/*
2010-12-02 12:17:54 +11:00
for (f = fp->first ; f ; f = f->next) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// gone past the requrested id's number - ie. it's not there.
if (f->id > id) break;
if ((f->id == id) && (f != exception)) {
2011-02-01 06:16:13 +11:00
int valid = B_TRUE;
if ((wantknown != NA) && (f->known != wantknown)) valid = B_FALSE;
if (owner && (f->lifetime == FROMJOB) && !getjob(owner)) {
valid = B_FALSE;
}
if (valid) {
return f;
}
}
2010-12-02 12:17:54 +11:00
}
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
*/
2010-12-02 12:17:54 +11:00
return NULL;
}
flag_t *hasflagval(flagpile_t *fp, int id, int val1, int val2, int val3, char *text) {
return hasflagval_real(fp, id, val1, val2, val3, text, B_FALSE, NA); // doesn't have to be known
2011-02-01 06:16:13 +11:00
}
flag_t *hasflagvalknown(flagpile_t *fp, int id, int val1, int val2, int val3, char *text) {
return hasflagval_real(fp, id, val1, val2, val3, text, B_TRUE, NA); // must be known
2011-02-01 06:16:13 +11:00
}
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
int getcounter(flagpile_t *fp) {
flag_t *f;
f = hasflag(fp, F_COUNTER);
if (f) {
return f->val[0];
}
return 0;
}
flag_t *hasflagval_real(flagpile_t *fp, int id, int val1, int val2, int val3, char *text, int wantknown, int lifetimeexception) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
flag_t *f,*foundflag = NULL, *searchfrom = NULL;
2011-02-01 06:16:13 +11:00
lifeform_t *owner;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
int iter = 0;
int db = B_FALSE;
owner = fp->owner;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
if (flagdb) db = B_TRUE;
//if (db) dblog("hasflag %d in flagpile with %d entries", id, fp->nitems);
searchfrom = flag_hsearch(fp, id, &iter);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// now find a valid one
f = searchfrom;
while (f) {
if (f->id == id) {
if ((lifetimeexception != NA) && (f->lifetime == lifetimeexception)) {
// invalid
} else if (owner && (f->lifetime == FROMJOB) && !getjob(owner)) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// invalid
} else if ( ((val1 == NA) || (f->val[0] == val1)) &&
((val2 == NA) || (f->val[1] == val2)) &&
((val3 == NA) || (f->val[2] == val3)) &&
((text == NULL) || strstr(f->text, text))) {
if (!wantknown || f->known) {
foundflag = f;
break;
}
}
}
f = f->next;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
if (db) dblog("finished - %s - iter=%d", foundflag ? "found it" : "NOT FOUND", iter );
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
return foundflag;
/*
2010-12-02 12:17:54 +11:00
for (f = fp->first ; f ; f = f->next) {
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// gone past the requrested id's number - ie. it's not there.
if (f->id > id) break;
2010-12-02 12:17:54 +11:00
if (f->id == id) {
2011-02-01 06:16:13 +11:00
if (owner && (f->lifetime == FROMJOB) && !getjob(owner)) {
// invalid
} else {
if ( ((val1 == NA) || (f->val[0] == val1)) &&
((val2 == NA) || (f->val[1] == val2)) &&
((val3 == NA) || (f->val[2] == val3)) &&
((text == NULL) || strstr(f->text, text))) {
if (!wantknown || f->known) {
return f;
}
}
2010-12-02 12:17:54 +11:00
}
}
}
return NULL;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
*/
2010-12-02 12:17:54 +11:00
}
flag_t *incflag(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3) {
flag_t *f;
f = hasflag(fp, fid);
if (!f) {
return addflag(fp, fid, val1, val1, val3, NULL);
}
// make sure there is only one!
if (f->next && (f->next->id == fid)) {
if (gamemode == GM_GAMESTARTED) msg("WARNING: incflag() found multiple flag instances");
dblog("WARNING: incflag() found multiple flag instances (fid=%d)", (int)fid);
}
if (val1 != NA) f->val[0] += val1;
if (val2 != NA) f->val[1] += val2;
if (val3 != NA) f->val[2] += val3;
return f;
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
int istransitoryflag(flag_t *f) {
if ((f->lifetime >= FROMEXTERNAL_LOW) && (f->lifetime <= FROMEXTERNAL_HIGH)) {
return B_FALSE;
}
return B_TRUE;
}
int killflagsofid(flagpile_t *fp, enum FLAG fid) {
return real_killflagsofid(fp, fid, B_TRUE);
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
// returns # flags killed
int real_killflagsofid(flagpile_t *fp, enum FLAG fid, int wantannounce) {
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
flag_t *f;
//,*nextf;
int ndone = 0;
/*
2011-02-01 06:16:13 +11:00
for (f = fp->first ; f ; f = nextf) {
nextf = f->next;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// gone past the requrested id's number - ie. it's not there.
if (f->id > fid) break;
2011-02-01 06:16:13 +11:00
if (f->id == fid) {
killflag(f);
2011-03-04 12:22:36 +11:00
donesomething = B_TRUE;
2011-02-01 06:16:13 +11:00
}
}
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
*/
f = hasflag(fp, fid);
while (f) {
real_killflag(f, wantannounce);
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
ndone++;
f = hasflag(fp, fid);
}
return ndone;
2011-02-01 06:16:13 +11:00
}
// returns # flags removed if we did something
int killflagsofval(int count, flagpile_t *fp, enum FLAG fid, int v0, int v1, int v2, int lifetime, long obfrom) {
int ndone = 0;
int nretflags,i;
flag_t *retflag[MAXCANDIDATES],*f;
getflags(fp, retflag, &nretflags, fid, F_NONE);
for (i = 0; i < nretflags; i++) {
int matched = B_TRUE;
f = retflag[i];
if (matched && (v0 != NA) && (f->val[0] != v0)) matched = B_FALSE;
if (matched && (v1 != NA) && (f->val[1] != v1)) matched = B_FALSE;
if (matched && (v2 != NA) && (f->val[2] != v2)) matched = B_FALSE;
if (matched && (lifetime != NA) && (f->lifetime != lifetime)) matched = B_FALSE;
if (matched && (obfrom != NA) && (f->obfrom != obfrom)) matched = B_FALSE;
if (matched) {
killflag(f);
ndone++;
if ((count != ALL) && (ndone >= count)) {
break;
}
}
}
return ndone;
}
2010-12-02 12:17:54 +11:00
void killflag(flag_t *f) {
real_killflag(f, B_TRUE);
}
void real_killflag(flag_t *f, int wantannounce) {
2010-12-02 12:17:54 +11:00
flag_t *nextone, *lastone;
- [+] 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 11:40:26 +10:00
flagpile_t *pile;
2011-02-01 06:16:13 +11:00
lifeform_t *lf;
- [+] 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 19:03:15 +11:00
enum FLAG fid;
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
//map_t *redolight = NULL;
cell_t *redolos = NULL;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
int redostat = B_FALSE;
int redoscreen = B_FALSE;
int i,hash,dopleasegod[MAXGODS];
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
flagpile_t *newflags = NULL;
2011-08-18 06:57:43 +10:00
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
// remember the pile so that we can re-index
pile = f->pile;
- [+] 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 19:03:15 +11:00
fid = f->id;
2011-08-18 06:57:43 +10:00
for (i = 0; i < ngodlfs; i++) {
dopleasegod[i] = 0;
}
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
2011-02-01 06:16:13 +11:00
lf = f->pile->owner;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
if (gamemode == GM_GAMESTARTED) {
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
/*
if (f->id == F_PRODUCESLIGHT) {
if (lf && lf->cell && (lf->cell->map == player->cell->map)) {
// someone stopped producing light
redolight = lf->cell->map;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
} else if (f->pile->ob) {
cell_t *obloc;
obloc = getoblocation(f->pile->ob);
if (obloc && (obloc->map == player->cell->map)) {
// an object stopped producing light
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
redolight = obloc->map;
}
}
} else if (f->id == F_ASLEEP) {
// someone woke up - ie their glyph will turn upsidedown
if (lf && (isplayer(lf) || cansee(player, lf))) {
redolight = lf->cell->map;
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
} else
*/
if (f->id == F_FLEEFROM) {
2011-08-18 06:57:43 +10:00
if (lf && lf->cell) {
lifeform_t *fleefrom;
fleefrom = findlf(lf->cell->map, f->val[0]);
// ie. this lf was fleeing from the player, and
// got away.
if (fleefrom && isplayer(fleefrom) && !cansee(lf, fleefrom)) {
for (i = 0; i < ngodlfs; i++) {
- [+] delvers should always want money for info, unless you are a delver too. - [+] mirror image (mental) - [+] varpower - [+] makes power 'clone' lfs who look the same as caster - [+] ie. same race. - [+] also same job/armour/weps? - [+] add f_noxp - [+] add f_nocorpse - [+] add f_summonedby so they vanish when the caster dies - [+] add f_phantasm - [+] vanish after _power_ hits, - [+] attacks do 0 damage - [+] don't announce innefectual attacks - [+] dont cast spells or use abilities - [+] petify() them if made by the player - [+] force them to stay close. - [+] in io.c or getlfname, show "[clone]" if it has f_phantasm and was created by player - [+] mosnters try to attack them. - [+] once one gets hit enough times, it disappears - [+] if the caster dies or changes level, they disappear. - [+] can't talk to them - [+] their obejcts vanish when they die - [+] don't talk - [+] make Yumi more about forgiving silly mistakes and avoiding instakills - [+] remove liking of healing - [+] remove like of healing spells - [+] takes a long time to anger. - [+] aviod traps (bamf you away before they trigger) - [+] prayers: - [+] resist stoning (pray while appropriate creatures around) - [+] resist paralysis (pray while appropriate creatures around) - [+] sleep on enemies - [+] passive powers: - [+] always warn as if wisdom is high (passive) - [+] always save when killed right after using stairs (passive) "well, that seemed unfair." - [+] gift: - [+] auto sixth sense - [+] potions of restoration - [+] ring of miracles - [+] shouldn't be able to Offer while enraged. - [+] don't lose stamina while caffeinated - [+] new vault: pit with walkway around it - [+] bug: when worshipping yumi you get "you kill xxx" but they're still alive - [+] ... but they're still alive! - [+] ... for yumi, move KO chance from losehp() to attacklf(). - [+] do the check BEFORE setting 'fatal' - [+] pass forceko to losehp_real - [+] bug: adjustdamhardness should only trigger when ismeleedam() is true, not isphysicaldam() - [+] greatly reduce motel cost - [+] change order in attack.c: apply damage THEN announce, to deal with KO - [+] do it. - [+] test KO code. - [+] then check that feign death still works - [+] demonskin vest should be flammable or vulnerable to fire. - [+] time to get up should depend on size. - [+] less than human: shortnone - [+] human: normal - [+] larger than human: longer - [+] expert unarmed now gives you 'flip' - [+] reduce damage done by low-level monsters - [+] change resoration into a spell - [+] implement - [+] test - [+] new spell: ressurection - [+] corpses need to remember their lf's level - [+] test - [+] godstone of life - revives/restores all - [+] rename "confiscate" to "yoink", and make it take a random object at power 1, selected at power 2 - [+] gods should attack player if they are Enraged or Furious - [+] is STR calc to see if you can push a boulder still working? - [+] change to wizards: - [+] start at novice in all magic skills (but don't gain initial spells) - [+] killing undead should please glorana LOTS. because it's hard to gain piety with her otherwise. - [+] restoration spells/potion should hurt undead - [+] healing spells/potions should hurt undead - [+] immolate shouldnt work if there is aleady a fire tehre. CODE FOR WINNING THE GAME: - [+] get at least one godstone - [+] exit the dungeon - [+] find the portal to the realm of gods - [+] opposing god should appear once you pick up a godstone, and tell you what to do next. - [+] "come to the realm of gods and use it to destroy (related god)" - [+] "or if you lack the courage, give it to me!" - [+] "you will find a portal on the surface" - [+] use the portal to teleport to realm of gods - [+] implement text for all gods... - [+] god text in wt_god - should say 'but you werent meant to replace them!' - [+] EITHER: - [+] challenge and defeat the god related to this godstone (more points. "Crowned the god of xxx.") - [+] TEST - [+] offer the godstone to the godstone's opposing god (less points, "Ascended to demigod-hood.") - [+] implement - [+] TEST GODSTONES: - [+] klikirak: rage - [+] done - [+] (make this one have fire effects too) - [+] glorana: life - [+] Felix shouldn't be able to yoink the godstone off you! - [+] Write up the rest of the Godstone finding text..... - [+] magic - [+] battle - [+] life - [+] mercy - [+] you can't hurt gods unless you - [+] a) have their godstone - [+] b) are in the realm of gods
2012-02-17 16:16:45 +11:00
if (godlf[i] && (godlf[i]->race->id == R_GODMERCY)) dopleasegod[i] += 5;
}
2011-08-18 06:57:43 +10:00
}
}
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
}
}
//checkflagpile(pile);
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
- [+] 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-17 06:54:08 +11:00
if (gamemode == GM_GAMESTARTED) {
// flags which cause a redraw
if (flagcausesredraw(f->pile->owner, f->id)) redoscreen = B_TRUE;
if (flagcausesstatredraw(f->pile->owner, f->id)) redostat = B_TRUE;
2011-02-01 06:16:13 +11:00
- [+] 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-17 06:54:08 +11:00
if (flagcausesloscalc(f->id)) {
redolos = getflagpilelocation(f->pile);
}
}
//checkflagpile(pile);
2011-02-01 06:16:13 +11:00
// notify
if (gamemode == GM_GAMESTARTED) {
if (lf) {
// special effects before announcement
if (f->id == F_FLEEFROM) {
// once you recover from fleeing from something,
// you don't find it scary for a little while.
if (!lfhasflagval(lf, F_NOFLEEFROM, f->val[0], NA, NA, NULL)) {
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
if (!newflags) newflags = addflagpile(NULL, NULL);
addtempflag(newflags, F_NOFLEEFROM, f->val[0], NA, NA, NULL, 10);
}
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
} else if (f->id == F_RAGE) {
if (!isdead(lf)) {
// restore original maxhp
float pct;
pct = (float)lf->hp / (float)lf->maxhp;
lf->maxhp = f->val[1];
lf->hp = pct * (float)lf->maxhp;
if (lf->hp < 1) lf->hp = 1;
}
}
// announce
if (wantannounce && announceflagloss(lf, f)) {
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
if (flagcausesinterrupt(f, GL_LOSS) && !hasflag(lf->flags, F_INTERRUPTED)) {
if (!newflags) newflags = addflagpile(NULL, NULL);
addflag(newflags, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
}
/*
// don't include flags which interrupt will kill!
switch (f->id) {
case F_RUNNING:
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
case F_TRAINING:
case F_AUTOCMD:
- [+] BUG: trying to go down stairs from L7 (6?) - [+] You walk down the staircase... ERROR - can't find opposite end of stairs/portal! - [+] You walk down the staircase... ERROR - unlinked stairs! - [+] This is related to the fact that all the staircases came from Jimbo's vault - [+] For some reason we're not linking them when they come for ma vault!!! - [+] "joining unliked stairs" section not working??? - [+] it calls getstairdestination, but this DOESNT call linkstairs! - [+] maby: call autolink everytime i add stairs ? or only do this during createvault ? - [+] automatically remove useless doors (ie. ones where all adjacent walkable cells are in the same room) - [+] in fix_reachability i'm drawing a corridor through vault/room walls. <- probably this one. - [+] don't allow auto reachability to enter rooms through the wrong side wall. - [+] TEST during regular playtests, see if maps look better. - [+] quality on doors. - [+] sturdy / plain / shoddy doors. this impacts the hp - [+] stone doors (solid / plain /crumbling) - [+] metal ( reinforced / plain / rusty) - [+] only show this if perception >= beginner - [+] dungeon shapes - [+] new cell attribute - locked. - [+] calcroompos can't make rooms on locked cells. - [+] normal - [+] cross - [+] circle - [+] turret - [+] - premask out blocked cells before generation! - [+] minion code - if leader dies, - [+] minions drop morale - [+] and might either immediately flee - [+] need lastdamlf - [+] if wisdom >= gtaverage, automatically turn off lamps when you go to sleep - [+] "scratch"/"gnaw" etc should be based on actual damage hp amount, not percentage. - [+] change getattackverb() - [+] 1-2 - [+] 3-6 - [+] 8-12 - [+] 12-18 - [+] 18+ - [+] shop objects should start with all flags known. - [+] allow usage of godstones without id'ing them first. this will id them. - [+] weapon/armour shop should resize armour for you for a cost. - [+] chanelling bonus - [+] novice - [+] tell you when wand is low on charges (0-3) - [+] beginner - [+] let you determine exact remaining charges in wands once it is == 1! - [+] adept - [+] let you determine exact remaining charges in wands once it is <= 3! - [+] skilled: - [+] let you determine exact remaining charges in wands once it is <= 6! - [+] master - [+] lets you always see full amount of want charges. - [+] lets you convert your mp into wand charges? "imbue item"
2012-01-09 15:02:26 +11:00
case F_PRODUCESLIGHT:
break;
* [+] always add webs if there are randomly generated spiders on a level - [+] non-wood doors - [+] iron - [+] only interrupt rest for hunger if it's 'starving' or 'vhungry' - [+] limit the amount of jumping we can do from athletics skill. - [+] no message when i lockpick with a -6 combat knife. - [+] make small corpses give much less nutrition! - [+] high unarmed skill should give you unarmed attacks with a 1-handed weapon. - [+] dual weild - [+] if you have twoweapon skill, when you weild a weapon, say "weild as secondary weapon? y/n" - [+] in attackcell(), check if we have a weapon in our second hand AND are skilled in twoweaponing - [+] if so, get an attack with both, but with an accuracy penalty (until adept level) - [+] make sure shiedl code doesn't accept weapons! - [+] knockback() can now knock back other lfs that you hit on the way * [+] faster resting obs (only via R) - [+] replace F_RESTING with F_ASLEEP. v0 = onpurpose. if v0, you wake up when at full hp/mp/etc - [+] implement F_TRAINING with traincounter - [+] don't say 'rest until nearby allies ar eheald' if they aren't damaged - [+] make listen dififculty check dependant on distance to noise - [+] doesn't make sense for druid to be a vegetarian. use "can only eat meat when hungry" - [+] @@ - combine acc+dmg. ie. "weapon: mace (63%,2-9dmg) - [+] @@ - show both weapons if dualweilding. - [+] porcupine shoudl have F_SHARP corpse. implement F_CORPSEFLAGS - [+] create monster - "giant ant" making "giant antlion"! - [+] giant porcupine - [+] implement - [+] should attack ants on sight - f_hatesrace - [+] if race=hatesrace or baserace = hatesrace, will attack it. - [+] gust of wind - blow obs away! - [+] thorns (grow spikes, attackers take dmg) - [+] f_retaliate, v0=ndice,v1=dsides, v2=damype, text=obname - [+] major healing (new spell)
2011-05-05 13:12:52 +10:00
case F_ASLEEP:
if (f->val[2] != NA) { // ie. resting
addflag(lf->flags, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
}
break;
default:
addflag(lf->flags, F_INTERRUPTED, B_TRUE, NA, NA, NULL);
break;
}
*/
2011-03-04 12:22:36 +11:00
}
// special effects after announcement
if (f->id == F_RAGE) {
// you are now exhausted
setstamina(lf, 0);
}
* [+] let credit cards be used at some shops? * [+] bug with adding obejcts to shops - [+] issue with objects dying and killing their flagpiles - [+] A medium fire dies down a little. A medium fire is no longer glowing. - [+] shouldn't say "is no longer glowing" when we're changing the type... ? - [+] put a breakpoint on "is no longer glowing" * [+] let you bless objects using a holy circle somehow (but it might make the circle disappear?). - [+] darness bug - need to recalc light for anyone who sees a cell's lightlevel change. - [+] call more() after showing vaultentertext() - [+] remove "inspected" when you ident or makeknown an object. - [+] BUG - no objects in inventory!!!! - [+] listobs failing? mylist[0] = null. MEMLEAK - [+] finish implementing CLEANUP() - [+] crash in cleanup() -> killot() -> findleak.c_stuff while freeing STACKABLE flag from cactus fruit??? - [+] better now? - [+] now a crash freeing hiddennames! - [+] forgot to free obmods - [+] leaking approx. 1 meg per turn! - [+] where am i leaking?! maybe try valgrind or findleak.c - [+] findleak.c now finds nothing. - [+] but i am sitll leaking????? - [+] related to lifeform count. killing all but player dramatically slows it. - [+] check calclos()... looks okay. - [+] setcellknown() ?no. - [+] startlfturn?? no. - [+] remove unused "lf->viscell" - [+] when there are 2 things in a cell, say "you see x and x here." - [+] restore original stast when polymorphing back to original form!!! - [+] when making shops, pick new ones more often. - [+] change to maps: don't let vaults overlap. - [+] HARDCODE object values - [+] potions - [+] tech - [+] tools - [+] rings - [+] increase evasion skill effects - [+] changes to animradial... and animradialorth - [+] combine into one function - [+] move msg into here - [+] refs to spellcloud() - [+] refs to animradial() - [+] fire should spread onto flammable lifeforms - [+] bug: attack flurry doesn't work for monk - [+] let monsters climb even when not facing a wall? - [+] set their facing first. - [+] CRASH when you die while climbing (or on a solid cell) - [+] rings - [+] stench - [+] breath water - [+] detect life - [+] deceleration - [+] meditation - [+] reflection - [+] boost magic power - [+] education - gain xpskills more quickly - [+] crit protection - [+] greed - detect obs - [+] ivy - grows! - [+] ragefungus - bezerk spores - [+] nutter - drops peanuts - [+] dish which slightly increases maxhp (beginner level) - [+] stuffed mushroom. shiitake mushroom + bread
2011-12-08 13:55:14 +11:00
} else if (f->pile->ob && !isdeadob(f->pile->ob)) {
2011-02-01 06:16:13 +11:00
announceobflagloss(f->pile->ob, f);
}
- [+] 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-17 06:54:08 +11:00
// we will revert to our original form at the end of timeeffectslf().
if (lf && (f->id == F_POLYMORPHED)) {
if (lfhasflag(lf, F_ORIGRACE)) {
lf->polyrevert = B_TRUE;
}
- [+] 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
}
- [+] 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-17 06:54:08 +11:00
}
//checkflagpile(pile);
2010-12-02 12:17:54 +11:00
// determine bucket
hash = getflaghash(f->id);
- [+] 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
/////////////////////////////////////////////
// now we are actually removing the flag.
/////////////////////////////////////////////
- [+] 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 11:40:26 +10:00
2010-12-02 12:17:54 +11:00
// free mem
- [+] 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-17 06:54:08 +11:00
if (f->text) {
free(f->text);
f->text = NULL;
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
if (f->altval) {
- [+] 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-17 06:54:08 +11:00
if (f->altval->text) {
free(f->altval->text);
f->altval->text = NULL;
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
free(f->altval);
- [+] 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-17 06:54:08 +11:00
f->altval = NULL;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
}
2010-12-02 12:17:54 +11:00
// remove from list
nextone = f->next;
if (nextone != NULL) {
nextone->prev = f->prev;
} else { /* last */
f->pile->last[hash] = f->prev;
2010-12-02 12:17:54 +11:00
}
if (f->prev == NULL) {
/* first */
nextone = f->next;
f->pile->first[hash] = nextone;
2010-12-02 12:17:54 +11:00
free(f);
} else {
lastone = f->prev;
free (lastone->next );
lastone->next = nextone;
}
2011-02-01 06:16:13 +11:00
- [+] 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 11:40:26 +10:00
//////////////////////////////////////////
// "f" is now gone. don't reference it
// anymore!
//////////////////////////////////////////
f = NULL;
//checkflagpile(pile);
- [+] 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 11:40:26 +10:00
// re-index the pile
//updatefpindex(pile);
//checkflagpile(pile);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
if (gamemode == GM_GAMESTARTED) {
2011-08-18 06:57:43 +10:00
for (i = 0; i < ngodlfs; i++) {
- [+] delvers should always want money for info, unless you are a delver too. - [+] mirror image (mental) - [+] varpower - [+] makes power 'clone' lfs who look the same as caster - [+] ie. same race. - [+] also same job/armour/weps? - [+] add f_noxp - [+] add f_nocorpse - [+] add f_summonedby so they vanish when the caster dies - [+] add f_phantasm - [+] vanish after _power_ hits, - [+] attacks do 0 damage - [+] don't announce innefectual attacks - [+] dont cast spells or use abilities - [+] petify() them if made by the player - [+] force them to stay close. - [+] in io.c or getlfname, show "[clone]" if it has f_phantasm and was created by player - [+] mosnters try to attack them. - [+] once one gets hit enough times, it disappears - [+] if the caster dies or changes level, they disappear. - [+] can't talk to them - [+] their obejcts vanish when they die - [+] don't talk - [+] make Yumi more about forgiving silly mistakes and avoiding instakills - [+] remove liking of healing - [+] remove like of healing spells - [+] takes a long time to anger. - [+] aviod traps (bamf you away before they trigger) - [+] prayers: - [+] resist stoning (pray while appropriate creatures around) - [+] resist paralysis (pray while appropriate creatures around) - [+] sleep on enemies - [+] passive powers: - [+] always warn as if wisdom is high (passive) - [+] always save when killed right after using stairs (passive) "well, that seemed unfair." - [+] gift: - [+] auto sixth sense - [+] potions of restoration - [+] ring of miracles - [+] shouldn't be able to Offer while enraged. - [+] don't lose stamina while caffeinated - [+] new vault: pit with walkway around it - [+] bug: when worshipping yumi you get "you kill xxx" but they're still alive - [+] ... but they're still alive! - [+] ... for yumi, move KO chance from losehp() to attacklf(). - [+] do the check BEFORE setting 'fatal' - [+] pass forceko to losehp_real - [+] bug: adjustdamhardness should only trigger when ismeleedam() is true, not isphysicaldam() - [+] greatly reduce motel cost - [+] change order in attack.c: apply damage THEN announce, to deal with KO - [+] do it. - [+] test KO code. - [+] then check that feign death still works - [+] demonskin vest should be flammable or vulnerable to fire. - [+] time to get up should depend on size. - [+] less than human: shortnone - [+] human: normal - [+] larger than human: longer - [+] expert unarmed now gives you 'flip' - [+] reduce damage done by low-level monsters - [+] change resoration into a spell - [+] implement - [+] test - [+] new spell: ressurection - [+] corpses need to remember their lf's level - [+] test - [+] godstone of life - revives/restores all - [+] rename "confiscate" to "yoink", and make it take a random object at power 1, selected at power 2 - [+] gods should attack player if they are Enraged or Furious - [+] is STR calc to see if you can push a boulder still working? - [+] change to wizards: - [+] start at novice in all magic skills (but don't gain initial spells) - [+] killing undead should please glorana LOTS. because it's hard to gain piety with her otherwise. - [+] restoration spells/potion should hurt undead - [+] healing spells/potions should hurt undead - [+] immolate shouldnt work if there is aleady a fire tehre. CODE FOR WINNING THE GAME: - [+] get at least one godstone - [+] exit the dungeon - [+] find the portal to the realm of gods - [+] opposing god should appear once you pick up a godstone, and tell you what to do next. - [+] "come to the realm of gods and use it to destroy (related god)" - [+] "or if you lack the courage, give it to me!" - [+] "you will find a portal on the surface" - [+] use the portal to teleport to realm of gods - [+] implement text for all gods... - [+] god text in wt_god - should say 'but you werent meant to replace them!' - [+] EITHER: - [+] challenge and defeat the god related to this godstone (more points. "Crowned the god of xxx.") - [+] TEST - [+] offer the godstone to the godstone's opposing god (less points, "Ascended to demigod-hood.") - [+] implement - [+] TEST GODSTONES: - [+] klikirak: rage - [+] done - [+] (make this one have fire effects too) - [+] glorana: life - [+] Felix shouldn't be able to yoink the godstone off you! - [+] Write up the rest of the Godstone finding text..... - [+] magic - [+] battle - [+] life - [+] mercy - [+] you can't hurt gods unless you - [+] a) have their godstone - [+] b) are in the realm of gods
2012-02-17 16:16:45 +11:00
if (godlf[i] && dopleasegod[i]) {
2011-08-18 06:57:43 +10:00
pleasegodmaybe(godlf[i]->race->id, dopleasegod[i]);
}
}
if (redolos) {
* [+] bug: map structure being corrupted. - [+] reduce hardness values * [+] problem with skills: as you level up , you learn them less often * [+] throw objects to set off traps - [+] combination strike ability at expert wep level - [+] reduce skill bonus to sc_stealth and sc_search - [+] modify descriptions for all spells to explain the effect of spell power - [+] make chill work more like frostbite (but less powerful) - [+] make beginner skills still only cost 1. above there thye csost more - [+] modify cha check based on remaining hp% (ie. less attractive if you're bleeding everywhere!) - [+] am i getting all level up skill messages? don't think i saw "you can now detect magic" as a wizard. - [+] can use "more()" more often now that it checks strlen(msgbuf) first. - [+] make askchar etc call more() first. - [+] falling over should lower your visrange. - [+] missile size should impact how hard it is to catch it - [+] backstabbing doesn't seem to work..... fixed now ? - [+] all non-movement actions should stop sprinting. Cold spells: - [+] l1 - glaciate (turns water to sheets of ice) - [+] l1 - snowball (minor cold damage in a ball, 1 to all) - [+] l2 - e "train" to train skills or go up a levle, instead of 'R'. - [+] better way to learn spells (without spellbooks) - [+] transcribe from scrolls using "study scroll"ability - [+] sc_learnmagic - [+] (int/2) + yourlevel + sorceryskill + BONUS:(spellskill*2) - [+] difficulty is 20 + spelllevel*3 - [+] you lose the scroll even if it fails - [+] same for learning from a spellbook! - [+] but difficulty is 15 + sorceryskill + spelllevel*3 - [+] make pea soup be targetted. ie. make mist on top of your enemy, not you! - [+] implement maximum level in f_canlearn. - [+] wizards - short blades at novice. - [+] limit spell skills for some other classes? ce shield? creates a shield
2011-08-31 06:10:43 +10:00
// - if this was a lf's flag, they recalc their los.
// - if it was an object flag, then everyone who can see
// its cell recalcs their los.
- [+] 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 11:40:26 +10:00
if (lf) {
setlosdirty(lf);
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
//precalclos(f->pile->owner);
- [+] 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 11:40:26 +10:00
if (isplayer(lf)) redoscreen = B_TRUE;
* [+] bug: map structure being corrupted. - [+] reduce hardness values * [+] problem with skills: as you level up , you learn them less often * [+] throw objects to set off traps - [+] combination strike ability at expert wep level - [+] reduce skill bonus to sc_stealth and sc_search - [+] modify descriptions for all spells to explain the effect of spell power - [+] make chill work more like frostbite (but less powerful) - [+] make beginner skills still only cost 1. above there thye csost more - [+] modify cha check based on remaining hp% (ie. less attractive if you're bleeding everywhere!) - [+] am i getting all level up skill messages? don't think i saw "you can now detect magic" as a wizard. - [+] can use "more()" more often now that it checks strlen(msgbuf) first. - [+] make askchar etc call more() first. - [+] falling over should lower your visrange. - [+] missile size should impact how hard it is to catch it - [+] backstabbing doesn't seem to work..... fixed now ? - [+] all non-movement actions should stop sprinting. Cold spells: - [+] l1 - glaciate (turns water to sheets of ice) - [+] l1 - snowball (minor cold damage in a ball, 1 to all) - [+] l2 - e "train" to train skills or go up a levle, instead of 'R'. - [+] better way to learn spells (without spellbooks) - [+] transcribe from scrolls using "study scroll"ability - [+] sc_learnmagic - [+] (int/2) + yourlevel + sorceryskill + BONUS:(spellskill*2) - [+] difficulty is 20 + spelllevel*3 - [+] you lose the scroll even if it fails - [+] same for learning from a spellbook! - [+] but difficulty is 15 + sorceryskill + spelllevel*3 - [+] make pea soup be targetted. ie. make mist on top of your enemy, not you! - [+] implement maximum level in f_canlearn. - [+] wizards - short blades at novice. - [+] limit spell skills for some other classes? ce shield? creates a shield
2011-08-31 06:10:43 +10:00
} else {
// everyone who can see this cell recalcs their los
lifeform_t *l;
for (l = redolos->map->lf ; l ; l = l->next) {
if (haslos(l, redolos)) {
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
setlosdirty(l);
//precalclos(l);
* [+] bug: map structure being corrupted. - [+] reduce hardness values * [+] problem with skills: as you level up , you learn them less often * [+] throw objects to set off traps - [+] combination strike ability at expert wep level - [+] reduce skill bonus to sc_stealth and sc_search - [+] modify descriptions for all spells to explain the effect of spell power - [+] make chill work more like frostbite (but less powerful) - [+] make beginner skills still only cost 1. above there thye csost more - [+] modify cha check based on remaining hp% (ie. less attractive if you're bleeding everywhere!) - [+] am i getting all level up skill messages? don't think i saw "you can now detect magic" as a wizard. - [+] can use "more()" more often now that it checks strlen(msgbuf) first. - [+] make askchar etc call more() first. - [+] falling over should lower your visrange. - [+] missile size should impact how hard it is to catch it - [+] backstabbing doesn't seem to work..... fixed now ? - [+] all non-movement actions should stop sprinting. Cold spells: - [+] l1 - glaciate (turns water to sheets of ice) - [+] l1 - snowball (minor cold damage in a ball, 1 to all) - [+] l2 - e "train" to train skills or go up a levle, instead of 'R'. - [+] better way to learn spells (without spellbooks) - [+] transcribe from scrolls using "study scroll"ability - [+] sc_learnmagic - [+] (int/2) + yourlevel + sorceryskill + BONUS:(spellskill*2) - [+] difficulty is 20 + spelllevel*3 - [+] you lose the scroll even if it fails - [+] same for learning from a spellbook! - [+] but difficulty is 15 + sorceryskill + spelllevel*3 - [+] make pea soup be targetted. ie. make mist on top of your enemy, not you! - [+] implement maximum level in f_canlearn. - [+] wizards - short blades at novice. - [+] limit spell skills for some other classes? ce shield? creates a shield
2011-08-31 06:10:43 +10:00
if (isplayer(l)) redoscreen = B_TRUE;
}
}
}
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
/*
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
if (redolight) {
calclight(redolight);
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
setlosdirty(player);
//precalclos(player);
needredraw = B_TRUE;
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
}
- [+] if can WILL _and_ CAST a spell, use power level from whichever is highest - [+] exorcise spell - l2 summoning - [+] +10% chance per skill level, -5% per monster TR, +5% per spell power - [+] implement - [+] paladins get exorcise at l5 - [+] new purity god pray effect: 100% success exorcisms. - [+] new perks for lore:demonology - [+] nov: exorcise demons (power 1) - [+] skilled: summon demon - [+] midnight -portals open. moongate? lunar portal? lunar gate? moon door? - [+] portals with no F_MAPLINK will create a random destinatino in the same map. - [+] makeobjecttemporary() function - [+] when it strikes midnight, a portal appears somewhere on the plaeyr's level - [+] the portal is temporary for 60 turns (ie. approx 1 hours) turns until end of midnight (calc this) - [+] fixed crash on "w-" - [+] during glorana's peace, striketoko is okay. - [+] announce posion potion effects. - [+] make dark maps just lower max vis range, isntead of not being lit ? - [+] redo entire light calculation code. - [+] light effects: - [+] create "bright light" object in radius around target cell (it has f_produceslight) - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] DARKNESS - [+] make a "magical darkness" object - [+] blocks view. - [+] at high level, light spell will increase ILLUMINATION level of the entire map. - [+] bright light objects burn/scare undead - [+] undead won't walk into cells with bright light power >= their TR - [+] monsters in cells with produces light which are vulnerable to light take damage - [+] cases to check for: - [+] vuln to light - [+] migrains - [+] iscelllit() should return light level of cell (sum of f_produceslight) - [+] gaining/losing f_produceslight should setlosdirty - [+] makelit() just places light/darkness objects - [+] monsters in cells with produces light which have good eyes get blinded - [+] move blinding code out of spell.c and into turneffectslf - [+] placing light/darkness objects causes los recalc in any who can see them - [+] this shoudl happen automatically since they will have BLOCKSVIEW. - [+] islit(): - [+] check for ot_darkness objects in the cell - [+] check for f_produceslight flags in the cell's lfs/objects - [+] return how MUCH the cell is lit - [+] f_produceslight flag now just lets you see further in the darkness - [+] still give light sources to monsters, but change the check to see whether we do this (check the map's illumnation level) - [+] get rid of calclight() code. - [+] then i can get rid of seeindark code in los checking ??? - [+] get rid of eyesight adjustment code - [+] remove enum LIGHTLEV - [+] CHANGE nightvisrange - it just countres the map's illumination level - [+] remove lf->eyeadjustment - [+] remove lf->losdark - [+] remove lf->nlosdark - [+] remove cell->lit and littime and otiglittimer and origlight and lastlit - [+] remove it - [+] don't save it
2012-08-02 14:08:27 +10:00
*/
if (redoscreen) {
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
needredraw = B_TRUE;
}
if (redostat) {
statdirty = B_TRUE;
}
if (statdirty || needredraw ) {
* [+] need to set "needredraw" every time we exit: - [+] make eating take longer - depends on lf size and food sizes * [+] stop eating if something attacks you! - [+] change spell code to cope with caster = NULL!! - [+] why are rooms never more than 2 high * [+] traps * [+] eating bug again * [+] disarm trap skill? - [+] lots of needredraw bugs - [+] bug with cursor jumping around lots - [+] draw darkened visible cells in blue * [+] shadow cloak - [+] tree shouldn't prevent resting! - [+] make plants not attack druids * [+] cooking - [+] stop eating if your eating object is no longer with you * [+] FLAG CORRUPTION BUG - [+] pet walking back and forth on rotted objects - [+] purified food shouldn't decay anymore. - [+] plants shouldn't sleep - [+] RESTING on statbar not being cleared. the add of f_interrupted was clearing statdirty before f_asleep got removed in killflag(). - [+] AI: don't eat if in battle - [+] reduce projectile damage - [+] show raceclass in statbars - [+] smoke should make you cough. - [+] when going up levle, only prompt for spells you can cast?? (don't show "NOTCASTABLE") - [+] Your young hawk dies. The stirge releases something! - [+] sleeping thigns shoudn't follow you up/down stairs. - [+] when throw'ng an object, don't let it stack (otherwise we might destroy too much) - [+] don't draw "c - " for nopickup objects. - [+] saving throw for traps if you know about it. - [+] druid - get xp for calming animals - [+] rogue- get xp for picking locks, disarming traps. - [+] metal should be immune to most damage types * [+] make heavy blow need HEAVY weapon, not bashing. - [+] can't rest/train while levitating! - [+] gas traps only go off once. - [+] bug: The goblin throws a boulder at you. A boulder misses you. - [+] don't give short sword skill to wizard. - [+] hearing range based on listen skill * [+] coldness disease: - [+] CRASH when swapping places - [+] bug: i can teleport into an impassable object! - [+] add: "really target (your ally)?" - [+] give wizards school-based skill instead of manaspike + wildmagic - [+] LevUp still not being cleared!!! * [+] why is air wizard being prompted for call lightning at level 2??? * [+] summon weapon (summoning) - [+] hold portal (mod) - [+] reveal hidden - [+] stench (death) - [+] frostbite (minor but direct cold damage. 1dpower. maxpower 3) - [+] grease (modific) creates oil in a circle - [+] fear (death) - [+] seeinvis (div) - [+] locate obejct (div) tells you where a seen objcet is. - [+] swap places (transl) "twiddle" - [+] fire brand (fire, melee attaks deal fire damage) - [+] iceedge - [+] lore (div, temporary knowledge from a particular school?) - [+] icicle (cold, deals cold dam and knocks enemies away) * [+] chill (ice, 1d3 damage per exposed body part) - [+] hail storm (ice, big damage in area) - [+] wall of ice (creates icy wall, hp based on power)
2011-05-12 11:49:35 +10:00
drawscreen();
}
2011-02-01 06:16:13 +11:00
}
- [+] 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-17 06:54:08 +11:00
//checkflagpile(pile);
- [+] vault:pub - [+] has lots of recruitable people - [+] plants, magic creatures, etc shoudl have infinite staina - [+] severed fingers/heads are no longer considered "corpses". - [+] new kind of bed: pile of straw - [+] closed shops now work properly. - [+] stench skillcheck (in makenauseated) - announce this differenlty to 'nothing happen's - [+] monsters won't turn to face sounds when fleeing. - [+] increase accuracy for spear, but reduce accuracy when adjacent - [+] why didn't cyborg warrior start with bullwhip equiped?? - [+] isbetterwepthan() should take EXTRADAM flag into account - [+] monster starting skill levels should depend on iq - [+] no sprinting with injured legs - [+] more restructions when stunned: - [+] no throwing - [+] no operating - [+] no firearms - [+] tombstone text: Eaten by a snow troll's halberd - [+] bug: ekrub gained MASSIVE piety when i sacrificed a soldier ant corpse! reduced. - [+] learning certain lore skills should please gods - [+] repairing should take a lot longer. ie. shoudlbn't be able to do it during a fight. - [+] workhelpobs (spanner/needle) should have F_HELPSREPAIR, v0=material, v1=howmuch - [+] continuerepairing() should only fix <skill + helpsrepair> hp per turn. - [+] announce helpsrepair in obdesc - [+] coldroom vault: - [+] ice floor - [+] ice walls - [+] ice pillar - [+] frozen corpses - [+] new job: gladiator - [+] sword - [+] shield - [+] high shield skill - [+] high evasion skill - [+] limited armour skill - [+] net - [+] war cry fairly early on - [+] gust of wind and airblast should drop flying creatures - [+] fall_from_air(). - [+] trigger then when wind-based effects hit. - [+] chance of falling depends on size. - [+] if you polymorph a monster, it should NOT turn back to its original form! - [+] criticals dont seem to be happening any more... fixed - [+] when picking first askcoords target lf, pick the closest - [+] sakcs etc should contain rarer objects. - [+] intelligent ai: if exhausted and in battle, and faster than opponent, flee.??? - [+] easy way to fix reachability: - [+] is there a solid cell which is: - [+] adjacent to both a filled and an unfilled area? - [+] not a fixed vault wall? - [+] if so, just clear it. - [+] genericise getrandomrace flags - [+] some containers should have mini/tiny monsters inside! - [+] f_hashidinglf, v0=rid - [+] if you loot it, monster jumps out - [+] ...and gets a free hit! - [+] perception lets you see the container moving (only if it weighs less than what is inside it) - [+] genericise getrandomcell() with conditionsets. * [+] condset_t - [+] then replace all getrandomadjcell() calls... - [+] remove getrandomroomcells - [+] then remove WE_xxx
2012-11-13 16:04:30 +11:00
// NOW add the new flags.
if (newflags) {
copyflags(pile, newflags, NA);
killflagpile(newflags);
}
2010-12-02 12:17:54 +11:00
}
void killflagpile(flagpile_t *fp) {
int i;
if (fp->ob && !fp->ob->dying) {
assert(0 == "calling killflagpile on non-dying object");
}
//checkflagpile(fp);
foreach_bucket(i) {
while (fp->first[i]) {
killflag(fp->first[i]);
}
}
//checkflagpile(fp);
free(fp);
2010-12-02 12:17:54 +11:00
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
int killtransitoryflags(flagpile_t *fp, enum FLAG fid) {
flag_t *f,*nextf;
int nkilled = 0, i;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = nextf) {
nextf = f->next;
// gone past the requrested id's number - ie. it's not there.
//if (f->id > fid) break;
if (istransitoryflag(f) && (f->id == fid)) {
killflag(f);
nkilled++;
}
}
}
return nkilled;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
}
int killtransitoryflagvals(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3, char *text) {
flag_t *f, *nextf;
int nkilled = 0, i;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = nextf) {
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
nextf = f->next;
// gone past the requrested id's number - ie. it's not there.
//if (f->id > fid) break;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
if (istransitoryflag(f) && (f->id == fid)) {
if ( ((val1 == NA) || (f->val[0] == val1)) &&
((val2 == NA) || (f->val[1] == val2)) &&
((val3 == NA) || (f->val[2] == val3)) &&
((text == NULL) || strstr(f->text, text))) {
killflag(f);
nkilled++;
}
}
}
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
}
return nkilled;
}
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
void timeeffectsflag(flag_t *f, int howlong) {
- [+] 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-17 06:54:08 +11:00
Monster AI improvements: - [+] replace f_target with f_targetlf - [+] wantrange. for melee fighters (default), it's 0. for spells/archers, it's higiher. - [+] if we are further away than bestrange, move towards. - [+] if we are closer than bestrange, move away - [+] AND: move to wantrange before doing spells etc - [+] if we have a ranged attack and wantrange is default, increase it. - [+] in movetowards/away, cells in the wrong dir should NEVER be acceptable! * [+] mflag_push for monsters http://roguelikedeveloper.blogspot.com/2007/10/unangband-monst er-ai-part-three.html - [+] randomly use ranged attacks when adjacent * [+] show trail in askcoords - [+] when throwing, pass range to askcoords - [+] max monsters per room is depth + 1 * [+] why do humans take ages to appear? - [+] fireball spell is slow - [+] why can i throw objects through magic barriers? - [+] add a bonus for mastery of cartography - magic mapping every 50 turns. - [+] crash with monsters moving off edge of world map - [+] make magic barriers be ON stairs, not around them. - [+] handle DIAGONAL entry to maps - [+] OR make this impossible. - [+] druid should get auto nature knoeldge as they levle up (levs 5 10 15). - [+] CRASH flagpile corrupt - [+] happening during AI movement. - [+] make lightning storm only hit enemies - [+] store last known movement dir in TARGETLF and PETOF. - [+] limit monsters per room not working?!?! - [+] make askcoords let you show object piles with . - [+] make askcoords say "A magical barrier (+xx other objects)" - [+] combine getlastknownmovedir into getlastknowncell * [+] BUG: secret doors are showing up as . again! * [+] implement trails (footprints & scent) * [+] aimovetowardslf(lf, wantattack) * [+] make pets use wantdist code? - [+] what does expert/master tracking give you? - [+] ex: your tracks don't last as long - [+] ms: you don't leave tracks. - [+] change f_reducemovement from multiplier to addition - [+] comma still showing up scents and footprints incorrectly!!!!!!!! Initial shallow/deep water: - [+] restrict movement - [+] check for drowning in turneffectslf AND movelf - [+] warn before walking onto dangerous objects. - [+] change how walkdam works for deepwater. - [+] don't use walkdam flags. - [+] don't make splashes of water on top of deepwater. * [+] deep water will drown you if - [+] don't leave footprints in either - [+] create steam on fire damage, but don't CONVERT to it. - [+] f_waterbreathing - [+] can't drown in water - [+] extra damage from cold/elec if in deep/shallow water Initial swimming implementation * [+] sacred/cursed ground - [+] vending machine - [+] don't transfer f_rarity flag when making objects / lifeforms. Initial work on adding a goal to the game!
2011-05-25 12:12:00 +10:00
// special case:
if (f->id == F_TRAIL) {
return;
}
- [+] monster: triclops. perception. vuln to light. - [+] flying creatures shoudl fall to the ground when unconscious - [+] (this might kill them) - [+] animate statue - bring statue to life - [+] excavate - radial, obliterate walls + obs, doesn't affect lfs - [+] test unicode wall glyph! 0x2588 - [+] use unicode for gas - [+] change f_glyph so that v1 = symbol, instead of text = symbol - [+] change code - [+] change definitions (macro) - [+] test - [+] implement puff = UNI_SHADELIGHT - [+] implement cloud = bolded - [+] if good, extend to staem etc - [+] blue background for lfs in the water - [+] prone in water means effective lower height - [+] glass/ice cells not shattering properly - [+] make magic barriers be solid too - [+] combine lockpick code in io.c and objects.c into the lockpick() function. - [+] first ask what to use (if required) - [+] then ask what dir (if required) - [+] then ask what to unlock (if reuiqred) - [+] then do it - [+] locked containers - [+] picklocks prompts to try them. - [+] in addob, use non-inheritable f_lockedchance for both doors and chests? - [+] v0 = chance v1 = mod per depth - [+] doors: - [+] base 20% chance locked - [+] every 5 levels, add 10% chance - [+] add this to chests / safeboxes - [+] operate doesn't let you open them - [+] bugs in linkexits and linkexit - [+] linkexits: wasn't checking the correct exit cell!!! - [+] lnkexit: wasn't blanking the startcell GRATINGS: - [+] flags: - [+] addflag(lastot->flags, F_OPPOSITESTAIRS, OT_HOLEINROOF, NA, NA, NULL); - [+] climbable d_down NA - [+] BUT you can't climb it if it's locked. - [+] usestairs() - if you climb a grating and it has no maplink: - [+] use createregionlink(map, cell, grating_object, NULL, RG_SEWER, map->region) - [+] make stench affect enhancedsmell creatures more. - [+] excavate should only affect SOLID matter. - [+] going down a drain: - [+] "You walk down a staircase" should be "climb down a drain" - [+] deep slime in sewers sohuldn't spread - [+] deep slime should spread to a slime puddle if it does.... - [+] fix background glyph colour for slime - [+] killed by drowning should really be "drowned in %s" SEWER HABITAT - [+] permenant stench - [+] if you're in a sewer cell and are not nauseated, add it. - [+] nauseated doesn't expire in sewers. - [+] add RG_SEWER - [+] new regiontype - RG_SEWER - [+] map: - [+] pick size 2 - 5 - [+] start at x=2,y=2 - [+] add square 3x3 rooms in gridlike layout (but need space for 5) - [+] connect rooms to orthogonally adjacent ones with passages - [+] use addexits(). no exits on outer walls. - [+] fill all empty cells with low floor and water (but NOt the one with the exit!) - [+] any solid with orthogonally adjacent water changes to a walkway - [+] cope with different x/y room counts - [+] cope with differnet vert/horz corridor sizes. - [+] horz = 2 - [+] vert = 1 - [+] random room size - [+] allow objectclasses to have f_rarity - [+] modify getrandomobcalss - [+] but DONT make objects inherit it!!! - [+] this is used to override selection hased on habitat - modify getrandomobcalss appropriately - [+] random objects/treasure: - [+] add these only in non-water cells?? - [+] move all obs from water clls to random land cells - [+] frequent - [+] vomit - [+] soggy paper - [+] rotted food (add f_tainted to it) - [+] common - [+] wep/arm - [+] all wep/arm are shoddy in sewers - [+] uncommon - [+] rings (higher than normal chance - they were lost down sinks) - [+] occasional tech - [+] bug: playerstart3 vault filled with walls when made randomly! - [+] death speech text for intelligent monsters - [+] 'aaargh!' - [+] 'this isn't over!' - [+] BUG: linkexits() - gettings exits in the wrong place. maybe not taking rotation into account??? - [+] for example in playerstart_5 vault, found an 'exit' at the x: - [+] this comes from the map flag f_roomexit, x, y - [+] the flag may have bene added from autodoors() - [+] have changed code so that f_roomexti uses text field to say who added it
2011-11-29 13:25:04 +11:00
// always nauseated in the sewer
if ((f->id == F_NAUSEATED) && f->pile->owner && f->pile->owner->cell && (f->pile->owner->cell->habitat->id == H_SEWER)) {
return;
}
2011-02-01 06:16:13 +11:00
if ((f->lifetime != PERMENANT) && (f->lifetime > 0)) {
* [+] bug: secret doors revealed when we walk away from them. - [+] make lamps last heaps longer * [+] web spell * [+] spider monstrer * [+] funnelweb: * [+] redback: - [+] if you are wracked with pain, don't clear msg - [+] check rarity for spiders * [+] attack/defense mod if there is stickiness in your square - [+] replace "sticky" with "restrictive" * [+] make some mosnters start hidden - [+] adjust spot checks basd on distance - [+] ensure that attacking stops you hiding - [+] casting spells stops you from being hidden - [+] hidden mosnters shouldn't move unless their victim is ADJACENT. - [+] hidden mosnters shouldn't cast spells, throw missiles, etc unless their victim is ADJACENT. - [-] XP CALC - [+] funnelweb and redback are the same. - [+] check this is right...... i want funnel web to be worse. - [+] make hitconfer check in calcxpval take lifetime into account - [+] ALSO assign an xp rating to each hitconferred flag. - [+] hardcode this. * [+] entangle spell - [+] reveal secret doors if you see them get damaged. * [+] make askcoords list restrivitce objects - [+] ACTUALLY make vines not damaged by struggling * [+] object descriptions, a/an needs to change if showing condition: "a battered entangling vine" - [+] wizard levelled up and was prompted for "WISH, GIFT"! shouldn't happen! - [+] The human diety reads a blessed scroll of create monster! -- but nothing happens?? * [+] throw code - [+] wizard: ask for school specialty at start, from: fire, ice, xxx ? You get this + WILD. - [+] describe varpower spells - [+] fix mp cost for varpower spells - [+] we're not stopping running at staircases anymore for some reason. - [+] CHARGE ability (like swoop but don't return to original positino) - [+] need to honor f_canlearn when displaying new skills to learn! - [+] ai: if we are going to player's last known loc (via targetcell), abandon if we can SEE the player! - [+] make shatter() into a function - [+] oil potion makes oil puddle whan smashed - [+] make flammable objects be able to convert to others - [+] replace 'magic item usage' with 'channeling' - [+] a cloud of darkness descends. this is a *cursed* wand of light. - [+] spiders shouldn't be able to be stuck in a web! * [+] spells should be able to have MULTIPLE schools. - [+] don't bleed into walls - [+] in @M, use colours to show which spells are too hard so far (ie cost > maxmp) * [+] in @M, use schools that you know * [+] after loading game, barbarian is getting an extra attack? You miss the eyebat. You punch the eyebat. - [+] show objects on top of stairs - [+] stuck mosnters must pass a saving throw to follow you up/down stairs - [+] genericise: trytomove(lf) * [+] add more snakes - [+] undead can't eat or drink? or MOST undead can't. * [+] why can MONSTERS shoot webs through things? (but I can't) - [+] barkskin - doesn't reduce max mp enough? - [+] The skeleton touches a fuming aqua potion [tried] then recoils in pain! The skeleton drops a blessed fuming aqua potion [tried]. The skeleton drinks a fuming aqua potion! - [+] why can't i use abilites anymore? - [+] infinite loop bug due to ai only having one ignorecell. - [+] make sleet storms rust all armour - [+] make a kind of walkdam that hits armour - [+] add this as well as walkdam for: acid, fire, water - [+] Takeoff isn't prompting properly. only showing weapons! * [+] waterproof obs (ie cloak) * [+] walkdambp doesn't hurt body if you have a cloak NATURE SPELLS: - [+] mending, heals 1d6 damage - [+] spark - [+] purify food - [+] sticks to snakes - [+] calm animals (power_d4 hd) * [+] charm animal (works on one animal up to power hit dice, temporary) - [+] airblast - [+] barkskin (power +2 AR, firevuln, ongoing) - [+] soften earth (makes ground into mud) - [+] warp wood (damages wooden objects) - [+] repel insects - [+] reduce poison - [+] web - [+] windshield - [+] call lightning, air - [+] resist elements, ongoing - [+] passwall - [+] poisonbolt - [+] quench (puts out a fire) - [+] sleet storm (lowers movement, vision) - [+] healing - [+] cure poison * [+] calming scent - [+] dig - [+] entangle - [+] levitate - [+] flamepillar - [+] hailstorm. like sleetstorm but hurts more. power d 6. - [+] burning wave - [+] gaseous form * [+] knowledge skills: * [+] force makespellchoicelist() to show spells in level order. * [+] druid - [+] check OBJECT rarity list (dumplev) - [+] fix bug where heaps of books suddently appear from dlev 3 onwards - [+] gain skills on level up for some jobs - [+] f_levspellschool, v0=lev, v1 = school or ANY - select one from that school
2011-04-23 14:27:42 +10:00
// special case - fast metabolism speeds up poison too.
if (f->id == F_POISONED) {
int multiplier;
sumflags(f->pile, F_FASTMETAB, &multiplier, NULL, NULL);
if (multiplier > 0) {
howlong *= multiplier;
}
- [+] 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-06 08:04:51 +10:00
} else if ((f->id == F_INJURY) && hasflag(f->pile, F_ASLEEP)) {
- [+] 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 11:57:21 +11:00
howlong *= 2;
* [+] bug: secret doors revealed when we walk away from them. - [+] make lamps last heaps longer * [+] web spell * [+] spider monstrer * [+] funnelweb: * [+] redback: - [+] if you are wracked with pain, don't clear msg - [+] check rarity for spiders * [+] attack/defense mod if there is stickiness in your square - [+] replace "sticky" with "restrictive" * [+] make some mosnters start hidden - [+] adjust spot checks basd on distance - [+] ensure that attacking stops you hiding - [+] casting spells stops you from being hidden - [+] hidden mosnters shouldn't move unless their victim is ADJACENT. - [+] hidden mosnters shouldn't cast spells, throw missiles, etc unless their victim is ADJACENT. - [-] XP CALC - [+] funnelweb and redback are the same. - [+] check this is right...... i want funnel web to be worse. - [+] make hitconfer check in calcxpval take lifetime into account - [+] ALSO assign an xp rating to each hitconferred flag. - [+] hardcode this. * [+] entangle spell - [+] reveal secret doors if you see them get damaged. * [+] make askcoords list restrivitce objects - [+] ACTUALLY make vines not damaged by struggling * [+] object descriptions, a/an needs to change if showing condition: "a battered entangling vine" - [+] wizard levelled up and was prompted for "WISH, GIFT"! shouldn't happen! - [+] The human diety reads a blessed scroll of create monster! -- but nothing happens?? * [+] throw code - [+] wizard: ask for school specialty at start, from: fire, ice, xxx ? You get this + WILD. - [+] describe varpower spells - [+] fix mp cost for varpower spells - [+] we're not stopping running at staircases anymore for some reason. - [+] CHARGE ability (like swoop but don't return to original positino) - [+] need to honor f_canlearn when displaying new skills to learn! - [+] ai: if we are going to player's last known loc (via targetcell), abandon if we can SEE the player! - [+] make shatter() into a function - [+] oil potion makes oil puddle whan smashed - [+] make flammable objects be able to convert to others - [+] replace 'magic item usage' with 'channeling' - [+] a cloud of darkness descends. this is a *cursed* wand of light. - [+] spiders shouldn't be able to be stuck in a web! * [+] spells should be able to have MULTIPLE schools. - [+] don't bleed into walls - [+] in @M, use colours to show which spells are too hard so far (ie cost > maxmp) * [+] in @M, use schools that you know * [+] after loading game, barbarian is getting an extra attack? You miss the eyebat. You punch the eyebat. - [+] show objects on top of stairs - [+] stuck mosnters must pass a saving throw to follow you up/down stairs - [+] genericise: trytomove(lf) * [+] add more snakes - [+] undead can't eat or drink? or MOST undead can't. * [+] why can MONSTERS shoot webs through things? (but I can't) - [+] barkskin - doesn't reduce max mp enough? - [+] The skeleton touches a fuming aqua potion [tried] then recoils in pain! The skeleton drops a blessed fuming aqua potion [tried]. The skeleton drinks a fuming aqua potion! - [+] why can't i use abilites anymore? - [+] infinite loop bug due to ai only having one ignorecell. - [+] make sleet storms rust all armour - [+] make a kind of walkdam that hits armour - [+] add this as well as walkdam for: acid, fire, water - [+] Takeoff isn't prompting properly. only showing weapons! * [+] waterproof obs (ie cloak) * [+] walkdambp doesn't hurt body if you have a cloak NATURE SPELLS: - [+] mending, heals 1d6 damage - [+] spark - [+] purify food - [+] sticks to snakes - [+] calm animals (power_d4 hd) * [+] charm animal (works on one animal up to power hit dice, temporary) - [+] airblast - [+] barkskin (power +2 AR, firevuln, ongoing) - [+] soften earth (makes ground into mud) - [+] warp wood (damages wooden objects) - [+] repel insects - [+] reduce poison - [+] web - [+] windshield - [+] call lightning, air - [+] resist elements, ongoing - [+] passwall - [+] poisonbolt - [+] quench (puts out a fire) - [+] sleet storm (lowers movement, vision) - [+] healing - [+] cure poison * [+] calming scent - [+] dig - [+] entangle - [+] levitate - [+] flamepillar - [+] hailstorm. like sleetstorm but hurts more. power d 6. - [+] burning wave - [+] gaseous form * [+] knowledge skills: * [+] force makespellchoicelist() to show spells in level order. * [+] druid - [+] check OBJECT rarity list (dumplev) - [+] fix bug where heaps of books suddently appear from dlev 3 onwards - [+] gain skills on level up for some jobs - [+] f_levspellschool, v0=lev, v1 = school or ANY - select one from that school
2011-04-23 14:27:42 +10:00
}
- [+] 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-06 08:04:51 +10:00
* [+] bug: secret doors revealed when we walk away from them. - [+] make lamps last heaps longer * [+] web spell * [+] spider monstrer * [+] funnelweb: * [+] redback: - [+] if you are wracked with pain, don't clear msg - [+] check rarity for spiders * [+] attack/defense mod if there is stickiness in your square - [+] replace "sticky" with "restrictive" * [+] make some mosnters start hidden - [+] adjust spot checks basd on distance - [+] ensure that attacking stops you hiding - [+] casting spells stops you from being hidden - [+] hidden mosnters shouldn't move unless their victim is ADJACENT. - [+] hidden mosnters shouldn't cast spells, throw missiles, etc unless their victim is ADJACENT. - [-] XP CALC - [+] funnelweb and redback are the same. - [+] check this is right...... i want funnel web to be worse. - [+] make hitconfer check in calcxpval take lifetime into account - [+] ALSO assign an xp rating to each hitconferred flag. - [+] hardcode this. * [+] entangle spell - [+] reveal secret doors if you see them get damaged. * [+] make askcoords list restrivitce objects - [+] ACTUALLY make vines not damaged by struggling * [+] object descriptions, a/an needs to change if showing condition: "a battered entangling vine" - [+] wizard levelled up and was prompted for "WISH, GIFT"! shouldn't happen! - [+] The human diety reads a blessed scroll of create monster! -- but nothing happens?? * [+] throw code - [+] wizard: ask for school specialty at start, from: fire, ice, xxx ? You get this + WILD. - [+] describe varpower spells - [+] fix mp cost for varpower spells - [+] we're not stopping running at staircases anymore for some reason. - [+] CHARGE ability (like swoop but don't return to original positino) - [+] need to honor f_canlearn when displaying new skills to learn! - [+] ai: if we are going to player's last known loc (via targetcell), abandon if we can SEE the player! - [+] make shatter() into a function - [+] oil potion makes oil puddle whan smashed - [+] make flammable objects be able to convert to others - [+] replace 'magic item usage' with 'channeling' - [+] a cloud of darkness descends. this is a *cursed* wand of light. - [+] spiders shouldn't be able to be stuck in a web! * [+] spells should be able to have MULTIPLE schools. - [+] don't bleed into walls - [+] in @M, use colours to show which spells are too hard so far (ie cost > maxmp) * [+] in @M, use schools that you know * [+] after loading game, barbarian is getting an extra attack? You miss the eyebat. You punch the eyebat. - [+] show objects on top of stairs - [+] stuck mosnters must pass a saving throw to follow you up/down stairs - [+] genericise: trytomove(lf) * [+] add more snakes - [+] undead can't eat or drink? or MOST undead can't. * [+] why can MONSTERS shoot webs through things? (but I can't) - [+] barkskin - doesn't reduce max mp enough? - [+] The skeleton touches a fuming aqua potion [tried] then recoils in pain! The skeleton drops a blessed fuming aqua potion [tried]. The skeleton drinks a fuming aqua potion! - [+] why can't i use abilites anymore? - [+] infinite loop bug due to ai only having one ignorecell. - [+] make sleet storms rust all armour - [+] make a kind of walkdam that hits armour - [+] add this as well as walkdam for: acid, fire, water - [+] Takeoff isn't prompting properly. only showing weapons! * [+] waterproof obs (ie cloak) * [+] walkdambp doesn't hurt body if you have a cloak NATURE SPELLS: - [+] mending, heals 1d6 damage - [+] spark - [+] purify food - [+] sticks to snakes - [+] calm animals (power_d4 hd) * [+] charm animal (works on one animal up to power hit dice, temporary) - [+] airblast - [+] barkskin (power +2 AR, firevuln, ongoing) - [+] soften earth (makes ground into mud) - [+] warp wood (damages wooden objects) - [+] repel insects - [+] reduce poison - [+] web - [+] windshield - [+] call lightning, air - [+] resist elements, ongoing - [+] passwall - [+] poisonbolt - [+] quench (puts out a fire) - [+] sleet storm (lowers movement, vision) - [+] healing - [+] cure poison * [+] calming scent - [+] dig - [+] entangle - [+] levitate - [+] flamepillar - [+] hailstorm. like sleetstorm but hurts more. power d 6. - [+] burning wave - [+] gaseous form * [+] knowledge skills: * [+] force makespellchoicelist() to show spells in level order. * [+] druid - [+] check OBJECT rarity list (dumplev) - [+] fix bug where heaps of books suddently appear from dlev 3 onwards - [+] gain skills on level up for some jobs - [+] f_levspellschool, v0=lev, v1 = school or ANY - select one from that school
2011-04-23 14:27:42 +10:00
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
f->lifetime -= howlong;
* [+] bug: secret doors revealed when we walk away from them. - [+] make lamps last heaps longer * [+] web spell * [+] spider monstrer * [+] funnelweb: * [+] redback: - [+] if you are wracked with pain, don't clear msg - [+] check rarity for spiders * [+] attack/defense mod if there is stickiness in your square - [+] replace "sticky" with "restrictive" * [+] make some mosnters start hidden - [+] adjust spot checks basd on distance - [+] ensure that attacking stops you hiding - [+] casting spells stops you from being hidden - [+] hidden mosnters shouldn't move unless their victim is ADJACENT. - [+] hidden mosnters shouldn't cast spells, throw missiles, etc unless their victim is ADJACENT. - [-] XP CALC - [+] funnelweb and redback are the same. - [+] check this is right...... i want funnel web to be worse. - [+] make hitconfer check in calcxpval take lifetime into account - [+] ALSO assign an xp rating to each hitconferred flag. - [+] hardcode this. * [+] entangle spell - [+] reveal secret doors if you see them get damaged. * [+] make askcoords list restrivitce objects - [+] ACTUALLY make vines not damaged by struggling * [+] object descriptions, a/an needs to change if showing condition: "a battered entangling vine" - [+] wizard levelled up and was prompted for "WISH, GIFT"! shouldn't happen! - [+] The human diety reads a blessed scroll of create monster! -- but nothing happens?? * [+] throw code - [+] wizard: ask for school specialty at start, from: fire, ice, xxx ? You get this + WILD. - [+] describe varpower spells - [+] fix mp cost for varpower spells - [+] we're not stopping running at staircases anymore for some reason. - [+] CHARGE ability (like swoop but don't return to original positino) - [+] need to honor f_canlearn when displaying new skills to learn! - [+] ai: if we are going to player's last known loc (via targetcell), abandon if we can SEE the player! - [+] make shatter() into a function - [+] oil potion makes oil puddle whan smashed - [+] make flammable objects be able to convert to others - [+] replace 'magic item usage' with 'channeling' - [+] a cloud of darkness descends. this is a *cursed* wand of light. - [+] spiders shouldn't be able to be stuck in a web! * [+] spells should be able to have MULTIPLE schools. - [+] don't bleed into walls - [+] in @M, use colours to show which spells are too hard so far (ie cost > maxmp) * [+] in @M, use schools that you know * [+] after loading game, barbarian is getting an extra attack? You miss the eyebat. You punch the eyebat. - [+] show objects on top of stairs - [+] stuck mosnters must pass a saving throw to follow you up/down stairs - [+] genericise: trytomove(lf) * [+] add more snakes - [+] undead can't eat or drink? or MOST undead can't. * [+] why can MONSTERS shoot webs through things? (but I can't) - [+] barkskin - doesn't reduce max mp enough? - [+] The skeleton touches a fuming aqua potion [tried] then recoils in pain! The skeleton drops a blessed fuming aqua potion [tried]. The skeleton drinks a fuming aqua potion! - [+] why can't i use abilites anymore? - [+] infinite loop bug due to ai only having one ignorecell. - [+] make sleet storms rust all armour - [+] make a kind of walkdam that hits armour - [+] add this as well as walkdam for: acid, fire, water - [+] Takeoff isn't prompting properly. only showing weapons! * [+] waterproof obs (ie cloak) * [+] walkdambp doesn't hurt body if you have a cloak NATURE SPELLS: - [+] mending, heals 1d6 damage - [+] spark - [+] purify food - [+] sticks to snakes - [+] calm animals (power_d4 hd) * [+] charm animal (works on one animal up to power hit dice, temporary) - [+] airblast - [+] barkskin (power +2 AR, firevuln, ongoing) - [+] soften earth (makes ground into mud) - [+] warp wood (damages wooden objects) - [+] repel insects - [+] reduce poison - [+] web - [+] windshield - [+] call lightning, air - [+] resist elements, ongoing - [+] passwall - [+] poisonbolt - [+] quench (puts out a fire) - [+] sleet storm (lowers movement, vision) - [+] healing - [+] cure poison * [+] calming scent - [+] dig - [+] entangle - [+] levitate - [+] flamepillar - [+] hailstorm. like sleetstorm but hurts more. power d 6. - [+] burning wave - [+] gaseous form * [+] knowledge skills: * [+] force makespellchoicelist() to show spells in level order. * [+] druid - [+] check OBJECT rarity list (dumplev) - [+] fix bug where heaps of books suddently appear from dlev 3 onwards - [+] gain skills on level up for some jobs - [+] f_levspellschool, v0=lev, v1 = school or ANY - select one from that school
2011-04-23 14:27:42 +10:00
2011-02-01 06:16:13 +11:00
if (f->lifetime <= 0) {
killflag(f);
return;
} else if (f->lifetime == 5) {
// warn about certain flags......
if (isplayer(f->pile->owner)) {
switch (f->id) {
case F_CANWILL:
switch (f->val[0]) {
case OT_A_JUMP:
msg("Your ability to jump is starting to run out...");;
2011-02-01 06:16:13 +11:00
break;
default:
break;
}
break;
case F_DTIMMUNE:
msg("Your %s immunity is starting to run out...", getdamname(f->val[0]));
2011-02-01 06:16:13 +11:00
break;
case F_DTRESIST:
msg("Your %s resistance is starting to run out...", getdamname(f->val[0]));
2011-02-01 06:16:13 +11:00
break;
case F_DTVULN:
msg("You feel a little less vulnerable to %s...", getdamname(f->val[0]));
2011-02-01 06:16:13 +11:00
break;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
case F_INVISIBLE:
msg("Your body is starting to reappear...");
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
break;
2011-02-01 06:16:13 +11:00
case F_MAGSHIELD:
msg("Your magnetic shield is weakening...");
2011-02-01 06:16:13 +11:00
break;
case F_POLYMORPHED:
msg("You are starting to revert to your original form...");
2011-02-01 06:16:13 +11:00
break;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
case F_LEVITATING:
msg("Your levitation is starting to expire...");
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
break;
case F_FLYING:
msg("Your ability to fly is starting to expire...");
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
break;
- [+] 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-06 04:03:47 +11:00
case F_SPIDERCLIMB:
msg("Your skin is becoming less adhesive..."); more();
- [+] 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-06 04:03:47 +11:00
break;
2011-02-01 06:16:13 +11:00
default: // no message
break;
}
}
} else if (f->lifetime == 2) {
if (isplayer(f->pile->owner)) {
switch (f->id) {
case F_NONCORPOREAL:
warn("You feel your body solidifying...");
break;
default:
break;
}
}
2011-02-01 06:16:13 +11:00
} else if (f->lifetime == 1) {
// warn about certain flags......
if (isplayer(f->pile->owner)) {
switch (f->id) {
case F_CANWILL:
switch (f->val[0]) {
case OT_A_JUMP:
msg("Your ability to jump is about to expire!"); more();
2011-02-01 06:16:13 +11:00
break;
default:
break;
}
break;
case F_DTIMMUNE:
msg("Your %s immunity is about to expire!", getdamname(f->val[0])); more();
2011-02-01 06:16:13 +11:00
break;
case F_DTRESIST:
msg("Your %s resistance is about to expire!", getdamname(f->val[0])); more();
2011-02-01 06:16:13 +11:00
break;
case F_DTVULN:
msg("You feel a little less vulnerable to %s...", getdamname(f->val[0]));
2011-02-01 06:16:13 +11:00
break;
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
case F_INVISIBLE:
msg("Your invisibility is about to expire!"); more();
- [+] when something grabs you, show an 'X' in its location so you know SOMETHING is there. - [+] do this in getscannedthing . glyph = 'X' - [+] make grabbing force a redraw if the target is the player!! - [+] fix crash for fountain of ambrosia (because potion name starts with 'vial' not 'potion') - [+] show X for latched on monsters too - [+] and make latching onto the player force a redraw too - [+] chnage f_rage flag redraw to be done in flagcausesredraw() - [+] shop bugs - [+] bug: food vendor only had 3 pieces of food - [+] bg: jewellery store had no items!! - [+] getrandomobject bug - [+] bug - wantrr too low!!! - [+] if wantrr gets to 0 and still nothing, start ticking up from original value. - [+] bug: rings cost $0 - [+] need a warning before invisibility runs out - [+] make most recipe food heal you a bit - [+] if interrupted halfway through training, remember where we were up to - [+] instead of using F_TRAINING->val[2], use F_TRAINING->val[0] (v1 is the goal) - [+] when you start resting, if you don't already have it, add it: - [+] v1 = 50; v1 = modifybystat(traincounter, player, A_IQ); - [+] v0 = 0 - [+] if you DO have it, drop v0 by 25 modified by IQ. minimum of 0. - [+] when you train, INC the counter, don't dec it. - [+] when v0 = v1, your'e done. - [+] when you finish training, kill the flag. - [+] shadowcat meat - produce and see through smoke - [+] split aimove up into sections - [+] emergencies - [+] healing - [+] housekeeping - [+] inventory mgt urgent - [+] attacks - [+] pre-movement - [+] movement along existing paths - [+] boredom - [+] go back to my shop - [+] look for something to attack - [+] gods go home - [+] training - [+] inventory_mgt_nonurgent - [+] repairing armour - move this to inventory mgt?? - [+] snakes "slither into a wall", not walk. use F_WALKVERB - [+] animate stone spell - turn statues to pets. - [+] can't be both a vegetarian and carnivore! race overrides job.
2011-11-24 09:10:08 +11:00
break;
2011-02-01 06:16:13 +11:00
case F_MAGSHIELD:
msg("Your magnetic shield is about to expire!"); more();
2011-02-01 06:16:13 +11:00
break;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
case F_LEVITATING:
msg("Your levitation is about to expire!"); more();
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
break;
- [+] 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-06 04:03:47 +11:00
case F_SPIDERCLIMB:
msg("Your skin adhesion is about to expire!"); more();
- [+] 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-06 04:03:47 +11:00
break;
2011-02-01 06:16:13 +11:00
case F_POLYMORPHED:
msg("You are about to revert to your original form!"); more();
2011-02-01 06:16:13 +11:00
break;
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
case F_FLYING:
msg("Your ability to fly is about to expire!"); more();
* [+] make vending machines use this container code instead. - [+] don't say "you see a few things" if one of them is footsteps * [+] IFMONSTER code failing....because flags are now SORTED!!! - [+] tumble - askcoords is letting us pick a cell we don't have lof to. * [+] assign a name to lfs once you hire them * [+] coloured msgtext - [+] make min dam reduction from AR be AR/5. - [+] safebox - [+] if intelligent, prompt before walking into RESTRICTMOVEMENT with no getsweaker (val1) * [+] make fire / ice damage mor elike netheck - [+] towns should have gates on EVERY side - [+] forest cells outside town gates need to be CLEARED. (maybe turn to dirt) - [+] fix up knock targetting to include magical barriers - [+] say "open a bag?" not "operate a bag?" * [+] implement immunetodisease - [+] sort known skills in @s. - [+] better damage bonus when attacking someone who is asleep - [+] practive firearms/throwing * [+] need objecttype->size * [+] containers * [+] change guns so you have to reload them. ("operate") - [+] crash when loading map with water - [+] SAVE OBJECT CONTENTSk - [+] monsters with jobs aren't getting start items - [+] shopkeeper has shotgun - [+] bug: monster keeps swapping between shotgun and flail - [+] when hiring, remember failure. * [+] Inn - [+] bug: pets fighting!!! then they all turn on you. never make allies get angry unless the attacker is the player * [+] hiring npcs - [+] chat to pet: "stay close" or "keep your distance" - [+] new 'furniture' obclass - [+] allow for 'randomshop' regiontype * [+] add enchantment school - [+] cast a scroll of mending on itself. CRASH. * [+] lessengravity should make you jump better and get knocked back further - [+] boostgrav/lessengrav cancel out each other. * [+] CRASH when you fall down a hole and die. - [+] problem: master gravitation doesn't let us cast levitat. getspellschoolknown() should return the HIGHEST known skill, not the first. * [+] bug: dregion is null?!??! * [+] dig a pit, if you cleared out land below, you just stay down there. - [+] potion of leveitation - [+] warning msg when levitate is about to expire * [+] if you fall upwards to the surface... * [+] if you are ever on the surface while levitating.... - [+] BUG: cna't go up stairs to surface anymore!!!!! - [+] get hungry LOTS more quickly when you start sprinting * [+] monk slow metabolism psionic pell. - [+] fix buf with lore giving LESS accuracy instead of more. - [+] food shop - [+] wand of digging not identified if you dig upwards * [+] when you make ah ole in the roof, objects above should fall through right away * [+] all towns should have: - [+] give monks more psionics spells. - [+] sk_throwing skill - [+] make calm animals use spellpower * [+] add wisdom * [+] need to save region data along with maps * [+] COMBINE armour evasion and accuracy penalty!!! * [+] make armour reduce accuracy as well (unless you have 'armour' skill) - [+] landmine trap * [+] make friendly monsters of same raceclass swap ammo - [+] rename 'pull' to 'suck' to avoid confusion with pull metal * [+] food to fix blindness - [+] potion of coffee * [+] genericise statbrackets * [+] tumble ability * [+] simplify spell power * [+] shopkeeprs should be allowed to pursue targets outside of the shop. - [+] give shopkeepers a shotgun * [+] make F_RNDHOSTILE be able to ahve a random chance. * [+] if you randomly generate food in a shop, still give it a price. - [+] if peaceful humanoid walks into you, "sorry!" - [+] sayphrase(lf, SP_SORRY, vol) - [+] only let you recruit jobs with j_recruitable - [+] CRASH - summon "monk" - [+] dogs, - [+] chickens, - [+] drunks, * [+] village objects - [+] change armourrating AGAIN. instead of a percentage, make it a number. - [+] rename inn to "pub", since you can't sleep there. * [+] random speech code * [+] genericise sayphrase text based on lf's job * [+] monks - add rest of abliities - [+] add fiengdeath ability to some monsters
2011-07-14 07:40:28 +10:00
break;
2011-02-01 06:16:13 +11:00
default: // no message
break;
}
}
}
}
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
if (f->id == F_WET) {
f->val[1]--;
if (f->val[1] <= 0) {
f->val[0]--;
if (f->val[0] <= W_DRY) {
killflag(f);
return;
} else {
// reset timer
f->val[1] = TM_WETTIME;
* [+] goblins aren't opening doors... - [+] xat shouldn't be able to open doors! - [+] semicontrolled createmonster * [+] implement semicontrolled teleport (can pick the general direction) * [+] change how semicontrolled teleport works - [+] make identify/remove curse more common - [+] make minorheal/heal more common * [+] NOTDONE. maybe reduce the amount of damage which AR blocks a bit? i got to 30ar very fast! (ie -45% dam) * [+] make a special case for F_FLAKJACKET - [+] BUG: glowbug is causing PERMENANT light, not temp! - [+] diety ability - levelup - [+] new damtype: necrotic - [+] drain life spell - [+] make water evaporate - [+] BUG in validating target cell. was asking a monster for input * [+] boots get wet if you walk in water - [+] why does oil lamp and pil lantern make the same range of light? - [+] fixed another vending maching crash - [+] crash due to sprinting? - [+] 2 blessed flask of battery acids - [+] "This is a wand!" - don't use code for hiding names in the dark! * [+] animals shouldn't eat their own race! - [+] gem of seeing costs nothing! - [+] frozen weapons do +1d4 cold damage - [+] allomancy/psionics don't need spellcasting - [+] poison isn't being announced on mosnters? - [+] "you are full" only interrupt if we went < normal (ie peckish starving etc) - [+] only F_HUMANOID creatures can wear armour / use weapons * [+] what does a masterwork bow do? - [+] implement strength requirements on weapons - [+] UNDEAD cannot be poisoned by eating corpses! - [+] ai lfs shoudlnt' eat tainted food - [+] change how gravboost works wrt movement - [+] smart ai lfs shouldnt move when in pain - [+] don't stop walking if the only things there are non-pickupable - [+] make mosnters swap places with each other if they are the same baseid * [+] scroll of permenance - [+] make more monsters have gold * [+] can learn novice level weapon skills by using one a lot * [+] finish hawks * [+] add colour * [+] job attribs aren't working - [+] pile of ash has weird glyph! * [+] when you learn the first rank of some magic skills, you get a spell with it - [+] add colours to statbar - [+] can only "stop on xxx" if you have feet - [+] monsters shouldn't attack other to get to wanted objects. * [+] "xat throws a knife" - [+] manaspike doing no damage to giant newt - [+] assign colours to rings
2011-04-01 10:54:44 +11:00
// TODO: announce
}
}
}
if (f->id == F_BEINGSTONED) {
f->val[0]--;
if (f->val[0] == 0) {
if (stone(f->pile->owner)) {
// stoning failed
killflag(f);
}
return;
} else {
// announce
if (isplayer(f->pile->owner)) {
if (f->val[0] == 1) {
msg("^%cYou have almost completely turned to stone!",getlfcol(f->pile->owner, CC_VBAD));
} else {
msg("^%cYou continue turning to stone...",getlfcol(f->pile->owner, CC_VBAD));
}
more();
}
}
}
2011-02-01 06:16:13 +11:00
}
- [+] 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
// these flags don't get replaced when you polymorph
- [+] 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
int flagretainedduringpoly(enum FLAG fid) {
switch (fid) {
case F_FLEEFROM:
case F_HOSTILE:
case F_LYCANTHROPE:
- [+] 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
case F_ALIGNMENT:
- [+] 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
case F_GENDER:
- [+] 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
return B_TRUE;
default: break;
}
return B_FALSE;
}
- [+] weakness spell should half melee damage. - [+] quaffed a potion of polymorph self... and nothing happened! - [+] only killing undead should please the god of life, not just killing anything evil - [+] klikirak shouldn't get angry when you take cold damage! - [+] fire sohuld convert flammable celltypes to another type: - [+] wood -> stone floor with pit - [+] carpet > stone - [+] increase flamepillar range - [+] warning before killing firebug on wood/carpet, if wisdom is at_high or above, and animal lore is high enough. - [+] make f_twohanded only apply up to a given lf size. - [+] implement - [+] then add "istwohandedfor(wep, lf)" - [+] then fix up ob defs in data.c - [+] unnatural growth/shrinkage spells should be temporary too (like potion) - [+] random polymorph code - [+] stay at the same TR, or one higher/lower! (same for player random polymorph) - [+] elephant - friendly to mammoans - [+] mammoth - [+] pixie (then pixie, dryad sprite = sylvan / fae) - [+] naiad / nixie - [+] blue 'n' - [+] low power charm to lure into water - [+] dagger/javelin - [+] throwing net - [+] resist magic 25% - [+] droid - zapper - [+] hoverscout (levitates, summons monsters) - [+] skellion - floating flaming skull, scream attack, flame melee - [+] fire primality should cast flame burst. - [+] don't modify monster hp based on fitness. - [+] storm primality / wind primality - [+] very fast - [+] 2 attacks - 1d5 each time. (pummel with debris / zapper) - [+] permenant windshield - [+] lesser: - [+] lightningbolt (lesser, 2d6) - [+] sleetstorm (lesser, 1-2 cold and slow movement) - [+] greater - [+] chain lightning (greater, 3d6) - [+] hailstorm (greater, 1d6 cold and 1d4-5d4 depending on power) - [+] naiad (water sprite) - 'n' -blue - [+] good - [+] aquatic - [+] water spirit - [+] charm spell - [+] ling parasite - green 'x' - [+] turns one corpse into a zombie (dies in the process) - [+] add onion object. - [+] roc - [+] "crystal cur" - canine. only bashing works - [+] gems for corpses. - [+] bug: monsters not using spells. fixed. - [+] test NOSPELLS bug with rapidivy - [+] test low IQ spells with storm primality - [+] make hitdice be d8 rather than d4 - [+] change F_HITDICE - [+] add constant HITDIESIDES - [+] redo all definitions in data.c
2012-03-11 12:39:33 +11:00
int flagtomaxhp(flag_t *f) {
int hp;
int nsides = HITDIESIDES;
if (f->val[2] > 0) {
nsides = f->val[2];
}
hp = f->val[0] * nsides;
if (f->val[1] > 0) {
hp += f->val[1];
}
return hp;
}
cell_t *getflagpilelocation(flagpile_t *fp) {
cell_t *where = NULL;
// everyone who can see this cell recalcs their los
if (fp->owner) {
where = fp->owner->cell;
} else if (fp->ob) {
where = getoblocation(fp->ob);
}
return where;
}
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
// populates retflag & nretflags with matching flags
int getflags(flagpile_t *fp, flag_t **retflag, int *nretflags, ... ) {
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
va_list flags;
enum FLAG wantflag[MAXCANDIDATES];
int nwantflags,i;
flag_t *f;
va_start(flags, nretflags);
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
nwantflags = 0;
wantflag[nwantflags] = va_arg(flags, enum FLAG);
while (wantflag[nwantflags] != F_NONE) {
nwantflags++;
wantflag[nwantflags] = va_arg(flags, enum FLAG);
}
va_end(flags);
- [+] make "fear" be used to flee, not attack - [+] CRASH in linkexit() - [+] make most monsters either have sk_perception at least novice. - [+] show success rate when studying scrolls - [+] bug: unable to drink from fountains anymore - [+] always use multidrop - this will free up 'D' - [+] forest tree cluster maps are not working - only a single tree in each cluster! - [+] crash - ghost adding footprint to solid cell! - [+] amberon's wrath for attacking peaceful should happen once per ATTACK, not once per HIT - [+] show cells outside LOS as blue or darkgrey - [+] Don't place normal rooms next to the edge of the map either!! - [+] getradiuscells(scatter) needs an option to include density - [+] then make absolute zero have high density * [+] summoning spells on pentagram will summon a demon instead - [+] "confusion" / "baffle" mental spell - l2 - [+] add 'concussion' injury (head bash) - confusion effect. - [+] iswoozy checks for this. - [+] severed limbs -"frominjury" so taht you can heal them - [+] linkexit() needs to be able to handle making THREE turns: - [+] when looking for turnpos, remember each up/down celll - [+] if we don't find one ("annot find a way to link up") , go through each up/down cell and look left/right - [+] fix is in place. - [+] tested. - [+] bug: doors being placed on top of rock walls!!! think this is related to fix_deadends. - [+] assert statement added. * [+] bug: no up stairs generated on first dungeon map! was being removed by clearcell() for overlapping rooms. - [+] mass stun spell - l4. stuns all in los ? * [+] make "stun" / massstun durations be 2-4 depending on power - [+] "restricted" jobs/races? - [+] don't put shopkeepers in pubs - [+] make a per-map maxvisrange. the deeper you go, the lower this gets (ie . it is darker, less ambientlight) - [+] limit getvisrange(lf) by getmapmaxvisrange() - [+] map->habitat->maxvisrange. set this during createhabitat() - [+] reduce maxvisrange - [+] reduce it to 6 - [+] why can i still see 1 cell? - [+] why can i still always see my own cell? - [+] when in pitch black for a certain amount of time, your vision adjusts to maxrange=1 - [+] ie. getnightvisrange(lf) should be modified by lf->eyeadjustment - [+] reset if you can ever see a lit cell. - [+] when this happens to the player: - [+] msgs about this - [+] also force light recalc - [+] only recalc light when dirty - [+] if we call "haslos()" for a lf and they have losdirty, precalclos first. - [+] vis range problems - [+] sunglasses/footballhelm visrangereduce isn't working anymore - [+] it's reducing maxvisrange(lf). - [+] BUT - my maxvisrange is 5, which is still higher than the ambient range. - [+] need to apply reductions AFTER ambient light - [+] NOW eyeadjustment isn't working. because cell lit is l_temp, not l_notlit. - [+] but if this is the case, why can't i see? anwer: because my visrange has been reduced to 0 due to no ambient light! - [+] so.... how do i make lightt sources override this? - [+] maybe say: if a cell is lit, i can see it, even if it's outside my ambient light. - [+] falling over isn't reducing your visrange anymore - [+] why doesn't eyeadjust make the screen update? - [+] is regular "haslos" code ever used anymore???? - [+] now i can't see lit cells in the darkness again....fixed - [+] after you calm something, give it xpval0 - [+] show message when calm animals fails - [+] check all spell sc_resistmag oskillcheck difficulties - [+] diff should be 20 + (spelllev*2) + power - [+] l1 spell should be diff 20 - [+] l2 should be diff 24 - [+] ... - [+] l7 should be diff 34 - [+] bleeding injuries should make armour "bloodstained" (5% chance per turn) - [+] msgs for "the sun is starting to set" and "the sun is starting to rise" - [+] make 6am, 18pm be constants - [+] add crushed windpipe - lower Fitness, cannot sprint * [+] CRASH when going down stairs! another overlapping room bug i think. - [+] cockatrices and chickens should cluck - [+] canwill param: race:xxx; - [+] define it - [+] use this in "createmonster" - [+] use this in "polymorph" when on self - [+] then remove f_forcepoly - [+] TEST - [+] make playerstart vaults able to appear randomly (just don't place the the "playerstart" object) - [+] redo texttospellopts() to make it more friendly - [+] give a list of what we want as args, rather than passing lots of nulls - [+] "pw:", &localpowervar etc - [+] make "n_lowhp" noisetext happen at END of lf turn - NOT during losehp. - [+] rename turneffectslf() to startlfturn() - [+] show hunger level as a bar in @@ - [+] warn before becoming burdened. - [+] warn when you ARE burdened. at the end of moveob() - [+] l6 - absolute zero (turn everyone around you to ice, freeze all obs, turn ground to ice) - [+] some monsters leave non-meat food behind? - [+] cactus -> cactus juice/fruit - [+] dreamfungus -> sleeping powerder - [+] silver weapons (5% chance on eligible weapons) - [+] hurt vampires - [+] vulnerable to mat??? - then use fromob in losehp() - [+] f_matvuln mt_xxx multiplier - [+] add some silver weapons - [+] f_canbediffmat mt_silver 10% - [+] if f_canbediffmat is true, sometimes change material to this on creation - [+] getobname - if material is differnet, show this - [+] dagger - [+] sword - [+] arrow - [+] bolt - [+] dart - [+] addob should accept 'wantdiffmat'
2011-09-10 09:03:32 +10:00
assert(nwantflags < MAXCANDIDATES);
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
// now populate retflag[] with matches flags
*nretflags = 0;
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
for (i = 0; i < nwantflags; i++) {
f = hasflag(fp, wantflag[i]);
while (f && (f->id == wantflag[i])) {
retflag[(*nretflags)++] = f;
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
f = f->next;
}
}
return *nretflags;
* [+] operate a candlabrum on the ground confers permenant light producing! * [+] bug - water appearing in walls. - [+] make armour less common in forests - [+] too many --more--s when enhancing stats. use drawmsg() rather than more(). - [+] when i go up/down stairs, i keep ending up BESIDE them?? * [+] "you hear footstepszzzzzzzzzzzzzzzzzzzzzzz" (random junk) - [+] when i start training with a spell active, it gets interrupted. try again, interrupted again! works 3rd time. - [+] replace lockpicking with "locksmithing" - [+] replace 'body control' with 'slow metabolism' - [+] pit traps broken - fixed now. - [+] doheading issue in @M still. * [+] how did zombie get 28 hp? bug in rollhitdice. - [+] blind a skeleton with light. it gets blind, starts fleeing. but because it can't SEE you, it stops fleeing instantly! * [+] getflags(flagpile_t *fp, ... ) - [+] stun spell - [+] only say "x2" etc if msgbuf we are going to draw still contains the original text. - [+] when you level up, your psionic skill determines your chance of learning a new psionic spell? - [+] when you teleport/use stairs, get all allies in SIGHT, not adjacent. * [+] more traps! * [+] prisoners in cells - [+] recruitment: instead of outright refusing to join, just up the price. * [+] make spellbook contents depend on map difficulty - [+] cloak of shadows - give invisibility when in darkness * [+] limited wish: - [+] casting WISH reduces max hp by 50%! - [+] monster ai code: if inventory full (or close), put non-eqiupped stuff into containers * [+] infinite loop in firedam to lf - [+] pot of xp isn't working for monsters. they get no more hp!! - [+] summonmosnter should jsut relocate existing uniques - [+] 'planeshift' spell for gods - "unsummon"s them. * [+] diety - greedgod * [+] more village contents
2011-07-26 12:01:05 +10:00
}
- [+] 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
char *getflagtext(flagpile_t *fp, enum FLAG fid) {
flag_t *f;
f = hasflag(fp, fid);
if (f) {
return f->text;
}
return "?unknownflagtext?";
}
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
void getmaxflags(flagpile_t *fp, int id, int *max0, int *max1, int *max2) {
int i;
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
flag_t *f;
if (max0) *max0 = 0;
if (max1) *max1 = 0;
if (max2) *max2 = 0;
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = f->next) {
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
// gone past the requrested id's number - ie. it's not there.
//if (f->id > id) break;
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
if (f->id == id) {
if (max0 && (f->val[0] > *max0)) *max0 = f->val[0];
if (max1 && (f->val[1] > *max1)) *max1 = f->val[1];
if (max2 && (f->val[2] > *max2)) *max2 = f->val[2];
}
}
- [+] walking on glowing moss sohuld damage it. - [+] make dagger stronger than combat knife (but combat knife is faster) - [+] optimise makefile. - [+] swapplaces message not appearing. - [+] fix exploit for dizziness with 'A' - [+] every time we ask for a direction, use askdirection(prompt). make this do dizziness check. - [+] no shieldblocking or dodging if you have no stamina. - [+] object rarity bugs - [+] i'm finding way too many books! might be fixed now... ? - [+] never finding wands - [+] added debugging to see if there is a problem with wands.... - [+] adjust footstep sound based on material - [+] carpet = soft - [+] stone = normal - [+] tiles = loud - [+] in @e, "you ar etipsy" should also talk about damage resistance. - [+] don't show starting abilities if you are a diety. - [+] don't say 'xx walks out of view' if they didn't move on purpose - [+] CRASH - summon weapon then drop the energy blade. * [+] CRASH when fumbling attack using energy blade. - [+] fighter with wisdom 31. novice perception skill. noticied teleport trap right in front of me. chances? - [+] maybe make it you can never detect anything further away than your perception skill. - [+] fix bug in geteffecttime() - [+] announce starting spells at beginning of game - [+] in skill help, highlight your current level. Maybe: "At Novice level>>> Unskilled weapons etc..." - [+] inept level lore shouldn't show "Adept Stealth" as a strength - [+] when you / then move over a cell with footprints short "Dirt (with human footprints)" - [+] or "Dirt (with xxx foorprints leading east) - [+] typo in killer text - an vs a - [+] get over here! should give you enough time to attack ? - [+] felix prayer should remove impassable objects. - [+] robots shoudl have big penalties to getting up checks. slip, fall, etc. - [+] fix bug when falling off a fence. - [+] BUG: no los when i climb on top of a wooden fence. why? - [+] F_BLOCKSVIEW needs new option: v1 = true means dont block if you are standing on it * [+] engineering / construction skill - replaces 'traps' - [+] fixed bug where you couldn't rest when you pet was visible. - [+] bug: aigetlastknownpos populating lastx & lasty with different info from the the cell returned. - [+] this has happening when following the direction of a scent. - [+] remove display of "xx throws xxx towards you" if you can't see the source and something is in the way. - [+] druid should alway sbe able to swap with plants. - [+] peaceful check should do this - [+] try agian... * [+] problem- create water can be used instead of soften earth ??? - [+] detect life should help with checking stairs. - [+] pentagrams should heal the undead. - [+] ekrub - don't et you sacrifice the flower that appears. * [+] when doing check for piety on eating animals - [+] don't auto give druid short blade skill due to sickle - [+] soften earth on boulder... turn it to mud - [+] adept psychology - receive change for gems. - [+] BUG: announceflagloss is never happening. - [+] new nature spell - absorb wood - [+] clank - robot, chomp to steal health, self destruct - [+] new tech - [+] l0 - [+] chewing gum (jam doors with it) - this should be food though. - [+] plants shoudl HELP druid from level 4 onwards - [+] clean up skill ability code - [+] automate skill descriptions based on skillwills "you gain the 'xxx' ability" - [+] auto-learn spells from initial spellbook, rather than having to read it manually - [+] finding rings of unholiness everywhere. - [+] because it's the only rare ring! - [+] fixed by making ALL rings be uncommon - [+] first time you slip on something, suggest using 's' - [+] sewing / metalwork: get resize and enhance earlier. - [+] bug with engineering seeing through one wall!s - [+] rogue/knifedancer / blademaster - throwing, extra skill with small blades. starts with extra knives. - [+] replace all SUBJOBS with plain regular JOBs - [+] fix "needobforstaff" for wizards! - [+] sewer should have mossy rock floor. slippery. - [+] new specialist classes: - [+] rogue/assassin (no stealing, no traps, lockpicking, better stealth+backstab, poison knives) - [+] minor healing spell is too powerful. should do 5-10hp max. - [+] reveal hidden is not powerful enough for l4. move to l2. - [+] reduce effects of stench as TR gets higher - [+] lumara should accept sacrifice of anything magic. - [+] oil lamp not making my viison longer! (on dlev11) - [+] just describe f_produceslight in io.c - [+] with no evasion skill, agi does way less for EV. - [+] fungus clouds should be in 1 radius, non orthogonal - [+] try putting monster zoo back in? - [+] STILL bugs detecting trapped doors ages away! - [+] detected one 8 away, perception novice! - [+] when a monster necromancer is made, i'm prompted for spell school!!! - [+] new mushroom: greycap. looks like a miniature snowy mountain. grants cold resistance - [+] shop opening hours - [+] F_OPENHOURS - [+] v0 = start (inclusive) - [+] v1 = end (inclusive) - [+] v2 = sayphrase - [+] SP_CLOSEDTILMORN (come back in the morning) - [+] SP_CLOSEDTILNIGHT (come back tonight) - [+] SP_CLOSEDTILHOUR (come back after x oclock!) - [+] make shops only be open during the day. - [+] make some temples only be open at night (eg. hecta)
2012-10-15 13:15:36 +11:00
}
}
flag_t *getrandomflag(flagpile_t *fp, enum FLAG fid) {
flag_t *retflag[MAXCANDIDATES];
int nretflags = 0;
getflags(fp, retflag, &nretflags, fid, F_NONE);
if (nretflags) {
return retflag[rnd(0,nretflags-1)];
}
return NULL;
}
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
int modcounter(flagpile_t *fp, int amt) {
flag_t *f;
f = hasflag(fp, F_COUNTER);
if (f) {
f->val[0] += amt;
} else {
f = addflag(fp, F_COUNTER, amt, NA, NA, NULL);
}
return f->val[0];
}
flag_t *modflag(flagpile_t *fp, enum FLAG fid, int val1, int val2, int val3, char *text) {
flag_t *f;
f = hasflag(fp, fid);
if (!f) {
return addflag(fp, fid, val1, val1, val3, text);
}
// make sure there is only one!
if (f->next && (f->next->id == fid)) {
if (gamemode == GM_GAMESTARTED) msg("WARNING: modflag() found multiple flag instances");
dblog("WARNING: modflag() found multiple flag instances (fid=%d)", (int)fid);
}
if (val1 != NA) f->val[0] = val1;
if (val2 != NA) f->val[1] = val2;
if (val3 != NA) f->val[2] = val3;
if (text) {
- [+] 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-17 06:54:08 +11:00
changeflagtext(f, text);
}
return f;
}
* [+] F_prone if you're knocked down - [+] make sheilds very good against projectiles - [+] make smoke just REDUCE vision, not block it. - [+] noncorporeal should stop grabs! * [+] don't say 'a javelin is damaged' when you throw it, just apply the damge - [+] increase damage bonus with every lore level. +10% each time (ie. up to 50% at top) * [+] give accuracy + critical bonus for lore levles too - [+] typo: Enhance which skill enhance (1 left)? ['=next page,?=toggle] - [+] Show Pain on botl. * [+] more staves - [+] low hitpoint warning for pets (or make them shriek, whine, etc) - [+] CRITKNOCKDOWN * [+] FINISH GRIZZLY - [+] undead should be immune to poison!! - [+] make code to auto add flags to undead. - [+] if you ever move a door (ie. airblast), automatically open it. - [+] young wolf shouldn't be able to open a door! * [+] You throw a dart at the carpet snake. Your dart misses you.--More-- - [+] no sprinting while burdneed - [+] blood should be drawn BELOW stairs - [+] weilded torch should do 1d4 fire damage (counts as a club) * [+] The skeleton touches a leather belt then recoils in pain!The skeleton drops a blessed leather belt.The skeleton puts on a leather belt. - [+] don't show "you can cast it at power level xxx" for abilities * [+] more item randomising - [+] make grey ooze splatter into acid - [+] "the vine grabs you" if you walk onto an entangling vine. - [+] don't start monsters within player's los - [+] properly randomise sticks to snakes - [+] stirge - [+] leech (like stirge but can charge/leap, and slightly more hp / damage) - [+] treesnake - [+] constrictor - [+] cobra - [+] stickes to snakes - make caster's weapon revert. - [+] A something comes into view. - [+] is invisibility code working properly when you see someone use the invis spell? - [+] don't include cosmetic objects in 'you see xxx' * [+] monsters: don't use spells if you don't have lof. - [+] pets not following around corners if you move diagonally. fixed a little. - [+] summon small animals (2-3 x SZ_SMALL) * [+] jet of water - [+] summon medium animals (2-4 x SZ_MEDIUM, wolf etc) - [+] lightning storm (lightbning everyone within los, and more damage) - [+] summon large animals (SZ_LARGE, horse, bear etc)
2011-05-03 17:34:07 +10:00
- [+] 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
// make the objects providing this flag be known.
void revealflagob(lifeform_t *lf, flag_t *f) {
int willid = B_FALSE;
if (!isplayer(lf)) return;
switch (f->lifetime) {
case FROMOBEQUIP:
case FROMOBHOLD:
case FROMOBACTIVATE:
willid = B_TRUE;
break;
default: break;
}
if (willid) {
object_t *o;
o = findobbyid(lf->pack, f->obfrom);
if (o) {
makeknown(o->type->id);
}
}
}
void sumflags(flagpile_t *fp, enum FLAG id, int *val0, int *val1, int *val2) {
flag_t *retflag[MAXCANDIDATES];
int nretflags = 0,i;
2011-02-01 06:16:13 +11:00
if (val0) *val0 = 0;
if (val1) *val1 = 0;
if (val2) *val2 = 0;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
getflags(fp, retflag, &nretflags, id, F_NONE);
for (i = 0; i < nretflags; i++) {
if (val0) *val0 = *val0 + retflag[i]->val[0];
if (val1) *val1 = *val1 + retflag[i]->val[1];
if (val2) *val2 = *val2 + retflag[i]->val[2];
2011-02-01 06:16:13 +11:00
}
}
void timeeffectsflags(flagpile_t *fp) {
flag_t *f,*nextf;
enum FLAG thisid;
int i;
- [+] 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-17 06:54:08 +11:00
foreach_bucket(i) {
for (f = fp->first[i] ; f ; f = nextf) {
2011-02-01 06:16:13 +11:00
nextf = f->next;
thisid = f->id;
* [+] backstab - [+] monsters start asleep and make spot checks ? - [+] make them start asleep - [+] then make this random - [+] sound will wake them (ie. "makenoise") - [+] when you move, make SC_STEALTH check. if you fail, you make noise! - [+] must pass LISTEN check OR have los to hear something. - [+] "the blowfly falls asleep" "the blowfly appears" when summoned. - [+] don't show 'falls asleep' while being created! * [+] don't start summoned mosnters asleep! * [+] clean up bresnham functions - [+] hearing - instead of just using distance, use distance modiied by # of walls! - [+] getcelldistsound() - each wall counts as an extra cell! - [+] add WALK/FLY noises to all monsters! - [+] don't show 'you hear xxx' when resting. - [+] extra damage for weapon skill (up to 50% extra) - [+] make broken glass crushable - [+] only interrupt rest for non-peaceful, non-friendly monsters - [+] save to fight off poison * [+] beholder is never using its BITE attack * [+] need a price for manuals!! * [+] change"dobresnham" to populate an array of cells - [+] make ai cast animate metal (if they ahve a second weapon) - [+] implement getallegiance() to clean up isfriendly / ispeaceful etc - [+] bug - f_else f_ifpct etc not working in startobs * [+] OT_S_CHARM - [+] update askcoords to show "weilding x AND Y" - [+] stop enemies from throwing firearm ammo somehow * [+] implement - [+] pacify spell - [+] make spellbooks less common - [+] detectmetal not wokring. fixed. - [+] detectobjects spell - [+] cleanup using flagcausesredraw() - [+] increase odds of weapons in rooms, and max ob count in rooms
2011-03-24 16:09:31 +11:00
timeeffectsflag(f, 1);
// if this checkflag() crashes, we know there we a bug during processing of
// flag 'thisid'
//checkflagpile(fp);
}
2011-02-01 06:16:13 +11:00
}
- [+] 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-17 06:54:08 +11:00
//checkflagpile(fp);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
2011-02-01 06:16:13 +11:00
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
// generate an index
/*
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
void updatefpindex(flagpile_t *fp) {
return;
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
flag_t *f;
- [+] 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-17 06:54:08 +11:00
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
fp->nitems = 0;
for (f = fp->first ;f ; f = f->next) {
if (f->next) {
assert(f->next->prev == f);
}
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
fp->item[fp->nitems] = f;
fp->nitems++;
- [+] 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-17 06:54:08 +11:00
assert(fp->nitems < MAXFLAGS);
- [+] thrown objects taking no damage due to hardness * [+] DIETY is slow. - [+] map bug - from 0,0, walk NE (off top edge). i end up at 0,0 again!!! * [+] ALLOW ROTATING OF VAULTS - [+] BUG: dig X only goes 1 cell. - [+] add a U shaped turn vault. - [+] change wehre i apply HADRNESS for lfs! - don't use adjustdammaterial cause we inherit there - [+] make obchance/thingchance part of habitat_t - [+] make sense surroundings take cartography skill into account * [+] BUG: rotated at() etc not working. - [+] if you fail stealing, the target should get angry!!! - [+] make sure to redraw stat bar when mind scan finishes. - [+] villages - [+] initial code * [+] town gaurds. stand next to the gate - [+] potion shop vault - [+] implement - [+] potion shop isn't getting potions!! - [+] and getting wrong floor type. * [+] stop shop from always being at the top left. - [+] make sure its x/y arent too close to edge of map (at least 5 away) - [+] vault param. f_mapmargin, 5 - [+] make calcroompos take x/y margin - [+] don't put auto obs inside vaults - [+] town walls - [+] more kinds of shops * [+] signs outside shops - [+] bug with ai swapping between firearms and twohanded weapons. fixed. * [+] make _CELLS_ have habitats! - [+] move vaultchance to a habitat param instead of getvaultchance() * [+] shopkeepers (special race) village things: - [+] barrels, - [+] guards, - [+] statue - [+] thrown objects should still take damage if blocked via a shield * [+] hardness (must do dam >= xx to hurt) * [+] WATER spread mods * [+] very powerful spells have casttime - [+] allow linkstairs() to take a parameter rather than always jsut searching for the other end - [+] when digging holes, only use getrandomadjcell if there is an lf in the way. and then use WE_NOLF. clear out solid cells - [+] show armour EVASION penalty in describeob - [+] teleportation trap. You reintegrate inside a solid object! You die.--More--. - [+] riverroom vault * [+] water: swap { and ~ again?? - [+] make "large puddle of water" evaporate more quickly * [+] special glyph case: for deep water
2011-06-29 18:48:48 +10:00
}
2011-02-01 06:16:13 +11:00
}
*/