Scavenge

Mods
479,007 Downloads Last Updated: Aug 4, 2018 Game Version: 1.12.2

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.

 

Note: The "Pages" Page is now a repository for examples of how to use certain features. If you want to add or learn how to make a feature then look into there.

On top of that you can add certain unque features/conditions when rightclicking these blocks.

For example:   

  • Player has to sneak,
  • Player has to have a Diamond in his hands
  • The block is unbreakable
  • The block disapears after 5 uses
  • etc.

To that you can apply multiple loottables to 1 block as long the conditions do not collide.

There is a lot more customizablity which can be found in the documentation.

Info. 1.6 or older scripts will not load in 1.7 because of the core rewirte!

Side Info: 1.10.2-1.11.x are now frozen on updates because of nobody using it at all. (If usage comes up patches will be made, but it increases update speed drastically)

 

How to install a JsonFile:

You put the file into the scavenge config folder and go into the config file. In there is a list of files you can put in, in there you put your file name + expression.

    S:LoadingFiles <
        testing.json
     >

Side note: The mod has a JEI Plugin which can be customized how you want.

 

Here is an example file for a more complex usage. If you still have questions. Ask or try things out.

Example file:

{
	"block_pools" :
	[
		{
			"name": "Netherrack",
			"type":
			{
				"type": "block",
				"name": "minecraft:nether_brick"
			},
			"clicktype": "both",
			"properties":
			[
				{
					"type": "require_sneak"
				}
			],
			"drops":
			[
				{
					"name": "minecraft:iron_ingot"
				}
			],
			"messages":
			[
				{
					"id": "require_sneak",
					"message": "Player requires to sneak"
				}
			]
		}
	]
}

 

 Commands:

  • /scavenge reload, reloads the Configs & Scripts.(it will also fire the /scavenge printErrors command automatically)
  • /scavenge printErrors prints the errors of the scripts

 Known issues:

 Nothing

How to make a Scavenge ModAddon: Link

 

Usage Documentation: (Warning. Wall of text)

 Scavenge is a Mod that loads JsonFiles via a Forge Config from its config folder and loads them.
These Files get turned into a scriptlike language where you can define certain things and they get excecuted in a certain way.

To start at the beginning when a file gets loaded there has to be a certain format provided.
Every single file starts with a Object with an value inside of it that is called "block_pools".
Example:
{
	"block_pools":
	[
		
	]
}

Inside the "block_pools" Array you put in Objects that define which blocks should be effected.
Every Block Pool can either affect 1 or more blocks depending on the Type. Block Pools can also have duplicated Blocks defined in them as long the conditions are not 100% Equal.
Now there are a couple options inside the Block Pool that you can define:

  • "name": (Defines the Name of the BlockPool. Some Conditions/Effects rely on that name. It has to stay Unique.) String,
  • "type": (Defines If the BlockPool is just a Single Block, a BlockList, or a OreDictionary Entry.) Object
  • "clicktype": (If the BlockPool is left or rightclick or both) String,
  • "blockRightClick" & "blockLeftClick" (Checks if the click is being blockt. Can be ignored but it defaults to blocking the interaction after the BlockPool is being processed. Is only asked for if clicktype was added) Boolean
  • "disableJEI": (Allows to hide this entry from the JEI plugin thats intigrated. Default: Visible) Boolean.
  • "properties": (The Conditions/Effect that the BlockPool should have when being clicked) ObjectArray or Object
  • "drops": (The Loot that should be added or dropped when the all the conditions were met) ObjectArray or Object
  • "messages": (The Error and Success Messages that should be printed when something was successfull or something wasn't working because of a user error.) ObjectArray or Object

After this basic explaining of how the things work lets go into a bit of bigger detail of the more complex ones.


The "type" Object defines very simply what blocks to check for this can be defined by ["block", "ore" or "block_list"].   
Here are a couple examples:

"block" Defines 1 Block that you want to effect. Meta can be either defined through 3 ways:
Either "meta" which allows you to effect 1 Block Metadata.
"metas" which allows you to effect multiple Block Metadatas.
Or leave it away. If no metadata is defined any Metadata that the block has will be automatically counted as valid.
Example:
"type":
{
	"type": "block",
	"name": "minecraft:dirt",
	"meta": 5
}
or
"type":
{
	"type": "block",
	"name": "minecraft:dirt",
	"metas": [5, 3, 2, 12]
}

"ore" looks up the OreDictionary for Blocks and builds the list from there.
"oreCopper" for example gathers all the Copper ores together and applies the same effect to them.
Example:
"type":
{
	"type": "ore",
	"name": "oreCopper"
}
"block_list" allows you to define Multiple Blocks at once.
For each Object entry in this type of addition you also can apply the same meta rules as in the "block" type. So meta, metas or ignore meta.
Example:
"type":
{
	"type": "block_list",
	"blocks":
	[
		{
			"name": "minecraft:dirt",
			"meta": 5
		},
		{
			"name": "minecraft:dirt",
			"metas": [5, 3, 2, 12]
		},
		{
			"name": "minecraft:dirt"
		}
	]
}

Next to "properties". Properties allow you to define Block Condition & Effects for the Block Pool.
That can range from "player has to sneak" all the way to "a Player has to have achievements and to be at y level 55" or also "player gains 5 heath and loses 2 XP levels".
The Block Properties can be found below in a seperate tab since its very large.
Some Block Conditions can not work with each other or with effects but all these are defined.
A basic layout of a Block Property can be summed up by that: "id", "description", "parameters", "Incompatible With", "type",

No need to explain those names since they are selfexplaining.

"drops" Allows you to define what loot will be dropped when a Condition set is fulfilled.
These are entirely optional and not required. But a "Block Pool" either requires at least 1 Effect or at least 1 loot drop.
When creating a loot drop you have the following things to add.

  • "name": (The ItemName that should drop) String,
  • "meta": (The Metadata the item should have. Defaults to 0) IntNumber,
  • "amount": (How many items it should be. Defaults to 1) IntNumber,
  • "nbt": (What NBTData the item should have. This is a reference to the NBTFiles. Defaults to None), String
  • "chance" or "weight": (Decides if it is a Chance based drop or a weight base drop. Difference being chance is a single drop while all weight drops combine to 1 list and 1 gets randomly pickt. Defaults to chance with 100% chance) FloatNumber for "chance" or IntNumber for "weight",
  • "rolls": (Only checkt for if "chance" is selected and defines how often the loot is allowed to be collected for in 1 Click. That can be modified by a block property, defaults 2Billion times) IntNumber,
  • "disableJEI": (Allows to decide if the loot is shown in JEI or not. Defaults to show in JEI) Boolean.
  • "properties": (Properties define the effects that either get applied passivly or actively on the Item. Passivly means when the loot is created in the Script and activly means when the loot is gathered. These can range from setDamage to very complex condition based ones that apply only effects if a BlockProperty send data over they needed.) ObjectArray or Object.
  • "conditions": (Allows to add BlockConditions to the Loot Itself which then causes the loot only to drop when all conditions are set. These are implemented like normal blockConditions in this conditionsArray. It works also to non Weight based loot.) ObjectArray or Object

Lets provide an Example for all but properties:

a "weight" based example:
{
	"name": "minecraft:iron_ingot",
	"meta": "0",
	"amount": "54",
	"nbt": "customNBT",
	"disableJEI": false,
	"weight": 423
}
a "chance" based example:
{
	"name": "minecraft:iron_ingot",
	"meta": "0",
	"amount": "54",
	"nbt": "customNBT",
	"disableJEI": false,
	"chance": 99,
	"rolls": 255
}
a "chance condition" based example:
{
	"name": "minecraft:iron_ingot",
	"meta": "0",
	"amount": "54",
	"nbt": "customNBT",
	"disableJEI": false,
	"chance": 99,
	"rolls": 255,
	"conditions":
	[
		{
			"type": "require_sneak"
		},
		{
			"type": "require_item",
			"name": "minecraft:stick"
		}
	]
}
Ok now "properties" applied to the loot is done the same way as properties are applied to Blocks.
Its the same way but with different ids. All the Loot Properties are inside a seperate tab because there is still a big amount of them present.


Now lets go to the "messages" for the Block Pool.
Messages allow to inform the player about certain situations that can happen.
A condition that may have failed, a special effect that has worked or if the pool was executed in general.
This is based on a "id" and "message" system. The ID represents the condition/effect that has triggered a message print while the message is the message thats being send  to the player.

Example:
"messages":
[
      {
          "id": "require_empty_Hand",
          "message": "You require a Empty Hand to use this effect"
     }
]

 There are also special "ids" for the if any condition has failed message and the the pool was executed message.
These are called "global" and "success" and are called when an condition has failed ("global") or if the block pool was successfully executed ("success")

On top of that if you have duplicated entries of a Property these can be also captured by adding a _1 or _2.
Example:

"messages":
[
     {
          "id": "require_block",
          "message": "You require a dirt Block"
     },
     {
          "id": "require_block_1",
          "message": "You require a stone Block"
     },
     {
          "id": "require_block_2",
          "message": "You require a wood Block"
     }
]

 This is done base on how the conditions are written. From top to down. So 2 will catch the 3rd "require_block" condition while the first message will catch the first one.     

 The NBTFiles:

The NBTFiles were introduced since 1.3. Sadly nobody really took effect of them since they were not really thought out, documentation was missing and the implementation was horrible.
With 1.7 that changes.
So how do NBTFiles work and how can i use them with my scavenge scripts?

The NBTFiles work very simple they have a very strict loading rule but other then that nothing to worry about.

Its as simple as this:
myid={testing:1b,value:32321L}
customID={testing:23b,value:34221L}

 Once you start a NBTFile this is the rule:

you start with the ID of that NBT entry add a = and directly after that you put in the NBTString.
No spaces between or new lines each id has 1 line and the NBTData has to be in there too.
Using // before a line will make the loader ignore the Line. Empty lines will also be ignored.

Now how can you reference the NBTFiles.
Whenever a "nbt" is a option or it says: "reference the NBTFile" or something close to that. It means it will ask for the ID that is provided inside NBTFile. In our case "myid" or "customID", Scavenge automatically knows this id is a reference of the NBT and will automatically pull it from the storage that is being loaded before the scripts. This keeps the Scavenge Scripts clean and allows complex NBTData to be used multiple times at once. (It will clone the NBTData)
That is the NBTFiles.

 Math Operations & Modifiers

Math Operations and Modifiers are the new thing with Scavenge 1.7.

Why is it a thing and what does it do.
First lets do the Why.
There are a lot of Conditions that depend on a Number. And instead of programming in a fixed 2 option set of options to compare the number i wanted to make it very customizable.
Thats why mathoperation became a thing. It allows you make >= < != and other operations on a single number based condition expanding the possibilities hugely.

So how can you implement the MathOperations into some of the condition.
First of all not all conditions can do that. Its not possible.
Those who are able to use MathOperations give you most likey 2 options. Either use a limited version of the condition (bigger or smaller then number) or you choose MathOperations,
When that is a choice you have 3 ways to implement these:
Here are the examples with the "require_Height":

Implement it directly into the condition
{
	"type": "require_Height",
	"operations": "equals",
	"value": 32
}
or make it their own object
{
	"type": "require_Height",
	"operations": 
	{
		"type": "equals",
		"value": 32
	}
}
or make it an object array for multible conditions.
When this is done it makes turns all the conditions into 1 array condition.
{
	"type": "require_Height",
	"operations": 
	[
		{
			"type": "equals",
			"value": 32
		}
	]
}

These are supported by all conditions that are made by scavenge or the scavenge Author.
"Moddevs who want to support this feature its 1 function call in the API."
It allows for a simple implentation of number based conditions that support every need.
On top of that moddevs can also add MathOperations if needed.


So next to the MathModifiers.
Math Modifiers are modifiers that you can add into the MathOperations to mutate the number that the Operation gets.
For example you want to make that every 10 Blocks of Y Level the Operation should be true
You can either add 25 Conditions with each 1 MathOperation or you can add 1 MathOperation with 1 MathModifier that applies a modulo on the Number Injected that makes it only count from 0-9 which makes it only validate on every 10th Y level.

Here is an Example of how that would look like:
{
	"type": "require_Height",
	"operations": "equals",
	"value": 0
	"modifiers":
	{
		"type": "Modulo",
		"value": 10
	}
}

 this makes a lot of things possible and a lot of coding on the devs side much easier since he can provide easy and simple methodes and then a MathOperation for very complex things.
And thanks to the Operation Merging it can also look very clean.

Ok that is about everything about the Math Operations and the Math Modifiers.
Side note: a Math Condition can have as many modifiers as needed you use just an ObjectArray instead of an Object that.


Now a list of all the Math Operations:

  • default:
    Description: A Default MathOperation that just returns true or false
    Parameters:
    "value": (Which value should be returned) Boolean,

  • array:
    Description: Allows to combine Math Operations together.
    Parameters:
    "operations": (It can be either a Object or a ObjectArray) OptionalObjectArray,
         - "type": (RegistryName for the Math Operation) Registry Element,

  • equals:
    Description: Checks if the Input Value equals the Selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
         - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • equalsNot:
    Description: Checks if the InputValue doesn't match with selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • bigger:
    Description: Checks if the Input Value is bigger then the selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • biggerEquals:
    Description: Checks if the Input Value is bigger or equals the selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • smaller:
    Description: Checks if the Input Value is smaller then the Selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • smallerEquals:
    Description: Checks if the Input Values is smaller then or equals the Selected Value
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "value": (The Value the Operation should compare with) LongNumber,

  • inRange:
    Description: Checks if the Input Value is in range of the Input Values
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "minValue": (The Minimum Value the Operation should compare with) LongNumber,
    "maxValue": (The Maximum Value the Operation should compare with) LongNumber,

  • notInRange:
    Description: Checks if the Input Value is outside of the Range of the Selected Values
    Parameters:
    "modifiers": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "type": (RegistryName for the Math Modifier) Registry Element,
    "minValue": (The Minimum Value the Operation should compare with) LongNumber,
    "maxValue": (The Maximum Value the Operation should compare with) LongNumber,
Now since that is done here are the MathModifiers:

  • add:
    Description: Adds a Selected Value to the Input Value
    Parameters:
    "value": (The Value that should be added) LongNumber,

  • remove:
    Description: Removes a Selected Value from the Input Value
    Parameters:
    "value": (The Value that should be removed) LongNumber,

  • multiply:
    Description: Multiplies the Input Value with a Selected Value
    Parameters:
    "value": (The Value that should be Multiplied with) LongNumber,

  • divide:
    Description: Divides the Input Value by a Selected Value
    Parameters:
    "value": (The Value that should be divide with) LongNumber,

  • pow:
    Description: Pows the Input Value with the Selected Value
    Parameters:
    "value": (The Value that should be pow with) LongNumber,

  • Modulo:
    Description: Applies the Selected Modulo to the Input Value
    Parameters:
    "value": (The Value that should be Modulo with) LongNumber,

 LootProperties:

All the Loot Properties:
    

  • set_size:
    Description: Allows to modify the Stacksize of the loot drop
    Parameters:
    "value": (the amount the Stackize should be, Default: 1) IntNumber,
    Incompatible With: None
    Type: Passive

  • set_random_size:
    Description: Allows to set a Random sized loot
    Parameters:
    either
       - "minValue": (Min Stacksize of the loot) IntNumber,
       - "maxValue": (Max Stacksize of the loot) IntNumber,
    or
       - "pool": (A Pool of Random numbers to pick from) IntNumberArray,
    Incompatible With: None
    Type: Active

  • set_damage:
    Description: Allows to modify the damage of an item
    Parameters:
    "value": (The Damage the Item should have) IntNumber,
    Incompatible With: None
    Type: Passive

  • set_name:
    Description: Allows to set the name of the loot item
    Parameters:
    "name": (The name of the item) String,
    Incompatible With: None
    Type: Passive

  • add_enchantment:
    Description: Adds an Enchantment to the loot
    Parameters:
    "name": (The Enchantment name of the Enchantment that should be addeed) String,
    "level": (The Level of the Enchantment) IntNumber,
    Incompatible With: None
    Type: Passive

  • add_tag:
    Description: Allows to add a NBTTag to the item
    Parameters:
    "key": (the key of the NBTTag) String,
    "value_type": (The Type of Value you want to create) String,
    "value": (The Value that you want to store) Mixed,
    Incompatible With: None
    Type: Passive

  • add_random_enchantment:
    Description: Adds a Random Enchantment from a list of Enchantments.
    Parameters:
    "enchantments": (The List of Enchantments that it should choose from) ObjectArray,
        "name": (The Registry Name of the Enchantment) String,
        "level": (The Level of the Enchantment) IntNumber
    Incompatible With: None
    Type: Active

  • set_nbtData:
    Description: Allows to set the Stacks NBTData
    Parameters:
    "name": (The NBT File Reference for NBTData you want to add. empty = clearing, Default: empty) String,
    Incompatible With: None
    Type: Passive

  • set_random_nbtData:
    Description:
    Parameters:
    "datas": (The NBTCompounds that should be selected from) StringArray,
    Incompatible With: None
    Type: Active

  • set_random_damage:
    Description: Allows to set random damage on items
    Parameters:
    "damages": (The damages for the item) IntNumberArray,
    Incompatible With: None
    Type: Active

  • add_fluid:
    Description: Allows to Add Fluids to the Items if they can store them
    Parameters:
    "name": (The Fluid Registry name of the Fluid you want to add) String,
    "amount": (How much the Fluid Should be, Default: 1000) IntNumber,
    Incompatible With: None
    Type: Passive

  • add_random_fluid:
    Description: Allows to add a Random Fluid out of a List to the Item
    Parameters:
    "fluids": (The Fluids that should be pickt from) ObjectArray,
       - "name": (Fluid Registry name for the Fluid that should be added) String,
       - "amount": (How much fluid should be added, Default: 1000) IntNumber,
    Incompatible With: None
    Type: Active

  • set_random_loot:
    Description: Allows to add a Chance obj to a LootProperty
    Parameters:
    "loot": (The LootProperty that should be applied) Object,
    "chance": (How likely it is that the LootProperty is applied) null,
    Incompatible With: None
    Type: Active

  • set_has_flag:
    Description: Allows to add a LootProperty based on Data thats being send from the Block Property (sendFlagToLoot)
    Parameters:
    "flagID": (The ID of the the Flag that should be checkt for) String,
    "value": (If The Flag has to be true or false, Default: true) Boolean,
    "loot": (The LootProperty that should be applied) Object,
    Incompatible With: None
    Type: Active

  • set_has_Number:
    Description: Allows to add a LootProperty based on Data thats being send from the Block Property (sendNumberToLoot)
    Parameters:
    "NumberID": (The ID of the the Number that should be checkt for) String,
    "value": (What the number should be, Default: 0) IntNumber,
    "loot": (The LootProperty that should be applied) Object,
    Incompatible With: None
    Type: Active

 Block Properties:

All the Block Properties:

  • random_chance:
    Description: Allows to add a Random Factor into your condition
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "chance": (How likely it is in % that the Random returns true, Default: 100.0) FloatNumber,
    Incompatible With: None
    Type: Condition

  • default_Condition:
    Description: Allows to always return true or false
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "value": (If it should return true or false, Default: true) Boolean,
    Incompatible With: None
    Type: Condition

  • if_else_condition:
    Description: Allows to do make a condition that decides which condition is being used
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "check": (The Object for the Decider Condition) Object,
    "trueValue": (The Object for Condition if the Decider is true) Object,
    "falseValue": (The Object for Condition if the Decider is false) Object,
    Incompatible With: None
    Type: Condition

  • invert_Condition:
    Description: Allows to invert any other condition
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "value": (The Container where the condition is stored in that needs to be inverted) Object,
    Incompatible With: None
    Type: Condition

  • array_condition:
    Description: Allows to combine conditions together
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "conditions": (The Conditions that should be added) ObjectArray,
    "and": (If all conditions are required or just 1 of them, Default: true) Boolean,
    Incompatible With: None
    Type: Condition

  • modify_luck:
    Description: Allows to modify chance of Loot Drop, for reducing negative numbers are used since its added on top of base chance
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "multiplier": (the Multiplier thats being added on top of the base chance, Default: 0.0) FloatNumber,
    "points": (Adds Exact % on top of base chance, Default: 0) IntNumber,
    Incompatible With: None
    Type: Effect

  • set_rools:
    Description: Allows to set a Fixed or Random Loot Rools
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "amount": (The Amount of Rools that the loot pools should get) IntNumber,
    or
       - "pool": (Pool of Numbers which 1 gets pickt randomly from) IntNumberArray,
    Incompatible With: None
    Type: Effect

  • conditional_Effect:
    Description: Allows to make optional Effect based on 1 condition
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "condition": (The Condition object thats being checkt for) Object,
    "effects": (The Effects that should be applied) ObjectArray,
    Incompatible With: None
    Type: Effect

  • offset_effect:
    Description: Allows to offset a Effect to another position
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "direction": (The Side the Effect should be shifted to) String,
    "effect": (The Effect that should be offset to another position) Object,
    Incompatible With: None
    Type: Effect

  • if_else_effect:
    Description: Allows to apply a effect based of if a condition is true or false
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "check": (The Condition that decides which effect should be applied) Object,
    "trueValue": (The Effect that is applied when the condition is true) Object,
    "falseValue": (The Effect that is applied when the condition is false) Object,
    Incompatible With: None
    Type: Effect

  • offset_effect_adv:
    Description:
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "effects": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "positions": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "x": (The XOffset of the Effect that should be applied) IntNumber,
       - "y": (The YOffset of the Effect that should be applied) IntNumber,
       - "z": (The ZOffset of the Effect that should be applied) IntNumber,
       - "effect": (The Effect that should be applied) Object,
    Incompatible With: None
    Type: Effect

  • require_player:
    Description: Allows to check for a Fake Player or Real Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "require": (If the Player should be a RealPlayer, Default: true) Boolean,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_XP:
    Description: Allows to check if the Player has a Certain amount of XP
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "required": (If the Player requires that amount of XP or if it should be below the amount, Default: true) Boolean,
       - "value": (how much XP should be checked for, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: require_XP_Level(Completely) Duplicate(Partly)
    Type: Condition

  • require_XP_Level:
    Description: Allows to Check for Experience levels
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "required": (If the player should require that amount or stay below it, Default: true) Boolean,
       - "value": (How many Experience levels should be checked for, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly) require_XP(Completely)
    Type: Condition

  • require_sneak:
    Description: Allows to check if a player is sneaking
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "sneak": (If the Player should sneak or not, Default: true) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_empty_hand:
    Description: Allows to Check if the players hand is empty or not
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "required": (If the players hand should be empty or any item, Default: true) Boolean,
    "offHand": (If the Offhand or MainHand Should be empty or not, Default: false) Boolean,
    Incompatible With: require_item(Completely) require_tool(Completely) require_item_list(Completely) Duplicate(Partly)
    Type: Condition

  • require_left:
    Description: Allows to check if it the currentclick is a left or rightclick
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "leftClick": (Allows to decide if the Left or Rightclick is required, Default: true) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_tool:
    Description: Allows to check if a player has a tool in the hand
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "tool": (Which tool should be required) String,
    "level": (Which level the tool should have) IntNumber,
    "offHand": (If the Tool is required on the Main Hand or Off Hand, Default: false) Boolean,
    Incompatible With: require_item(Completely) Duplicate(Partly) require_item_list(Completely) require_empty_Hand(Completely)
    Type: Condition

  • require_potion:
    Description: Allows to check for if the Player has a PotionEffect
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (PotionRegistryName that should be checkt for) String,
    "required": (if the Potion is required or not, Default: true) Boolean,
    Incompatible With: None
    Type: Condition

  • require_item:
    Description: Allows to check if the Player has a Item in his main or offHand
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (Item that should be compared with) String,
    "meta": (The Metadata that should be compared with. 32767 = IgnoreMeta, Default: 32767) IntNumber,
    "amount": (The Stacksize that is required, Default: 1) IntNumber,
    "offhand": (If the Item should be at the Offhand or not, Default: false) Boolean,
    "required_durability": (The Durability that is required, Default: -1) IntNumber,
    "tags": (Required NBTTags that the item should have) StringArray,
    Incompatible With: Duplicate(Partly) require_tool(Completely) require_item_list(Completely) require_empty_Hand(Completely)
    Type: Condition

  • require_item_list:
    Description: Allows to check if a player has 1 of the items in a list
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "items": (The Items that should be compared with (It can be either a Object or a ObjectArray)) OptionalObjectArray,
       - "name": (Item that should be checkt for) String,
       - "amount": (The Stacksize that should be checkt for, Default: 1) IntNumber,
       - "meta": (The Metadata that should be compared with, (32767 == Ignore Meta), Default: 32767) IntNumber,
    "offHand": (If the Item should be present in the Offhand or mainHand, Default: false) Boolean,
    Incompatible With: require_item(Completely) require_tool(Completely) Duplicate(Partly) require_empty_Hand(Completely)
    Type: Condition

  • require_air:
    Description: Allows to check the players Air Level (between -20 and 300)
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "bigger": (If the Air should be bigger then the given value, Default: true) Boolean,
       - "value": (how much air should be required or not, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_health:
    Description: Allows to check the players Health
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "bigger": (If the Health should be bigger then the given value, Default: true) Boolean,
       - "value": (how much health should be required or not, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_wet:
    Description: Allows if the Player is wet (in rain or water)
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "required": (If the Player should be wet or not, Default: true) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • is_burning:
    Description: Allows to check if the Player is burning
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "required": (if the player has to burn or not, Default: true) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • player_has_items:
    Description: Allows to Check for Items inside of the Players inventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "items": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Item that should be searched for) String,
       - "meta": (The Metadata that should be searched for, Default: 32767) IntNumber,
       - "amount": (The Stacksize that should be searched for, Default: 1) IntNumber,
       - "nbt": (The NBTData that should be checkt for. Defaults to ignore, Default: null) String,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_hunger:
    Description: Allows to check for the Players Hunger
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "bigger": (If the Hunger should be bigger then the given value, Default: true) Boolean,
       - "value": (how much Hunger should be required or not, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_max_health:
    Description: Allows to check the players Max-Health
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "bigger": (If the Max-Health should be bigger then the given value, Default: true) Boolean,
       - "value": (how much Max-Health should be required or not, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • player_has_tag:
    Description: Allows to check if a Player has a Unique Stored. (Good for Per player Treasure)
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "tagID": (The TagID that should be checkt for) String,
    Incompatible With: None
    Type: Condition

  • item_has_nbt:
    Description: Allows you to check if a Item has a NBTTagCompound
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "require": (If the NBTTagCompound is required or not, Default: true) Boolean,
    "offHand": (If the Item to use should be from the Main or Offhand, Default: false) Boolean,
    "name": (The id of the NBTFile Reference for the NBTTagCompound to use) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • add_XP:
    Description: Allows to add or remove XP from a Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "amount": (The Amount of XP that should be added or removed) IntNumber,
    "remove": (If the XP should be added or removed, Default: false) Boolean,
    Incompatible With: None
    Type: Effect

  • add_XP_Level:
    Description: Allows to Add or Remove XP Levels
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "amount": (How many XP Levels should be added or removed) IntNumber,
    "remove": (If XP Levels should be added or Removed, Default: false) Boolean,
    Incompatible With: None
    Type: Effect

  • add_hunger:
    Description: Allows to add Hunger/Exhaustion to the Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "exhaustion": (If the Effect should add Exhaustion or remove Hunger directly, Default: true) Boolean,
    "amount": (How much Exaustion should be added or how much hunger should be removed) FloatNumber,
    Incompatible With: None
    Type: Effect

  • add_Potions:
    Description: Allows to apply a Potion Effect to a Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "chance": (how likely it is that these Potions get applied, Default: 100.0) FloatNumber,
    "potions": (The Potion Effects that should be applied (It can be either a Object or a ObjectArray)) OptionalObjectArray,
       - "name": (Potion Registry name of the Potion that you want to apply) String,
       - "duration": (The Duration of the Potion Effect in game ticks) IntNumber,
       - "amplifier": (How Strong the Potion should be, Default: 0) IntNumber,
       - "particals": (If the Potion Effect should show Particals, Default: true) Boolean,
    Incompatible With: None
    Type: Effect

  • swing_hand:
    Description: Allows to make that the Player swings his hand
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    Incompatible With: None
    Type: Effect

  • drop_items:
    Description: Allows to decide if the Loot Items drop or get added to the Players Inventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "doDrop": (If the Loot should drop or not, Default: true) Boolean,
    Incompatible With: None
    Type: Effect

  • damage_item:
    Description: Allows to damage the held item
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "amount": (How much damage should be applied) IntNumber,
    "chance": (How likely it is that the damage gets applied, Default: 100.0) FloatNumber,
    "offHand": (If the Item should be damaged from the Main or OffHand, Default: false) Boolean,
    Incompatible With: consume_item(Completely)
    Type: Effect

  • consume_item:
    Description: Allows to consume the held item
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "amount": (How many items should be consumed) IntNumber,
    "chance": (how likely it is that the items get consumed, Default: 100.0) FloatNumber,
    "offHand": (If the Item should be removed from the Main or OffHand, Default: false) Boolean,
    Incompatible With: damage_item(Completely)
    Type: Effect

  • consume_player_items:
    Description: Allows to consume items from a Players inventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "items": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Item that should be consumed) String,
       - "meta": (The Metadata of the item that should be consumed 32767 = any meta, Default: 32767) IntNumber,
       - "amount": (How many items should be consumed, Default: 1) IntNumber,
       - "nbt": (The NBTData the item should have that should be consumed, Default: null) String,
    Incompatible With: None
    Type: Effect

  • change_health:
    Description: Allows to increase/decrease the Players health
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "increase": (If the health should be increased or not, Default: true) Boolean,
    "amount": (How much the health should be increased or decreased) FloatNumber,
    Incompatible With: None
    Type: Effect

  • remove_potion:
    Description: Allows to remove Potion Effects from a Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "chance": (The Chance of how likely the Potion Effects will be removed, Default: 100.0) FloatNumber,
    "potions": (The Potion Registry names of the Potions that should be removed) StringArray,
    Incompatible With: None
    Type: Effect

  • set_air_level:
    Description: Allows to set the Players Air Level [between -10 and 300]
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "amount": (The Air Value that should be set, Default: 300) IntNumber,
    Incompatible With: None
    Type: Effect

  • set_XP:
    Description: Allows to set the Player Experience to a certain level or points
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "level": (If the Set of XP should be amount or Level, Default: true) Boolean,
    "amount": (How much the player XP or XP Level should be set to, Default: 1) IntNumber,
    Incompatible With: None
    Type: Effect

  • set_player_tag:
    Description: Allows to set a Tag to a player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "tagID": (The Tag you want to add or remove from the Player) String,
    "remove": (If the tag should be added or removed, Default: false) Boolean,
    Incompatible With: None
    Type: Effect

  • consume_random_item:
    Description: Allows to consume 1 random item out of the Players inventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "items": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Item that should be consumed) String,
       - "meta": (The Metadata of the item that should be consumed 32767 = any meta, Default: 32767) IntNumber,
       - "amount": (How many items should be consumed, Default: 1) IntNumber,
       - "nbt": (The NBTData the item should have that should be consumed, Default: null) String,
       - "weight": (The Weight how likely it is that this item should be consumed) IntNumber,
    Incompatible With: None
    Type: Effect

  • per_player_limit:
    Description: Allows to limit the Usage of a Block per Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "id": (Custom ID for the Counter for the per Player Data, Default: ResourceID) String,
    "increase": (If the it should be used up or reduced, Default: true) Boolean,
    either
       - "usage": (How much the Value should increase, Default: 1) IntNumber,
       - "max": (How much the limit should be) IntNumber,
    or
       - "usage": (How much the Value should decrease, Default: 1) IntNumber,
       - "max": (What the max should be (for the progress-animation)) IntNumber,
       - "min": (What the lower value should be., Default: 0) IntNumber,
    Incompatible With: per_block_limit(Completely) per_chunk_limit(Completely) Duplicate(Completely)
    Type: Condition, Effect

  • clicks_per_time:
    Description: Allows to check how often a Block was clickt per a certain amount of time
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "tabs": (How many Clicks per tick should be allowed, Default: 1) IntNumber,
    "time": (How many game ticks between the Click Limit should be, Default: 1) IntNumber,
    "amount": (How many Clicks should be 1 click worth, Default: 1) IntNumber,
    "trackerID": (Which id the click per time should have, Default: ResourceID) String,
    Incompatible With: None
    Type: Condition, Effect

  • sendFlagToLoot:
    Description: Allows to send a flag to the Loot Generator to be processed
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "flagID": (The ID that should be send to the LootGenerator) String,
    "value": (What the Value should be thats being send, Default: true) Boolean,
    Incompatible With: None
    Type: Effect

  • sendNumberToLoot:
    Description: Allows to send a Number to the Loot Generator to be processed
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "NumberID": (The ID that should be send to the LootGenerator) String,
    "value": (What the Value should be thats being send, Default: true) Boolean,
    Incompatible With: None
    Type: Effect

  • has_score:
    Description: Allows to check the if the player has a certain score
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Score ID that should be compared with) String,
    either
       - "bigger": (If the Score should be bigger or smaller then the requested value, Default: true) Boolean,
       - "value": (how big or small the score should be, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_stat:
    Description: Allows to check the if the player has a certain Stat
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The StatID that should be compared with) String,
    either
       - "bigger": (If the Stat should be bigger or smaller then the requested value, Default: true) Boolean,
       - "value": (how big or small the score should be, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_achievement:
    Description: Allows to check for a Achievement
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Achievement Registy name of the Achievment that should be checkt for) String,
    "required": (If the achievement should be required or not, Default: true) Boolean,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • add_stat:
    Description: Allows to Modify Stat Points
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The StatRegistry name that should be changed) String,
    "increase": (If the Stat should be increased or decreased, Default: true) Boolean,
    "amount": (How much the stat should be modified, Default: 1) IntNumber,
    Incompatible With: None
    Type: Effect

  • add_score:
    Description: Allows to modify a Score
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Score id of the Score that you want to change) String,
    "increase": (If the Score should increase or decrease, Default: true) Boolean,
    "amount": (How much the score should increase or decrease, Default: 1) IntNumber,
    Incompatible With: None
    Type: Effect

  • add_Achievement:
    Description: Allows to Add Achievements to a Player
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Achievement that should be given) String,
    Incompatible With: None
    Type: Effect

  • require_Spawn:
    Description: Allows to control if the Block should be inside or outside of the spawn Range
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "inside": (If the Block needs to be inside or outside of the Spawn, Default: true) Boolean,
       - "radius": (The Distance in Blocks how close or far away the Player should be from the Spawn, Default: 128) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_Biome:
    Description: Allows to check for biomes to white or blacklist
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "biomes": (The Biome(s) that should be compared with (It can be either a String or a StringArray)) OptionalStringArray,
    "inverted": (Decides if the List is a white or blacklist, Default: false) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_dimension:
    Description: Allows to control in which dimensions the block should be in and in which not
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "dimension": (The dimensions that should be included or exluded (It can be either a Object or a ObjectArray)) OptionalObjectArray,
       - "dim": (The Dimension should be required or excluded) IntNumber,
       - "required": (If the dimension is required or exluded) Boolean,
       - "default": (What should be returned if the Dimension isn't found, Default: false) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_time:
    Description: Allows to check if the World has a Certain Time of the Day
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "minValue": (Minimum Time that should be checkt for) IntNumber,
       - "maxValue": (Maximum Time that should be checkt for) IntNumber,
       - "inRange": (If the Check range should be inclusive or exclusive, Default: true) Boolean,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_worldExistence:
    Description: Allows to check how long the world already Existed
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "minValue": (Minimum Time that should be checkt for) LongNumber,
       - "maxValue": (Maximum Time that should be checkt for) LongNumber,
       - "inRange": (If the Check range should be inclusive or exclusive, Default: true) Boolean,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_weather:
    Description: Allows to check for the Weather and if the Block is directly effected by it
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "weather": (Which type of Weather should be checkt for (rain/thunder/snowing)) String,
    "required": (If the Weather should be present or not, Default: true) Boolean,
    "directly": (If the Block should be directly in the Rain, Default: false) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_entity:
    Description: Allows to check for Entities to be in range of the position
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (Which type of Entities should be checkt for) String,
    "radius": (How far the Check Range should be, Default: 5) IntNumber,
    either
       - "required": (If the Entity should be present or not, Default: true) Boolean,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • require_block:
    Description: Allows to check for Blocks around the Clicked Block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (Which Block should be checked for) String,
    "meta": (Which metadata should be used to check with, Default: 32767) IntNumber,
    "require": (if the Block is required or should not be present, Default: true) Boolean,
    "and": (if All blocks should be that or any amount should be it, Default: true) Boolean,
    "sides": (which sides should be checked for) StringArray,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • per_chunk_limit:
    Description: Allows to limit the Usage of a Block per Chunk
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "id": (Custom ID for the Counter for the per Chunk Data, Default: ResourceID) String,
    "increase": (If the it should be used up or reduced, Default: true) Boolean,
    either
       - "usage": (How much the Value should increase, Default: 1) IntNumber,
       - "max": (How much the limit should be) IntNumber,
    or
       - "usage": (How much the Value should decrease, Default: 1) IntNumber,
       - "max": (What the max should be (for the progress-animation)) IntNumber,
       - "min": (What the lower value should be., Default: 0) IntNumber,
    Incompatible With: per_block_limit(Completely) Duplicate(Completely) per_player_limit(Completely)
    Type: Condition, Effect

  • require_Height:
    Description: Allows to control if the Block should be inside or outside of the spawn Range
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "inside": (If the Block Needs to be inside of the Y Levels, Default: true) Boolean,
       - "minValue": (The Lowest Level the Block should be at, Default: 0) IntNumber,
       - "maxValue": (The Heighest Level the Block should be at, Default: 255) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_structure:
    Description: Allows to check if the Block is inside of a Structure
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Structure Type that should be checkt for) String,
    "required": (If the Structure is required or not, Default: true) Boolean,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_side:
    Description: Allows to check which side the Player is clicking on
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "sides": (Which sides can be clicked on) StringArray,
    Incompatible With: Duplicate(Completely)
    Type: Condition

  • require_distance:
    Description: Allows to check how far from a distance Customized Position X&Z only
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "x": (The XPosition that should be checkt for, Default: 0) IntNumber,
    "y": (The YPosition that should be checkt for, Default: 0) IntNumber,
    "z": (The ZPosition that should be checkt for, Default: 0) IntNumber,
    either
       - "bigger": (, Default: true) Boolean,
       - "value": (How big/small the distance to the Position should be, Default: 0) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • has_meta:
    Description: Allows to check for if the Block has a Certain Metadata
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "required": (If the Metadata is required or not, Default: true) Boolean,
       - "meta": (Which metadata should be required or not) IntNumber,
    or
       - "operations": (RegistryName for the Math Operation) Registry Element,
       - "jeiDesc": (The Description for the JEI plugin) String,
    Incompatible With: None
    Type: Condition

  • has_block_structure:
    Description: Allows to check for a custom Made Structure.
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "blocks": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (Which Block should be checked for) String,
       - "meta": (Which metadata should be used to check with, Default: 32767) IntNumber,
       - "positions": (It can be either a Object or a ObjectArray) OptionalObjectArray,
            - "x": (The XOffset for the Block that should be checkt for of the Clicked Block.) IntNumber,
            - "y": (The YOffset for the Block that should be checkt for of the Clicked Block.) IntNumber,
            - "z": (The ZOffset for the Block that should be checkt for of the Clicked Block.) IntNumber,
    "require": (If the Structure is required or not, Default: true) Boolean,
    Incompatible With: None
    Type: Condition

  • per_block_limit:
    Description: Allows to limit the Usage of a Block per Block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "id": (Custom ID for the Counter for the per Block Data, Default: ResourceID) String,
    "increase": (If the it should be used up or reduced, Default: true) Boolean,
    either
       - "usage": (How much the Value should increase, Default: 1) IntNumber,
       - "max": (How much the limit should be) IntNumber,
    or
       - "usage": (How much the Value should decrease, Default: 1) IntNumber,
       - "max": (What the max should be (for the progress-animation)) IntNumber,
       - "min": (What the lower value should be., Default: 0) IntNumber,
       - "replacement": (Which replacement Block should be used) Object,
            - "name": (The Block that should be used as replacement) String,
            - "meta": (Metadata of the Block that should be used, Default: 0) IntNumber,
    Incompatible With: Duplicate(Completely) per_chunk_limit(Completely) per_player_limit(Completely)
    Type: Effect

  • mark_unbreakable:
    Description: Makes the Block Unbreakable
    Parameters: "set" (if the unbreakable should be enabled or not)
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    Incompatible With: None
    Type: Condition

  • consume_block:
    Description: Allows to consume the Clicked block or to transform it into another block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "chance": (How likely it is that the block gets consumed or transformed, Default: 100.0) FloatNumber,
    "name": (What Block Replacement block should be, Default: minecraft:air) String,
    "meta": (Which metadata the block should have, Default: 0) IntNumber,
    "dropBlock": (Allows to drop the block as if it was mined, Default: disabled) Boolean,
    Incompatible With: None
    Type: Effect

  • spawn_explosion:
    Description: Spawns a Explosion at the Blocks Position
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "power": (How Powerful the Explosion should be) FloatNumber,
    "flame": (If the Explosion should spawn Flames, Default: false) Boolean,
    "smoking": (If the Explosion should spawn Smoke Particals, Default: true) Boolean,
    Incompatible With: None
    Type: Effect

  • spawn_particles:
    Description:
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Partical that should be spawned) String,
    "amount": (How many should be spawned. 0 = No Random movement but only 1 partical, Default: 0) IntNumber,
    "xOffset": (The Offset and motion multiplier for the X Position, Default: 0.0) FloatNumber,
    "yOffset": (The Offset and motion multiplier for the Y Position, Default: 0.0) FloatNumber,
    "zOffset": (The Offset and motion multiplier for the Z Position, Default: 0.0) FloatNumber,
    "speed": (The Speed that the Particals should move at, Default: 1.0) FloatNumber,
    "partical_args": (Custom Partical Arguments. These are the same as the Command one) IntNumberArray,
    Incompatible With: None
    Type: Effect

  • play_sound:
    Description: Allows to play a sound at the Blocks position
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Sound ID that should be played) String,
    "category": (Which sound category the sound should play under, Default: master) String,
    "volume": (how loud the sound should play, Default: 1.0) FloatNumber,
    "pitch": (how high the pitch of the sound should be, Default: 1.0) FloatNumber,
    Incompatible With: None
    Type: Effect

  • use_command:
    Description: Allows to send a command at the Blocks position as admin
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Command name that should be executed) String,
    "arguments": (The Arguments for the command if a argument starts with 'nbt:' then it will access the NBTFiles to load NBTData) StringArray,
    Incompatible With: None
    Type: Effect

  • modify_required:
    Description: Allows to replace the blocks of the connection sides
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "chance": (How likely it is that the Replacments happens, Default: 100.0) FloatNumber,
    "name": (Which block it should turn into, Default: minecraft:air) String,
    "meta": (The metadata the block should turn into, Default: 0) IntNumber,
    "sides": (The Sides that should be modified) StringArray,
    Incompatible With: None
    Type: Effect

  • change_meta:
    Description: Allows to change the Metadata of the block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    either
       - "meta": (The meta the block should turn into) IntNumber,
    or
       - "metas": (A Pool where a random meta is pickt from) IntNumberArray,
    or
       - "metaMap": (It can be either a Object or a ObjectArray) OptionalObjectArray,
            - "target": (Metas that should be checkt for) IntNumberArray,
            - "result": (What the BlockMeta should turn into) IntNumber,
    Incompatible With: None
    Type: Effect

  • place_block_structure:
    Description: Allows to place a customized Structure
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "blocks": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Block that should be placed) String,
       - "meta": (The Metadata that should be placed with the block, Default: 0) IntNumber,
       - "positions": (It can be either a Object or a ObjectArray) OptionalObjectArray,
           - "x": (The XOffset for the Block that should be placed of the Clicked Block.) IntNumber,
           - "y": (The YOffset for the Block that should be placed of the Clicked Block.) IntNumber,
           - "z": (The ZOffset for the Block that should be placed of the Clicked Block.) IntNumber,
    Incompatible With: None
    Type: Effect

  • require_tile_items:
    Description: Allows to check if the Block TileEntity has a set of items present
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "items": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Item that should be searched for) String,
       - "meta": (The Metadata that should be searched for, Default: 32767) IntNumber,
       - "amount": (The Stacksize that should be searched for, Default: 1) IntNumber,
       - "nbt": (The NBTData that should be checkt for. Defaults to ignore, Default: null) String,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • tile_has_fluid:
    Description: Allows to check if the TileEntity has a Fluid stored
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Fluid Registry name of the Fluid that should be checkt for) String,
    "amount": (How much the liquid should be checkt for, Default: 1000) IntNumber,
    "exact": (If the Exact amount should be present or any Amount, Default: true) Boolean,
    Incompatible With: Duplicate(Partly)
    Type: Condition
  • tile_has_FE:
    Description: Allows to check for Forge Energy inside of a Block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "bigger": (If the Block should have more or less ForgeEnergy then requested, Default: true) Boolean,
    "amount": (How much forge Energy Should be checkt for, Default: 0) IntNumber,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • item_has_FE:
    Description: Allows to check for Forge Energy inside of a Block
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "bigger": (If the Block should have more or less ForgeEnergy then requested, Default: true) Boolean,
    "amount": (How much forge Energy Should be checkt for, Default: 0) IntNumber,
    Incompatible With: Duplicate(Partly)
    Type: Condition

  • consume_tile_items:
    Description: Allows to consume items from a TileEntities inventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "side": (Which side the items should be taken from, Default: Null) String,
    "items": (It can be either a Object or a ObjectArray) OptionalObjectArray,
       - "name": (The Item that should be consumed) String,
       - "meta": (The Metadata of the item that should be consumed 32767 = any meta, Default: 32767) IntNumber,
       - "amount": (How many items should be consumed, Default: 1) IntNumber,
       - "nbt": (The NBTData the item should have that should be consumed, Default: null) String,
    Incompatible With: None
    Type: Effect

  • tile_consume_fluid:
    Description: Allows to consume Fluid from the TileEntity
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Fluid Registry name of the Fluid that should be consumed) String,
    "amount": (How much the liquid should be consumed, Default: 1000) IntNumber,
    Incompatible With: None
    Type: Effect

  • tile_add_fluid:
    Description: Allows to Fill Fluid to the TileEntity
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "name": (The Fluid Registry name of the Fluid that should be added) String,
    "amount": (How much the liquid should be added, Default: 1000) IntNumber,
    Incompatible With: None
    Type: Effect

  • add_tile_items:
    Description: Allows to add Items into slots of a TileInventory
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "side": (Which side the items should be added from, Default: Null) String,
    "items": (The Items that should be inserted) ObjectArray,
       - "name": (The ItemRegistryName of the Item that should be inserted) String,
       - "meta": (The Metadata of the Item that should be inserted, Default: 0) IntNumber,
       - "amount": (The Amount of the Item that should be inserted, Default: 1) IntNumber,
       - "nbt": (The NBTData the Item should have. Optional) String,
       - "slots": (The Slots the Item should be in) IntNumberArray,
    Incompatible With: None
    Type: Effect

  • modify_Block_FE:
    Description: Allows to add or remove FE to a BlockTileEntity
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "consume": (If Forge Energy should be added or removed, Default: true) Boolean,
    "amount": (How much should be added or removed, Default: 0) IntNumber,
    Incompatible With: None
    Type: Effect

  • modify_Item_FE:
    Description: Allows to add or remove FE to a Item
    Parameters:
    "disableJEI": (Decides if the Condition is visible in JEI, Default: false) Boolean,
    "consume": (If Forge Energy should be added or removed, Default: true) Boolean,
    "amount": (How much should be added or removed, Default: 0) IntNumber,
    Incompatible With: consume_item(Completely)
    Type: Effect

 

 

Comments

  • To post a comment, please or register a new account.
Posts Quoted: