Skip to content

Holidays.dbc ​

📝 Structure on wowdev.wiki ​

 

❌ denotes unused fields

Structure ​

IndexFieldTypeReference
0IDuint32
1Duration_0uint32
2Duration_1uint32
3Duration_2uint32
4Duration_3uint32
5Duration_4uint32
6Duration_5uint32
7Duration_6uint32
8Duration_7uint32
9Duration_8uint32
10Duration_9uint32
11Date_0uint32
12Date_1uint32
13Date_2uint32
14Date_3uint32
15Date_4uint32
16Date_5uint32
17Date_6uint32
18Date_7uint32
19Date_8uint32
20Date_9uint32
21Date_10uint32
22Date_11uint32
23Date_12uint32
24Date_13uint32
25Date_14uint32
26Date_15uint32
27Date_16uint32
28Date_17uint32
29Date_18uint32
30Date_19uint32
31Date_20uint32
32Date_21uint32
33Date_22uint32
34Date_23uint32
35Date_24uint32
36Date_25uint32
37Regionuint32
38Loopinguint32
39CalendarFlags_0uint32
40CalendarFlags_1uint32
41CalendarFlags_2uint32
42CalendarFlags_3uint32
43CalendarFlags_4uint32
44CalendarFlags_5uint32
45CalendarFlags_6uint32
46CalendarFlags_7uint32
47CalendarFlags_8uint32
48CalendarFlags_9uint32
49HolidayNameIDuint32HolidayNames.dbc/0
50HolidayDescriptionIDuint32HolidayDescriptions.dbc/0
51TextureFilenamestring
52Priorityuint32
53CalendarFilterTypeint32
54Flagsuint32
 

Description of fields ​

ID ​

Col: 0 (uint32)

- no description -  

Duration ​

Col: 1 – 10 (uint32)

Stage duration in hours.  

Date ​

Col: 11 – 36 (uint32)

From wowdev.wiki: Packed blizzdate (integers with bits (LSB->MSB) 6: minutes, 5: hours, 3: day of week, 6: day of month, 4: month, 5: year, 2: time zone, 1: unused) Epochdate=01.01.2000-00:00

Example Startdate for Darkmoon Faire - Mulgore (first occurence; id: 375):

blizzdate = 126957568;                    // 0b0000 0111 1001 0001 0011 1000 0000 0000

minutes    =  blizzdate        & 0x3F;    // 00 0000 -> 0
hours      = (blizzdate >>  6) & 0x1F;    //  0 0000 -> 0
dayOfWeek  = (blizzdate >> 11) & 0x07;    //     111 -> 7
dayOfMonth = (blizzdate >> 14) & 0x3F;    // 00 0100 -> 4
month      = (blizzdate >> 20) & 0x0F;    //    1001 -> 9
year       = (blizzdate >> 24) & 0x1F;    //  0 0111 -> 7
timeZone   = (blizzdate >> 29) & 0x03;    //      00 -> 0
padding    = (blizzdate >> 31) & 0x01;    //       0

decoded: 0007-09-04T00:00:00+00:00
apply epoch date offset
realdate: 2007-10-05T00:00:00

 

Region ​

Col: 37 (uint32)

WoW region  

Looping ​

Col: 38 (uint32)

- no description -  

CalendarFlags ​

Col: 39 – 48 (uint32)

  • 0x1: Alliance
  • 0x2: Horde
  • 0x3: Both  

HolidayNameID ​

❌ Col: 49 (uint32)

- no description -  

HolidayDescriptionID ​

❌ Col: 50 (uint32)

- no description -  

TextureFilename ​

Col: 51 (string)

- no description -  

Priority ​

Col: 52 (uint32)

- no description -  

CalendarFilterType ​

Col: 53 (int32)

  • -1: repeat, yearly
  • 0: repeat, weekly
  • 1: repeat, use defined dates
  • 2: repeat, hourly  

Flags ​

❌ Col: 54 (uint32)

0 = Darkmoon Faire, Fishing Contest and Wotlk Launch, rest is 1 IsRegionwide?