PURPOSE
Static configuration module exposing the constants that define the weapon-slot taxonomy and the player-level XP curve. Pure data, no behavior.
OWNS
WEAPON_SLOT_TYPES: ordered list of slot category strings —forward,seeking,area,special.MAX_WEAPON_SLOTS: cap on equipped weapons.MAX_NON_WEAPON_SLOTS: cap on equipped non-weapon items.MAX_TOTAL_SLOTS: aggregate equip cap.WEAPON_BOX_SIT_TIME: seconds a weapon pickup box lingers before despawn / auto-collect.XP_BASE: XP required to reach level 2 (curve anchor).XP_SCALE: geometric multiplier applied to each subsequent level’s XP requirement.LEVEL_UP_CHOICES: number of upgrade options offered per level-up.SCALING_DIMINISH_K: diminishing-returns constant used by stat-scaling math.
READS FROM
Nothing. No imports, no dependencies.
PUSHES TO
Nothing directly. Constants are consumed by downstream callers (level/XP systems, slot-management UI, weapon-box pickup logic, scaling math). This file does not invoke them.
DOES NOT
- Define weapon stats, IDs, or behavior.
- Compute XP thresholds, level-up choices, or scaling curves.
- Hold runtime state.
- Mutate any of its exported values.
Signals
None. Module emits no events and subscribes to none.
Entry points
Per-symbol export const declarations. Importers reach in by name; there is no default export and no factory function.
Pattern notes
- “Content in data tables, behavior in code” — pure constants file, deliberately small.
- Every magic number used by the leveling and slot systems is named here so callers never inline literals.
XP_BASE(84) +XP_SCALE(1.15) together define the XP curve as a geometric series.SCALING_DIMINISH_K(10) is shared by any stat that uses the standard diminishing-returns formula — keeping it here ensures one source of truth across systems.- File name uses a leading underscore prefix, marking it as a config fragment intended for grouped import rather than a standalone module.