diff --git a/doc/fixes3-7-0.txt b/doc/fixes3-7-0.txt index 03f119fee..b2f4651bb 100644 --- a/doc/fixes3-7-0.txt +++ b/doc/fixes3-7-0.txt @@ -2024,6 +2024,8 @@ eating a pyrolisk egg on the floor triggered an "object lost" panic core object creation and the curses interface's window handling both became confused by the 'pauper' option/conduct because they assumed that invent being Null meant that the game hadn't started yet +wizards were discovering unread spellbooks whenever any skill was advanced; do so + only when a spell skill is advanced Fixes to 3.7.0-x Platform and/or Interface Problems Exposed Via git Repository diff --git a/src/weapon.c b/src/weapon.c index d34d9eb89..e10c456fa 100644 --- a/src/weapon.c +++ b/src/weapon.c @@ -1148,7 +1148,11 @@ skill_advance(int skill) P_SKILL(skill) >= P_MAX_SKILL(skill) ? "most" : "more", P_NAME(skill)); - skill_based_spellbook_id(); + /* wizards discover spellbook IDs depending on spell 'school' skill limits; + this allows them to successfully write books for unknown spells without + the Luck bias they used to have over other roles */ + if (skill >= P_FIRST_SPELL && skill <= P_LAST_SPELL) + skill_based_spellbook_id(); } static const struct skill_range {