
Dumpster
Dump registries, tags, and all you want about your game in your local files
- Загрузки
- 2K
- Подписчики
- 6
- Обновлён
- 11 ноября 2023 г.
- Лицензия
- MIT
Опубликован 6 октября 2023 г.
Dumpster
Allows you do dump, at will
- your game's registries, with the command
/dump registries - your game's data, including tags, recipes and more, with the command
/dump data - more specific data, such as either tags, recipes, loot tables, etc, with the command
/dump data <type> - both of the above, with the pure
/dumpcommand
Config
Includes a small configuration file, allowing you to set whether or not to dump the tags and/or the recipes when dumping the data. The same way, you can configure whether to dump data and/or registries upon reload or startup. It also gives you the option to control how should the dump files be organized.
This file can be found as dumpster.properties file, in the config folder.
Server or Client
This mod has actually been thought somewhat smartly! (I surprise even myself)
So, when the mod is on the server, OP players only have the option to use the /dumpster command, which will dump the wanted data in the server's files!
And just as well, when the mod is on the client, the player will be able to use the /dumpster command without any concern of whether they are OP or not.
Last but not least, if the mod is on both the client and the server, due to Minecraft's architecture, the client-side command will be renamed /dump-client, in order to work properly.
Use cases
This mod is not meant to be used for regular gaming! It is solely intended as a handy tool for datapack, mod and modpack creators, for them to be able to know whether their game manipulations had a proper impact on the game.
Compatibility
This mod is not able to process modded recipe types by default. Thus, a compatibility layer must be implemented, either on the side of the mod adding the recipe type, or by some third-party mod that intends to add it.
How to implement compatibility
You may import this mod in your Gradle project using the Modrinth maven API, as per indicated in the documentation.
You may then implement the RecipeJsonParser interface in a class and register it as a recipe-dump entry-point as shown in the base fabric.mod.json file.
You shall also annotate it with the TargetRecipeType annotation, in order to indicate what recipe you are actually registering it for. You may as well indicate a priority value, if you want to overhaul another parser, by providing it a higher value.
And that is all you have to do.
All in all, your recipe dump class shall resemble the following (using Yarn mappings):
import com.google.gson.JsonObject;
import mc.recraftors.dumpster.recipes.RecipeJsonParser;
import mc.recraftors.dumpster.recipes.TargetRecipeType;
import net.minecraft.recipe.Recipe;
@TargetRecipeType("mymod:myrecipetype")
public class MyRecipeTypeJsonParser implements RecipeJsonParser {
private MyRecipe recipe;
@Override
public JsonParser.InResult in(Recipe<?> recipe) {
if (recipe instanceof MyRecipe myRecipe) {
this.recipe = myRecipe;
return RecipeJsonParser.InResult.SUCCESS;
}
return RecipeJsonParser.InResult.FAILURE;
}
@Override
public JsonObject toJson() {
// implement your parsing method here
}
}
Other methods are optionally available, for in-detail functionalities, such as regrouping multiple recipes generated out of a single files, or supporting alternative recipe type IDs
Центр версий
11 версийЧенджлог
1.1Релиз1.19, 1.19.1, 1.19.2 · 11 ноября 2023 г.
Release 1.1 for Mc 1.19
- Better debug & error handling
- Patch dumping file target path
1.0Релиз1.19, 1.19.1, 1.19.2 · 31 октября 2023 г.
Release 1.0 for Mc 1.19
- Dump
dimensionsdata folder - Dump
worldgendata folder and subfolders - Watchdog control during dump
0.9Релиз1.19, 1.19.1, 1.19.2 · 27 октября 2023 г.
Release 0.9 for Mc 1.19
- Fix Client with mod being unable to use the server command if the server also has it
0.8Релиз1.19, 1.19.1, 1.19.2 · 16 октября 2023 г.
Release 0.8 for Mc 1.19
- Patches a fatal crash on the client on 1.19.2, at the cost of disabling the specific client-side command on said version
0.7Релиз1.19, 1.19.1 · 15 октября 2023 г.
Release 0.7 for Mc 1.19
- Adds McFunctions dumping
- Yes, the whole functions. Each and every inner command line. As they should be declared in the mcfunction file.
- Makes the client command truly client-side
- Works on any server, the command is now "properly" caught before being sent to the server. (not properly, it's an ugly hack, but hey, it works)
0.6Релиз1.19, 1.19.1, 1.19.2 · 13 октября 2023 г.
Release 0.6 for Mc 1.19
- Adds dimension type dumping
- Proves me wrong in saying the client command was fixed (it's not)
0.5Релиз1.19, 1.19.1, 1.19.2 · 11 октября 2023 г.
Release 0.5 for Mc 1.19
- Adds advancements dumping
- Adds new server command detail options, to dump specific data
- Fixes singleplayer command not working
- Sets singleplayer to use the server command on the integrated server
0.4Релиз1.19, 1.19.1, 1.19.2 · 9 октября 2023 г.
Release 0.4 for Mc 1.19
- Adds a multi-recipe-type parser support option
- Fixes shaped/shapeless recipes using the new multi-type paradigm
- Small logging improvement
- Fix tags being sometimes dumped in multiple date folders when organizing by date was enabled
- Now with Loot tables!!!
Комментарии
Загружаем…