Kangband To-Do List
This is the to-do list...
- clean up bldg.c. make efficient - ugly code right now.
- For the illusionist spell "shadow monster(s)": Instead of using "-" when displaying the spell, use a monsters letter and "shoot" that at the creature. Can also use randint and pick either "D", "T", etc.. This should be a simple addition, though may need to duplicate some code.
- Need to implement "rumors" command in the inn. This should display a random quote from a file (rumors in lib subdirectory) with the max rumors set in constants.h. This is obviously fluff and could contain some humor.(Update: not sure if I want to do this yet)
- make sure that the costs for services in buildings are correct in game balance should be much more to identify possessions than one scroll but less than the cost of scrolls to do all of them. Same for other services. Restoration costs should be equivalent to say, a mushroom of restoring, maybe more. Should be based on charisma too?? Or is this just a pain for a small thing.
- Need to make better use of screen for rewards (not just msg_print) Quest descriptions are good right now. make building messages fill screen rather than always using msg_print
castle: library:
fight hall: ranger tavern:
gambling: tower of ill:
tower of sor: thief house:
order of pal.: arena:
inn temple: druid grove:
- More building commands. Have room in the rewards array to add flags without changing the save file code.
- people are requesting an adjustment to arena. fighters (half/trolls for ex.) fly through parts of the arena. Multiple monsters in some fights? Higher curve of difficulty? Or, is it just because an arena is made for fighters more so than mages.
- Do more work to flush out wilderness, add small town somewhere, other special levels which castle would send you to. class-bldg quests?
- Only create aquatic monsters if water available. Need to define some aquatic monsters.
- when monsters are summoned and if they can't survive terrain, account for it rather than having them just sit there. i.e. summon a golem onto deep water - he should sink right away. Same with placement of monster upon generating - avoid placing them there.
- stairs still can get covered by water when you do down or up and land in water (don't have stairs to return)- don't allow this.
- would be cool to be able to define multiple level quests for a specific quest. (i.e. two levels of the volcano with working stairs)
- would like to have ALL castle greets result in buildings. Already give house, other plans: (see done list labeled castle greets)
- could also get a key to a town outside the castle where an alchemist lives who can be paid to make potions. Also has rare stuff?
- Would like to create help files for the files in the kangdocs directory so they could be accessed via the game. Would also like to revise the current help files to include Kangband changes. Have started this.
- complete help files (have started on this - see the following)
complete/updated updated (did not need changes)
--------------------- ------------
ability.spo (check tables) attack.txt
birth.txt (check tables) help.hlp
books.spo option.txt
command.txt rumors.spo
dungeon.txt spoiler.hlp
general.txt
playing.txt
version.txt
Not done
-----------
attack.spo dungeon.spo extra.hlp guide.spo artifact.spo
hints.spo magic.spo misc.spo mon-blow.spo mon-desc.spo
mon-info.spo mon-name.spo mon-race.spo mon-uniq.spo mon-view.spo
monsters.hlp obj-desc.spo obj-good.spo obj-long.spo objects.hlp
stats.spo store.spo user.hlp various.hlp
- less kill monster x and more quest levels? Maybe just more quests in general like one/level instead of two/level. Maybe restrict kill monsters quests to the guild quests.
- eventually upgrade to 2.8.3
- combat penalty when in deep water? alter speed or affect to hit? Want to alter speed at this point. - 2 (same goes for non-flying monsters too - flying ones no penalty)
- Make terrains interactive - if use wand of fire, evaporate shallow water, make deep shallow, etc. Ways to convert lava to mud? Water to dirt? Deep water to shallow water? Effect is fire creature crosses shallow water - turns to steam, goes away? fire creature can't cross deep water. Things like worms can't cross shallow or deep.
- some creatures shouldn't be allowed to swim such as worm masses. Need to have a flag for shallow water crossing.
- add guild related quests. could be a red > while castle is a yellow > This has been defined as a feature but not yet implemented.
- arena too easy to gain xp with fighter? I don't know if I want to change this yet. Maybe make a higher difficulty curve. could use more non-magic monsters of strength and power to add to the arena. don't forget, arena spot for everyone - fighters just have an advantage.
- don't want symbol appearing on screen after get reward. ugly
- updated graphic tiles for my building doors, terrains, etc.?? Probably last thing to look at
- add random artifact code but wait until it evolves. at version .6 now
- add options and code for monsters and items to have a light radius if applicable. See code snippet from the newsgroup. use two fields for radius and color instead of HAS_LIGHT. Use as option! (or two options - one for object lights, one for monster lights?) i.e. phial could glow before being picked up. Same goes for green slime?
- want guaranteed great items when complete complex quests. Make the rewards better as quests go on with artifacts a must at the end. could also reward money? Maybe this would be part of q_info? sounds like a good idea.. the reward spot
- For beastmaster, have option to research "quest monster" for quickness sake.
- Make sure fog restricts view EXCEPTING infravision, telepathy. Need to test this.
- fix when quest assign you to kill novice ranger, mage, etc. There are two in the r_info file and only one would count so it is confusing. Either disallow that random choice or change the name in the r_info file.
- Could have quest that teleports you away from entrance upon entering. Makes it harder to just leave. Would have to either fight for exit or fight for completion. Your choice.
- long-term todo: build a larger universe where the castle is the center. When a player exits the screen - draw the next "area" of the map. Include other towns, quests. In fact, the player should start at a town, and fulfil something before being able to go to the castle? Or, guild quests use the rest of the map? Just some things to think about. Maybe can't descend into the dungeon past xxxft. until get a key from a quest?
- REALLY LONG todo - possibly add modules to the game which would read the same savefile and could be used in strategy/simulation games related in genre. Ex: when become a king instead of ending the game - can now load char into a sim-shire type game or the like. Maybe could also play other pieces when reach certain levels instead of having to omplete.
Completed Items
DONE - spell/prayer complete revamp! New spells, more power, more useful, don't rely on hand-to-hand combat, etc. Hardest to implement and keep balance. Most time-consuming but probably most popular when complete. In progress. - spell work needed. Maybe reduce GOI as in jangband. Max spells out Also, spells need to be more powerful to make up for the weaker combat skills which have been implemented. illusionist may need mana storm to balance out with mage When redo spells - revisit what rangers/rogues/paladins can see. 100% done for a first pass (-:
DONE - add more regular rooms (not vault)- you have pit layout, some round, etc. Add variety here. Added circular rooms.
DONE - add more monsters (see zangband)
DONE - can quests be somewhat randomized at birth or customized by class? Maybe the quests stay the same but the goal for some is randomize for either find exit, or clear all monsters, find artifact. Idea: make a folder labeled Quests. Inside, put the q_info and v_info files. Include a map of the entire wilderness. Now, when you start a char, can randomly choose a "set" of v_info, q_info, and map. In this way, you could have "plots" and swap various storylines with each other.
DONE - separate quest levels in different file from vault. This will avoid duplicating a lot of text when plots are introduced. Would love to put them in the q_info file along with the text - most logical.
DONE - Setup quests so can have a "character to revert to when complete" - some quest could have rubble, some nothing (floor), some water, etc.
DONE - If use potion - should be able to cross lava - need to check for timed resistance.
DONE - either add more books to shop or have available in towers too. (rare since have both mage and ill. books) Same with priests and druids. Added a few more books to same stores.
DONE - want to save quest progress so can't keep going in and out without finishing. Either, enter and can't leave - or save what has been done and enter and start where you left off --or both (diff types of quests)
DONE - clear any potion or scroll effects that may be in effect before entering arena so no unfair advantage. Give message stating as such to player. (no message set - just clears it)
DONE - weaponsmaster - can compare weapons in terms of damage, blows based on char need to complete and use all info from calc_weapon - have done initial work and can compare standard damage, blows etc. have included info for slays and other attributes.
DONE - The terrains of dirt (for wilderness map) and fog (for dungeon) have been created.
DONE - Kangband now reads the wilderness from a file (w_info.txt) allowing for more elaborate designs.
DONE - have created the structure for plots. Plots are simply a random number from which you get a set of quests and a wilderness file. If the quests are written with a story in mind - this works great.
DONE - abuse of quest levels has been solved. You could go in a quest, get all the treasure, kill all but one creature, leave, and then do it again. Now, Kangband keeps track of who is killed and what is taken. If you grab treasure or kill a monster on any trip to a quest, there won't be treasure the next time. Also, if you kill two rogues out of three, leave, and then come back - there will only be one left.
DONE - allow other characters to get restoration from temple. (for a fee)
DONE - implement the questor2 flag so that uniques placed in quest level are not generated elsewhere before the quest level. [this is defined in defines.h - not attached to any uniques yet since they are not in a quest yet] code is not included yet.
DONE - use questitem flag on artifacts that are included in quests so they do NOT get generated in the dungeon or elsewhere. [this flag has been defined in defines.h and added to sting in a_info.txt] code is not included yet
DONE - Add druid and grove of the druids. (Class and building added but no refined yet)
DONE - Add boots of levitation which give player FLY attribute for going over deep water and deep lava (but only if fire resistant)
DONE - want to include a spell which can summon creatures to fight for spellcaster. See kamband code regarding pets.
DONE- spell to allow illusionist or mage to walk through non-perm walls? The illusionist has the shadowform spell.
DONE- mage should see all spells - no illegibles. Same with illusionist
DONE - Add more spells to fill up books. Still don't like spells showing "illegible" for mages. I know they are rogue spells but a mage should be able to read anything. Spellbooks are now full and mages/ill/priest/druid can read all spells/prayers.
DONE- set default settings for the options to a state I normally use.
DONE- document needed on how to add quests using q and v_info.txt. Also include sample, define what the road types are, etc.
DONE- change the streamers. shallow water and lava to fit in walls. but deep water and deep lava can go
DONE past walls. Also, first random chance of shallow. Then , IF shallow water, random chance of also having deep water. same w/ lava. don't always want to have both. Also, make rarer chance to occur.
DONE- change the costs in buildings to reflect other costs. i.e. identify in library should cost more than the potion. Now, costs $2000.
DONE- fix odds in in-between so player do not have edge.
DONE- fix rest of game with how many command. works in stores but not for destroy, etc.
DONE- larger quest levels - i.e. volcano too small
DONE- bigger, better looking lake on wilderness level.
DONE- save spells.doc in a more universal format.
DONE- create file with list of bug fixes.
DONE- more vaults. may borrow from other variants. Added vaults from Zangband as well as creating some of my own using terrains.
DONE - Research monsters needs to be implemented and available in the library for a fee. Update: added beastmaster door but the research monster function is not written. STATUS: works in beastmaster, will not be included in library.
DONE - quest type 5 where you have to clear out a level is not working right. it works but if by chance the level is generated with a "pack" of creatures such as wolves then the number needed no longer matches. The same goes for breeders. WANT to check if there are monsters still alive after each kill. If the check is 0, THEN the quest is completed. No longer need to store the number to kill for quest types 5. In other words, num_mon would disappear. DONE need to differ quest 5. 5 could be "kill 6 monsters in the sewer - where 6 is the value in q_info" Quest 6 could be "kill all monsters in sewer" where a routine would be needed to check if any creatures exist (this would fix groups of monsters, breeders tc.)
DONE - when place monster, stairs from quest - place at least x amount from player. Look at existing code.
DONE (for now) - Examine other 2.8.1 variants to see if there are good ideas to borrow. Maybe PSIAngband, Zangband, Jangband features?...
DONE - restock stores after resting in inn.
DONE - Keep kill monsters quests BUT do not allow rare creatures.
DONE - beast master of all monster lore - can pay to learn (would be recommended for tarrasque)
DONE - could visit the normally restricted other buildings and request some services for fees. i.e. visit fighters hall and get armor repaired for a fee. But, only get access if high enough level. Also let them see lists of high scores.
DONE - in race_legends, your char shows on screen through all races instead of just the appropriate one - need to fix this.
DONE - changed the quest code so that artifacts and unique are not generated if they have already been found/killed.
DONE - more items? vampiric weapons (zangband) anyone? Have added the following weapon attributes: vampiric, chaotic, sharp(vorpal), and force (balls of force). Also added boots of levitation for crossing terrains.
DONE - weapon of force? Would do damage to main creature plus extra force damage to creatures around it and it.
DONE - No trap doors allowed on quest levels - needs to be fixed.