NEW: Custom Recipes - ThaCheesyMen/portablefurnace GitHub Wiki
Here's a cleanly formatted version of your message, suitable for a GitHub README or wiki page. I've used Markdown conventions for structure, code formatting, and emphasis:
Before you begin, ensure the following:
-
β You have the modified version of the Portable Furnace plugin installed on your server.
-
β You have a basic understanding of how to install and enable resource packs in Minecraft.
-
β You have access to image editing software for creating texture files (
.png
). -
β You have a text editor for editing
.json
configuration files.
Start by creating a folder for your resource pack. Inside this folder, create the standard Minecraft resource pack structure:
MyCustomFurnacePack/
βββ assets/
β βββ minecraft/
β βββ models/
β β βββ item/
β βββ textures/
β βββ item/
βββ pack.mcmeta
This file tells Minecraft about your resource pack. Example:
{
"pack": {
"pack_format": 26,
"description": "Custom Furnace GUI Pack"
}
}
π Adjust
pack_format
based on your Minecraft version. Check the correct value here.
The plugin uses standard Minecraft items with CustomModelData
to render the GUI. Example mappings:
GUI Element | Base Item | CustomModelData |
---|---|---|
Background | BLACK_STAINED_GLASS_PANE | 1001 |
Progress (0%) | STONE | 2001 |
Progress (<33%) | STONE | 2002 |
... | ... | ... |
π§ These values must match the ones in the pluginβs
config.yml
.
Tell Minecraft to use different models for items with specific CustomModelData
.
File: black_stained_glass_pane.json
{
"parent": "item/generated",
"textures": {
"layer0": "minecraft:item/black_stained_glass_pane"
},
"overrides": [
{
"predicate": { "custom_model_data": 1001 },
"model": "minecraft:item/custom_furnace_background"
}
]
}
File: stone.json
{
"parent": "block/cube_all",
"textures": {
"all": "minecraft:block/stone"
},
"overrides": [
{
"predicate": { "custom_model_data": 2001 },
"model": "minecraft:item/custom_furnace_progress_0"
}
]
}
π Add to existing files if you're merging multiple packs.
For each custom model, create a .json
file pointing to the correct texture.
Example: custom_furnace_background.json
{
"parent": "item/generated",
"textures": {
"layer0": "minecraft:item/custom_furnace_background_texture"
}
}
Repeat this step for each progress and fuel state (e.g., custom_furnace_progress_0.json
, custom_furnace_fuel_empty.json
, etc.).
Place your .png
textures in the correct path:
assets/minecraft/textures/item/
Examples:
-
custom_furnace_background_texture.png
-
custom_furnace_progress_0_texture.png
π¨ Make sure these are standard PNG files.
Edit the plugin config located at:
plugins/PortableFurnace/config.yml
Under gui.custom-textures
, add entries like:
gui:
custom-textures:
background: 1001
progress:
"0": 2001
"33": 2002
...
β Save and reload or restart the plugin after making changes.
-
Zip the contents of
MyCustomFurnacePack
(make sureassets/
andpack.mcmeta
are at the root). -
Place the
.zip
file into your Minecraft client'sresourcepacks/
folder. -
In Minecraft:
-
Go to Options β Resource Packs
-
Move your custom pack to the Selected list.
-
Click Done to apply.
-
If your textures don't show:
-
π Double-check file paths and names.
-
β Validate
.json
syntax. -
π Confirm
CustomModelData
values match between resource pack and config. -
βοΈ Ensure the resource pack is properly applied in Minecraft.
Upload your zipped MyCustomFurnacePack.zip
somewhere accessible via a direct download link (HTTP/HTTPS). Options:
- β Dropbox (make sure itβs a direct link)
- β GitHub Releases
- β A custom web server
- β Google Drive (with link conversion)
Example Link Format:
https://example.com/resourcepacks/MyCustomFurnacePack.zip
π₯ Make sure your file is publicly accessible and doesnβt require login or redirect.
Open the plugins/ResourcePackManager/config.yml
and add an entry for your new pack.
packs:
mycustomfurnace:
url: "https://example.com/resourcepacks/MyCustomFurnacePack.zip"
hash: "sha1_hash_here"
forced: false
priority: 10
permission: "resourcepack.mycustomfurnace"
-
url: Direct download link to the
.zip
file - hash: SHA-1 hash of the zip (used by Minecraft to validate the file)
-
forced: Set to
true
if you want to require users to accept it - priority: Higher number = higher load priority
- permission: Optional permission node (e.g., only apply to players with this)
Minecraft requires a SHA-1 checksum of the .zip
file. You can generate it with:
sha1sum MyCustomFurnacePack.zip
Get-FileHash -Path .\MyCustomFurnacePack.zip -Algorithm SHA1
Copy the resulting hash into the hash:
field in the config.
If you're using permissions:
- Assign
resourcepack.mycustomfurnace
to the group or players who should get the pack.
After updating the config, run:
/resourcepack reload
Or restart the server.