Skip to content

The Director ​

The Director is the game's pacing engine. It sits above the individual pawns and decides when something should happen to you: a patrol, a raid, a rival hit. It is the storyteller that improvises the pressure of your run, and it is fully data-driven and moddable.

The threat score ​

Every tickInterval ticks, the Director computes a single threat score from your current situation:

threatScore =
    (gangMemberCash / cashNormalize)  x  cashWeight
  + (recent sales activity)           x  activityWeight
  + (ticks since last event)          x  pressureBuildup
  + random(0, jitterRange)            x  jitterFactor

When threatScore > eventThreshold, the Director picks an event from a weighted table, forms a squad, assigns roles, and sends them on a mission.

The four inputs ​

ComponentMeasuresDefault weightRaise it to...
CashTotal gang cash, normalizedcashWeight: 0.4Punish wealth. Empire builders get heat faster.
ActivityRecent drug salesactivityWeight: 0.3Punish active dealing.
PressureTime since the last eventpressureBuildup: 0.3Make events inevitable even if you go quiet.
JitterRandom noisejitterFactor: 0.1More unpredictability.

The key knobs ​

KnobDefault (playtest)Effect
eventThreshold0.25Score needed to fire. Lower = more frequent.
cashNormalize3000Cash divisor. Lower = small money matters more.
globalCooldownTicks300Minimum ticks between any two events.
tickInterval100How often the Director evaluates.
spawnOffsetRadius800How far from the target a squad spawns.

NOTE

The playtest baseline lowers eventThreshold to 0.25 and cashNormalize to 3000 so the world feels alive early, before the drug economy is running. See the tuning scenarios below.

Time of day ​

Every event's effective weight is baseWeight x timeOfDayMultiplier. Time of day matters as much as base weight.

PeriodFavors
NightRival attacks, ambushes, building damage
DayPolice sweeps, patrols, suspicious-activity sweeps, raids

The game starts at night by default, so the opening hours lean toward rival pressure, not police.

The event catalog ​

The Director has three kinds of spawn behavior:

Spawn kindLifecyclePlayer notified
Mission eventSquad is created, does its job, despawns after a linger delayDepends on event
Ambient spawnEntity is permanent, no mission or timer (refills population)Yes, with a HUD message
Population seedSet at game start, refilled quietly if it dropsNo

Threat events ​

EventSquad -> TargetBase weightPer-type cooldown
rival_gang_attackRivals -> crew0.4900
rival_ambushRivals -> crew (spawn ahead of path)0.2-
rival_chaseRivals -> crew0.15-
fbi_raidRaid agents -> your building0.31800
swat_raidRaid agents -> your building0.251800
police_sweepPolice -> crew0.3600
deploy_corrupt_officersCorrupt cops -> crew0.3-
deploy_distributorsDistributor -> crew0.3-
deploy_debtorsDebtor -> crew0.25-
building_damageRivals -> your building0.15-

Ambient population events ​

EventSpawnsCooldownWhy
spawn_trafficker1-2 traffickers at a random spot1200Refills drug supply. Traffickers feel like a resource.
spawn_addict1-3 addicts at a random spot800Refills demand. Recovers faster than supply.

Ambient police presence ​

EventBehaviorCooldown
street_patrol1-2 officers approach a member, no weapons, observe400
suspicious_activity_sweep2-3 officers target the highest-Notoriety member700

Player-triggered events ​

Events the player initiates (turf assault, hit a rival boss, etc.) have weight 0 (never fire on their own) and cooldown 0 (fire immediately on command).

Feature flags ​

Whole classes of events can be switched off in config:

FlagDisables
ambient_populationspawn_trafficker, spawn_addict (world stops refilling)
ambient_police_presencestreet_patrol, suspicious_activity_sweep
rival_gang_attacksall rival events
police_raidsfbi_raid, swat_raid, police_sweep
police_arrestsarrest and police-fight events
corrupt_officersdeploy_corrupt_officers
distributorsdeploy_distributors
debtorsdeploy_debtors

Campaign progression: honeymoon to kingpin ​

The Director does not hit a new player at full force. It follows a phase schedule keyed to the in-game day. Early on you are invisible; over time the city, then the police, then the feds all come online. This is the ramp from small-time to kingpin.

PhaseDaysWhat is activeThe feel
Honeymoon1 to 5Nothing. No rivals, no police, no feds.A true grace period to get started and learn.
Rising Heat6 to 15Rivals start testing you; local police and SWAT come online. No FBI yet.The city notices you.
Open Market16 to 30Rivals and local forces at full cadence; heavy events still cooled down to avoid a spike. FBI still held back.Training wheels off.
End-Game Warfare31+Everything. Federal task force deploys alongside full rivals and police. All cooldowns at base.Gloves off. The Director has full autonomy.

Each phase sets feature flags (which event classes are allowed) and can tighten per-type cooldowns for that window, then restore them on transition. Phases are evaluated in order, and the schedule is a single data file; removing it disables phase gating entirely and lets the Director run unphased from day one.

Adaptive difficulty ​

On top of the fixed phase ramp, the Director can adapt to how you are doing. An adaptation level rises while your crew survives and falls when you take losses. The tougher you look, the tougher the crews it sends.

KnobDefaultEffect
enabledoffWhether adaptation runs at all
gainOnSurvival0.05How fast the level rises while you are healthy
decayOnLoss0.15How fast it falls when you take losses (falls faster than it rises)
healthMin / healthMax60 / 100The health range freshly spawned rivals are scaled into as the level climbs

With adaptation on, a player who steamrolls early fights steadily tougher rivals; a player who is bleeding gets a lighter touch. It is a rubber band, not a fixed slope.

Tuning the difficulty ​

The whole pressure curve is data, so you (or a modder, or a playtester in a tuning session) can reshape it:

LeverWhereWhat it changes
Threat weights and thresholdDirector config blockHow fast pressure builds and how high it must go to fire
Phase schedulePhase schedule fileWhen each phase starts and what it unlocks
AdaptationDirector config blockWhether and how hard the Director rubber-bands to your performance
Feature flagsConfig features blockSwitch whole event classes on or off
PresetsSaved preset filesSnapshot a whole tuned config and share it (see Director Tools)

Full key list is in Economy Config. The playtester workflow for saving, sharing, and debug-firing is on the Director Tools page.

Squad formation ​

When an event fires:

  1. Query entities of the event's type.
  2. Keep only those available (not paused, not already on a mission, healthy enough).
  3. Pick the squad, nearest to the target, up to the event's squad size.
  4. Assign roles from the event's role template.

Events with spawnAtDestination spawn the squad where the target is walking to, creating ambushes. This is a general mechanism; any event can use it with no new code.

Tuning recipes ​

ProblemFix
Too quiet, nothing happensLower eventThreshold to 0.15-0.20, lower globalCooldownTicks to 150, raise pressureBuildup.
Relentless and overwhelmingRaise eventThreshold to 0.4-0.6, raise globalCooldownTicks to 500-600, raise per-type cooldowns.
Rivals attack but no policeConfirm police_raids and ambient_police_presence are on; raise police_sweep weight; start at daytime.
Events fire but feel toothlessRaise squad maxCount, shorten mission TTL, reduce linger.

Relationship to the rest of the game ​

The Director does not touch traits directly. It creates missions, which cause actions, which move traits and raise heat. It is the pressure that makes the core loop turn.

Modding ​

Director events are defined in a data file and tuned in config. See Modding: economy and tuning for where the knobs live and how to add an event.

Community documentation for BBox: Kingpin.