LetsTimeIt / DungeonTools

Fork of Nnoga's Mythic Dungeon Tools addon to restore mob data and improve upon the base code!
GNU General Public License v2.0
281 stars 74 forks source link

Routes not saving #51

Open Path98912 opened 3 years ago

Path98912 commented 3 years ago

Love the work all, the community can't thank you enough because, fuck that guy.

I am having an issue where my routes are not saving and I have to recreate them every time.

srenauld commented 3 years ago

Hey!

We've had somebody flag up this issue on an old version ( https://github.com/LetsTimeIt/DungeonTools/issues/35). Can you grab 1.1.6 from the releases (here: https://github.com/LetsTimeIt/DungeonTools/releases/tag/v1.1.6), or update through wowup, and let me know if it still doesn't work?

arenstam commented 3 years ago

Hi,

I was having the same issue, i think i know how to duplicate it. If you create a route replacing the 'default' route and then log off/close the game, it will be replaced with a blank empty route.

If you create new route via 'new' and then create your route, it wont be reset after a relog/exit game.

srenauld commented 3 years ago

@arenstam Your comment really helped. Was able to track down the feature that's causing this:

https://github.com/LetsTimeIt/DungeonTools/blob/main/DungeonTools.lua#L154

            do
            for _,presets in pairs(db.presets) do
                for presetIdx,preset in pairs(presets) do
                    if presetIdx == 1 then
                        if preset.text ~= "Default" then
                            preset.text = "Default"
                            preset.value = {}
                        end
                    end
                end
            end
            for k,v in pairs(db.currentPreset) do
                if v <= 0 then db.currentPreset[k] = 1 end
            end
        end

This happens on initialization; if the preset is the first in the list, and it is not called Default, then it gets reset to Default and emptied.

srenauld commented 3 years ago

Just confirmed it ingame; that's where and how it happens: the user needs to rename the default route for it to trigger.

I'm going to scrap that right now, and when we overhaul the route container (there's so many things wrong with how routes are stored, serialized and handled. To give you an idea, I have no choice but to break a bunch of people's HoA routes because I'm about to unlink two mobs), I will bring a "Reset to default" when we add sensible defaults.

Thank you very much for the report, and @arenstam for the additional pointers leading to this 👍

Path98912 commented 3 years ago

Awesome thanks I downloaded the issues and as long as I name my route it saves perfectly. Thanks again.

One last question and I hope this isn't cross pollinating the issues. How do I update the add on via wowup, it isn't showing in my add on list.

srenauld commented 3 years ago

Add this repository on it! I described it to somebody else here and I have on my list of things to do for today to write documentation regarding that and a lot of other things, as these questions come up a lot.

Essentially, you go to "Get Addons", click "Install from URL", then fill in this repo's URL (https://github.com/LetsTimeIt/DungeonTools), and Wowup then tracks releases on the repo automatically.

Path98912 commented 3 years ago

Awesome, I lied, last questions. What's the patreon or whatever to kick some donations to you all for doing the lords work here?

srenauld commented 3 years ago

There isn't one. There's a plan to donate all the proceeds from curseforge (when we're on it) to charity, while keeping a very small share for under-the-weather issues. How & which charity is still TBD, but the idea is on the table - and obviously, since we're not on curseforge yet, it's still only an idea.

All of the people currently involved think this should be a community add-on, community-run and community-maintained, and not a case where a single person gets all the burden. We're hopefully going to be moving in that direction, which also means more than one main contributor 🥳