From fbb96bd1ed76c35455d601ec8e976c5296e4d55e Mon Sep 17 00:00:00 2001 From: JayH Date: Fri, 24 Jan 2025 09:10:29 -0700 Subject: [PATCH 1/7] Fix Former Student part III reward not triggering Had to do full surgery on this quest to understand it. The ending depended on a "click item" trigger that DFU didn't interpret the same as classic. Changed that mechanic (see "_takemageitem_" task), tested and it works properly now. --- Assets/StreamingAssets/Quests/S0000503.txt | 261 ++++++++++----------- 1 file changed, 118 insertions(+), 143 deletions(-) diff --git a/Assets/StreamingAssets/Quests/S0000503.txt b/Assets/StreamingAssets/Quests/S0000503.txt index f84aefd13e..1106c2bc08 100644 --- a/Assets/StreamingAssets/Quests/S0000503.txt +++ b/Assets/StreamingAssets/Quests/S0000503.txt @@ -1,10 +1,5 @@ --- Quest: C:\QUESTS\WORKING\S0000503.Qbn. --- Main story quest. --- QuestId: 503 -Messages: 72 Quest: S0000503 DisplayName: Former Student Part III --- Message panels QRC: Message: 1020 @@ -30,7 +25,7 @@ Message: 1023 %qdt: We have retrieved the map. I have offered to go to ___keydung_ - to find a special _key_ which we + to find a special _holydagger_ which we need to enter ___itemdung_. I will meet _rebel_ back in _tavern_ in =keytime_ days. @@ -54,7 +49,7 @@ Message: 1042 For some time now, I have been searching for the location of ___itemdung_, reputedly the resting place of a hoard of magical objects, - including one _item_ that I need for my own + including one _magicreward0_ that I need for my own purposes -- another story for another time. The issue at hand is that I have learned that the Mages Guild of __magesguild_ has come @@ -83,8 +78,8 @@ QuestTimeLapse: [1045] Message: 1046 Very well. ___itemdung_ cannot be entered without - the key, a _key_ which I have learned is somewhere - in ___keydung_. Once you get the _key_, meet me + the key, a _holydagger_ which I have learned is somewhere + in ___keydung_. Once you get the _holydagger_, meet me in _tavern_ in __tavern_, say, in =keytime_ days. Message: 1047 @@ -95,10 +90,10 @@ Message: 1047 ___itemdung_. Good luck! Message: 1050 - This must be the _key_, the key to ___itemdung_. + This must be the _holydagger_, the key to ___itemdung_. Message: 1051 - With this _key_ in our possession, we are ready to + With this _holydagger_ in our possession, we are ready to brave ___itemdung_. Lead on, my friend! Message: 1052 @@ -108,14 +103,14 @@ Message: 1052 Message: 1053 You are too late, _rebel_! It was a simple matter to follow you to ___itemdung_, once - you had found the _key_ for me. The _item_ + you had found the _holydagger_ for me. The _magicreward0_ is now mine, and mine alone! Message: 1054 "Well, friend %pcf, an enjoyable little jaunt - eh? I'll take the _item_ and be on my way." + eh? I'll take the _magicreward0_ and be on my way." - Do you give the _item_ to _rebel_? + Do you give the _magicreward0_ to _rebel_? Message: 1055 Until next time! @@ -141,218 +136,198 @@ Message: 1071 I'm afraid I'll have to leave you now. - --- Symbols used in the QRC file: --- --- %g3 occurs 1 time. --- %pcf occurs 2 times. --- %qdt occurs 4 times. --- =keytime_ occurs 7 times. --- ____tavern_ occurs 3 times. --- ___itemdung_ occurs 14 times. --- ___keydung_ occurs 2 times. --- __magesguild_ occurs 4 times. --- __tavern_ occurs 5 times. --- _item_ occurs 8 times. --- _key_ occurs 7 times. --- _rebel_ occurs 14 times. --- _tavern_ occurs 10 times. - QBN: Item _letter_ letter -Item _item_ magic_item Item _map_ letter used 1030 -Item _I.03_ magic_item -Item _I.04_ magic_item -Item _I.05_ gold -Item _key_ item class 10 subclass 11 +Item _magicreward0_ magic_item +Item _magicreward1_ magic_item +Item _magicreward2_ magic_item +Item _goldreward_ gold +Item _holydagger_ item class 10 subclass 11 Person _rebel_ face 1 named Baltham_Greyman Person _dummy_ face 249 group Spellcaster remote Place _tavern_ remote tavern ---Place aide remote dungeon Place _magesguild_ remote magery Place _itemdung_ remote dungeon Place _keydung_ remote dungeon -Place _L.05_ remote dungeon - -Clock _S.00_ 1.00:00 -Clock _S.02_ 30.00:00 0 flag 1 range 0 1 -Clock _S.10_ 00:00 0 flag 1 range 0 2 -Clock _S.11_ 00:01 +Place _teleportdungeon_ remote dungeon + +Clock _giveletter_ 62.00:00 97.00:00 +-- I temporarily set this to 1 day for debug purposes and forgot to return it. +-- 62 to 97 is the correct timer +Clock _30days_ 30.00:00 +-- they had to intend 30 specific days for some reason I don't know +Clock _firstbalthamtimer_ 00:00 0 flag 1 range 0 2 +Clock _stuntimer_ 00:01 Clock _keytime_ 00:00 0 flag 1 range 0 5 -Clock _S.21_ 6.22:40 0 flag 1 range 0 1 -Clock _S.31_ 00:00 0 flag 17 range 0 2 +Clock _sixdays_ 6.22:40 0 flag 1 range 0 1 +Clock _secondbalthamtimer_ 00:00 0 flag 17 range 0 2 Foe _guards_ is 3 Mage Foe _guardian_ is Battle_mage -Foe _F.03_ is Mage +Foe _balthamenemy_ is Mage -- Quest start-up: - start timer _S.00_ - give item _I.05_ to _guardian_ - give item _I.04_ to _guardian_ - give item _I.03_ to _guardian_ - give item _item_ to _guardian_ - pc at _magesguild_ set _S.04_ - pc at _itemdung_ set _S.16_ + start timer _giveletter_ + give item _goldreward_ to _guardian_ + give item _magicreward2_ to _guardian_ + give item _magicreward1_ to _guardian_ + give item _magicreward0_ to _guardian_ + pc at _magesguild_ set _inmagery_ + pc at _itemdung_ set _indungeon_ _map_ used do _readmap_ place foe _guardian_ at _itemdung_ + have _magicreward0_ set _takemageitem_ -_S.00_ task: +_giveletter_ task: place item _map_ at _magesguild_ - start timer _S.02_ - have _letter_ set _S.01_ + start timer _30days_ + have _letter_ set _haveletter_ give pc _letter_ notify 1070 -_S.01_ task: +_haveletter_ task: take _letter_ from pc log 1020 step 0 place npc _rebel_ at _tavern_ restore _rebel_ -variable _S.02_ -_S.03_ task: +variable _30days_ +_clickbaltham_ task: clicked npc _rebel_ - start task _S.18_ + start task _firstprompt_ -variable _S.04_ -_S.05_ task: - clicked item _item_ +_firstprompt_ task: + prompt 1040 yes _acceptquest_ no _target_ -_S.06_ task: - when _S.21_ and not _S.19_ - when _S.02_ and not _S.08_ +_atimerhasended_ task: + when _sixdays_ and not _journeytodungeon_ + when _30days_ and not _acceptquest_ -variable _S.07_ -_S.08_ task: - start timer _S.10_ +_acceptquest_ task: + start timer _firstbalthamtimer_ log 1021 step 1 say 1042 add _rebel_ face hide npc _rebel_ - stop timer _S.02_ + stop timer _30days_ _target_ task: say 1041 remove log step 0 --log message would stay in journal without this -variable _S.10_ -_S.11_ task: +variable _firstbalthamtimer_ +_stuntimer_ task: say 1044 restrain foe _guards_ -_S.12_ task: - when _S.32_ and not _S.04_ +_clickmap_ task: + clicked item _map_ + create foe _guards_ every 0 minutes 1 times with 100% success + start timer _stuntimer_ + say 1043 + +variable _inmagery_ + +_offersidequest_ task: + when _clickmap_ and not _inmagery_ start timer _keytime_ - prompt 1045 yes _spouse_ no _S.14_ + prompt 1045 yes _acceptsidequest_ no _rejectsidequest_ drop _rebel_ face change repute with _dummy_ by -15 - stop timer _S.10_ + stop timer _firstbalthamtimer_ + stop timer _stuntimer_ + +_keytime_ task: + start timer _sixdays_ + place npc _rebel_ at _tavern_ + restore _rebel_ -_spouse_ task: - place item _key_ at _keydung_ +_acceptsidequest_ task: + place item _holydagger_ at _keydung_ reveal _keydung_ log 1023 step 2 say 1046 restore _rebel_ -_S.14_ task: +_rejectsidequest_ task: log 1022 step 2 say 1047 - clear _S.03_ + clear _clickbaltham_ -_house1_ task: - clicked item _key_ +_clickdagger_ task: + clicked item _holydagger_ say 1050 - clear _S.03_ + clear _clickbaltham_ -_S.16_ task: - have _key_ set _S.25_ +_indungeon_ task: + have _holydagger_ set _havedagger_ -_keytime_ task: - start timer _S.21_ - place npc _rebel_ at _tavern_ - restore _rebel_ - -_S.18_ task: - prompt 1040 yes _S.08_ no _target_ - -_S.19_ task: - when _S.03_ and _house1_ and _spouse_ - when _S.14_ and _S.03_ - start timer _S.31_ +_journeytodungeon_ task: + when _clickbaltham_ and _clickdagger_ and _acceptsidequest_ + when _rejectsidequest_ and _clickbaltham_ + start timer _secondbalthamtimer_ stop timer _keytime_ say 1051 hide npc _rebel_ add _rebel_ face --there's still a lingering bug here that I can't figure out. If you do the S.14 route, Baltham's sprite will remain visible at this point. I don't know why. - -variable _S.20_ -variable _S.21_ -_S.22_ task: - when _S.31_ and not _S.30_ - when _S.10_ and not _S.12_ +variable _sixdays_ +_timeisup_ task: + when _secondbalthamtimer_ and not _finaldecision_ + when _firstbalthamtimer_ and not _offersidequest_ say 1071 _readmap_ task: reveal _itemdung_ -_S.24_ task: - when _S.16_ and not _S.25_ - reveal _L.05_ +_teleporttrap_ task: + when _indungeon_ and not _havedagger_ + reveal _teleportdungeon_ say 1052 - teleport pc to _L.05_ - unset _S.24_ + teleport pc to _teleportdungeon_ + unset _teleporttrap_ -variable _S.25_ +variable _havedagger_ _hitguardian_ task: injured _guardian_ say 1053 -_S.27_ task: - killed 1 _guardian_ - -_S.28_ task: - take _item_ from pc +_removefirstreward_ task: + take _magicreward0_ from pc say 1055 -_S.29_ task: - create foe _F.03_ every 0 minutes 1 times with 100% success +_defendfirstreward_ task: + create foe _balthamenemy_ every 0 minutes 1 times with 100% success say 1056 - make _item_ permanent + make _magicreward0_ permanent + +variable _takemageitem_ -_S.30_ task: - when _S.05_ and not _S.16_ - prompt 1054 yes _S.28_ no _S.29_ +_finaldecision_ task: + when _takemageitem_ and not _indungeon_ + prompt 1054 yes _removefirstreward_ no _defendfirstreward_ drop _rebel_ face -variable _S.31_ -_S.32_ task: - clicked item _map_ - create foe _guards_ every 0 minutes 1 times with 100% success ---sometimes this would delay much, and spawn after fast travel + pacify message - start timer _S.11_ - say 1043 +variable _secondbalthamtimer_ -_S.33_ task: - when _S.06_ or _S.22_ or _S.31_ or _S.28_ - make _I.05_ permanent - make _I.04_ permanent - make _I.03_ permanent +_finalend_ task: + when _atimerhasended_ or _timeisup_ or _secondbalthamtimer_ or _removefirstreward_ + make _goldreward_ permanent + make _magicreward2_ permanent + make _magicreward1_ permanent end quest -_S.34_ task: - when _S.19_ and _S.14_ - get item _key_ - -_S.35_ task: - killed _F.03_ - make _I.05_ permanent - make _I.04_ permanent - make _I.03_ permanent - end quest ---otherwise quest would hang on until end of final timer \ No newline at end of file +_afreedagger_ task: + when _journeytodungeon_ and _rejectsidequest_ + get item _holydagger_ + +_endofbaltham_ task: + killed _balthamenemy_ + make _goldreward_ permanent + make _magicreward2_ permanent + make _magicreward1_ permanent + end quest \ No newline at end of file From fdc75a239f1d3b882000bda55a492c679dc1eb93 Mon Sep 17 00:00:00 2001 From: JayH Date: Fri, 24 Jan 2025 09:12:36 -0700 Subject: [PATCH 2/7] Formatting fixes Former Student III --- Assets/StreamingAssets/Quests/S0000503.txt | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Assets/StreamingAssets/Quests/S0000503.txt b/Assets/StreamingAssets/Quests/S0000503.txt index 1106c2bc08..fe2be0b939 100644 --- a/Assets/StreamingAssets/Quests/S0000503.txt +++ b/Assets/StreamingAssets/Quests/S0000503.txt @@ -219,9 +219,6 @@ _target_ task: --log message would stay in journal without this variable _firstbalthamtimer_ -_stuntimer_ task: - say 1044 - restrain foe _guards_ _clickmap_ task: clicked item _map_ @@ -229,6 +226,10 @@ _clickmap_ task: start timer _stuntimer_ say 1043 +_stuntimer_ task: + say 1044 + restrain foe _guards_ + variable _inmagery_ _offersidequest_ task: @@ -239,6 +240,7 @@ _offersidequest_ task: change repute with _dummy_ by -15 stop timer _firstbalthamtimer_ stop timer _stuntimer_ +--added stop stuntimer here, otherwise it could trigger when irrelevant _keytime_ task: start timer _sixdays_ From a2f28f934696025e75c7d75e7b282f112babcdf6 Mon Sep 17 00:00:00 2001 From: JayH Date: Fri, 24 Jan 2025 09:36:39 -0700 Subject: [PATCH 3/7] Adds death timer to Former Student III This SHOULD be the last fix, sorry. Prevents enemy corpse from disappearing at quest end, to allow you to loot it. --- Assets/StreamingAssets/Quests/S0000503.txt | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/Assets/StreamingAssets/Quests/S0000503.txt b/Assets/StreamingAssets/Quests/S0000503.txt index fe2be0b939..6f2637980a 100644 --- a/Assets/StreamingAssets/Quests/S0000503.txt +++ b/Assets/StreamingAssets/Quests/S0000503.txt @@ -164,6 +164,7 @@ Clock _stuntimer_ 00:01 Clock _keytime_ 00:00 0 flag 1 range 0 5 Clock _sixdays_ 6.22:40 0 flag 1 range 0 1 Clock _secondbalthamtimer_ 00:00 0 flag 17 range 0 2 +Clock _deathtimer_ 0:10 Foe _guards_ is 3 Mage Foe _guardian_ is Battle_mage @@ -222,10 +223,14 @@ variable _firstbalthamtimer_ _clickmap_ task: clicked item _map_ - create foe _guards_ every 0 minutes 1 times with 100% success start timer _stuntimer_ say 1043 +_spawnguards_ task: + when _clickmap_ and _inmagery_ + create foe _guards_ every 0 minutes 1 times with 100% success +-- ensures guards can only spawn inside the guild + _stuntimer_ task: say 1044 restrain foe _guards_ @@ -313,6 +318,10 @@ _finaldecision_ task: when _takemageitem_ and not _indungeon_ prompt 1054 yes _removefirstreward_ no _defendfirstreward_ drop _rebel_ face + remove log step 0 + remove log step 1 + remove log step 2 +-- needed to add remove-log actions due to new deathtimer task, see below variable _secondbalthamtimer_ @@ -332,4 +341,9 @@ _endofbaltham_ task: make _goldreward_ permanent make _magicreward2_ permanent make _magicreward1_ permanent - end quest \ No newline at end of file + start timer _deathtimer_ + +_deathtimer_ task: + end quest +-- this is necessary due to a change near DFU 1.0 to make corpses disappear at quest end. +-- this delay allows player to loot corpse. \ No newline at end of file From 4dc8e9140c132909b34da5d798390dc44183fad8 Mon Sep 17 00:00:00 2001 From: JayH Date: Tue, 4 Mar 2025 15:09:40 -0700 Subject: [PATCH 4/7] Order of events fixed in K0C01Y00 One quest outcome was impossible in this quest, had to move it higher into the quest file and it works now --- Assets/StreamingAssets/Quests/K0C01Y00.txt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/Assets/StreamingAssets/Quests/K0C01Y00.txt b/Assets/StreamingAssets/Quests/K0C01Y00.txt index 8ae186cbb2..f273b95bec 100644 --- a/Assets/StreamingAssets/Quests/K0C01Y00.txt +++ b/Assets/StreamingAssets/Quests/K0C01Y00.txt @@ -246,6 +246,14 @@ _S.10_ task: say 1019 start task _victory_ +_S.13_ task: + toting _gem_ and _qgiver_ clicked + give pc _gold_ + end quest +-- this action was below "pcgetgold" below, and it turns out DFU's order of operations +-- locked out this action because it was later in the quest file. With this move, +-- the toting action works properly and quest can be completed with this. + variable _victory_ _S.11_ task: clicked item _gem_ @@ -263,12 +271,6 @@ _clearclick_ task: when _qgclicked_ and not _victory_ clear _clearclick_ _qgclicked_ -_S.13_ task: - toting _gem_ and _qgiver_ clicked - give pc _gold_ - end quest ---added victory condition here, per message block 1002 - _S.14_ task: when _S.10_ or _S.08_ -or _S.13_ From 47384713b05827c23e69bb4438f6e44ebb0ee366 Mon Sep 17 00:00:00 2001 From: JayH Date: Thu, 6 Mar 2025 18:24:39 -0700 Subject: [PATCH 5/7] Quest updates vol 1, mostly text (Fighters Guild) This is an update based on player feedback. Most of them are changes to dialogue messages only. The gameplay changes are: M0B1XY01: The spawn rate for these enemies was set very high in 2017, and player feedback says they're overwhelming. Reduces to about 1/3 of their previous speed, which is plenty to stay engaged. M0B20Y02: Same as above. M0B00Y16: Changed spawning rate for the six helper giants so they appear every 75 seconds instead of every 6 seconds, due to this being a low-level quest. --- Assets/StreamingAssets/Quests/M0B00Y06.txt | 16 ++++++------- Assets/StreamingAssets/Quests/M0B00Y07.txt | 12 +++++----- Assets/StreamingAssets/Quests/M0B00Y15.txt | 27 ++++++++++++---------- Assets/StreamingAssets/Quests/M0B00Y16.txt | 12 ++++++---- Assets/StreamingAssets/Quests/M0B00Y17.txt | 4 ++-- Assets/StreamingAssets/Quests/M0B1XY01.txt | 10 +++++--- Assets/StreamingAssets/Quests/M0B20Y02.txt | 14 +++++++---- Assets/StreamingAssets/Quests/M0B21Y19.txt | 4 ++-- Assets/StreamingAssets/Quests/M0B30Y03.txt | 2 +- Assets/StreamingAssets/Quests/M0B30Y04.txt | 2 +- Assets/StreamingAssets/Quests/M0B30Y08.txt | 6 ++--- Assets/StreamingAssets/Quests/M0B40Y05.txt | 8 +++---- Assets/StreamingAssets/Quests/M0B50Y09.txt | 2 +- Assets/StreamingAssets/Quests/M0B60Y10.txt | 6 ++--- Assets/StreamingAssets/Quests/M0C00Y11.txt | 10 ++++---- Assets/StreamingAssets/Quests/M0C00Y12.txt | 14 +++++------ Assets/StreamingAssets/Quests/M0C00Y13.txt | 14 +++++------ Assets/StreamingAssets/Quests/M0C00Y14.txt | 8 ++++--- Assets/StreamingAssets/Quests/N0C00Y10.txt | 2 +- 19 files changed, 96 insertions(+), 77 deletions(-) diff --git a/Assets/StreamingAssets/Quests/M0B00Y06.txt b/Assets/StreamingAssets/Quests/M0B00Y06.txt index 931fb0d970..9a44136408 100644 --- a/Assets/StreamingAssets/Quests/M0B00Y06.txt +++ b/Assets/StreamingAssets/Quests/M0B00Y06.txt @@ -17,17 +17,17 @@ QuestorOffer: [1000] It seems a wild animal has gotten into his place. We need someone to go kill the thing. The guild will pay _gold_ gold. - Do you want it %pcn? + Do you want it, %pcn? RefuseQuest: [1001] I'm sure someone else will be willing to take care of - this nuisance bear. + this nuisance animal. AcceptQuest: [1002] "OK, %pcf. Get over to _house_ here in town. Get it done in one day. - Nobody wants a animal left roaming around + Nobody wants an animal left roaming around in their place. Come back here when the beast is dead and I'll have your pay waiting for you." @@ -46,7 +46,7 @@ RumorsPostfailure: [1006] That creature mauled some woman before being chased out of town. What a pity. RumorsPostsuccess: [1007] -The Fighter's Guild killed that bear that got into _house_. It's a good thing we have them around. +The Fighters Guild killed that animal that got into _house_. It's a good thing we have them around. QuestorPostsuccess: [1008] Good job killin' that beast. What can I do for you? @@ -75,19 +75,19 @@ Message: 1014 Message: 1021 You hear a voice call out from an - upper floor, "Its a bear." + upper floor, "It's a bear." Message: 1022 You hear a voice call out from an - upper floor, "Its a harpy." + upper floor, "It's a harpy." Message: 1023 You hear a voice call out from an - upper floor, "Its a spider." + upper floor, "It's a spider." Message: 1024 You hear a voice call out from an - upper floor, "Its a tiger." + upper floor, "It's a tiger." Message: 1080 By the way, since you seemed to have diff --git a/Assets/StreamingAssets/Quests/M0B00Y07.txt b/Assets/StreamingAssets/Quests/M0B00Y07.txt index 14e4560ce4..8e97b8ae7a 100644 --- a/Assets/StreamingAssets/Quests/M0B00Y07.txt +++ b/Assets/StreamingAssets/Quests/M0B00Y07.txt @@ -38,21 +38,21 @@ QuestComplete: [1004] your _gold_ gold. RumorsDuringQuest: [1005] - I hear there's a tiger trapped in - _house_. He's going to have + I hear there's an animal trapped in + _house_. Someone's going to have to pay to get it slain. RumorsPostfailure: [1006] -A tiger killed some poor bloke in his own home. A terrible tragedy. +A beast killed some poor bloke in his own home. A terrible tragedy. RumorsPostsuccess: [1007] -Didn't you kill that rampaging tiger that got into _house_? +Didn't you kill that rampaging animal that got into _house_? QuestorPostsuccess: [1008] -Good going with that tiger. +Good going with that beast. QuestorPostfailure: [1009] -Tigers are tough. Maybe we should start you out with chipmunks. What a putz. +Beasts are tough. Maybe we should start you out with chipmunks. What a putz. QuestLogEntry: [1010] %qdt: diff --git a/Assets/StreamingAssets/Quests/M0B00Y15.txt b/Assets/StreamingAssets/Quests/M0B00Y15.txt index 69065b4ecd..7d5ee5cfe9 100644 --- a/Assets/StreamingAssets/Quests/M0B00Y15.txt +++ b/Assets/StreamingAssets/Quests/M0B00Y15.txt @@ -17,7 +17,7 @@ QuestorOffer: [1000] are willing to take it. Actually, some members prefer these jobs because they pay just as well as the more difficult - ones. A house here in town has infested + ones. A house here in town is infested by giant rodents. The wife claims they are rats, the husband claims they are bats. Either way, they want them gone. @@ -25,47 +25,50 @@ QuestorOffer: [1000] RefuseQuest: [1001] Obviously you have no love for the - Fighter's Guild. I will make sure to + Fighters Guild. I will make sure to tell them what you really think. AcceptQuest: [1002] - The bats have infested _house_. + The animals have infested _house_. Go there and kill them all and you'll get your pay. I can only give you one day to finish this one. QuestComplete: [1004] - Killing bats, even giant ones, + Killing pests, even giant ones, doesn't take much skill, but it pays the same, eh? RumorsDuringQuest: [1005] - Some idiot didn't repair his roof + Some idiot didn't repair her roof for a couple of months. Now she's - got giant bats in her house. + got giant rodents in her house. RumorsPostfailure: [1006] Did you hear about the woman that had to abandon her home? It was - overrun with giant bats and she + overrun with giant rodents and she didn't have enough gold to pay the Fighters Guild to kill them. RumorsPostsuccess: [1007] I heard the Fighters Guild sent some - %ra over to kill the bats in that + %ra over to kill the creatures in that woman's home. Cost her a bundle, but - I suppose its better than abandoning + I suppose it's better than abandoning her home. QuestorPostsuccess: [1008] - So you killed the giant bats. Don't + So you killed the giant rodents. Don't get too full of yourself. They were - only giant bats. + only animals. QuestorPostfailure: [1009] You couldn't even take care of giant - bats. You are hopeless %pcn. + rodents. You are hopeless %pcn. + +-- messages 1002 to 1009 assumed it was bats, even when it +-- could be rats. now is ambiguous term instead. QuestLogEntry: [1010] %qdt: diff --git a/Assets/StreamingAssets/Quests/M0B00Y16.txt b/Assets/StreamingAssets/Quests/M0B00Y16.txt index 1c54f6b47e..193c1a6853 100644 --- a/Assets/StreamingAssets/Quests/M0B00Y16.txt +++ b/Assets/StreamingAssets/Quests/M0B00Y16.txt @@ -48,7 +48,7 @@ RumorsDuringQuest: [1005] RumorsPostfailure: [1006] I'm glad that giant finally moved out of ___mondung_. I guess it got - bored with it's bland diet of villager night after night. + bored with its bland diet of villager night after night. RumorsPostsuccess: [1007] Thank %god _dummy_ finally sent someone to kill that giant @@ -59,12 +59,12 @@ QuestorPostsuccess: [1008] QuestorPostfailure: [1009] In my day, you could get kicked out of - the Fighter's Guild if you couldn't kill + the Fighters Guild if you couldn't kill a simple giant. Times change, I guess. Message: 1020 %qdt: - _questgiver_ of the Fighter's Guild + _questgiver_ of the Fighters Guild of ___questgiver_ has hired me to kill a giant in ___mondung_. I am to report back within =qtime_ days @@ -254,4 +254,8 @@ _giantWaveWhileInDungeon_ task: pc at _mondung_ set _spawnGiants_ _spawnGiants_ task: - create foe _giantFriends_ every 3 minutes 6 times with 50% success \ No newline at end of file + create foe _giantFriends_ every 15 minutes 6 times with 50% success + +-- slowed spawn rate. this is a rank 0 quest, and I recognize that this is only after +-- the giant has been injured, but the previous setup risked +-- a new player getting surrounded by overwhelming spawns in the middle of combat. \ No newline at end of file diff --git a/Assets/StreamingAssets/Quests/M0B00Y17.txt b/Assets/StreamingAssets/Quests/M0B00Y17.txt index 8e9a216b06..c9e41a6fa9 100644 --- a/Assets/StreamingAssets/Quests/M0B00Y17.txt +++ b/Assets/StreamingAssets/Quests/M0B00Y17.txt @@ -54,7 +54,7 @@ QuestComplete: [1004] at heart, wouldn't hurt a fly. Here's your _gold_ gold, just like I promised that nice _questgiver_ - at the Fighter's Guild. + at the Fighters Guild. RumorsDuringQuest: [1005] Did you hear that _dummy_'s tiger escaped again? Killed and @@ -64,7 +64,7 @@ RumorsPostfailure: [1006] _dummy_'s tiger seems to have disappeared for good. Thank %god! RumorsPostsuccess: [1007] - _dummy_ actually hired someone from the Fighter's Guild to go + _dummy_ actually hired someone from the Fighters Guild to go fetch %g3 pet tiger for %g2. What sap would take a silly job like that? QuestorPostsuccess: [1008] diff --git a/Assets/StreamingAssets/Quests/M0B1XY01.txt b/Assets/StreamingAssets/Quests/M0B1XY01.txt index 58a3765b8f..c1a384d64f 100644 --- a/Assets/StreamingAssets/Quests/M0B1XY01.txt +++ b/Assets/StreamingAssets/Quests/M0B1XY01.txt @@ -16,7 +16,7 @@ QuestorOffer: [1000] of flyin' carnivores -- harpies -- who are making a bunch of travelling merchants real nervous. Will _reward_ gold get you - over to ___mondung_ and a + over to ___mondung_ for a little hackin' 'n slashin'? RefuseQuest: [1001] @@ -136,8 +136,12 @@ _qgclicked_ task: _1stparton_ task: end quest -_S.04_ task: - create foe _monster_ every 15 minutes 20 times with 50% success +variable _S.04_ +_spawnmonster_ task: + when _S.04_ and not _mondead_ + create foe _monster_ every 45 minutes 15 times with 25% success +-- this spawn rate was accelerated in 2017, player feedback says it's rather unfair. +-- players need time to heal for several hours amid enemy spawns. _clearclick_ task: when _qgclicked_ and not _mondead_ diff --git a/Assets/StreamingAssets/Quests/M0B20Y02.txt b/Assets/StreamingAssets/Quests/M0B20Y02.txt index 8036469bea..2814211739 100644 --- a/Assets/StreamingAssets/Quests/M0B20Y02.txt +++ b/Assets/StreamingAssets/Quests/M0B20Y02.txt @@ -38,7 +38,7 @@ QuestFail: [1003] QuestComplete: [1004] %oth, them giants didn't know - what him 'em, did they, %pcf? + what hit 'em, did they, %pcf? Here's your _reward_ gold, as promised. RumorsDuringQuest: [1005] @@ -61,7 +61,7 @@ QuestorPostsuccess: [1008] %pcf. You'll go far in the guild. QuestorPostfailure: [1009] - Giants were too much for you huh? + Giants were too much for you, huh? Maybe the guild should have sent you out after pygmies instead. @@ -132,8 +132,14 @@ _pcgetsgold_ task: give pc _reward_ end quest -_S.01_ task: - create foe _monster_ every 15 minutes 15 times with 50% success +variable _S.01_ +-- added the new variable below to ensure monsters stop spawning when you've killed six, as the game says. + +_spawnmonster_ task: + when _S.01_ and not _mondead_ + create foe _monster_ every 45 minutes 15 times with 25% success +-- this spawn rate was accelerated in 2017, player feedback says it's rather unfair. +-- players need time to heal for several hours amid enemy spawns. _mondead_ task: killed 6 _monster_ diff --git a/Assets/StreamingAssets/Quests/M0B21Y19.txt b/Assets/StreamingAssets/Quests/M0B21Y19.txt index 5d8b81a031..39acf0c08a 100644 --- a/Assets/StreamingAssets/Quests/M0B21Y19.txt +++ b/Assets/StreamingAssets/Quests/M0B21Y19.txt @@ -143,7 +143,7 @@ Message: 1041 <---> The Dark Brotherhood has vowed to track down whoever broke into their headquarters in ___darkb_. - I'm sure glad it's not me their after. + I'm sure glad it's not me they're after. Message: 1050 Yes...? Wait, you're that Fighters Guild @@ -156,7 +156,7 @@ Message: 1051 It's a trap! Message: 1052 - Thank you from rescuing me from + Thank you for rescuing me from those assassins. If you could get me to _safehouse_ in __safehouse_, I can make my diff --git a/Assets/StreamingAssets/Quests/M0B30Y03.txt b/Assets/StreamingAssets/Quests/M0B30Y03.txt index 6e32e905f1..dd4cb08085 100644 --- a/Assets/StreamingAssets/Quests/M0B30Y03.txt +++ b/Assets/StreamingAssets/Quests/M0B30Y03.txt @@ -67,7 +67,7 @@ QuestorPostsuccess: [1008] QuestorPostfailure: [1009] Failure is not taken lightly in the - Fighter's Guild. If you couldn't handle + Fighters Guild. If you couldn't handle a Daedroth, you shouldn't have taken the job. I've got better things to do than waste my time talking to you. diff --git a/Assets/StreamingAssets/Quests/M0B30Y04.txt b/Assets/StreamingAssets/Quests/M0B30Y04.txt index 8a9eda921d..d1bfafb4ff 100644 --- a/Assets/StreamingAssets/Quests/M0B30Y04.txt +++ b/Assets/StreamingAssets/Quests/M0B30Y04.txt @@ -90,7 +90,7 @@ Message: 1030 The Fighters Guild of ___questgiver_ has hired me to slay a lich in =1stparton_ days or less. - The liches' lair is a place called + The lich's lair is a place called ___mondung_. Message: 1080 diff --git a/Assets/StreamingAssets/Quests/M0B30Y08.txt b/Assets/StreamingAssets/Quests/M0B30Y08.txt index 9d16c4e3f9..4a25cf68c8 100644 --- a/Assets/StreamingAssets/Quests/M0B30Y08.txt +++ b/Assets/StreamingAssets/Quests/M0B30Y08.txt @@ -21,7 +21,7 @@ QuestorOffer: [1000] RefuseQuest: [1001] Too bad. Normally only the temples get jobs like this. You've passed up a good - one %pcn. + one, %pcn. AcceptQuest: [1002] Her husband is a zombie. He hides out @@ -48,12 +48,12 @@ RumorsPostfailure: [1006] husband was found next to her. RumorsPostsuccess: [1007] - I hear the Fighter's Guild sent some + I hear the Fighters Guild sent some tough over to take care of that zombie. They're a good lot, the guild. QuestorPostsuccess: [1008] - You did well with that zombie %pcn. + You did well with that zombie, %pcn. QuestorPostfailure: [1009] The zombie was too much, huh? Shouldn't diff --git a/Assets/StreamingAssets/Quests/M0B40Y05.txt b/Assets/StreamingAssets/Quests/M0B40Y05.txt index 138bb5c789..b4d66e37f6 100644 --- a/Assets/StreamingAssets/Quests/M0B40Y05.txt +++ b/Assets/StreamingAssets/Quests/M0B40Y05.txt @@ -17,7 +17,7 @@ QuestorOffer: [1000] Seems the monster is attacking them when they are out in the woods logging. Want to take a - hack at it %pcn? + hack at it, %pcn? RefuseQuest: [1001] Fair enough. Run along. I've @@ -106,9 +106,9 @@ Message: 1022 Message: 1023 So the tree creature wants to cut - a deal, eh? Well I suppose I can + a deal, eh? Well, I suppose I can convince the boys to only log the - big trees. But if his kind attack + big trees. But if its kind attack us again, we'll burn every sapling we can find! You've got yourself a deal, %pcn. @@ -116,7 +116,7 @@ Message: 1023 Message: 1025 You worked it so the woodsmen and the spriggan ain't fightin'? Very - clever %pcn. You'll go far if you + clever, %pcn. You'll go far if you keep those wits sharp. Message: 1030 diff --git a/Assets/StreamingAssets/Quests/M0B50Y09.txt b/Assets/StreamingAssets/Quests/M0B50Y09.txt index fada4d9cf3..eebf718cb7 100644 --- a/Assets/StreamingAssets/Quests/M0B50Y09.txt +++ b/Assets/StreamingAssets/Quests/M0B50Y09.txt @@ -53,7 +53,7 @@ RumorsPostsuccess: [1007] Those guys are good to have around. QuestorPostsuccess: [1008] - Well done with the gargoyle %pcn. + Well done with the gargoyle, %pcn. QuestorPostfailure: [1009] That gargoyle killed the merchant. diff --git a/Assets/StreamingAssets/Quests/M0B60Y10.txt b/Assets/StreamingAssets/Quests/M0B60Y10.txt index 4ac9ee4294..04951c8615 100644 --- a/Assets/StreamingAssets/Quests/M0B60Y10.txt +++ b/Assets/StreamingAssets/Quests/M0B60Y10.txt @@ -21,10 +21,10 @@ RefuseQuest: [1001] jobs, like hunting rats. AcceptQuest: [1002] - A young dandy what I have sworn to - keep unnamed, was screwing around + A young dandy that I have sworn to + keep unnamed was screwing around with magic, illegally. Like a melonhead, - he up and conjures an atronach. The + he up and conjured an atronach. The thing's gotta be destroyed before those Mages Guild blokes find out. The thing fled into the depths of ___dungeon_. diff --git a/Assets/StreamingAssets/Quests/M0C00Y11.txt b/Assets/StreamingAssets/Quests/M0C00Y11.txt index e1b0e92541..4ba8a85e00 100644 --- a/Assets/StreamingAssets/Quests/M0C00Y11.txt +++ b/Assets/StreamingAssets/Quests/M0C00Y11.txt @@ -14,7 +14,7 @@ QRC: QuestorOffer: [1000] You can call me _qgiver_. Normally we only give jobs to guild members. - But you show promise %pcn. I tell ya what. + But you show promise, %pcn. I tell ya what. I got a request to dispose of a giant scorpion. Do that and I'll see if the guild will overlook your reputation. Is that a deal? @@ -25,14 +25,14 @@ RefuseQuest: [1001] outta here. AcceptQuest: [1002] - You got guts %pcf, I'll give ya that. + You've got guts, %pcf, I'll give ya that. Apparently this scorpion escaped from someone's personal collection. Right now it's cornered in _house_. Kill the thing today and I'll speak well of you. QuestComplete: [1004] - I guess you aren't the weak kneed jellyfish + I guess you aren't the weak-kneed jellyfish everyone says you are. I'll make sure the right people hear about this. @@ -44,11 +44,11 @@ RumorsDuringQuest: [1005] RumorsPostfailure: [1006] Some drunken fool stumbled into his house and got killed by a giant scorpion. Seems - he thought the Fighter's Guild had taken + he thought the Fighters Guild had taken care of the beast. RumorsPostsuccess: [1007] - The Fighter's Guild is a good bunch. + The Fighters Guild is a good bunch. They killed a giant scorpion that found its way into someone's house. diff --git a/Assets/StreamingAssets/Quests/M0C00Y12.txt b/Assets/StreamingAssets/Quests/M0C00Y12.txt index 50fe682f1a..f2299724f2 100644 --- a/Assets/StreamingAssets/Quests/M0C00Y12.txt +++ b/Assets/StreamingAssets/Quests/M0C00Y12.txt @@ -20,11 +20,11 @@ QuestorOffer: [1000] it for a silkworm cocoon. The poor slob can't afford to pay us to get rid of it. However, if you take care of it for free the guild - looks good and I'll make sure you look good. + will look good and I'll make sure you look good. Are you interested? RefuseQuest: [1001] - I should have known you were + I should have known you weren't serious about work. AcceptQuest: [1002] @@ -34,15 +34,15 @@ AcceptQuest: [1002] I'll put in a good word for you. QuestComplete: [1004] - You got spunk %pcf. + You've got spunk, %pcf. Keep up the good work and - you'll be Fighter's Guild + you'll be Fighters Guild material yet. RumorsDuringQuest: [1005] Did you hear about the idiot that brought home a giant spider's egg. Now he's got - an eight legged pet thats trying to eat + an eight-legged pet that's trying to eat him for dinner! RumorsPostfailure: [1006] @@ -51,7 +51,7 @@ RumorsPostfailure: [1006] RumorsPostsuccess: [1007] You're that guy that killed the giant spider. - You should join the Fighter's Guild or something. + You should join the Fighters Guild or something. QuestorPostsuccess: [1008] Nicely done with that giant spider. @@ -65,7 +65,7 @@ QuestLogEntry: [1010] %qdt: The Fighters Guild of ___qgiver_ has - offered to let me to kill + offered to let me kill a giant spider which hatched in _house_. It's got be done today. diff --git a/Assets/StreamingAssets/Quests/M0C00Y13.txt b/Assets/StreamingAssets/Quests/M0C00Y13.txt index 1bb3340863..155edde8a9 100644 --- a/Assets/StreamingAssets/Quests/M0C00Y13.txt +++ b/Assets/StreamingAssets/Quests/M0C00Y13.txt @@ -13,17 +13,17 @@ QRC: QuestorOffer: [1000] I am _qgiver_. - The Fighter's Guild doesn't hand out + The Fighters Guild doesn't hand out charity work. If I weren't short on fighters right now, I'd have to send - you away %pcn. I do need a fighter to + you away, %pcn. I do need a fighter to chase off some barbarian that's running wild. Do it for me and I'll make sure everyone knows you're a stand up %ra. Is it a deal? RefuseQuest: [1001] - You've just make a big mistake + You've just made a big mistake, %pcn. Don't come looking for work here for a while. @@ -37,21 +37,21 @@ QuestComplete: [1004] Did you get cut up bad? A couple more jobs like this and you can write your own - ticket into the Fighter's Guild. + ticket into the Fighters Guild. RumorsDuringQuest: [1005] Barbarians are raiding the farms again. RumorsPostfailure: [1006] The barbarians looted four farmsteads - before the Fighter's Guild stepped in. + before the Fighters Guild stepped in. RumorsPostsuccess: [1007] Aren't you the %ra that chased off the barbarian? QuestorPostsuccess: [1008] - You managed that barbarian pretty well + You managed that barbarian pretty well, %pcf. Not bad at all. QuestorPostfailure: [1009] @@ -63,7 +63,7 @@ QuestLogEntry: [1010] %qdt: The Fighters Guild of ___qgiver_ has - offered to let me to take + offered to let me take care of some barbarian marauding _house_. I have one full day. diff --git a/Assets/StreamingAssets/Quests/M0C00Y14.txt b/Assets/StreamingAssets/Quests/M0C00Y14.txt index 240eebf132..d3fddba4dd 100644 --- a/Assets/StreamingAssets/Quests/M0C00Y14.txt +++ b/Assets/StreamingAssets/Quests/M0C00Y14.txt @@ -22,7 +22,7 @@ QuestorOffer: [1000] RefuseQuest: [1001] Obviously you have no love for the - Fighter's Guild. I will make sure to + Fighters Guild. I will make sure to tell them what you really think. AcceptQuest: [1002] @@ -40,8 +40,10 @@ QuestComplete: [1004] RumorsDuringQuest: [1005] Some idiot bought four barrels of - cheese. Now he's got giant rats in - his house. + cheese. Now she's got giant rats in + her house. + +-- 1006 and 1007 refer to a female client, changed 1005's male for consistency RumorsPostfailure: [1006] Some woman had to abandon her home. diff --git a/Assets/StreamingAssets/Quests/N0C00Y10.txt b/Assets/StreamingAssets/Quests/N0C00Y10.txt index 28205f3e26..c4a359e4ad 100644 --- a/Assets/StreamingAssets/Quests/N0C00Y10.txt +++ b/Assets/StreamingAssets/Quests/N0C00Y10.txt @@ -14,7 +14,7 @@ QRC: QuestorOffer: [1000] My name is _giver_. You want work but you aren't a member of the Mages - guild? I'm sure you can understand that we + Guild? I'm sure you can understand that we only provide quality work for our members. However, I do have a little errand that needs to be done. One of our books is From 7cb1e2bb1e6b823f1ec4e622a37ec03b52b30e88 Mon Sep 17 00:00:00 2001 From: JayH Date: Mon, 24 Mar 2025 11:59:40 -0600 Subject: [PATCH 6/7] BOB50Y11 The Exorcism insta-victory fix Referenced in issue #2734. Adds minor text fixes as well. Thanks to gbin10533 for reporting. --- Assets/StreamingAssets/Quests/B0B50Y11.txt | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/Assets/StreamingAssets/Quests/B0B50Y11.txt b/Assets/StreamingAssets/Quests/B0B50Y11.txt index cd80dc7824..095f6f656f 100644 --- a/Assets/StreamingAssets/Quests/B0B50Y11.txt +++ b/Assets/StreamingAssets/Quests/B0B50Y11.txt @@ -35,10 +35,13 @@ AcceptQuest: [1002] QuestComplete: [1004] _nobleman_ will be quite - pleased. %g has even offered + pleased, and %g has even offered to dedicate a fountain in your name. +--%g is always lowercase, so changed the sentence +--structure here to allow it + RumorsDuringQuest: [1005] _nobleman_ was crazy to accept the deed to ___dungeon_. Crazy or stupid. @@ -58,13 +61,17 @@ You failed %kno when you failed _nobleman_, %pcf. A grave disappointment. QuestLogEntry: [1010] %qdt: _qgiver_ of - ==qgiver_ in ___qgiver_ + __qgiver_ in ___qgiver_ pled with me to rid ___dungeon_ of a ghost that is haunting it. I have =2dung_ days before they they need to begin the reconstruction. +--changed ==qigver_ to __qgiver_ as this guarantees +--showing the building name of the questgiver, +--which is fine for a temple + Message: 1011 The ghost has been laid to rest. _nobleman_ can now @@ -113,11 +120,19 @@ _S.01_ task: _S.02_ task: clicked npc _qgiver_ + +_wincondition_ task: + when _S.01_ and _S.02_ give pc nothing change repute with _local_ by +4 change repute with _nobleman_ by +10 end quest +--added this new wincondition task +--as previously the quest could be +--insta-completed by clicking on questgiver alone, +--quest depended too much on clearclick + _clearclick_ task: when _S.02_ and not _S.01_ clear _S.02_ _clearclick_ From 2c9fdf5834027eb05c240f60ee0ab9d5fb162b26 Mon Sep 17 00:00:00 2001 From: Jay_H <37541932+JayH2971@users.noreply.github.com> Date: Thu, 15 May 2025 20:14:10 -0600 Subject: [PATCH 7/7] Increases rep requirement for The Lost Child quest The Lost Child K0C00Y05 is an innkeeper quest that sends you to a dungeon that pretends to have an objective. Players go there, waste hours not finding it, and finally find out that it wasn't the intended solution. This change won't remove the quest, but it'll ensure that people won't run into it as their first quest. Now they have to have 30 or higher reputation with the faction in order to receive this quest. --- Assets/StreamingAssets/Tables/QuestList-Classic.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Assets/StreamingAssets/Tables/QuestList-Classic.txt b/Assets/StreamingAssets/Tables/QuestList-Classic.txt index 1410dddb1a..4afa5752e7 100644 --- a/Assets/StreamingAssets/Tables/QuestList-Classic.txt +++ b/Assets/StreamingAssets/Tables/QuestList-Classic.txt @@ -183,7 +183,7 @@ K0C00Y00, Merchants, M, 0, 0, Passed K0C00Y02, Merchants, N, 0, 0, Passed K0C00Y03, Merchants, M, 0, 0, Passed K0C00Y04, Merchants, M, 0, 0, Passed -K0C00Y05, Merchants, M, 0, 0, Passed +K0C00Y05, Merchants, M, 30, 0, Passed -- raised rep requirement because hard quest -K0C00Y06, Merchants, M, 0, 0, disabled K0C00Y07, Merchants, M, 0, 0, Passed K0C00Y08, Merchants, M, 0, 0, Passed