Remote Resource Pack
Loading Resources from the Internet
This mod enables loading resource packs whose content is downloaded directly from the internet during gameplay.
Why is this needed?
Some players, mods, and modpacks may require constant resource updates. Additionally, certain resources may have distribution restrictions, necessitating direct download during gameplay.
Configuration Format
Place the configuration file in the .minecraft/config/RemoteResourcePack/ directory (or its subdirectories) with the .json extension.
Example configuration file (note that comments in the actual file are not allowed):
{
"schema": 1, // Mandatory parameter
// Package obsolescence period before re-download
// Examples: 2min / 3d / 11h45min14s
// Can be "always" or "never"
"autoUpdate": "2h",
// Package configuration defining included files
"zipconfig": "https://featurehouse.github.io/epx_packs/v2/dl/zipconfig.json",
"args": { // Dynamic content arguments
"poem": "random", // Can be literal "random"
"splashes": 0 // Can be a numeric index
},
// Base URL for remote content
"base": "https://featurehouse.github.io/epx_packs/v2/dl/index.html"
}
Zipconfig format (comments are also not allowed):
{
"static": { // Files that are always included
"pack.mcmeta": { // Can be literally defined
"raw": "{\"pack\":{\"pack_format\":18,\"description\":\"Hello World\"}}"
},
"assets/example/test.bin": { // Can be defined as base64
"base64": "TmV2ZXIgR29ubmEgR2l2ZSBZb3UgVXAh"
},
"assets/example/songs/dynamic/rickroll.ogg": { // Can be downloaded from the internet
"fetch": "https://www.example.net/songs/Rick%20Astley/Never_Gonna_Give_You_Up-HiRes.ogg"
},
"assets/example/lang/fr_fr.json": { // Can be relative URL with base from above configuration
"fetch": "/my-interesting-example-mod/resources/i18n/fr_fr.json"
}
},
"dynamic": {
"example-arg": { // See "args" in above configuration
"default": "random", // Selects item randomly. Can be overridden in args.example-arg.
"items": [{
"weight": 250, // Can be omitted, defaulting to 100
"files": { // Same as "static"
"assets/example/news/content.json": {"fetch": "/my-interesting-example-mod/news-channel/1.json"},
"assets/example/news/timestamp.txt": {"raw": "2023-10-10T09:24:30+08:00"}
}
}, {
"files": {
"assets/example/news/content.json": {"fetch": "/my-interesting-example-mod/news-channel/2.json"},
"assets/example/news/timestamp.txt": {"raw": "2023-10-10T09:25:21+08:00"}
}
}]
},
"another_arg": {
"default": 0,
"items": [
{},
{
"files": {
"assets/example/textures/items/silver_ingot.png": {
"fetch": "/my-interesting-example-mod/experimental/resources/silver_ingot/2023-10-10.png"
}
}
}
]
}
}
}
Built-in Configuration for Mods
Mods can include their configuration in the RemoteResourcePack.json file in the root directory of the JAR archive.
Example:
{
"end-poem-extension/recommended-pack-v2.json": {
"schema": 1,
"_description": [
"End Poem Extension Recommended Pack",
"Content may differ between downloads as it is selected randomly"
],
"autoUpdate": "2h",
"args": {
"poem": "random",
"splashes": 0
},
"base": "https://featurehouse.github.io/epx_packs/v2/dl/index.html",
"zipconfig": "https://featurehouse.github.io/epx_packs/v2/dl/zipconfig.json"
}
}
Configuration will be saved to .minecraft/config/RemoteResourcePack/end-poem-extension/recommended-pack-v2.json (if the file doesn't exist) and then loaded.