Back to 'graveyard_zone' Return to world Go to 'instance_encounters'
This table is used to extend the values of Holidays. Data of holidays in this table is sent to client to update the calendar.
Field | Type | Attributes | Key | Null | Default | Extra | Comment |
---|---|---|---|---|---|---|---|
id | int | unsigned | PRI | NO | |||
date_id | tinyint | unsigned | PRI | NO | |||
date_value | int | unsigned | NO | ||||
holiday_duration | int | unsigned | NO | 0 |
references HolidayID
Unique ID. Must be consecutive from 0 to 25 (including existing values in Holidays)
Start date in BlizzTime. Use https://github.com/The-Cataclysm-Preservation-Project/Packet-BlizzTime-tool to get the correct value.
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):
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
Event duration in hours.
Back to 'graveyard_zone' Return to world Go to 'instance_encounters'