Dev:Quest Log
List of Quests by Their Variable ID
This list is an attempt to collect together all known quests, so they can be updated and/or maintained. Many quests are still missing from the quest log. Some of the names and indexes (if present) are tentative, but should reflect quest-log.txt found within serverdata.
| ID | Variable | Name | NPCs | Description |
|---|---|---|---|---|
| 1 | QL_BEGIN | Tutorial | Sorfina, Tanisha | Basic introduction to movement and combat. This variable is also used by Hasan's quest (pending some work) |
| 2 | QL_VALON | By Order of the Council | Valon | A few basic monster drop fetch quests |
| 3 | QL_MORGAN | Unnamed | Morgan | Teaches the basics of magic (Migration to quest log is pending an MR) |
| 4 | QL_ZEGAS | Buggy | Zegas | Tasks you with exterminating maggots in a warehouse |
| 5 | QL_VINCENT | The Adventures of Action Bug | Vincent | A fetch quest (Stored in the server variable `QUEST_SouthTulimshar`, despite being located in Candor) |
| 6 | QL_HIDENSEEK | Hide and Seek | Ayasha | A search quest, consisting of multiple NPCs (Stored in the server variable `QUEST_NorthTulimshar`, despite being located in Candor) |
| 7 | QL_WELL | Lassie in the Making / Well That Was Easy | Miler | Down the well |
| 8 | QL_CINDY | A Mother's Fear | Angela | Locked to level 70+ (Referenced by `milly.txt`) |
| 9 | QL_BAKTAR | Warm Nostalgia | Baktar | A fetch quest for items from Tulimshar |
| 10 | QL_BSAGE_INVESTIGATE | Blue Sage | Peetu | Large quest with many references; has its own dedicated server variable `QUEST_BlueSage` |
| 11 | QL_SOUP | Soup / Slime | Bernard, Mikhail | Related but distinct quests (Stored in `QUEST_NorthTulimshar`, located in Hurnscald) |
| 12 | QL_SARAH | Let me eat cake! | Sarah | Simple fetch quest |
| 13 | QL_SANDRA | Sandra | Sandra | Simple fetch quest |
| 14 | QL_MINEALL | Mine | Lieutenant Dausen | Assisting miners and eventually opening the underground Palace |
| 15 | QL_FIERI | Tonori Delight | Fieri | Fetch quest |
| 16 | QL_IMEC | Imec's Stingers | Imec | Fetch quest |
| 17 | QL_BANU | Banu | Banu | Fetch quests (Stored in `QUEST_NorthTulimshar`, located in Hurnscald) |
| 18 | QL_ANWAR | Anwar's Fields | Anwar | Back-and-forth traveller quest across several NPCs |
| 19 | QL_KYLIAN | Kylian | Kylian | Begins as back-and-forth, eventually a looping travel quest delivering parcels |
| 20 | QL_TERRANITE_ARMOR | Terranite Armor | Heathin | Fetch quest locked to level 60+ (NPC always has a ! mark above head) |
| 21 | — | assassin quest | Unknown | Dummied out |
| 22 | QL_CELESTIA | Celestia's Groceries / Protect the children | Celestia | Two quests combined into one |
| 23 | QL_BEHEADER_TERRAC | The Beheader's Quest | The Beheader | Uses two indexes in the quest log (23 and 24), each plugs into a separate server variable |
| 24 | QL_BEHEADER_COMPLETE | — | — | See above |
| 25 | QL_FURQUEST | Winter Gloves / Furry Boots / Dream Dress | Agostine, Lora Tay | Multiple quest log entries with fetch and traveller quests |
| 26 | QL_BANDIT_BOUNTY | Bandit Bounty | Lena | Fetch quest followed by hunt quest |
| 27 | QL_SILK_PANTS | Silk Pants | Hetchel The Silk Weaver | Prerequisites include Bandit Bounty, Lora Tay (awaiting merge) |
| 28 | QL_SCYTHE | Hinnak | Hinnak | Simple fetch quest (awaiting merge) |
| 29 | QL_FOREST_BOW | Forest Bow | Alan, Jack | quite infamous; each RawLog only has a 1 in 20 chance of success (awaiting merge) |
| 30 | QL_WOODEN_SHIELD | Wooden Shield | Jack | Simple fetch quest (awaiting merge) |
Persistent Character Variables
Here is the list of persistent character variables which are modified directly without going through quest variables. Their usages should be checked and transitioned to use quest variables where applicable.
| Variable | First found in file | Comment |
|---|---|---|
| AnchorStoneDest | items/anchor_stone.txt | Map of last touched anchor stone |
| AnchorStoneDestCoord | items/anchor_stone.txt | Location of last touched anchor stone |
| Annual_Quest | 011-1/oscar.txt | |
| AUTOMOD | commands/automod.txt | |
| BOSS_POINTS | 025-4/battlecaves.txt | Boss points counter |
| CASTS | magic/level1-grow-shadow.txt | |
| cavefights | 025-4/battlecaves.txt | |
| CSN | functions/slot_machine.txt | |
| DailyQuestBonus | 027-7/general_razha.txt | |
| DailyQuestPoints | 056-2/mirak.txt | |
| DailyQuestTime | functions/dailyquest.txt | |
| DUELS | 001-3/guards.txt | |
| FLAGS | 002-1/luca.txt | |
| gotcherry | 009-2/olana.txt | |
| HALLOWEENTIME | annuals/halloween/munro.txt | |
| HALLOWEENYEAR | annuals/halloween/debug.txt | |
| HIDDEN | commands/gm.txt | |
| HURNS1_STATE | 012-1/shops.txt | |
| Illia_Uniques_Count | 052-2/chest.txt | |
| Katze | 015-3/pot.txt | |
| KESHLAM_STATE | 099-7/chronos.txt | |
| Kylian_Timer | 002-2/kylian.txt | |
| MAGIC_EXPERIENCE | commands/debug.txt | |
| MAGIC_FLAGS | 006-1/tree.txt | |
| Menhir_Activated | functions/soul_menhir.txt | |
| Mirak_Bantime | 056-2/mirak.txt | Time you cannot come back to the NPC when you upset him |
| Mirak_Questtime | 056-2/mirak.txt | Time you cannot come back once you finished the quest |
| Mobpt | mobs/mob_points.txt | Monster points counter |
| MPQUEST | 029-1/monster_guide.txt | |
| MUTE_GLOBAL | commands/mute.txt | |
| OrumQuest | 018-1/flowerpentagram3.txt | |
| OrumQuestBarrier | 009-4/barriers.txt | |
| OrumQuestTorch | 009-4/torches.txt | |
| QUEST_Airlia | 009-2/airlia.txt | |
| QUEST_Barbarians | 033-1/yerrnk.txt | |
| QUEST_BlueSage | 048-2/helperCleaning1.txt | |
| QUEST_clothdyer_knowsdye | 011-1/alchemist.txt | |
| QUEST_Forestbow_state | 011-1/alchemist.txt | Stores Forest Bow (nibble 0), Wooden Shield (nibble 1), Bone Knife (nibble 2) and Setzer (nibble 3) states |
| QUEST_Graveyard_Caretaker | 027-2/caretaker.txt | |
| QUEST_Graveyard_Inn | 026-2/lover.txt | |
| Quest_Halloween | 011-1/oscar.txt | |
| QUEST_Hurnscald | 018-3/bookcase.txt | Stores Inspector (nibble 3) state |
| QUEST_MAGIC | 006-1/tree.txt | |
| QUEST_MAGIC2 | 006-1/spirit.txt | |
| QUEST_Mirak | 056-2/mirak.txt | |
| QUEST_MIRIAM | 006-1/miriam.txt | |
| QUEST_MIRIAM_run | 006-1/miriam.txt | |
| QUEST_NorthTulimshar | 001-1/weellos.txt | |
| QUEST_SouthTulimshar | functions/clear_vars.txt | Fully migrated |
| QUEST_WG_state | 011-6/crastur.txt | |
| Rossy_Quest | 025-4/battlecaves.txt | |
| STARTAREA | functions/clear_vars.txt | |
| teleport_cookie | magic/event-boss-powerup-flee.txt | |
| TMW_Quest | functions/clear_vars.txt | Migrated to `QUEST_SouthTulimshar` and `QUEST_Hurnscald` |
| TowelLastUsed | functions/global_event_handler.txt | Towel cooldown timer |
| TravelFound | functions/travelers.txt | Bits for found travelers |
| TUT_var | functions/game_rules.txt | |
| tvis | 029-1/rewards_master.txt | Amount of monster points needed for next item |
| wolvern_count | 033-1/birrod.txt | |
| XMAS2020 | annuals/xmas/2020.txt | |
| XMASTIME | 030-2/bedding_helper.txt | |
| XMASYEAR | annuals/xmas/debug.txt |
Quest Variable Layouts
Here are the current quest variables displayed in their location in the persistent character variables they map to. Note that empty areas are not necessarily unused since some bits might be used through the persistent variable directly (if the variable is listed above) or may be undiscovered.
| STARTAREA | QL_BEGIN (4) | QL_VALON (4) | (4) | QL_MORGAN (4) | QL_ZEGAS (4) | (12) | ||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| QUEST_SouthTulimshar | QL_SOUP (4) | QL_SARAH (2) | (2) | QL_VINCENT (2) | (2) | QL_SANDRA (2) | (2) | QL_MINEALL (8) | QL_FIERI (4) | (4) | ||||||||||||||||||||||||||
| QUEST_NorthTulimshar | QL_HIDENSEEK (8) | QL_IMEC (2) | QL_BANU (2) | QL_ANWAR (4) | (4) | QL_KYLIAN (4) | QL_TERRANITE_ARMOR (4) | (4) | ||||||||||||||||||||||||||||
| QUEST_Nivalis_state | QL_BAKTAR (8) | (8) | QL_WELL (4) | QL_CINDY (4) | (8) | |||||||||||||||||||||||||||||||
| QUEST_BlueSage | (12) | QL_BSAGE_INVESTIGATE (4) | (16) | |||||||||||||||||||||||||||||||||
| QUEST_Hurnscald | QL_BANDIT_BOUNTY (4) | QL_SCYTHE (4) | (8) | QL_CELESTIA (8) | (8) | |||||||||||||||||||||||||||||||
| TERRAC | QL_BEHEADER_TERRAC (16) | (16) | ||||||||||||||||||||||||||||||||||
| FLAGS | (17) | QL_BEHEADER_COMPLETE (1) | (14) | |||||||||||||||||||||||||||||||||
| QUEST_WG_state | QL_FURQUEST (8) | QL_SILK_PANTS (4) | (20) | |||||||||||||||||||||||||||||||||
| QUEST_Forestbow_state | QL_FOREST_BOW (4) | QL_WOODEN_SHIELD (4) | (24) | |||||||||||||||||||||||||||||||||
Abnormal Variables
These variables have some kind of abnormality involved, or are not currently fully understood. They are connected to items listed within the quests page, however, so they're included for completeness.
| Variable | First found in file | Comment |
|---|---|---|
| VOLTAIN_state | serverdata/world/map/npc/007-1/voltain.txt | Not stored within the player character, seemingly indeterminate. |