Download Scavenge — Minecraft Mods — MetaMods

Scavenge

Active

Downloads

2

Last update

7 months ago

Versions

1.20 — 1.21
Client and server
Forge
Neoforge
Adventure
Libraries

Scavenge Mod

Scavenge is a modification that gives players the ability to customize the behavior of any blocks when clicking the right and left mouse buttons. You can assign individual actions for interacting with blocks, creating unique game mechanics.

Main Features

You can add loot tables to the block behavior system that activate when specified conditions are met. All settings are loaded from JSON files and function similarly to a scripting programming language.

Activation Conditions

You can set special requirements for interacting with blocks:

  • Player must crouch
  • Player must have a diamond in hand
  • Block becomes invulnerable to destruction
  • Block disappears after 5 uses
  • And many other options

Learning

For those who want to master creating scripts for Scavenge, detailed guides are available. Xaikii has prepared excellent training material on the basics of working with the system.

Documentation

Complete documentation is now built directly into the mod. To access reference materials, set the "printExamples" parameter in the configuration section and launch the game. Generated documentation files will appear in the game folder in the "scavenge_doc" directory. Information is organized by the principle: Plugin → PropertyType → PropertyName.

Script Debugging

Scavenge supports the function of dumping scripts loaded in the game. Activate the "dumpScripts" option to simplify the debugging process. This allows you to see which scripts were successfully loaded and which were rejected due to errors. Dumping occurs immediately after Scavenge scripts are reloaded without the need to restart the game.

Working with Datapacks

Adding Scripts

Scavenge is fully integrated with the datapack system. The mod automatically loads all files from the "datapacks/DATAPACK_NAME/data/DOMAIN/scavenge_scripts" folder and reloads them when resource packs are updated. Synchronization between server and client occurs automatically.

Technical Features

Due to integration with JEI, a special solution had to be implemented that reloads JEI one tick after scripts are updated, since JEI does not support automatic synchronization of recipes and data.

Key Changes

  • Effects are executed only on the server, while conditions are checked on both server and client
  • Mathematical operations and conditions have become more strict and flexible
  • Error messages can now be added directly to conditions
  • Conditions by default support inversion
  • Standard Vanilla loot tables are used
  • Bit operation support has been added
  • Examples are generated for all functions
Project members
Speiger

Speiger

Developer

Created: 2 Jul 2024

ID: 26199