Dialog Menu
Official compatibility
| Element | Reference |
|---|---|
TypeWriter | Required. Use the official TypeWriter release supported by the extension release. |
| Related extensions | Install the related extensions listed on this page before using entries that depend on them. |
The Dialog Menu Extension leverages Paper's native dialog API (1.21.6+) to display interactive menus with various input types.
- Source Code — View source on GitHub.
- Official release v0.6 — Download the published JAR.
Features
- Native UI — Uses Paper Dialog API.
- Input Types — Text, Toggles, Sliders.
- Placeholders — Dynamic content support.
- Commands — Buttons execute commands.
Entries
- Actions — Paper Dialog: Display menu.
Button Types
| Type | Description | Placeholder |
|---|---|---|
| Action | Simple button | N/A |
| Trigger | Fires Typewriter entries directly | N/A |
| Input | Text field | $(<key>) (default input) |
| Toggle | On/Off switch | $(<key>) |
| Choice | Dropdown list | $(<key>) (default choice) |
| Slider | Number range | $(<key>) |
Dialog Types
| Type | Description |
|---|---|
| MULTI_ACTION | Grid of buttons (default) |
| CONFIRMATION | Vanilla yes/no window |
| NOTICE | Single-button notice |
An optional item can be showcased in the dialog body, and the after-action behaviour (close, stay open, wait) is configurable.
[!IMPORTANT] Requires Paper 1.21.6+.
User guide
- 1. Trigger Actions — Use action entries to interact with the extension: paper_dialog. Trigger them from commands, NPCs, events, or other entries. → paper_dialog
Placeholders
All placeholders use the prefix %typewriter_dialogmenu_.
| Placeholder | Description |
|---|---|
%typewriter_dialogmenu_inmenudialog% | Returns the current value for inmenudialog. |
Troubleshooting
The extension is not visible
Check that the installed release matches the supported TypeWriter release and that the related extensions listed in the compatibility section are present.
An entry is missing
In the Typewriter Web panel, use the Search bar or the + button to find or create the entry with its exact identifier. Entry IDs and field names are case-sensitive; do not translate them.
The entry saves but nothing happens
Check that the entry is connected to the trigger, command, objective, event, or menu interaction required by its type. Test with optional permissions and criteria removed, then add them back one at a time.
An integration does not work
Verify the dependency and version shown in the extension card, then check the server log for the first error. Do not replace a missing dependency with a similarly named plugin unless the extension source explicitly supports it.