Holidays

holidays.dbc

Structure

ColumnFieldTypeNotesExtra info
0eventIDIntegerHoliday event ID 
1eventStage1DurationIntegerStage1 event length (for stage1, either as preparation or main event. See eventSchedulerType for more info) 
2eventStage2DurationIntegerStage2 event length (for stage2, either as main event or cooldown. See eventSchedulerType for more info) 
11eventDateIntegerPacked blizzdate - Epochdate=01.01.2000-00:00 - Year is discarded if column12 is 0 
37Regioninteger ??? (needs more research) 
38Loopinginteger ??? (needs more research - used only on Call To Arms events)
 283 - Call to Arms: Alterac Valley
 284 - Call to Arms: Warsong Gulch
 285 - Call to Arms: Arathi Basin
 353 - Call to Arms: Eye of the Storm
 400 - Call to Arms: Strand of the Ancient
 420 - Call to Arms: Isle of Conquest
39calendarFlagsinteger ??? (needs more research) 
49eventCalendarNameiRefIDRef to Loc in HolidayNames.dbc 
50eventCalendarDescriptioniRefIDRef to Loc in HolidayDescriptions.dbc 
51eventCalendarOverlayStringOverlay texture used for ingame calendar event-decorations 
52priorityInteger ??? (needs more research) 
53eventSchedulerTypeIntegerDefinition of which timer is used, see eventSchedulerType below
 -1: repeat, yearly
  0: repeat, weekly
  1: repeat, use defined dates
  2: repeat, hourly
54eventFlagsInteger ??? (needs more research) 

eventSchedulerType

eventSchedulerType defines what kind of timer is used for when the event is to stop, start etc. - and if it uses different stages during it's "buildup"-phase (2 stages available)
 -1: event repeats every year based on column11, column12 etc dates - length and possible event stages is taken from the information given in column1 and column2 (adjusted in DBC to keep it in line with **yearly** changes) - if column12=0, use DATE only from field11 0: event repeats every 7 days, with a duration of <eventStage1Duration> hours (hardcoded startdate serverside depending on eventID) 1: event repeats based on column11, column12 etc values (see -1) - if <eventStage2Duration> exists, use <eventStage1Duration> as event prestage length 2: event repeats every X hours (with <eventStage2Duration> being the eventPause/eventWait timer)