Jump to content

[fixed][Bug] Wrong reset time for Heroic Dungeons


Guest sytaria

Recommended Posts

Hello :).

Mangos Version: 10348

Custom Patches: a few ones, but not related

Database Name and Version : UDB 392

How it SHOULD work: Heroic Dungeons should reset after 24 hours max.

How it DOES work: Heroic Dungeons reset after a week.

If anyone has a clue about this (or if this is normal :o ), please help us.

Thanks,

Tom.

Link to comment
Share on other sites

It seems to have a few constant expiry dates it's pulling out from somewhere. They are:

1996200000

2200881600

4450651200

It's also failing to assign instance reset times ("instance locks are scheduled to expire in ."), which may be the cause of this problem?

Link to comment
Share on other sites

Just a few notes :

InstanceSaveMgr.cpp, line 233 and 640 :

uint32 period =  uint32(mapDiff->resetTime / DAY * sWorld.getConfig(CONFIG_FLOAT_RATE_INSTANCE_RESET_TIME)) * DAY;
...
uint32 period = mapDiff->resetTime * DAY;

When you replace that by something constant like :

uint32 period = 5 * DAY;

All works correctly.

So I think there's something wrong with mapDiff->resetTime...but it's DBC data :/

Link to comment
Share on other sites

have this problem occured after switch to 3.3.5a? If yes, then maybe that blue guys changed DBC values for reset time of instances (mapDiff->resetTime) from number of days to something different, like number of hours, or minutes? Maybe this is where this huge numbers come from.

Link to comment
Share on other sites

no, the DBC file are ok as far as I can see - 1day or 1 week in seconds

also the config float is correct with default == 1, and if not set I think it will be 0.0, so the period will be set to 1 DAY (line 230, which also is correct I think

I think you must focus on any "-" calculations in the different places there is something to reset time related, like

ScheduleReset(true, resetTime - resetEventTypeDelay[event.type], event);

resetTime might be zero for some dungeons, so there might be a check missing

Edit: If I am not mistaken, the code in line 640 should also be modified along the config Var

Edit2: line 640 is _wrong_ in any case: uint32 period = mapDiff->resetTime * DAY;

with the 5man hero we multiply DAY*DAY as period, instead of DAY ;)

Link to comment
Share on other sites

Hmmm that can actually make a problem...

In that case we would have a period of 7 464 960 000 seconds, instead of 86 400. A bit too much :)

-    uint32 period = mapDiff->resetTime * DAY;
+    uint32 period = uint32(mapDiff->resetTime / DAY * sWorld.getConfig(CONFIG_FLOAT_RATE_INSTANCE_RESET_TIME)) * DAY;

Maybe?...

Or at least :

-    uint32 period = mapDiff->resetTime * DAY;
+    uint32 period = mapDiff->resetTime;

Link to comment
Share on other sites

Bumping this caus isnt fixed.

Core Rev: 10408

Sd2: 1792

Custom Pach: Only Armory Stuff from shadez dont think this has some effect on the problem.

Problems:

1) when you enter in a instance the text msg " Welcome To ( Instance Name)(5 Player Heroic). Instance Lock are Sheduled to expire in. ( Here Should Appear the time left for reset) "

1.a) The time is set at mangos.conf the hour for the instance reset. i have it at 4am so if the current time is 11pm. should say " Expire in. 5 Hours".

Photo Problem 1:

sinttulo23i.th.png

2) At raid Info Tab the time for expired time doesnt appear now, not sure if here should appear the time that we set in mangos.conf like a said if i set it to 4am maybe should appear Expired time 4am or like before the time left for reset. will confirm this latter.

3) When i use the .instance listbinds i see that the time for the instance expired is ( 341315days ) Lot of days.

Here an image.

Photo Problem 2 & 3.

sinttuloye.th.png

Plz review this, and try to get it fixed soon as possible :(

Link to comment
Share on other sites

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. Privacy Policy Terms of Use