# mod-hirelings

FFXIV-retainer-inspired system, reflavored goblin-native: hire NPC "Hirelings," send them on
timed jobs, get crafting materials/rare minions/etc back via mail whether or not you're online
when the timer ends. Does **not** replace WoW's existing bank -- this is a venture/courier system,
not extra storage. See `PLAN.md` for the full roadmap and design reasoning.

## Current status: v0 (hello-world scaffold)

No hireling gameplay yet -- this commit just proves the module wiring works:

- `Hirelings.Enable` config flag is read correctly (`conf/mod_hirelings.conf.dist`).
- `Hirelings_World::OnStartup` logs a confirmation line so a successful load is visible in the
  server log.
- `.hireling` (`SEC_PLAYER`) registers and responds with a placeholder message, proving command
  registration works end-to-end.

Everything else -- creating hirelings, the summon object, missions -- is planned but not built.
See `PLAN.md`'s roadmap.

## Flavor

**Hirelings**, not "Retainers" -- avoids importing FFXIV terminology wholesale. Mail/courier
identity is themed around the **Steamwheedle Cartel** (the neutral goblin trading company already
in WoW lore): hirelings are goblin-contracted agents, which gives an in-fiction reason jobs
resolve via mail from an off-screen courier network. Multiple pickable factions/cartels is a
later idea, not v0 scope -- see PLAN.md.

## Config

See `conf/mod_hirelings.conf.dist`:

- `Hirelings.Enable` (default `1`) -- toggles the whole module.

## Custom ID ranges

Reserved, not yet consumed by any SQL:

- **Spell IDs 920000-920099**
- **Creature / npc_text / gameobject IDs 921000-921099**

Picked as the next clean block after `mod-dragon-legacy` (900000-901099) and
`mod-waygate-network` (910000-911001) -- check both modules' READMEs before reassigning.