Login Required

Discord authentication is required to use the Textbox Generator. Please log in to continue.

Log In with Discord

Textbox Generator

Create, animate, and save custom OneShot dialogues.

Generation Options
Multiple panels force animation.


Preview

Ready to generate!

Generated Textbox

Preset Actions
Save your current timeline
to load it easily later.

Panel Timeline 0/30

Your timeline is empty!

Click "Add Panel" to get started.

My Custom Sprites 0/30

My Saved Presets 0/25

Global Settings

OneShot Font Style
Enabled: Crisp pixel font. Disabled: Smoothed modern font.
Transparent Background
Makes the inner black area of the textbox semi-transparent.
Animated Export Format
WEBP is highly recommended for smaller file sizes and perfect sprite support.
GIF format has poorer colors, larger file sizes, longer generation times, and disables animated custom sprite support.
Animated by Default
Start with animation enabled for new single textboxes.
Animation Loop
Loop animated textboxes continuously.
Auto-Punctuation
Automatically slow down the typing speed slightly at punctuation marks.
Apple / iOS Users Apple's Photos app doesn't always play nicely with animated .webp files and might save them as static images. To keep the animation on your iPhone or iPad, click the download button, press the Share button, and click Save to Files. Alternatively, you can switch your export format to GIF in the Settings tab (check the GIF vs WEBP section below for differences)!

How to Use the Generator

Execution Tags

Execution tags let you control the animation directly inside your text. You can type them out manually, or use the toolbar buttons above the text editor to instantly copy a tag and paste it exactly where you need it.

I found the yellowlightbulb! def 1000ms
70 happyThis is so cool.
  • Pauses: Use [p_ms] to make the animation wait. (e.g. [p_1000] pauses for 1 second).
  • Speed: Use [s_ms] to change the typing speed. This sets the time it takes for each character to appear, so lower is faster (e.g. [s_30] is 30ms per character) and higher is slower.
  • Colors: Use [c_color] to colorize text, and [c_def] to return to normal. You can use names ([c_red]) or hex codes ([c_#ff0000]).
  • Expressions: Use [ep_id] to change sprites.

Timeline, Panel Speeds & Cut-offs

Click Add Panel to chain multiple textboxes into a single animation. The generator will stitch them together in order.

Hello world!
How are you today?
  • Animation Speed: Sets the default typing speed for the entire panel.
  • Transition Speed: Sets how long the timeline waits after the text finishes typing before it moves to the next panel.
  • You can string together a maximum of ... panels per generation.
Cut-off Warning: Textboxes have a strict limit on how much text can fit inside them. If your text is too long or has too many line breaks, the panel will light up yellow to warn you before you generate!

Custom Sprites & Presets

You can upload your own custom sprites! Everything you upload gets cropped and resized to perfectly fit the 96x96 textbox icon slot.

  • Temporary Sprites: Quick uploads for immediate use. They disappear when you refresh the page. You can have up to ... active at once.
  • Permanent Sprites: Saved to your account. You can rename them, add custom tags, and store up to ... permanent sprites.
Presets

Love your timeline? Click Save as Preset! You can save up to ... timelines to load again later without having to rewrite everything. (Note: You cannot save a preset if it uses a Temporary Sprite.)


GIF vs WEBP Formats

By default, the generator exports animated textboxes as WEBP files. I highly recommend sticking with WEBP unless you absolutely need a GIF. (You can change your default format in the Settings tab!) Here is why:

WEBP (Recommended)
  • Quality & Transparency: Supports millions of colors and semi-transparent pixels.
  • Speed & Size: Generates much faster and has a smaller file size.
  • Full Animation: Works with animated sprites.
  • Compatibility: Isn't supported everywhere (sadly).
GIF (Legacy)
  • Limited Colors: Limited to only 256 colors and does not support semi-transparent pixels.
  • Speed & Size: Generates slower and results in larger file sizes.
  • No Animated Sprites: All animated sprites will use their first frame instead of being actually animated.
  • Compatibility: Can be used on many websites and services where WEBP isn't supported.