Scavenge is a mod that allows you to apply custom RightClick/LeftClick behaviors
to any Block. On top of that you can add LootPools to these behaviors that are dropped when the conditions are met. These things are loaded from JsonFiles and act closely to a Scripting language.
On top of that you can add certain unque features/conditions when rightclicking these blocks.
- Player has to sneak,
- Player has to have a Diamond in his hands
- The block is unbreakable
- The block disapears after 5 uses
1.10.2-1.12.2 Documentation: ClickMe
Anything below this is the 1.16 Documentation:
If you want a good tutorial on How to make Scavenge Scripts.
Xaikii had written some examples and tutorials on how Scripts work. ClickMe
Ported Addon to 1.16:
Documentation is now part of the mod. How to view it:
Set "printExamples" to true and the documentation will be generated in the Minecraft Folder in the "scavenge_doc" folder.
The documentation is sorted by Plugin -> TypeOfProperty -> PropertyName.
To simplify the finding of the Documentation. Also since its autogenerated. It can only get lost if all Scavenge Jars get lost.
Also If you install plugins they will also generate documentation automatically with it. And it would be sorted by the addon Plugins.
1.16.5 version also can now Dump Loaded Scripts. They will look a tiny bit different because it depends on how the Property is implemented but it will make debugging a lot easier. If something didn't get added in the script the dump can not see it either because the Mod dumps the parsed scripts.
This is also a config entry. Note: This also works with Multiplayer.
How to add a Scavenge Script:
Scavenge now works with Resource Packs. It will automatically load all files that are in the "datapacks/DATAPACK_NAME/data/DOMAIN/scavenge_scripts" folder.
And will automatically reload them on resource packs reload. They will be automatically synced over to the client so no more "server->client" manual Syncing. Its done automatically.
Since the tool has a JEI plugin i had to install a JEI hack that reloads JEI 1 tick after scripts got reloaded because JEI does not support any mod that has recipe/data autosyncing. (This can get fast into the 2-3 digit reload range if jei does not fix this problem)
What has Changed outside of ResourcePacks now:
- Effects are now only executed on server, while conditions are tested both on server & client. So there can be desyncs if you store data unsynchronized.
- Math Operations/Conditions are now a lot more enforced then before because more flexibility even if the code is bigger.
- Error Messages can now be directly added into Conditions so no longer the separate section with messages. And for effects there is a Message Effect.
- Conditions can by default now be inverted. (Addons can not be guaranteed to support that)
- Scavenge now uses Vanilla LootPools and you can just link them to the lootpool. It will try to show them in JEI but accuracy for more random/complex loot may not look as good.
- Math Operations/Conditions have now bit support.
- Examples for everything are generated. (Again Addons can not guaranteed to support that)