DB/Holidays: Difference between revisions

From wowdev
Jump to navigation Jump to search
(26 intermediate revisions by 8 users not shown)
Line 1: Line 1:
==12843==
 
{| style="background:#FCFCFC; color:black"
{{Template:Sandbox/VersionRange|min_expansionlevel=3}}
 
==3.3.5a 12340==
{| style="background:#f3f3f3; color:black; border: 1px dashed;"
|-  
|-  
! width="80" | Column  
! width="50" | Column  
! width="180 " | Field  
! width="150" | Field  
! width="80" | Type  
! width="100" | Type  
! width="600" | Notes
! width="800" | Notes
! width="500" | Extra info
|-  
|-  
|0  || eventID  || Integer || Reference to the Holiday eventID
|0  || eventID  || Integer || Holiday event ID
|-  
|-  
|1  || eventTimer1 || Integer || Event preparation or main event (stage1)
|1  || eventStageDuration || Integer[10] || Stage1 event length in hours. (for stage, either as preparation, main event, ... or cooldown. See eventSchedulerType for more info)
|-
|2  || eventTimer2 || Integer  || Event stage2 or waitperiod untill next stage1 run
|-
|11 || eventStart || Integer || Unixtime-style timestamp - origin date 01.01.2000 (OR only date (not year) if column12-> is 0)
|-
|12 - 23 || eventReoccuranceTimes || Integer || Adjusted eventdates for certain events where needed
|-
|24 - 36 || <unknown> || Integer || <Unknown>
|-
|-
|37  || <unknown> || integer || <unknown>
|11 || eventDate || Integer[26] || 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, last bit unused) - Epochdate=01.01.2000-00:00
|-
|-
|38  || <unknown> || integer || <unknown>
|37 || Region || integer || bitmask, connected to Cfg_Regions::m_region_group_mask field ||
|-
|-
|39  || <unknown> || integer || <unknown>
|38 || Looping || integer || ??? (needs more research - used only on Call To Arms events -click) ||
  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
|-
|-
|40  || <unknown> || integer || <unknown>
|39 || calendarFlags || integer[10] || ??? (needs more research -click) ||
|-
|-
|49 || eventName ||[[HolidayNames.dbc|iRefID]]|| Ref to [[Loc]] in HolidayNames.dbc
|49 || eventCalendarName || [[HolidayNames.dbc|iRefID]] || Ref to [[Loc]] in HolidayNames.dbc ||
|-
|-
|50 || eventDescription||[[HolidayDescriptions.dbc|iRefID]]||Ref to [[Loc]] in HolidayDescriptions.dbc  
|50 || eventCalendarDescription || [[HolidayDescriptions.dbc|iRefID]] || Ref to [[Loc]] in HolidayDescriptions.dbc ||
|-
|-
|51 || eventOverlay || String || Overlay used for ingame calendar event-decorations  
|51 || eventCalendarOverlay || String || Overlay texture used for ingame calendar event-decorations ||
|-
|-
|52 || <unknown> || integer || <unknown>
|52 || priority || Integer || ??? (needs more research -click) ||
|-
|-
|53 || eventTimeType || Integer || -1, 0, 1, 2
|53 || eventSchedulerType|| Integer || Definition of which timer is used, see eventSchedulerType below ||
  -1: repeat, yearly
  0: repeat, weekly
  1: repeat, use defined dates
  2: repeat, hourly
|-
|-
|54 || <unknown> || integer || <unknown>
|54 || eventFlags || Integer || ??? (needs more research -click) ||
|}
|}
[[Category:DBC]]
  '''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)
'''eventTimeType''' - defines what kind of timer the event uses, and 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
  -1: event repeats every X days based on column11, column12 etc dates - lengt and event stages handled by length given in column1 and column2
        (adjusted in DBC to keep it in line with **yearly** changes) - if column12=0, use DATE only from field11
      (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)
  0: event repeats every 7 days, with a duration of <eventTimer1> 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
  1: event repeats based on column11, column12 etc values (see -1) - if eventTimer2 exists do eventTimer1 as event prestage, start eventTimer2 at once as it's timed out
    2: event repeats every X hours (with <eventStage2Duration> being the eventPause/eventWait timer)
  2: event repeats every X hours (with eventTimer2 being the eventPause/eventWait timer)
 
==6.0.1.18179==
struct HolidaysRec {
  uint32_t m_ID;
  uint32_t m_duration[10];
  uint32_t m_date[26];
  uint32_t m_region;
  uint32_t m_looping;
  uint32_t m_calendarFlags[10];
  uint32_t m_holidayNameID;
  uint32_t m_holidayDescriptionID;
  {{Template:Type|stringref}} m_textureFilename;
  uint32_t m_priority;
  uint32_t m_calendarFilterType;
  uint32_t m_flags;  // &1: use region time
};
[[Category:DBC]][[Category:DBC_WotLK]]
[[Category:DBC_WoD]][[Category:6.0.1.18179]]

Revision as of 18:45, 25 May 2019

≥ Wrath

3.3.5a 12340

Column Field Type Notes Extra info
0 eventID Integer Holiday event ID
1 eventStageDuration Integer[10] Stage1 event length in hours. (for stage, either as preparation, main event, ... or cooldown. See eventSchedulerType for more info)
11 eventDate Integer[26] 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, last bit unused) - Epochdate=01.01.2000-00:00
37 Region integer bitmask, connected to Cfg_Regions::m_region_group_mask field
38 Looping integer ??? (needs more research - used only on Call To Arms events -click)
 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
39 calendarFlags integer[10] ??? (needs more research -click)
49 eventCalendarName iRefID Ref to Loc in HolidayNames.dbc
50 eventCalendarDescription iRefID Ref to Loc in HolidayDescriptions.dbc
51 eventCalendarOverlay String Overlay texture used for ingame calendar event-decorations
52 priority Integer ??? (needs more research -click)
53 eventSchedulerType Integer Definition of which timer is used, see eventSchedulerType below
 -1: repeat, yearly
  0: repeat, weekly
  1: repeat, use defined dates
  2: repeat, hourly
54 eventFlags Integer ??? (needs more research -click)
 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)

6.0.1.18179

struct HolidaysRec {
  uint32_t m_ID;
  uint32_t m_duration[10];
  uint32_t m_date[26];
  uint32_t m_region;
  uint32_t m_looping;
  uint32_t m_calendarFlags[10];
  uint32_t m_holidayNameID;
  uint32_t m_holidayDescriptionID;
  stringref m_textureFilename;
  uint32_t m_priority;
  uint32_t m_calendarFilterType;
  uint32_t m_flags;  // &1: use region time
};