SavedInstances

SavedInstances

11M Downloads

Darkmoon Weekly Expiration Not Reliable

Kanegasi opened this issue ยท 5 comments

commented

The weekly DMF quests sometimes reappear without DMF or stay beyond the end of the DMF (longer than the day slop you included). The specific expiration dates I noticed this DMF was set to next month, so they would've been listed for all of November.

However, I discovered the source of the problem. The function you use to get month data relies on the current month the calendar is set to. When you first login, the calendar is set to November 2004 before you open it for the first time. The calendar also stays at the last month/year you looked at, so when your function runs to get an expiration date, it doesn't get the current month/year. I added the following lines to the top of SI:GetNextDarkmoonResetTime()

local currentCalendarTime = C_DateAndTime_GetCurrentCalendarTime()
C_Calendar_SetAbsMonth(currentCalendarTime.month, currentCalendarTime.year)

And the following local lines at the top of Time.lua according to your code practices

local C_DateAndTime_GetCurrentCalendarTime = C_DateAndTime.GetCurrentCalendarTime
local C_Calendar_SetAbsMonth = C_Calendar.SetAbsMonth

These are the exact same lines Blizzard uses in the OnShow function for the calendar, so that it's set to the current month/year just before the calendar shows.

commented

@Cassiopeia-the-Elf You can "clear" the reset by exiting the game and deleting the Darkmoon data in World of Warcraft\WTF\Account\<accountIDorName>\SavedVariables\SavedInstances.lua.
Search for the word "Darkmoon". You will get full quest entries that look like this:

[29506] = {
	["Expires"] = 1607925540,
	["Title"] = "A Fizzy Fusion",
	["Link"] = "|cffffff00|Hquest:29506:402|h[A Fizzy Fusion]|h|r",
	["Zone"] = {
		["mapType"] = 6,
		["mapID"] = 407,
		["name"] = "Darkmoon Island",
		["parentMapID"] = 947,
		["flags"] = 0,
	},
	["isDaily"] = false,
},

Delete that entire entry as shown here. Do this for everything that has "Darkmoon Island" in it.
You will also find a "Darkmoon" entry with a bunch of numbers that looks like this:

["Darkmoon"] = {
	[29506] = 407,
	[29507] = 407,
	[29446] = 407,
	[29509] = 407,
	["expires"] = 1607925540,
	[29433] = 407,
	[29511] = 407,
	[33354] = 407,
	[29513] = 407,
	[29444] = 407,
	[29456] = 407,
	[29445] = 407,
	[29457] = 407,
	[29464] = 407,
	[29458] = 407,
	[29443] = 407,
	[29451] = 407,
},

Only delete the "expires" line here.

commented

Thank You very much! That was a lot of editing, but now my chars are clear! And the one that did quests registered correctly! I hope this will reset the next month without the need to edit lua files :D

Thanks for help @Kanegasi . And thanks to all the SavedInstances dev team, as this is one of the MOST amazing addons to have for a long time players / farmers :)

commented

Hey, I was googling this problem, as it is second month that I still see Darkmoon quests as completed. I see there was a commit, though no new version yet. I edited Time.lua file in my PC as shown in the commit, but I still see quests as completed on all chars :(

commented

Darkmoon is ongoing so it's correct to show Darkmoon quests.

commented

Yes, but I haven't done the quests this month, information showed is two months old (meaning it shows all my profession alts did them, even though it is not true). Those quests are waiting for me in the island. So maybe there can be added some "reset" when the new month begins, resetting the weekly Darkmoon quest information for characters?

image
This screenshot shows weekly Darkmoon proffesion quests completed on alts, though only one character visited Darkmoon this month. Others are "remembered" from two months ago (I didn't visit Darkmoon at the start of November, so they are October info :O).
Maybe changes were in more than Time.lua? I only editted that one..