Ticket #798 (closed bug: invalid)
Randart todo list
| Reported by: | magnate | Owned by: | magnate |
|---|---|---|---|
| Milestone: | Keywords: | items | |
| Cc: |
Description (last modified by magnate) (diff)
This ticket is to keep track of randart development. Everyone who plays with randarts can contribute - even if you die without finding any artifacts, you can now print the artifact spoiler on death and see what you could have won, and flag up anything that looks wrong.
Fixes in r1248 and later:
1. Damage on melee weapons is checked at the end of generation and boosted if too low. Very few weapons now end up with +dam below 10 (and they usually have a ton of other mods).
2. Added supercharge opportunity for +3 blows.
3. Rarity calculation fixed to accommodate change to k_ptr->alloc_prob. Rarities now less out of whack (but still need overhauling).
4. Fixed a bug which prevented generation of normal and fur cloaks.
5. Added power term for resist fear, which was missing for a mere seven years.
6. Added a hack to prevent aggravation except on cursed or endgame-quality randarts (e.g. Gorlim or Doomcaller, but nothing in between), as per discussion on Oook. There are now about half as many aggravators in a randart set as in the standard set.
7. Added the ability to generate blows, shots, brands and slays on nonweapons, but very rarely. Launchers can also get brands/slays.
8. Added power terms for multiple sustains or resists, and for activations and ignore flags.
9. Fixed a bug where standard artifacts ended up with random names if the option was changed during character creation (#833).
10. Finally added random activations, eight years late. Randart DSMs keep their base activation if they don't get a random one, so they will always activate for something. Light sources keep their normal activation.
11. Base items are chosen by cumulative frequency table, like the abilities. This doesn't make much practical difference, but it's both more faithful to artifact.txt and copes better with new object kinds than the hard-coded tables.
Outstanding bugs to fix:
none known
To do (3.2 onwards):
a. New algorithms for calculating depth and rarity of the finished randarts in proportion with power.
b. Re-work cursed items so that the Palantir turns into more attractive randarts (also Doomcaller, Gothmog, Wormtongue et al.). N.B. Gorlim currently gets a positive power rating, and is therefore regenerated as a very weak but not cursed artifact. This work is waiting on the more general overhaul of curses.
c. Calculate values for resists, sustains, SI, FA and hold life based on monster power (but see #869).
d. Rewrite obj-power.c to make power slot-dependent (e.g. LITE is worth much more on light sources than on anything else, and damage-boosting mods on launchers are worth more than on other items).
e. Have another go at linking power and weight in conjunction with #951
f. Track each sustain separately, and track multiple sustains so that they appear as often as in the standard set. This is part of the full rewrite of randart.c where all the special cases are abstracted into a big table (i.e. we stop tracking "how many helms have telepathy" and we simply track every ability on every tval).
