diff --git a/stratagems/doc/readme-stratagems.html b/stratagems/doc/readme-stratagems.html
index 2ee4f1dc..18714409 100644
--- a/stratagems/doc/readme-stratagems.html
+++ b/stratagems/doc/readme-stratagems.html
@@ -32,7 +32,7 @@
A Gibberlings Three Mod
Author: DavidW
-
Version 35.2
+
Version 35.3
Languages: English, French, German, Italian, Polish, and Russian
Platforms: Windows, Linux (Enhanced Edition only), Mac OS X (Enhanced Edition only)
Sword Coast Stratagems (SCS
@@ -2210,7 +2210,7 @@ Override files
Fixed a few text typos.
- Version 35.2 (xx)
+ Version 35.2 (11th December 2023)
- Updated Russian translation (thanks, RealApxu).
- Improved compatibility with some mods (like Artisan's Kitpack and Shadow Magic) that use the ClassSpellTools function to add new spells.
@@ -2230,6 +2230,12 @@ Override files
+ Version 35.3 (12th December 2023)
+
+ - Fixed some glitches in the 'Wider availability of wizard spell scrolls in Icewind Dale' component.
+
+
+
diff --git a/stratagems/iwdscroll/iwdscroll.tpa b/stratagems/iwdscroll/iwdscroll.tpa
index f69742c4..dffc7609 100644
--- a/stratagems/iwdscroll/iwdscroll.tpa
+++ b/stratagems/iwdscroll/iwdscroll.tpa
@@ -37,7 +37,7 @@ DEFINE_ACTION_FUNCTION iwdscroll BEGIN
END
ACTION_IF !VARIABLE_IS_SET $common_spells("%ids%") BEGIN
OUTER_SET $rare_spells("%ids%")= "%ids%_LEVEL"
- END
+ END
END
END
END
@@ -104,26 +104,44 @@ DEFINE_ACTION_FUNCTION iwdscroll BEGIN
1 BEGIN
OUTER_SET $orrick_1("%spell%")=RANDOM (2 4)
OUTER_SET $edion_1("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_1("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_1("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_1("%spell%")=RANDOM (0 1)
END
2 BEGIN
OUTER_SET $orrick_2("%spell%")=RANDOM (2 4)
OUTER_SET $edion_2("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_2("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_2("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_2("%spell%")=RANDOM (0 1)
END
3 BEGIN
OUTER_SET $orrick_3("%spell%")=RANDOM (1 3)
OUTER_SET $edion_3("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_3("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_3("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_3("%spell%")=RANDOM (0 1)
END
4 BEGIN
OUTER_SET $orrick_4("%spell%")=RANDOM (1 3)
OUTER_SET $edion_4("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_4("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_4("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_4("%spell%")=RANDOM (0 1)
END
5 BEGIN
OUTER_SET $orrick_5("%spell%")=RANDOM (1 2)
OUTER_SET $edion_5("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_5("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_5("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_5("%spell%")=RANDOM (0 1)
END
6 BEGIN
OUTER_SET $orrick_6("%spell%")=RANDOM (1 2)
OUTER_SET $edion_6("%spell%")=RANDOM (0 1)
+ OUTER_SET $kieran_6("%spell%")=RANDOM (0 1)
+ OUTER_SET $bandoth_6("%spell%")=RANDOM (0 1)
+ OUTER_SET $nym_6("%spell%")=RANDOM (0 1)
END
DEFAULT
END
@@ -385,21 +403,23 @@ BEGIN
COPY_EXISTING "%store%.sto" override
PHP_EACH sorted_array AS spell=>number BEGIN
SPRINT scroll EVAL "%%spell%_SCROLL%"
- PATCH_MATCH "%number%" WITH
- 1 BEGIN
- ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #1
- END
- 2 BEGIN
- ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #2
- END
- 3 BEGIN
- ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #3
- END
- 4 BEGIN
- ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #4
+ PATCH_IF FILE_EXISTS_IN_GAME "%scroll%.itm" BEGIN
+ PATCH_MATCH "%number%" WITH
+ 1 BEGIN
+ ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #1
+ END
+ 2 BEGIN
+ ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #2
+ END
+ 3 BEGIN
+ ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #3
+ END
+ 4 BEGIN
+ ADD_STORE_ITEM "%scroll%" LAST #0 #0 #0 NONE #4
+ END
+ DEFAULT
+ END
END
- DEFAULT
- END
END
BUT_ONLY
END
diff --git a/stratagems/lua/ui_spell_system.tph b/stratagems/lua/ui_spell_system.tph
index 421f3d1e..ac44c554 100644
--- a/stratagems/lua/ui_spell_system.tph
+++ b/stratagems/lua/ui_spell_system.tph
@@ -323,7 +323,7 @@ BEGIN
REPLACE_TEXTUALLY "," " " // we allow comma-separated lists as well as space-separated lists as input
END
OUTER_SPRINT data ""
- OUTER_WHILE "%list%" STRING_COMPARE "" BEGIN
+ OUTER_WHILE "%list%" STRING_CONTAINS_REGEXP "^ *$" BEGIN
LAF return_first_entry STR_VAR list RET entry list END
ACTION_IF !silent && !VARIABLE_IS_SET $spell_lists("%entry%") BEGIN
WARN "You are trying to assign spell list %entry%, but it does not exist."
diff --git a/stratagems/setup-stratagems.tp2 b/stratagems/setup-stratagems.tp2
index b7c78eff..1d5111ec 100644
--- a/stratagems/setup-stratagems.tp2
+++ b/stratagems/setup-stratagems.tp2
@@ -1,7 +1,7 @@
BACKUP ~weidu_external/backup/stratagems~
AUTHOR ~For help troubleshooting installation problems, go to the Sword Coast Stratagems forum at forums.gibberlings3.net.~
//MODDER setup_tra none area_variables none missing_extern none missing_resref none ict2_actions none missing_eval none overwriting_file none fun_args warn
-VERSION ~35.2~
+VERSION ~35.3~
README ~stratagems/doc/readme-stratagems.html~
AUTO_EVAL_STRINGS