> For the complete documentation index, see [llms.txt](https://axiomemu.gitbook.io/docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://axiomemu.gitbook.io/docs/data/event/bloodcastle.md).

# BloodCastle.dat

Blood Castle event configuration: schedule, timing windows, per-level experience and money rewards, gate/statue HP scaling, and optional coin rewards.

## File Location

```
Data/Event/BloodCastle.dat
```

Loaded once at GameServer startup. Gated by [Event.dat](/docs/gameserver/event-dat.md#blood-castle) `BloodCastleEvent`. Changes require a restart.

## Event Summary

Blood Castle has 8 tiers (0-7), each mapped to a dedicated instance map (maps 11-17 plus map 52 for tier 7). Which tier a character can enter is decided by [configurable bracket bounds](/docs/gameserver/event-dat.md#bracket-entry-gates) on level, reset, grand reset, and master reset.

The vanilla hardcoded brackets are used **only** when every `BloodCastleTier<N>...` key in Event.dat is `-1` (untouched). If any tier on any bound is set, the engine reads the configured bounds for every tier of this event and syncs them to the client so entry dialogs and ticket tooltips reflect the live config.

**Vanilla fallback brackets** (active when Event.dat is untouched):

| Tier | DK / BK / ME / MU / SM / GM / ELF / MUSE / HE / SUM / BS Level | MG / DL / RF Level                     |
| ---- | -------------------------------------------------------------- | -------------------------------------- |
| 0    | 15 - 80                                                        | 10 - 60                                |
| 1    | 81 - 130                                                       | 61 - 110                               |
| 2    | 131 - 180                                                      | 111 - 160                              |
| 3    | 181 - 230                                                      | 161 - 210                              |
| 4    | 231 - 280                                                      | 211 - 260                              |
| 5    | 281 - 330                                                      | 261 - 310                              |
| 6    | 331 - MaxLevel                                                 | 311 - MaxLevel                         |
| 7    | Any character with 2nd or later Master (ChangeUp >= 2)         | Any character with 2nd or later Master |

A player may only enter the tier matching their bracket. Entry requires the Scroll of Archangel ticket (item 13, 18, whose item-level equals tier + 1) or a Premium ticket (item 13, 47). The party leader triggers entry for the whole party; the party must match the tier. Set `BloodCastleMasterAnyTier = 1` to let master characters pick any tier; set `BloodCastlePerIpCharCap` to limit alt-stacking from one IP.

## Sections

Sections are numbered 0-5 and terminated with `end`.

### Section 0 - Timing

```
0
//WarningTime   NotifyTime   EventTime   CloseTime
5               1            15          4
end
```

| Column        | Unit    | Effect                                                                                                      |
| ------------- | ------- | ----------------------------------------------------------------------------------------------------------- |
| `WarningTime` | minutes | Length of the pre-event window during which the minute-countdown is broadcast and players may enter         |
| `NotifyTime`  | minutes | Short entry-open announcement window                                                                        |
| `EventTime`   | minutes | Main event duration (party must break the gate, kill the boss, and destroy the Crown Statue before it ends) |
| `CloseTime`   | minutes | Post-event hold before survivors are teleported out and the instance is cleaned                             |

### Section 1 - Schedule

```
1
//Year   Month   Day   DoW   Hour   Minute   Second
*        *       *     *     0      0        0
*        *       *     *     2      0        0
...
end
```

Each row is one scheduled start. `*` means "any". The shipped template runs 12 times per day on even hours (00:00, 02:00, ..., 22:00).

| Column   | Type        | Meaning                                |
| -------- | ----------- | -------------------------------------- |
| `Year`   | int or `*`  | 4-digit year                           |
| `Month`  | 1-12 or `*` | Month                                  |
| `Day`    | 1-31 or `*` | Day of month                           |
| `DoW`    | 1-7 or `*`  | Day of week (1 = Sunday, 7 = Saturday) |
| `Hour`   | 0-23 or `*` | Hour                                   |
| `Minute` | 0-59 or `*` | Minute                                 |
| `Second` | 0-59 or `*` | Second                                 |

### Section 2 - Experience Rewards

Per-tier XP granted at event end.

```
2
//Level   ExperienceTable1   ExperienceTable2
0         20000              5000
1         50000              10000
...
7         130000             40000
end
```

| Column             | Effect                                                                                               |
| ------------------ | ---------------------------------------------------------------------------------------------------- |
| `Level`            | Blood Castle tier (0-7)                                                                              |
| `ExperienceTable1` | XP for the winner (the player who destroyed the Crown Statue) and every member of the winner's party |
| `ExperienceTable2` | XP for every other surviving participant                                                             |

The final granted XP is further multiplied by the account-level event-XP rate from [Common.dat](/docs/gameserver/common-dat.md).

### Section 3 - Money Rewards

Same tier layout as section 2. The winner and winner's party receive `MoneyTable1`; other survivors receive `MoneyTable2`.

```
3
//Level   MoneyTable1   MoneyTable2
0         20000         10000
...
7         350000        160000
end
```

### Section 4 - Gate and Statue HP

```
4
//Level   GateNpcLife   StatueNpcLife
0         65000         150000
...
7         345000        650000
end
```

| Column          | Effect                                                                   |
| --------------- | ------------------------------------------------------------------------ |
| `Level`         | Blood Castle tier                                                        |
| `GateNpcLife`   | HP of the entrance gate NPC the party must break to reach the inner zone |
| `StatueNpcLife` | HP of the Crown Statue NPC; destroying it ends the event with a winner   |

Gate and Statue are spawned as monsters: their monster class rows are defined in [Monster.txt](/docs/data/monster/monster.md). The HP values configured here override whatever is in Monster.txt for those NPC classes when they are spawned by Blood Castle.

### Section 5 - Coin Rewards

```
5
//Level   WC   WP   GP
0         0    0    0
...
7         0    0    0
end
```

Per-tier cash-coin reward paid to the winner and the winner's party when the event is completed. Three columns: WCoin (WC), WCoin-Premium (WP), Goblin Point (GP). All zero in the shipped template.

## Cross-File Dependencies

| Value                          | Related in                                                                              |
| ------------------------------ | --------------------------------------------------------------------------------------- |
| Enable flag                    | [Event.dat](/docs/gameserver/event-dat.md#blood-castle) `BloodCastleEvent`              |
| Player cap per instance        | [Event.dat](/docs/gameserver/event-dat.md#blood-castle) `BloodCastleMaxUser`            |
| Entry ticket drops and recipes | [ChaosMix plugin](/docs/data/plugins/chaosmix/recipes.md) (Scroll of Archangel recipes) |
| Instance map rules             | [MapManager.xml](/docs/data/mapmanager.md) entries for maps 11-17 and 52                |
| Gate and Statue NPC stats      | [Monster.txt](/docs/data/monster/monster.md) (HP is overridden by section 4 above)      |
| Completion reward bags         | Event item bags 12-19 in [EventItemBag](/docs/data/eventitembag.md)                     |

## Common Issues

* **Event starts but no monsters spawn** - the Gate/Statue monster classes referenced by Blood Castle are missing from [Monster.txt](/docs/data/monster/monster.md), or [MapServerInfo](/docs/data/mapserverinfo.md) does not place them on the instance maps.
* **Players can enter but timer never counts down** - `EventTime` is `0`.
* **Winners get no XP/money** - section 2 or 3 row for that tier is all-zero; check the tier rows.
* **Event runs too often / never** - section 1 schedule has a row for every hour of the day, or no rows match the current time.
* **Only some players get the high reward** - by design: only the player who destroyed the Crown Statue and members of that player's party receive `Table1`. Solo participants outside that party receive `Table2`.
* **Party cannot enter even with tickets** - all members must be in the class/level bracket matching the tier on the ticket; any member out of bracket blocks the entry.
