Feature request: add Teleport Self to MB7 (Mordy's)
Collapse
X
-
weren't there a couple of huge discussions some time ago about merging priest and mage spellbooks, removing useless spells, changing the nature of elemental spells to have more meaningful secondary effects, artifact/element-proof spellbooks etc?
I can't seem to find the threads anymore though - there were some really good/interesting points, it might be worth to look at them again if someone can find themMy first winner! http://angband.oook.cz/ladder-show.php?id=8681
And my second! http://angband.oook.cz/ladder-show.php?id=8872
And the third! http://angband.oook.cz/ladder-show.php?id=9452
And the fourth! http://angband.oook.cz/ladder-show.php?id=10513
And the fifth! http://angband.oook.cz/ladder-show.php?id=10631
And the sixth! http://angband.oook.cz/ladder-show.php?id=10990Comment
-
The following is a description of what I would do if I was tasked to redesign the spellbook implementation from the ground up. (it is *not* a volunteering to do this, even if I did have the requisite skills) I apologize for the length, I'm not expecting anyone to read it, it's more for me to put down the thoughts in my head into writing.
First the goals:
Goal 1: Bring the randomization to the order you gain spells
Goal 2: Bring randomization to what spells you might decide to use in a game
Goal 3: Keep the player interface as simple as possible
Goal 4: Keep the number of inventory slots possibly devoted to spell books about equal to current. Some games will be more, some less.
Now the steps:
1: Assign each spell a) a level (can already use the spell levels), b) a number identifier (more on this later) c) a rarity.
2: Combine mb1 and pb1 into one book, all non-warriors start with this book, and it's available to buy in town. This is the only book that has a set spell-set. For drop purposes, it is treated as a different item than a dugneon created "spellbook"
3: Rework the casting interface so that when you hit m (or p) you are presented with a list of all the spells you can currently cast. These spells have are identified by a number representing "realm" (attack - single monster, attack - area, attack - monster status, buff, escape, detection, healing, other) and a letter for the spell. In this case something like m1a will *always* cast magic missile if it's in any of your spell books. This is important if randomized spell books are ever implemented in any form.
4: When a "spellbook" is generated in the dungeon it is randomly filled with spells using the algorithm described below. The spellbook is given a random name much in the same way that scrolls are named.
5: All spellbooks that contain a spell with level depth greater than a certain level are automatically immune to the elements.
5a: One of the stores can fireproof a spellbook for a cost. I don't know what the cost should be. This is important because of the randomized spellbooks, you can no longer stack books in slots since every book is different (excepting the first one)
6: Add many advanced versions of spells that are 10-20 times, and 100-400 times as rare as the original spell. An example would be a frost bolt spell that costs the same SP but does 3/2 the damage and is 20 times rarer. A 3rd tier frost bolt could do twice the damage and be 400 times rarer. The idea being that you could get a very powerful bolt spell just like you can find a very powerful weapon. Other effects would be increased radii for detection or increased duration/effects for buffs.
First attempt at a spellbook filling algorithm. I'm not familiar at all with coding in C, I mostly code in languages for data analysis. These languages are very array heavy, so I'm going to be using arrays in my algorithm
For algorithm examples we'll use spell levels as the level you can cast the spell*2. I'll call this SP_LEVEL
When a spellbook is created it is given a level value. This can either be based entirely on the level it was created on, or something else. I'll call this MB_LEVEL and for now we'll use the level it was found on * 6
First generate a list of all spells available for the class.
Generate an array and populate it with these spells, weighted according to rarity. Common spells have more entries. OoD spells (SP_LEVEL > MB_LEVEL/6 ) have a rarity penalty, and may be absent from the array altogether. Example: you cannot find Mana storm or Mass Banishment at dlevel 1 or even dlevel 40.
start SP_LEVEL_SUM at 0
start SP_COUNTER at 0
Generate a random number from 1 to the length of the array.
Check to see if the spell is already in the book, if it is, generate a new number.
If not add that spell to the book.
Increase SP_LEVEL_SUM by SP_LEVEL of the added spell
Increase SP_COUNTER by 1
If SP_LEVEL_SUM > MB_LEVEL then the book is complete
If SP_COUNTER = 8 (or 9 maybe) then the book is complete
If neither of these, go back to generating a new number.
Reorder the book so that it's in SP_LEVEL order.
You may need to add a condition in so that it stops looking for spells if there aren't any more. That might be a problem on the early levels. You don't want it generating a strong frost-bolt spell just because there aren't any other spells available to fill the book. OTOH, these rarer spells can have higher SP_LEVELs in which case it wouldn't matter all that much.
I might edit this post tomorrow if other things come to my mind later, or post an addendum.Comment
-
I like these ideas. Although I probably wouldn't use it for DJA and don't play V much anymore so I guess I shouldn't have much say.
Would the random books chose from a different list of spells for the two spell realms?
I don't like the idea of all spellcasters having the same set of spells.Will_Asher
aka LibraryAdventurer
My old variant DaJAngband:
http://sites.google.com/site/dajangbandwebsite/home (defunct and so old it's forked from Angband 3.1.0 -I think- but it's probably playable...)Comment
-
I like these ideas a lot, too! The mechanic is cool, and the interface change would solve a long-standing UI issue (you need to manually inscribe books and use m+number, otherwise all the keys change when spellbook letters do).--
Dive fast, die young, leave a high-CHA corpse.Comment
-
Regarding the original topic, I think that picking which spellbooks to carry even if it's for one spell is part of itemization and balancing your backpack space with utility.A(3.1.0b) CWS "Fyren_V" NEW L:50 DL:127 A++ R+++ Sp+ w:The Great Axe of Eonwe
A/FA W H- D c-- !f PV+++ s? d P++ M+
C- S+ I- !So B ac++ GHB? SQ? !RQ V F:Comment
Comment