Wiki 9Minecraft Wiki 9Minecraft

Splashes (splashes.json)

Define or override the yellow bouncing splash text on the Minecraft Bedrock title screen.

5Sections
2Code examples
3Known errors

Splash text is the yellow, pulsating message displayed tilted alongside the main logo on the title screen. In a Bedrock Edition resource pack, you can add your own messages or completely replace the vanilla list by editing `splashes.json`. This is a simple way to brand an adventure map, display server announcements, or inject humor into a custom modpack.

File Location and Format

Unlike Java Edition, which reads splash texts from a plain text file where each line is a separate entry, Bedrock Edition requires a structured JSON file. This file must be named `splashes.json` and placed directly inside the root of your resource pack folder (`RP/splashes.json`), right next to `manifest.json`.

The structure of `splashes.json` is minimal. It consists of a single root JSON object containing an array named `splashes`. Every string inside this array represents one potential message that the game can randomly pick when the start screen loads.

RP/splashes.json
{
  "splashes": [
    "Welcome to the Haunted Manor!",
    "Don't forget to check your corners!",
    "Built for Bedrock!",
    "§bColored splashes work too!§r"
  ]
}

Overriding vs. Merging

When you include `splashes.json` in a resource pack, the game does not merge your array with the default vanilla splashes. Instead, the top-most resource pack in the active stack that contains `splashes.json` completely overrides the list from lower packs and the base game.

If your array contains only one string, that single message will appear on the title screen every single time the player loads the menu. If you want to keep the hundreds of vanilla splashes while sneaking a few of your own into the rotation, you must copy the entire vanilla `splashes.json` file from the default resource pack template and append your new strings to the end of that list.

Formatting Codes and Special Characters

By default, the title screen UI renders every splash string in yellow (`§e`). However, the splash renderer supports standard Minecraft section-sign (`§`) formatting codes, allowing you to change colors, make text bold, italicize words, or create garbled obfuscated text.

Because `splashes.json` is parsed as strict JSON, you also need to escape certain characters. Double quotes inside a splash string must be escaped with a backslash (`\"`), and if you want a literal backslash to appear on screen, you must type it twice (`\\`). Standard Unicode characters and emojis supported by the Bedrock font sheets can also be pasted directly into the strings, provided the file is saved with UTF-8 encoding.

CodeWhat it doesNotes
§0 - §fChanges text colorOverrides the default yellow until reset or end of string.
§lMakes text boldIncreases character thickness; keep strings short so they fit.
§oMakes text italicSlants the text even further on top of the splash tilt.
§kObfuscates textCycles random characters rapidly.
§rResets formattingReturns text back to the default unstyled state.
RP/splashes.json
{
  "splashes": [
    "§cRed Alert!",
    "§lBoldly going nowhere!",
    "Mystery: §khidden_text§r!",
    "She said, \"Watch out for Creepers!\""
  ]
}

Global vs. World Resource Packs

Where you apply your resource pack determines whether the player will ever actually see your custom splashes. The splash text is evaluated and drawn on the main start screen before any world is loaded.

If your resource pack is only attached to a specific world or template, the player will see vanilla splashes when they first launch Minecraft. Your custom splashes will only appear if the pack is activated in **Settings > Global Resources**, or briefly after the player saves and exits your custom world to return to the title screen (in cases where the game caches the world's UI resources during the transition). For full modpacks or standalone UI overhauls, always instruct players to apply the pack in Global Resources.

Length and Display Considerations

The splash text element in the vanilla JSON UI scales its font size down somewhat to accommodate longer phrases, and it will wrap onto multiple lines if a string is exceptionally long. However, very long sentences quickly become tiny, hard to read during the bouncing animation, or clip awkwardly into the main logo and menu buttons on smaller mobile screens.

For the cleanest result across phones, consoles, and PC monitors, keep individual splash entries under 35 to 40 characters. If a splash looks cramped, trim the wording rather than attempting to force line breaks with `\n`, as manual newlines can throw off the centering of the tilted text box.

Which versions this applies to

Applies to all modern Minecraft Bedrock versions (1.16.0 through 1.21+). This is a core resource pack feature and does not require any experimental toggles.

When it does not work

What you seeWhyThe fix
Custom splashes never show up; the title screen only displays vanilla splashes.Many creators coming from Java Edition place a plain text file at `RP/texts/splashes.txt`, or they put `splashes.json` inside the `RP/texts/` folder by mistake. Alternatively, the pack is only applied to a world instead of Global Resources.Move the file to the root directory of the resource pack (`RP/splashes.json`) and activate the pack under Settings > Global Resources.
The title screen shows no splash text at all, or falls back to vanilla with a Content Log error: `[Json][error] Failed to parse splashes.json`.There is a syntax error in the JSON file, most commonly a trailing comma after the last string in the `splashes` array or unescaped double quotes inside one of the messages.Remove the comma after the final entry in the array and escape any internal quotation marks using `\"`.
Section signs (`§`) or emojis appear as weird garbled characters like `§` on the title screen.The `splashes.json` file was saved with Windows-1252, ANSI, or UTF-8 with BOM encoding instead of clean UTF-8.Re-save `RP/splashes.json` in your code editor explicitly using standard **UTF-8** encoding (without BOM).

Reference, straight from the game files

Read out of the game itself, so the ids match the version you are building for.