ImperialGuardian.dat

Imperial Guardian event: party-run dungeon whose tier is picked from the current day of the week. Per-instance timing, default/support monster AI unit references, and a 60-row monster stat multiplier table keyed by the party's highest level tier.

File Location#

Data/Event/ImperialGuardian.dat

Loaded once at GameServer startup. Gated by Event.dat ImperialGuardianEvent. Changes require a restart.

Sections#

Section 0 - Timing#

0
//NotifyTime   EventTime   CloseTime
1              10          1
end

Minutes.

  • NotifyTime - pre-wave preparation window (used by every WAIT state).
  • EventTime - per-stage combat window (used by every PLAY state).
  • CloseTime - post-run cleanup window before the instance returns to empty.

Section 1 - AI Unit References#

1
//DefaultMonsterAIUnitNumber   SupportMonsterAIUnitNumber
72                             73
end

Two AI units used by IG monsters. Must exist in MonsterAIUnit.xml.

Section 2 - Per-Index Monster Stats#

Scaling table keyed by row index. The server picks a row from ((HighestLevel - 1) / 10) where HighestLevel is the highest combined Level + MasterLevel among the party on entry (capped at 600).

2
//Index   Level   MaxLife   DamageMin   DamageMax   Defense   AttackRate   DefenseRate
0         45      10.00     3.00        3.00        3.00      5.00         5.00
1         46      10.00     4.00        4.00        4.00      6.00         6.00
...
end

Index 0-59 in the shipped template. Each non-level column is a multiplier applied to the base monster stat, then scaled again by Event.dat ImperialGuardianDifficultRate (percent).

ColumnEffect
IndexRow ID (picked by the party's highest level tier)
LevelMonster level override for the row
MaxLifeHP multiplier
DamageMin / DamageMaxDamage range multipliers
DefenseDefense multiplier
AttackRateHit rate multiplier
DefenseRateDodge rate multiplier

Entry Rules#

Entry goes through the Jerry The Adviser NPC and enforces:

  • Event enabled in Event.dat.
  • Character level at least 15 to talk to the NPC.
  • Inventory carries the day's entry token. On Sunday the server looks for item (14,109); on any other day it looks for item (14,102) + dayOfWeek. If neither is present the server also accepts fallback tickets: item (13,127) on Sunday, item (13,126) on any other day.
  • No Imperial Guardian instance currently running (only one active instance at a time).
  • All four IG map servers (69-72) are online.
  • PK level below 4 unless PKLimitFree is set in Event.dat.

On success, the day's ticket loses one durability and the character (and every party member) is moved to the instance gate 307 + level * 5.

Tier Selection#

The tier is resolved from GetLocalTime().wDayOfWeek:

DayLevelMap
Sunday3 (hard)Imperial Guardian 4 (map 72)
Monday, Thursday0Imperial Guardian 1 (map 69)
Tuesday, Friday1Imperial Guardian 2 (map 70)
Wednesday, Saturday2Imperial Guardian 3 (map 71)

Formula: level = (dayOfWeek == 0) ? 3 : ((dayOfWeek - 1) % 3). Level 0-3 selects Imperial Guardian maps 69-72 in order.

Party Layout#

  • Up to 5 members per run (party-based; solo entry is allowed and creates a single-player instance).
  • On entry the whole party (or the solo player) is moved to the tier gate; no further joins once the instance is live.

Wave Structure#

Each run alternates WAIT (spawn/prep) and PLAY (combat) states and uses NotifyTime for WAIT and EventTime for PLAY:

  • Levels 0-2: three PLAY stages (PLAY1, PLAY2, PLAY3). The stage-3 boss is day-of-week based (one of six side bosses mapped from dayOfWeek).
  • Level 3 (Sunday, hard): four PLAY stages (PLAY1-PLAY4) ending with the main boss fight at stage 4.

On successful clear the last stage, each member receives XP: 10000 * ((HighestLevel - 1) / 10) for levels 0-2, 15000 * ((HighestLevel - 1) / 10) for level 3; that value is then multiplied by the per-account-level AddEventExperienceRate.

Boss Drops#

  • Side boss drops use the bags 088 - Imperial Guardian Side Boss 1.xml through 092 - ... Side Boss 5.xml in Data\EventItemBag\, picked by ((HighestLevel - 1) / 100) (clamped 0-4).
  • Level 3 main boss drops use 093 - Imperial Guardian Main Boss 1.xml through 097 - ... Main Boss 5.xml, picked the same way.
  • Side-boss kills also drop one day-specific token per participant (item (14,102)+dayOfWeek on Mon-Sat).

Cross-File Dependencies#

ValueRelated in
Enable flagEvent.dat ImperialGuardianEvent
Final difficulty scaleEvent.dat ImperialGuardianDifficultRate
AI unitsMonsterAIUnit.xml
Monster definitions (gates, bosses, support mobs)Monster.xml
Reward bags 88-97 (side + main boss)EventItemBag
Maps 69-72MapManager.xml

Common Issues#

  • Boss too hard or too easy - adjust ImperialGuardianDifficultRate in Event.dat first; tune per-index rows only when specific tiers stay off.
  • AI unit missing - section 1 references a unit number not in MonsterAIUnit.xml; the main and support AI both fail to attach.
  • Wrong tier opens - tier is driven by server local time's day of week; verify the server time zone, not the client's.
  • Entry silently fails - the day-of-week ticket (item 14,102+day, or 14,109 on Sunday) or a fallback Invitation (item 13,126 / 13,127) must be present; the NPC rejects players below Level 15.
  • Only one instance at a time - the system serializes IG runs globally; new entries are rejected while another run is active.

Last updated August 20, 2026