All Mods Resource Packs Data Packs Shaders Modpacks Plugins
QDResLoader

QDResLoader

by exaptations • Downloads: 0 • Followers: 0
Description
Gallery
Changelog
Versions

So, you know how there's this really nice, battle-tested, and fast resource loading system in QSL? It's used for every mod. Wouldn't it be great if we could just reuse that, instead of needing a bloated Architectury-requiring overengineered mess that breaks when you so much as breathe on it?

That's what this is. 1.0 is 10 lines of Java code, including formatting:

new File("resources").mkdirs();
for (var t : ResourceType.values()) {
    ResourceLoader.get(t).getRegisterTopResourcePackEvent().register((ctx) -> {
        ctx.addResourcePack(new ModNioResourcePack(
            "QDResLoader resources", mod.metadata(), null, ResourcePackActivationType.ALWAYS_ENABLED,
            new File("resources").toPath(), t, null
        ));
    });
}

Since 1.0, some more features have been added to make it nicer to use and have some extra functionality, but it's still tiny regardless; just not "put the whole mod in your description" levels of tiny.

Harness the power of QSL Resource Loader in the resources directory. You already know the format; data goes in data, assets go in assets. Maybe you've got some zips you don't want to extract, maybe since you're managing them with Packwiz to update packs someone else manages? Cool, drop them in packs.

On first run, a QDResLoader-README.txt file will be dropped into resources to give you a quick explainer on how to use the mod. Here's what it says:

This directory is created and handled by QDResLoader. You can delete this README once any of the following things exist.

This directory itself is loaded as a datapack and resourcepack, so any pack.mcmeta will be considered (using a default provided by QSL if not present) and any data in "data", as well as resources in "assets" on the client, will be loaded.

You may also create a "packs" directory, and put directories, zips, or jars in there that will all be loaded as packs. For organization purposes, you may also create a "datapacks" or "resourcepacks" directory -- packs in those directories will only be loaded as one type instead of both.

The resources in the main directory cannot be disabled by users, but will be visible in the "Resource Packs" and "Data Packs" menu, and can be reordered. Packs in all three pack directories can be disabled as the user pleases, but are all enabled by default.

Jars are recognized as packs so you can take "datapack-as-mod" JARs and drop them here instead of in mods, if that's something you would like to do.

All Versions

+ Add Version
Name Game version Platforms Published Downloads Actions
1.20.x 1.19.4
Quilt
last yr. 1
1.19.4
Quilt
last yr. 1
1.19.2
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
1.19.x 1.18.x
Quilt
last yr. 1
[2.0.1] 2.0.1 by exaptations on Jul 06, 2023
Download
  • Updated to 1.20 by EnnuiL, thanks!
[2.0+1.19.2] 2.0 by exaptations on Jan 15, 2023
Download
  • Ported to the new APIs added in QSL 3.0.0-beta.25**, as a result:
  • Packs now show up in the Resource Packs and Data Packs management UIs, and can be disabled piecemeal by users
  • Worldgen JSON changes now work properly instead of causing strange errors
  • Users can now modify the load order relative to their own packs instead of QDRL always overriding
  • No longer using implementation classes, pure API :)
[1.2.2] 1.2.2 by exaptations on Dec 26, 2022
Download
  • Switch to a mixin to inject packs, as Top can't affect the biome registry and clobbers user packs
[1.2.1] 1.2.1 by exaptations on Dec 26, 2022
Download
  • Fixed resources being loaded as default instead of on top
[1.2] 1.2 by exaptations on Dec 25, 2022
Download
  • Add "resourcepacks" and "datapacks" directories, for organization purposes
  • Fix directory packs
  • Ignore directory packs that end in .disabled
  • Drop a README file into resources if there's nothing recognized in it
[1.1.1] 1.1.1 by exaptations on Dec 25, 2022
Download
  • Only load files in packs that end in .zip or .jar — directories are still loaded
  • Give a friendlier error message when a pack can't be opened
  • Catch all errors when injecting packs to avoid resource loading explosions
[1.1] 1.1 by exaptations on Dec 23, 2022
Download
  • Added pack loading functionality
[1.0] 1.0 by exaptations on Dec 23, 2022
Download
  • Initial release
QDResLoader Icon
Download QDResLoader
Select game version
Select platform