OpenPeon

Create a Sound Pack

Build a CESP-compatible pack in five steps.

1. Gather your sounds

You need audio files for at least a few CESP categories. Game voice lines, movie quotes, or original recordings all work. Aim for 2-3 sounds per category for variety.

Requirements:

  • Formats: .wav, .mp3, or .ogg
  • Max 1 MB per file, 50 MB total
  • Filenames: letters, numbers, dots, hyphens, underscores only
  • Short clips work best (1-5 seconds)

2. Create directory structure

my-pack/
  openpeon.json
  sounds/
    greeting.mp3
    done.mp3
    error.mp3
    attention.mp3

3. Write your manifest

Create an openpeon.json at the pack root. Here is a starter template:

openpeon.json
{
  "cesp_version": "1.0",
  "name": "my-pack",
  "display_name": "My Sound Pack",
  "version": "1.0.0",
  "description": "Short description of your pack",
  "author": {
    "name": "Your Name",
    "github": "your-github-username"
  },
  "license": "CC-BY-NC-4.0",
  "language": "en",
  "categories": {
    "session.start": {
      "sounds": [
        { "file": "sounds/greeting.mp3", "label": "Hello!" }
      ]
    },
    "task.complete": {
      "sounds": [
        { "file": "sounds/done.mp3", "label": "Task done" }
      ]
    },
    "task.error": {
      "sounds": [
        { "file": "sounds/error.mp3", "label": "Oops" }
      ]
    },
    "input.required": {
      "sounds": [
        { "file": "sounds/attention.mp3", "label": "Need input" }
      ]
    }
  }
}

4. Publish to GitHub

Create a public GitHub repo for your pack (e.g., yourname/openpeon-mypack). Push your files and tag a release:

git init && git add -A && git commit -m "Initial commit"
git remote add origin https://github.com/yourname/openpeon-mypack.git
git push -u origin main
git tag v1.0.0 && git push origin v1.0.0

5. Register your pack

Submit your pack to the OpenPeon registry so it can be discovered and installed:

  1. Fork PeonPing/registry
  2. Add your pack entry to index.json (keep alphabetical order)
  3. Open a pull request — CI will validate your entry

See the registry contributing guide for the full entry format and submission details.

Need more details on the manifest format?

Read the full spec