Repository navigation
Resource Packs
From JustQuests 0.5.0, a resource pack can change almost everything you see of JustQuests: the quest book, the tracker, the popups, colours, places, the font and the sounds. This works on every version with the quest book (Minecraft 1.20.1 to 26.3).
A JustQuests pack is a normal resource pack. It goes into .minecraft/resourcepacks/, and everything lives in assets/justquests/. The example pack uses every feature once.
-
Names: folder and file names use only lowercase letters, numbers,
_,-and.. -
Custom icons are named after the ID, not the display name:
- category
technology→icons/categories/technology.png - quest
justquests:mining/iron→icons/quests/justquests/mining/iron.png
- category
- Sizes: the listed size or a whole multiple of it (2×, 4× for HD). Keep the aspect ratio.
- Missing files come from the mod. A pack only needs the files it changes.
-
Old packs keep working. JustQuests looks for a picture in the new folders first, then under its old name (
textures/gui/window.png,button_claim_normal.png…), then takes its own. -
One
settings.jsonper folder. Missing values keep the defaults. -
Colours:
"#RRGGBB", or"#AARRGGBB"with transparency. -
Animation: any picture can hold frames stacked vertically, with a
.png.mcmetanext to it in Minecraft's usual format:
{ "animation": { "frametime": 2 } }assets/justquests/
├── textures/gui/
│ ├── quest_book/
│ │ ├── book.png, background.png, separator.png, settings.json
│ │ ├── rows/ available.png, active.png, claimable.png, completed.png, locked.png, hover.png, selected.png, header.png
│ │ └── progress/ track.png, fill.png, state_1.png … state_100.png, settings.json
│ ├── buttons/ <button>_<state>.png
│ ├── icons/
│ │ ├── categories/<category>.png
│ │ ├── quests/<namespace>/<path>.png
│ │ └── glyphs/ check.png, lock.png, clock.png, repeat.png, star.png, exclamation.png, gift.png, pin.png
│ ├── tracker/ tracker.png, settings.json, progress/
│ └── popup/ quest_done.png, quest_new.png, settings.json
├── sounds.json
├── sounds/
├── font/book.json
└── lang/
| File | What | Size |
|---|---|---|
quest_book/book.png |
The book (the old window.png) |
280×184 |
quest_book/background.png |
A picture behind the book (see background below) |
any |
quest_book/separator.png |
The line under group headers like "Active" and between quest rows | 112×1 |
quest_book/rows/<state>.png |
Quest rows: available, active, claimable, completed, locked, hover, selected
|
112×18 |
quest_book/rows/header.png |
Behind a group header like "Combat" (none by default) | 112×18 |
completed.png and locked.png carry their symbol in the picture; the other rows get a symbol from icons/glyphs/ on top.
| File | What | Size |
|---|---|---|
quest_book/progress/track.png |
Empty bar | 100×6 |
quest_book/progress/fill.png |
Full bar, cut from the left as progress grows | 100×6 |
quest_book/progress/state_1.png … state_100.png
|
Optional: one picture per step, used instead of fill.png
|
100×6 |
JustQuests counts the state_N pictures itself (they must go 1, 2, 3 … without a gap). With 10 states and a goal of 10 items, every item is one step. track.png is shown while nothing is done yet.
quest_book/progress/settings.json:
{ "size": [100, 6] }Positions are in pixels from the top-left corner of the book, at the 1× size, also for HD pictures. These are the defaults:
{
"size": [280, 184],
"list": { "x": 7, "y": 44, "row_width": 112, "row_height": 18, "rows": 6 },
"page": { "x": 137, "y": 24, "width": 134, "bottom": 153 },
"buttons": {
"title": [9, 7], "hint": [48, 7],
"action": [137, 156], "pin": [213, 156], "close": [260, 6],
"stats": [212, 3], "corner": [228, 3], "hud": [244, 3],
"sort": [7, 22], "filter": [25, 22], "search": [44, 23],
"page_prev": [8, 164], "page_next": [108, 164]
},
"colors": {
"title": "#161616", "text": "#282828", "muted": "#4C4C4C",
"heading": "#24395C", "link": "#24395C", "done": "#2E7D32", "warning": "#9E2A2A",
"group": "#FFFFFF", "group_count": "#C6C6C6"
},
"background": { "blur": true, "mode": "none", "color": "#80000000" },
"text_shadow": false
}| Key | What |
|---|---|
list |
Where the quest list starts, the size of a row and how many rows a page has |
page |
The quest page on the right; it scrolls above bottom
|
buttons |
Each button's top-left corner. title and hint are the book's title and the hint text next to it |
colors |
title: quest titles. text: normal text. muted: grey text. heading: "Objectives", "Rewards". link: required quests. done: finished goals. warning: "progress resets on death". group / group_count: a group header's name and count |
background.blur |
The game's normal background behind the book (blurred from 1.20.5, darkened before). false turns it off |
background.mode |
A layer on top: none, color (uses background.color), stretch (background.png over the whole screen) or tile (background.png repeated at its own size) |
text_shadow |
A shadow under every text of the book |
The name is buttons/<button>_<state>.png:
| Buttons | States | Size |
|---|---|---|
claim (accept, claim, accept all) |
normal, hover, disabled
|
72×20 |
abandon |
normal, hover
|
72×20 |
pin |
normal, hover, on
|
20×20 |
close |
normal, hover
|
11×11 |
stats, hud
|
normal, hover, on
|
14×14 |
corner_top_left, corner_top_right, corner_bottom_left, corner_bottom_right
|
normal, hover
|
14×14 |
sort |
normal, hover
|
16×16 |
filter |
normal, hover, on
|
16×16 |
page_prev, page_next
|
normal, hover, disabled
|
12×12 |
search |
normal, focused
|
74×14 |
search_clear |
– | 10×10 |
All icons are 16×16.
-
icons/categories/<id>.png: an icon for any category, also the ones from datapacks. Without one, the built-in categories use their own icon and the otherscustom.png. -
icons/quests/<namespace>/<path>.png: a picture for a quest instead of its item, in the book, the tracker and the popups. -
icons/glyphs/:check,lock,clock,repeat,star,exclamation,giftandpin.
tracker/tracker.png is the box behind the tracker. It can be any size: the outer border pixels stay as they are and the middle stretches, so the same picture fits one quest or three. Without it, the tracker draws its translucent box in colors.box.
tracker/settings.json with the defaults:
{
"max_text_width": 140,
"border": 3,
"icon": { "x": 4, "y": 4 },
"title": { "x": 23, "y": 5 },
"goal": { "x": 23, "y": 15, "line_height": 9 },
"max_goals": 3,
"progress_bar": false,
"offset": [4, 4],
"text_shadow": true,
"colors": {
"title": "#FFFFFF", "goal": "#D0D0D0", "done": "#55FF55",
"more": "#A0A0A0", "claim": "#FFAA00", "box": "#AA000000"
}
}- Places are counted from the top-left corner of the box for the first quest; every further quest moves down by its height.
-
max_goals: goals shown per quest, then "+2 more". -
progress_bar: a bar under every goal. It usestracker/progress/(track.png,fill.pngorstate_N.png) if the pack has them, else the book's. -
offset: the distance from the screen corner. The corner itself is the player's choice in the quest book. - How many quests the tracker shows stays the player's setting.
tracker/progress/settings.json: { "size": [0, 3] }. A width of 0 makes the bar as wide as the goal text.
Small notices for a completed quest (popup/quest_done.png: icon, title and "Quest completed!", or "Press J to claim" while the reward waits) and for a newly unlocked quest (popup/quest_new.png: icon, title and "New quest!"). Both are 160×32. Players can turn them off with the box on the quest book's overview page.
popup/settings.json with the defaults:
{
"corner": "top_right",
"offset": [4, 4],
"seconds": 5,
"size": [160, 32],
"icon": { "x": 8, "y": 8 },
"title": { "x": 30, "y": 7 },
"line": { "x": 30, "y": 18 },
"text_shadow": false,
"colors": { "title": "#FFFF00", "line": "#FFFFFF" }
}corner can be top_left, top_right, bottom_left, bottom_right, top_center or bottom_center.
Every moment has its own sound ID. Where JustQuests has no sound by default, the ID is empty, so a pack can add one.
| Sound ID | When | Default |
|---|---|---|
justquests:quest.complete |
A quest is completed | Minecraft's challenge sound |
justquests:quest.accept |
A quest is accepted | none |
justquests:quest.abandon |
A quest is abandoned | none |
justquests:quest.unlock |
A new quest unlocks | none |
justquests:reward.claim |
A reward is claimed | none |
justquests:goal.progress |
A goal counts up | none |
justquests:goal.complete |
A goal is done | none |
justquests:book.open |
The quest book opens | none |
justquests:book.close |
The quest book closes | none |
justquests:book.page |
A page is turned | none |
justquests:book.click |
A button or quest is clicked | button click |
justquests:popup.show |
A popup appears | none |
assets/justquests/sounds.json in a pack:
{
"quest.complete": { "replace": true, "sounds": ["justquests:fanfare"] },
"book.page": { "replace": true, "sounds": [{ "name": "minecraft:item.book.page_turn", "type": "event" }] }
}justquests:fanfare is the file assets/justquests/sounds/fanfare.ogg. "type": "event" plays one of Minecraft's own sounds.
The completion sound comes from the server, so the world setting completionSound still turns it off. When several things happen at once (a quest unlocks and is accepted), only the most important sound plays.
The quest book, the tracker and the popups use the font justquests:book. By default it is the normal Minecraft font. A pack sets its own in assets/justquests/font/book.json, for example Minecraft's "uniform" font:
{ "providers": [ { "type": "reference", "id": "minecraft:uniform" } ] }The font in the rest of the game stays the same.
Every text of JustQuests comes from assets/justquests/lang/<language>.json, so a pack can rename anything:
{
"justquests.book.title": "Adventure Journal",
"justquests.category.technology": "Technology",
"justquests.dimension.stellaris.moon": "the Moon"
}All keys are in the mod's assets/justquests/lang/en_us.json.
Each Minecraft version has its own pack_format, for example 15 for 1.20.1, 34 for 1.21.1 and 46 for 1.21.4. For another version, the game shows a warning but still loads the pack.
Modrinth · CurseForge · Discord · Issues
Getting started
Writing quests
Running a server
Addons
Help