Overhaul for v2

Summary

Restructure the code and revise API to be more intuitive, flexible, and suitable for future planned features.

Task List

  • Move away from hard-coded "main" and "side" labels for quests
    • refer instead by index or user-defined id string
    • allows variable number of side-tabs with more flexibility
    • need to adjust objective statuses to abolish "main" and "side" labels, need second return for index value?
    • objectives.dat format to no longer use main{} and side{} to define quests
  • Add more flexibility to not include components in quest_log.dat
    • e.g. sidebar and tabs should not be required
    • provide more hooks for custom interface components?
  • Greater control of game variables and the like for the debugger
    • create a custom game object that can be passed to objectives_manager to allow easy control of variables
  • Move quest log scripts to central directory at data/scripts/menus/quest_log/
    • Makes it more clear which scripts are required and separates from rest of example quests
  • Code overhaul (improve what doesn't flow, re-write what is cringe, add comments where not intuitive)
  • Update API to reflect changes
Edited by llamazing
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information