Skip to main content
DuckShell NPCs wiki

Wiki

DuckShell NPCs Wiki

NPC systems, patrols, spawners, combat AI, dialogue delivery, and live-server operations for the DuckShell stack.

Getting Started

Start here for first boot, file layout, and the admin surfaces that control the rest of the plugin.

AI and Combat

Separate global AI policy, per-type identity, awareness, cover, and personality presets without turning the roster into guesswork.

World Content

Keep patrol routes and persistent spawners as separate world systems with their own save files and editor workflows.

Presentation and Ecosystem

Handle disguises, skins, bubbles, dialogue delivery, and cross-plugin cooperation without burying those concerns in AI pages.

Runtime and Troubleshooting

Run live-server debug, Spark, corpse-loot checks, and civilian-arming validation without losing track of the real problem.

World Content

Patrol Editor and Spawner Workflows

Learn the real command, GUI, hotbar-editor, and boundary workflow for placing world encounter content cleanly.

DuckShell exposes patrol and spawner content through actual operator workflows, not just YAML editing. That matters because these are world-authored systems and they are much easier to tune in place.

Patrol workflow

Key patrol commands from the current source docs:

  • /duckshell patrol gui
  • /duckshell patrol edit
  • /duckshell patrol create <shellType>

The patrol GUI supports actions such as:

  • teleporting to the patrol spawn
  • opening the route editor
  • enabling or disabling the patrol
  • changing respawn delay
  • changing the shell type
  • forcing a respawn
  • deleting the patrol

Patrol hotbar editor

The in-world patrol editor is built around hotbar tools for:

  • adding waypoints
  • removing the nearest waypoint
  • setting wait time
  • toggling route loop
  • adjusting route speed
  • adjusting arrive distance
  • saving immediately
  • exiting the editor

This is the right place to tune route feel instead of guessing waypoint spacing by hand in YAML.

Patrol boundary mode

The patrol editor also includes a boundary mode toggled with swap-hands. That lets you author:

  • corner A
  • corner B
  • boundary enable or disable
  • clear boundary
  • auto-fit to route with padding
  • expand or shrink the boundary

This is one of the most important tools for keeping patrols believable during combat breaks.

Spawner workflow

Spawner commands from the current docs include:

  • /duckshell spawner
  • /duckshell spawner list
  • /duckshell spawner create <id> [shelltype]
  • /duckshell spawner edit <id>
  • /duckshell spawner tp <id>
  • /duckshell spawner remove <id>
  • /duckshell spawner visualize <id>

That means spawners already support both GUI browsing and direct operator control.

Spawner editor model

The spawner toolset is split between:

  • the browser GUI
  • the edit GUI
  • the in-world toolbar editor

That split is useful because there is a difference between:

  • choosing what a spawner is
  • changing its numeric settings
  • placing and visualizing it in the world

Safe authoring workflow for world content

Use this order:

  1. create the shell type first
  2. place one spawner
  3. validate alive-count behavior
  4. add a patrol only if the location really needs route movement
  5. then test player approach, combat break, and recovery

That order keeps shell-definition bugs separate from world-content bugs.