Improve start time
BreakBB opened this issue ยท 2 comments
Description
One of the biggest performance losses on the initial load of Questie are the huge Lua tables our databases comes with.
As follow-up to #5801 we should transform more Lua tables to a loadable string, to increase start times.
TODOs
- Transform all Automatic corrections as string and use
loadstring
to load them on start - Update the build.py to transform all Corrections (
classicQuestFixes.lua
,cataQuestFixes.lua
, ...)- The idea here is to use some markers (like
-- @transform-on-build-start
+-- @transform-on-build-end
), find these in the build script and then replaces the marked locations to get a loadable string - To make sure this does not affect development, the places that call the wrapping function should simply check for
type(x) == "string"
and then useloadstring
- The idea here is to use some markers (like
I am wondering where the quest description is used by Questie. It seems to me that the quests database are
[QuestID] = {Quest Name, Quest Description, Quest Objective}
I don't know where quest description is used, and that takes up the bulk of text. Maybe it could be stripped down
[QuestID] = {Quest name, nil, Quest Objective}
To reduce loading
I am wondering where the quest description is used by Questie.
It is not used anywhere atm and was never used before. There is this TODO for a couple of years:
https://github.com/Questie/Questie/blob/master/Localization/l10n.lua#L58
@Muehe @Cabro @MyTechnoHunter what do you think? Should we just remove that chunk of data?
I am not even sure where we would really show the quest description, if we would add them. Maybe in the Journey, but other than that I don't see any need. We show the objectives texts and that suffices imo.