Skip to main content
Duck Shot wiki

Wiki

Duck Shot Wiki

Public setup, weapon authoring, combat systems, particles, admin help, and troubleshooting for Duck Shot.

Getting Started

Start here for installation, first boot, and your first working Duck Shot weapon.

Example Library and Pack Planning

Separate the public starter pack, the deeper example library, and your own server-only content so the docs stay honest and useful.

Server Operations

Handle permissions, runtime tools, integrations, and real troubleshooting on live servers.

Weapon Authoring

Stage Templates for Sounds, Particles, and Conditions

Use the built-in list templates to add staged sounds, staged particles, held effects, and condition rules without guessing the shape.

Duck Shot's editor templates do not only create whole weapons. They also provide reusable list entries for staged sounds, staged particles, and condition-driven behavior.

That matters because these smaller entries are what make a weapon feel polished without turning the file into a wall of guesswork.

What these templates are for

Use the stage templates when you want to add:

  • a reload click or bolt accent
  • an echo tail after a main gunshot
  • a delayed smoke trail after a flash
  • a quick reusable condition rule
  • a simple held effect for heavy weapons or support items

The big benefit is consistency. Instead of hand-typing every list entry from scratch, you start from a shape that already works.

Sound stage templates

The default sound-stage templates already include patterns such as:

  • a single mechanical click
  • a lock-on double beep
  • a muffled tail
  • an echo tail

Example shape:

YAML
sounds:
  shoot:
    audience: WORLD
    stages:
      - time: 0
        key: minecraft:lever.action
        volume: 1.0
        pitch: 1.0
      - time: 4
        key: minecraft:entity.firework_rocket.twinkle_far
        volume: 0.6
        pitch: 1.25

How to read that:

  • the first stage is the immediate cue
  • the second stage is a delayed tail
  • different time values let one action feel sharper, heavier, or more cinematic

Good uses:

  • action and reload accents
  • lock-on confirmation
  • launch tails
  • indoor echo flavor

Go deeper here:

Particle stage templates

The default particle-stage templates already include patterns such as:

  • a small flash
  • a smoke tail
  • a spark burst
  • a particles_v2 profile hook

Example shape:

YAML
particles:
  shoot:
    stages:
      - time: 0
        particle: FLASH
        count: 1
        offset_x: 0.0
        offset_y: 0.0
        offset_z: 0.0
        extra: 0.0
      - time: 2
        particle: SMOKE_NORMAL
        count: 8
        offset_x: 0.1
        offset_y: 0.1
        offset_z: 0.1
        extra: 0.01

How to read that:

  • the first stage handles the immediate pop
  • the second stage gives the weapon a lingering tail
  • the offsets control how tight or wide the effect feels

If you want to move into the modern reusable effect stack, use a profile hint instead:

YAML
particles:
  impact:
    stages:
      - time: 0
        profile: impact.dust.small
        count: 1
        offset_x: 0.0
        offset_y: 0.0
        offset_z: 0.0
        extra: 0.0

Go deeper here:

Condition templates

Condition templates are useful when a weapon should react differently based on stance, footing, offhand items, or other state checks.

Example rule:

YAML
conditions:
  rules:
    - id: block_ads_yellow_glazed
      priority: 100
      events:
        - ADS_START
      when:
        block_under:
          any:
            - YELLOW_GLAZED_TERRACOTTA
      actions:
        block:
          ads: true
        notify:
          actionbar: "<red>ADS blocked on yellow glazed terracotta."

What this does:

  • listens for ADS_START
  • checks the block under the player
  • blocks aiming only in that situation
  • gives the player a readable message

That same structure can be adapted for:

  • underwater restrictions
  • sprint penalties
  • crouch-only actions
  • material-specific feedback

Go deeper here:

Held effect templates

The list templates also include simple held-effect entries for heavier items.

Example:

YAML
held_effects:
  effects:
    - type: POTION
      potion: SLOWNESS
      amplifier: 0
      ambient: false
      particles: false
      icon: false

Good uses:

  • heavy sniper movement penalties
  • bulky launcher slowdown
  • support-tool carry tradeoffs

Keep held effects readable and intentional. If every item adds multiple hidden penalties, the pack starts to feel arbitrary instead of tactical.

A good build order for staged polish

  1. make the item function first
  2. add one sound stage or one particle stage at a time
  3. test the timing before stacking more layers
  4. use condition rules only when the base item already reads well
  5. move repeated behavior into shared patterns instead of cloning giant blocks everywhere

That order keeps polish work from becoming the hardest part of the file.

Common mistakes

Too many stages too early

If a simple reload already has six sound stages and three particle stages, it becomes much harder to tell which part feels wrong.

Using conditions where a base config would do

Conditions are best for context-sensitive behavior, not for replacing normal baseline weapon tuning.

Treating staged particles and particles_v2 as competing systems

Use staged particles for local readable timing. Use particles_v2 profiles when you want reusable libraries and bigger cross-weapon consistency.