[x] that I've tested my code since the last commit in the PR, and will test after any later commits
Temporary:
[x] that I understand there are large refactoring efforts going on right now, that these efforts touch every single Lua script and binding, and that my pull request might get put on hold to ensure there are not any conflicts with the refactoring work
I mentioned a couple of ideas I had about how we handle and test instances in Discord a few days ago, and wanted to get some of them written down before they evaporated out of my mind.
Goals
Instances are massively important in mid-late TOAU content, and all expansions from TOAU onwards use them heavily. Since instances are "on-demand", they should be easy to write, spin up, and test.
Introduce !testinstance x, which will spin up your chosen instance a put you in there
(Did in earlier PR) Add more information to instance db entries (+migration script)
Simplify player:createInstance interface
Data and Lua cache instance information
Consolidate instance code to just the instance file
TODO
Finish hooking up !testinstance
There are TWO instances of OnInstanceCreated: one for when the instance object is created, and one as a callback for when it's ready. The seconds one NEEDS to be changed to "OnInstanceReadyCallback" or something, it's confusing right now.
There is a lot of instance handling information in the "OnTrigger" NPC where you enter the instance from. I want to move that into the instance script itself. This helps with the "go to instance from any zone" plan.
I affirm:
Temporary:
I mentioned a couple of ideas I had about how we handle and test instances in Discord a few days ago, and wanted to get some of them written down before they evaporated out of my mind.
Goals
Instances are massively important in mid-late TOAU content, and all expansions from TOAU onwards use them heavily. Since instances are "on-demand", they should be easy to write, spin up, and test.
!testinstance x
, which will spin up your chosen instance a put you in thereplayer:createInstance
interfaceTODO
!testinstance