Browse docs

Scenario Creator and Hub

Scenario drafting, runtime dispatch, sharing, ratings, thumbnails, and import workflows.

Scenario creator

Sky Fire Job includes an in-game scenario creator for building custom firefighter missions. The current creator supports:

  • Draft scenarios
  • Fire tasks
  • Oil spill tasks
  • Props, vehicles, and peds
  • Scenario copy flow
  • Runtime spawning for mixed incidents

The creator opens through /missioncreator for authorized administrators.

The Mission Creator only lists fire profiles allowed by Config.FireScenarioCreator.firePresets. Adding a material alone does not create a selectable fire type. Follow Register a custom fire type to add the material, matching fire profile, and Mission Creator preset together.

Scenario structure

The scenario editor uses separate task and decoration groupings so creators can keep operational content and scene dressing organized.

Scenario runtime can start with:

  • Fire sources
  • Oil spills
  • Mixed incidents

Scenario hub

The local scenario hub supports:

  • Search
  • Filters and sorting
  • Grid and list display
  • Author names
  • Tags
  • Import and download counters
  • Likes and dislikes
  • Thumbnail previews
  • Share flow from the editor

Hub entries are stored in sky_firejob_scenario_hub.

Sharing and thumbnails

The sharing flow allows creators to review:

  • Scenario name
  • Description
  • Generated tags
  • Content stats
  • Author name
  • Thumbnail

When available, the resource uses screenshot-basic for thumbnail capture.

Random triggers and dispatch

Config.FireScenarioCreator can optionally:

  • Trigger scenarios automatically on an interval
  • Use chance-based activation
  • Require a minimum on-duty firefighter count
  • Use separate jobs for staffing eligibility and Dispatch recipients

Keep random triggers disabled until your scenario pool and staffing rules are fully tested.

Mission-specific Dispatch jobs

Each entry in Config.FireScenarioCreator.randomTrigger.missions supports two different job lists:

FieldPurpose
jobsJobs whose on-duty staff satisfy that mission's automatic-trigger requirement
dispatchJobsJobs that receive the Dispatch incident when that mission starts

Dispatch recipients are resolved in this order:

  1. The mission's non-empty dispatchJobs list.
  2. The global Config.FireScenarioCreator.dispatch.jobs list.
  3. All configured Fire Job names when both lists are empty.

This lets a mission require on-duty firefighters from one set of jobs while notifying a broader or different response group. In /jobconfig, open Automatic Missions, edit the mission row's Dispatch jobs value, and use Dispatch → Dispatch target jobs for the global fallback. The global dispatch.enabled switch must remain enabled for a Dispatch incident to be created.

Saved automatic-mission rows from before dispatchJobs existed are initialized from their previous jobs value so an update does not silently change their recipients. Review both columns after updating, especially when staffing jobs and notified jobs should differ.