Files
dockipelago/worlds/pokemon_crystal/docs/phone_data.md
Jonathan Tinney 7971961166
Some checks failed
Analyze modified files / flake8 (push) Failing after 2m28s
Build / build-win (push) Has been cancelled
Build / build-ubuntu2204 (push) Has been cancelled
ctest / Test C++ ubuntu-latest (push) Has been cancelled
ctest / Test C++ windows-latest (push) Has been cancelled
Analyze modified files / mypy (push) Has been cancelled
Build and Publish Docker Images / Push Docker image to Docker Hub (push) Successful in 5m4s
Native Code Static Analysis / scan-build (push) Failing after 5m2s
type check / pyright (push) Successful in 1m7s
unittests / Test Python 3.11.2 ubuntu-latest (push) Failing after 16m23s
unittests / Test Python 3.12 ubuntu-latest (push) Failing after 28m19s
unittests / Test Python 3.13 ubuntu-latest (push) Failing after 14m49s
unittests / Test hosting with 3.13 on ubuntu-latest (push) Successful in 5m0s
unittests / Test Python 3.13 macos-latest (push) Has been cancelled
unittests / Test Python 3.11 windows-latest (push) Has been cancelled
unittests / Test Python 3.13 windows-latest (push) Has been cancelled
add schedule I, sonic 1/frontiers/heroes, spirit island
2026-04-02 23:46:36 -07:00

2.4 KiB

Guidelines for PRs that add new Phone Traps

Technical Guidelines

  • Every phone call can only be a max of 1024 bytes (1kib). This will be assured via unit test. Just be aware there is a limit.
  • A line is max 18 characters long. This will be assured via unit test and validated during generation. Just be aware of the limit when writing it.
    • Note: Contractions and possessives ('d, 'l, 'm, 'r, 's, 't, 'v) use a special in-game character and count as one character instead of two.
  • Each section (paragraph) is up to 3 lines long. The text box will reset after each section.
  • When using RIVAL or PLAYER variables, assume they are the max of 7 characters.
  • We cannot add new callers. The available callers are:
    • none
    • mom
    • bikeshop
    • bill
    • elm
    • withheld
    • bank_of_mom
    • brock
    • eusine
    • out_of_area

The basic phone scripts are defined in data/phone_data.yaml.

Each script follows the convention:

sample_script:
  caller: out_of_area
  script:
    - |
      The quick brown
      fox jumps over
      the lazy dog.
    - |
      The placeholders
      <player>, <rival>,
      and <POKE> may be used.

The script is identified as "sample_script", and the call is from "OUT OF AREA". Each new paragraph is denoted with YAML syntax - | which starts a new array member as a multi-line literal scalar. It is strongly recommended to use this for readability and to avoid accidental YAML special behavior.

The placeholder tags have these effects:

Placeholder Effect Size
<player> Player name 7
<rival> Rival name 7
<POKE> Literal "POKÉ" 4

Content Guidelines

  • Look at the original 16 phone traps. We want the kind of humor to be adjacent to that.
  • The humor has to be funny without context. Except Pokémon humor - you may assume everyone knows all Pokémon lore.
  • The phone traps do not have to be Pokémon-related.
  • They have to be SFW (appropriate for 17 years old).
  • They can contain references to copyrighted content. They cannot contain copyrighted content.

Submission Considerations

  • Only submit ONE Phone Trap per Pull Request
  • A submission has to be approved by at least 5 users by giving a "Thumbs Up" reaction on the PR
  • Two of these approvals need to be @gerbiljames and @palex00
  • This requirement may change as we learn with the system