> 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/monster/kanturumonstersetbase.md).

# KanturuMonsterSetBase

Spawn list used by the Kanturu event. Loaded once at GameServer startup, separately from the standard `MonsterSetBase/` folder, and held in a dedicated 200-entry table that only the Kanturu state machine reads. Entries are organized into stage groups; each group is spawned on demand when the Kanturu event enters that stage.

## File Location

```
Data/Monster/KanturuMonsterSetBase.xml
```

Loaded once at GameServer startup. Changes require a restart.

## Schema

```xml
<KanturuMonsterSetBase>
    <Monster Group="..." Type="..." Map="..." Dis="..."
             X="..." Y="..." Dir="..." />
</KanturuMonsterSetBase>
```

## Attributes

| Attribute | Type      | Effect                                                                                                                                                                       |
| --------- | --------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Group`   | int (0-6) | Kanturu stage group. Entries with a given group are spawned as a batch when the state machine calls for that group (see table below)                                         |
| `Type`    | int       | Monster class Index from [Monster.xml](/docs/data/monster/monster.md). Type 364 is the Nightmare / Maya statue and is tracked as a dedicated object rather than a common mob |
| `Map`     | int       | Map index. Always 39 (Kanturu 3) in the shipped file                                                                                                                         |
| `Dis`     | int       | Roam distance in tiles. `0` = static (statue, gates), typically `30` for roaming monsters                                                                                    |
| `X` / `Y` | int       | Spawn coordinates                                                                                                                                                            |
| `Dir`     | int       | Facing index (0-7). `-1` requests a random facing                                                                                                                            |

{% hint style="warning" %}
**Dir="\*" does not yield a random facing in this loader.** The XML loader parses `Dir` as an integer; any non-numeric value including `*` becomes `0`, not a random roll. The shipped file uses `Dir="*"` throughout, so every Kanturu monster effectively spawns facing 0. To actually get random facings, use `Dir="-1"` (the BYTE value wraps to `0xFF`, which the spawn code recognizes as "roll 0-7").
{% endhint %}

## Stage Groups

The Kanturu event's internal state machine calls into this spawn table by group number. The mapping is fixed in code.

| Group | Triggered during                                      | Intended content                              |
| ----- | ----------------------------------------------------- | --------------------------------------------- |
| 0     | Battle of Maya - Stage 1 start and end-of-cycle reset | Maya statue (Type 364) and Maya Hand monsters |
| 1     | Battle of Maya - end of Stage 2 cycle                 | Hand monsters for the Stage 2 reset           |
| 2     | Battle of Nightmare start                             | Nightmare-phase monsters on map 39            |
| 3     | Battle of Maya - Stage 2 start                        | Stage 2 Hand monsters                         |
| 4     | Battle of Maya - Stage 3 start                        | Stage 3 Hand monsters                         |
| 5     | Battle of Maya - end of Stage 3 cycle                 | Stage 3 reset spawns                          |
| 6     | In-combat summon from a Maya Hand skill               | Re-spawns added by AI actions mid-fight       |

Entries with a matching `Group` and `Type != 0` are passed to the generic monster spawner. Type 364 entries are additionally tracked as the "Maya" object so the Battle-of-Maya logic can reference the statue by object index.

## How It Differs from MonsterSetBase

[`MonsterSetBase/`](/docs/data/monster/monstersetbase.md) defines permanent per-map spawns that spawn at map load and respawn automatically on death. `KanturuMonsterSetBase.xml` holds spawns the Kanturu event manages on its own schedule: batches appear when a stage starts or rolls, and they are cleared before the next batch is spawned. Each entry lives in a separate 200-slot table, not the shared 10000-slot `MonsterSetBase` pool.

## Cross-File Dependencies

| Value    | Related in                                                                                                           |
| -------- | -------------------------------------------------------------------------------------------------------------------- |
| `Type`   | [Monster.xml](/docs/data/monster/monster.md) (monster stat definitions)                                              |
| `Group`  | [Kanturu.dat](/docs/data/event/kanturu.md) stage timings feed the state machine that selects groups                  |
| `Map=39` | [MapManager.xml](/docs/data/mapmanager.md) (Kanturu 3 must be enabled on this GameServer for entries to take effect) |

## Common Issues

* **Nightmare monsters never appear** - Group values do not match the stage the event reached, or map 39 is not enabled in MapManager
* **All monsters face the same direction** - `Dir="*"` in the XML parses as 0; use `Dir="-1"` for random
* **Monsters pile up at one spot** - multiple entries share the same X/Y; spread coordinates out
* **Monsters wander off the fight area** - `Dis` too high; reduce to keep them in the arena
* **Only 200 entries are honored** - the Kanturu spawn table is capped at 200 total across all groups; entries past the limit are silently dropped

## Related Pages

* [MonsterSetBase per-map spawns](/docs/data/monster/monstersetbase.md)
* [Kanturu event data](/docs/data/event/kanturu.md)
* [MapManager](/docs/data/mapmanager.md)
