UI Themes
The look of JourneyMap's toolbars, buttons, and minimap frame is set by a UI theme. You can switch themes with the UI Theme button (the paint palette icon) on the full-screen map, and you can create your own theme with your own images and colors.
Bundled themes
JourneyMap ships with two theme families:
- Flat - a set of flat-styled themes: Purist (the default), Desert
Temple, EndCity, Forest Mansion, Nether Fortress, Ocean Monument, and
Stronghold. These all live in the
flattheme folder. - Victorian - a more ornate theme, in the
victorian_theme folder.
Use the UI Theme button to cycle through the themes available in your installed version.
Theme files
Themes live in the JourneyMap theme folder:
.minecraft/journeymap/icon/theme/
Each theme is a folder containing a theme definition file plus the
images it uses. The definition file is JSON and ends in
.theme2.json. JourneyMap extracts the bundled themes into this folder
the first time it runs, so you can open them to see how a complete
theme is built.
Theme schema 2
JourneyMap 6.0 uses version 2 of the theme format. Theme files end
in .theme2.json and contain a "schema": 2 property. Themes
written for older versions of JourneyMap are not compatible and
need to be rebuilt.
Creating a theme: easy start
- Open
.minecraft/journeymap/icon/theme/and copy one of the bundled theme folders (for examplevictorian_) to a new folder with your own name, for exampleMyTheme. - In your new folder, rename the
.theme2.jsonfile to match, for exampleMyTheme.theme2.json. - Open that file in a text editor and change the
name,directory, andauthorvalues so they match your folder and your name. Thedirectoryvalue must be the exact name of your theme folder. - Replace the images in the folder with your own artwork. Keep the
image dimensions consistent with what the
.theme2.jsonfile declares, or update those dimensions in the file to match your art. - Use the UI Theme button on the full-screen map to switch to your theme.
- To share your theme, zip up the theme folder and give it to others.
They unzip it into
.minecraft/journeymap/icon/theme/and select it with the UI Theme button.
The theme file structure
A .theme2.json file is read with GSON. You edit the values, but you
cannot change the structure. The top level has:
schema- the theme format version. Must be2.author,name,directory- identifying information.container- toolbar specs (see below).control- button and toggle specs.fullscreen- full-screen map background and status label colors.icon- the default size and color for icons in theiconfolder.minimap- the minimap frame specs, with separatecircleandsquaresections.
Color and image values
Two value types appear throughout the file:
- A color value is an object with a
colorhex string (#rrggbb) and analphavalue. Use#fffffffor color to leave an image's own colors unchanged. - An image spec declares a
widthandheight, and may also carry acolorandalpha.
Containers and controls
container.toolbar.horizontalandcontainer.toolbar.verticaldescribe the toolbars. A toolbar is built from abeginimage, a repeatinginnerimage (one repeat per button), and anendimage. Each hasuseThemeImages, a filenameprefix,margin, andpadding.control.buttonandcontrol.toggledescribe the button and toggle controls: theirwidth,height, tooltip styles, and the color values used for the icon and button in each state (on, off, hover, disabled).
Minimap
minimap.circle and minimap.square describe the circular and square
minimap frames. Each defines the rim and mask image sizes, the top and
bottom label styles, compass point images and which compass points to
show, and the reticle and frame colors.
The bundled themes are the best reference for exact filenames and
sizes - copy one and compare its .theme2.json to the images in its
folder.
Image guidance
Create your images at 2x the sizes declared in the .theme2.json file.
This keeps buttons looking sharp on high-resolution displays and for
players using Minecraft's larger GUI scales.
Setting a default theme in a modpack
A modpack can ship a theme and make it the default for players opening
JourneyMap for the first time. Place the theme folder in
.minecraft/journeymap/icon/theme/ as usual, then create this file:
.minecraft/journeymap/icon/theme/default.theme.config
Its contents point at the theme folder, the theme file, and the theme name:
{
"directory": "MyTheme",
"filename": "MyTheme",
"name": "MyTheme"
}
Sharing your theme
If you create a theme and would like to share it, drop by the JourneyMap Discord server.