SkillAgentSearch skills...

MinecraftTitleGenerator

Textures and fonts for the Minecraft Title Generator Blockbench plugin

Install / Use

/learn @ewanhowell5195/MinecraftTitleGenerator
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Minecraft Title Generator

This plugin adds a new format that allows you to create Minecraft-styled title models that you can render in high quality.

Plugin Homepages: ewanhowell.com and blockbench.net

This repo contains the fonts and textures that the plugin uses. To download and use the plugin, go to the plugin store within Blockbench (File > Plugins > Available) and install it. For more information, please see the plugin homepage.

Submissions

Anyone can submit fonts and textures to this plugin, as long as they meet the requirements and follow the rules.

General rules

  • Fonts/textures must be somewhat high quality. No low-effort submissions.
  • Fonts/textures must be somewhat unique from other fonts/textures. Try not to re-use other textures.
  • Full credit must be provided. If you are basing a font/texture off of someone else's design, credit them too!
  • Texture IDs must be in the snake_case format, and only use the characters a-z, 0-9, and underscores.
  • Font IDs must be in the kebab-case format, and only use the characters a-z, 0-9, and hyphens.

How to make a submission

To make a submission, create a fork of this repository and edit/upload the necessary files. After all the changes are made, create a pull request and explain what you are adding.

For larger submissions like fonts, it will be a lot easier to clone the repo to your PC and use an app like GitHub Desktop to manage changes.

Texture submissions video tutorial

Compiling

After making a submission, it would be really helpful if you could compile it. If you don't understand how to do this, you can skip this step and I can do it for you.

First time setup:

  1. Install Node.js.
  2. Install Visual Studio Installer and install Desktop development with C++ using it.
  3. Clone the repo to your PC, add your changes, and then navigate to the scripts directory in the repo.
  4. Open a terminal inside this directory. On Windows, this can be done by typing cmd into the address bar in file explorer.
  5. Run the command npm i.

Compiling:

  • If on Windows, just run the compile.bat file.
  • If on macOS or Linux, run the command node compile.js.
  • Wait until the script finishes.

Textures

Creating a texture

  1. To create a new texture, start by using another texture as a template. flat.png is the best template for general textures.
  2. Textures can be found at fonts/fontname/textures, and overlays can be found in fonts/fontname/overlays. Save your texture to either the textures or overlays folder, depending on what you made.
  3. Edit the textures.json file located at fonts/fontname/textures.json and add your texture to it. This file uses the following formatting:
{
  "textures": { // If you are adding a texture, it goes in here
    "texture_id": { // The ID of the texture you are adding (required)
      "category": "Category Name", // If the texture has variants, the name of the category (optional)
      "name": "Texture Name", // The name of the texture if it doesn't match the ID (optional)
      "author": "Author Name", // Your name (required)
      "variants": { // The variants for this texture (optional)
        "variant_id": {
          "name": "Variant Name", // (optional)
          "author": "Author Name" // Only needed if different from the texture author (optional)
        }
      }
    }
  },
  "overlays": { // If you are adding an overlay, it goes in here
    "overlay_id": { // The ID of the overlay you are adding (required)
      "name": "Overlay Name", // The name of the overlay if it doesn't match the ID (optional)
      "author": "Author Name" // Your name (required)
    }
  }
}

<sub>Note: Overlays do not support variants</sub>

Thumbnails are generated through the compile script. Do not make them manually.

Texture rules

  • Textures must use the exact same shapes as the flat.png texture. This means no extra cut-outs or filling parts in.
  • Textures must be one of these three sizes: 1000x320, 2000x640, or 4000x1280.
  • Do not add too many variants to a single texture. If I feel a variant is unnecessary, or there are too many, it will be denied.
  • The border colour at the bottom (under all character lines) must be the same colour for the entire thing. It will not work if you try to use multiple colours. This may not apply for certain fonts. Please check the flat.png to see if it is a solid colour there.
  • Do not submit textures generated using the plugin, or that could be easily recreated using the plugin.
  • Semi transparency is not supported for regular textures. It is supported for overlays.

Tileables

Creating a tileable

  1. To create a new tileable, add the tileable to the tileables folder under a fitting subdirectory.
  2. Edit the tileables.json file and add your tileable to it. This file uses the following formatting:
{
  "tileable_id": { // The ID of the tileable you are adding (required)
    "category": "Category Name", // If the tileable has variants, the name of the category (optional)
    "name": "Tileable Name", // The name of the tileable if it doesn't match the ID (optional)
    "author": "Author Name", // Your name (optional, defaults to "Mojang")
    "path": "directory/path", // Where the tileable is located inside the tileables folder (optional, defaults to "minecraft")
    "variants": { // The variants for this tileable (optional)
      "variant_id": {
        "name": "Variant Name", // (optional)
        "author": "Author Name" // Only needed if different from the tileable author (optional)
      }
    }
  }
}

Tileable rules

  • Tileables must be 8x8 minimum, and 128x128 maximum, but do not have to be square.
  • Tileables must tile. Tiling is not required when random rotations and random mirroring are enabled.
  • Do not add too many variants to a single tileable. If I feel a variant is unnecessary, or there are too many, it will be denied.

Fonts

Fonts require you to create a model for every character.

These are the characters for a font. Some characters use a name instead, since the characters are invalid for file names.

<details> <summary>Required characters</summary> <ul> <li><code>creeper</code></li> <li><code>a</code></li> <li><code>b</code></li> <li><code>c</code></li> <li><code>d</code></li> <li><code>e</code></li> <li><code>f</code></li> <li><code>g</code></li> <li><code>h</code></li> <li><code>i</code></li> <li><code>j</code></li> <li><code>k</code></li> <li><code>l</code></li> <li><code>m</code></li> <li><code>n</code></li> <li><code>o</code></li> <li><code>p</code></li> <li><code>q</code></li> <li><code>r</code></li> <li><code>s</code></li> <li><code>t</code></li> <li><code>u</code></li> <li><code>v</code></li> <li><code>w</code></li> <li><code>x</code></li> <li><code>y</code></li> <li><code>z</code></li> <li><code>£</code></li> <li><code>€</code></li> <li><code>0</code></li> <li><code>1</code></li> <li><code>2</code></li> <li><code>3</code></li> <li><code>4</code></li> <li><code>5</code></li> <li><code>6</code></li> <li><code>7</code></li> <li><code>8</code></li> <li><code>9</code></li> <li><code>&</code></li> <li><code>#</code></li> <li><code>(</code></li> <li><code>)</code></li> <li><code>[</code></li> <li><code>]</code></li> <li><code>{</code></li> <li><code>}</code></li> <li><code>forwardslash</code></li> <li><code>backwardslash</code></li> <li><code>questionmark</code></li> <li><code>!</code></li> <li><code>.</code></li> <li><code>colon</code></li> <li><code>-</code></li> <li><code>openquote</code></li> <li><code>'</code></li> <li><code>+</code></li> <li><code>=</code></li> <li><code>lessthan</code></li> <li><code>greaterthan</code></li> <li><code>%</code></li> <li><code>^</code></li> <li><code>asterisk</code></li> <li><code>~</code></li> <li><code>end</code> - The start terminator</li> <li><code>start</code> - The end terminator</li> <li><code>,</code></li> <li><code>;</code></li> <li><code>_</code></li> <li><code>$</code></li> <li><code>@</code></li> </ul> </details> <details> <summary>Optional characters</summary> <ul> <li><code>space</code> - The font will use this character instead of automatically generating a space</li> <li><code>spacer</code> - A 1px wide model to use when character spacing is used. This model will be stretched to fill the space.</li> </ul> </details>

Different alphabets are allowed (such as Cyrillic), but all non-letter characters must still be present in the font.

If you want to make a font using different characters, please make an issue about it first.

Creating a font

  1. To create a font, create a new folder inside the fonts directory with the ID of your font.
  2. Inside this new folder, create the folders characters, textures, and overlays.
  3. Create a flat.png texture inside the textures folder. This will be used for your UV.
  4. Create the full layout for your UV.
    • Characters need to be arranged into rows, with the top face directly above the character, and the bottom face directly below.
    • You can have as many rows as you need, as long as you leave room for the border UV at the bottom.
    • 2px-wide spaces must be between the characters and the rows.
    • If some characters are taller than the standard character height, they can go into their own rows.
    • A single pixel of the border colour is required. This must be the very top left pixel of the border area.
    • You do not need to worry about ma

Related Skills

View on GitHub
GitHub Stars196
CategoryDevelopment
Updated11d ago
Forks162

Languages

JavaScript

Security Score

80/100

Audited on Mar 15, 2026

No findings