banner
Rating
Voted0

In Control Mod (1.20.1) - control the appearance of your gangs!

5
Mod version:1
Game version:1.20.1
The mod has been successfully tested for the absence of viruses
821.23K95.19K

Report mod

  • image
modalImage

About This Mod

In Control Mod (1.20.1) allows to control mob spawns using two different rule files: one blocks the spawns of certain mobs under certain conditions (current weather, time of day, biome, block, light level, mod, minimum height, distance to spawns, etc.), as well as to change the status of these mobs (for example, to increase their health, make them more angry, etc.). Another rule file allows you to add new spawns to the world. It's like adding blazes to the world.

Features.

There are currently five rule files


spawn.json: This file allows you to block the spawning of certain creatures under certain conditions. In addition, it can change some properties of the mob, such as maximum health, if spawn is allowed.

summonoid.json: this file has the same structure as spawn.json, but is used only when calling zombies for help.

potentialspawn.json: in this file, spawning rules can be deleted or added under certain conditions. Rules in this file are used before rules are executed in spawn.json, so if you add new rules for mobs here, make sure that new mobs are allowed in spawn.json.

loot.json: this file allows you to control the loot that falls out of mobs when they are killed, based on various criteria.

patience.json: this file controls the experience gained for killing mobs; it has a similar structure to loot.json, but does not control the experience depending on the type of damage (magic, fire, explosions, etc.).

Note that the following notation can be used anywhere to specify objects with the following rules


minecraft:sand (normal minecraft sand)

minecraft:stained_hardened_clay@13 (add metadata 13).

For NBT (same format as /give): minecraft:stained_hardened_clay@13/{display:{Lore:[my clay]}}

Spawn rules


This section describes the rules in the spawn.json and summonaid.json files. The rules are essentially a set of "criteria" and "actions"; note that in the case of summonaid.json, the mobs affected are likely to be zombies. The following conditions are currently supported


onjoin: If set to true, this spawn rule will also be executed when the creature joins the world. This is a more powerful check that can disable spawning from mob spawners or prevent passive spawning of mobs that do not pass through a normal 'checkspawn' event. Use with caution.

minheight: This rule takes an integer that specifies the minimum height (inclusive) at which this rule will run. This height is the y level where the mob will sleep.

maxheight: Same as minheight, but this is the maximum y-level.

minlight: An integer value (0 to 15) that indicates the minimum illumination level of the block in which the mob will collapse.

maxlight: The maximum level of light.

mincount: A string value in the format ',', which is either a number that counts how many mobs of a given class already exist in the world, or the number of mobs of a given type. This way you can create a rule file based on the number of mobs already present.

maxcount: similar to mincount.

minspawndist: a floating point number indicating the minimum distance (in minecraft units) to the spawn point in the world.

maxspawndist: maximum distance to spavna point.

mintime: An integer representing the time of day (a number between 0 and 23999).

maxtime Maximum Time of Day

mindifficulty: a floating point value representing the local complexity of where the mob will collapse, a number from 0 to 4

maxdifficulty: Maximum local complexity

canspawnhere: A test specific to the entity implementation. If this rule returns 'default' as the result, it is automatically called Minecraft. For many mobs, this test performs a standard light test.

isnotcolliding: Entity-specific validation. If this rule returns 'default' as the result, it is automatically called Minecraft. For many mobs, this check checks to see if the mob encounters the block after the spawn.

complexity: a string with one of the following values: easy, normal, difficult, or peaceful.

weather: a string with one of the following values: rain or thunder

tempcategory: A string with one of the following values: cold, medium, warm, or ocean. Specifies the temperature category of the current biome.

hostile: a boolean value corresponding to hostile mobs.

passive: the boolean value corresponding to passive mobs.

seesky: a boolean value that will be true if the block in which the mob will collapse can see the sky.

structure: A string representing the name of the structure to be validated. Thus, for example, the rule can only work in a village. For vanilla, the following structures are possible: 'Village', 'Fortress', 'EndCity', 'Mineshaft', 'Stronghold', 'Temple', 'Monument', 'Mansion' (only for 1.11); 'Temple' can also be used for a witch's cabin. Modified structures must also work.

mob: a single row or list of rows. All strings are identifiers of mobs; in 1.10.2 the name must be 'Creeper', 'Skeleton', ... must be a name of type 'minecraft:creeper'; in 1.11.2, you can also use names of type 'minecraft:creeper'.

mod: a single row or list of rows. Each line represents a mod identifier. You can use this option to block the generation of a specific mode.

block: A single row or list of rows. Any string is modid:registryname. For example, as minecraft:stone or minecraft:cobblestone. This is the block in which the mob will collapse.

biome: single line or list of lines. Represents the biome in which the mob will collapse.

dimension: A single integer or a list of integers. Represents the dimension in which the mob will collapse.

random: This is a floating point number, and the rule is triggered if a random number is less than this number. In other words, if you want the rule to work with a probability of 10%, use 0.1 here.

incity: only if you have Lost Cities mod.

instreet: only if Lost Cities mode is available.

inbuilding: only if Lost Cities mode is available.

insphere: only if Lost Cities mode is available.

nbt: NBT can be added to spawning mobs.

Then there are a few actions. The most important action is the "result":

Result: 'deny', 'allow' or 'default'. 'deny' prevents spawning; 'allow' allows spawning even if the vanilla usually does not allow spawning (eg, too much light); 'default' allows spawning even if the light is too strong. If you are using 'allow' or 'default', the following actions are available

healthmultiply: This is a floating point number that represents the maximum health multiplier of a sleeping mob. For example, using a value of 2 will double the power of spawning mobs.

healthadd: This is a floating point number that is added to the maximum health.

speedmultiply: This is a floating point number, which is a multiplier for the mob's velocity.

speedadd: This is a floating point number that is added to the speed.

damagemultiply: This is a floating-point number that is a multiplier for damage done by a mob.

damageadd: This is a floating point number that adds to the damage.

angry: This is a boolean value indicating whether the mob is angry or targeting nearby players. In the case of a zombie pig-man, this value immediately makes him angry at the players. The same goes for Enderman and Wolf.

POTION: Single line or list of lines. All lines represent the potion effect and are displayed as: ,,. For example, "minecraft:invisibility,10,1".

helditem: A single row or list of rows. All lines are objects that the generated mobs can hold in their hands. This only works with those mobs that allow it to be done, such as skeletons and zombies. You can also specify a weight by adding "=" to the string. "1=minecraft:diamond_sword", "2=minecraft:iron_sword", etc.

armorboots: A single line or list of lines representing the random armor worn by spawning mobs.

armorhelmet: A single line or list of lines representing the random armor worn by spawning mobs.

Legs: A list of strings representing random armor that is worn by a single string or spawning mobs.

Armor Chest: A list of strings representing random armor worn by a single string or spawning mob.

Additional spawns.


This section describes the rules in potentialspawn.json. Any rule is essentially a set of criteria and a list of additional mobs that will fail when these criteria are met; the following conditions described in spawn.json can also be used here: mintime, maxtime, minlight, maxlight, minheight, maxheight, minspawndist, maxspawndist, random, structure, mindifficulty, maxdifficulty, seedsky, weather, tempcategory, difficult, block, biome, size. mincount and maxcount are also supported, but only work in the "," format.


All mob records have the following attributes


mob: in (1.10.2), Creeper, Skeleton, ... entity name as 'modid', and in 1.11.2 it can also be represented as modid:name.

weight: An integer indicating the weight of the spam. In other words, how important it is compared to other spawns.

groupcountmin: the minimum number of mobs that must sleep at the same time.

groupcountmax: the minimum number of mobs that will fall together.

You can also delete a spam mob entry by using the remove keyword. This is a string or list of strings representing mobs to be removed from possible spawns.


Lute control.


This section describes how to control the loot that results from killing a mob; you can also use the following conditions in the spawn.json file: mintime, maxtime, minlight, maxlight, minheight, maxheight, minspawndist, maxspawndist, random, mindifficulty, maxdifficulty, passive, hostile, seedsky, weather, tempcategory, structure, difficulty, block, biome,,,,, and size. In addition, the following criteria are dependent on lute


player: A boolean indicating whether the mob was killed by the player.

fakeplayer: A boolean value indicating whether the mob was killed by a fake player (a machine that pretends to be a player).

realplayer: A boolean value indicating whether the mob was killed by a real player (without automation).

Projectile: A boolean value indicating whether the mob was killed by the projectile.

Explosion: A boolean value indicating whether the mob was killed by the explosion.

spell: A boolean value indicating whether the mob was killed by the spell.

Fire: A boolean meaning indicating whether the mob was killed by fire.

source: a string or list of strings representing the source of the damage. Sources include 'lightningBolt', 'lava', 'cactus', 'wither' and 'anvil'.

helditem: A string or list of strings representing items in a player's hand. This rule is appropriate if the player is holding one of these items.

gamestage: A string representing the current stage of the game. This rule only works if 'gamestages' mode is available.

In addition, the following output options are available


item: a string or list of strings representing new looted items.

nbt: A JSON indicating the NBT used for the looted item.

remove: A string or list of strings representing items to be removed from the loot.

removeall: If this option is present, all items will be removed from the loot (before new items are added under this rule).

experience.


This is analogous to lute control, but controls the experience gained in killing mobs. The key words to control lute is the type of damage (magic, explosions, ...), here you can use everything except those associated with it. These rules have four choices


result: Set to 'deny' to be inexperienced.

setxp: Set the XP fixed value instead of the standard XP.

multxp: Multiply normal XP by this number.

addxp: Add this number to the final XP after multiplying the normal XP.

Commands.


The mod has the following commands:


ctrlreload: After editing a rule file, this command can be used to reload the file and apply new rules.

ctrldebug: Logs debug information about the spam. Warning: This can lead to a large output.

ctrlshowmobs: Displays all entities and their names that can be used for mob names in spawn.json.

ctrlkill: Kills all entities of the specified type. Possible types are all, hostile, passive, and entity. You can also specify an entity name instead of a type. For example, in version 1.11 it will be 'minecraft:enderman' and in version 1.10 it will be 'Enderman'. You can also specify a dimension ID as an option.

spawn.json Example


Below are some examples of spawn.json:


The first example allows spawns only in the plains biome. No other spawns are allowed.

[
  {
    "biome": "Plains",
    "result": "allow"
  },
  {
    "result": "deny"
  }
]


This example prohibits all passive mobs from being generated in a particular dimension:

[
  {
    "passive": true,
    "dimension": 111,
    "onjoin": true,
    "result": "deny"
  }
]


Allow only creepers, skeletons, and passive mobs:

[
  {
    "mob": ["Creeper", "Skeleton"],
    "result": "allow"
  },
  {
    "passive": true,
    "result": "allow"
  },
  {
    "result": "deny"
  }
]


Do not allow hostile mobs to sleep on levels above 50; below 50, only allow them to sleep on rocks and cobbles:

[
  {
    "minheight": 50,
    "hostile": true,
    "result": "deny"
  },
  {
    "maxheight": 50,
    "block": ["minecraft:stone", "minecraft:cobblestone"],
    "result": "allow"
  },
  {
    "result": "deny"
  }
]

Makes all mobs on the surface very dangerous. Underground, there is a small chance of invisible but weak zombies. In addition, the zombies and skeletons on the surface are sleeping in helmets and do not burn:

[
  {
    "mob": ["Skeleton","Zombie"],
    "seasky": true,
    "result": "allow",
    "healthmultiply": 2,
    "damagemultiply": 2,
    "speedmultiply": 2,
    "armorhelmet": ["minecraft:iron_helmet", "minecraft:golden_helmet"]
  },
  {
    "seasky": true,
    "hostile": true,
    "result": "allow",
    "healthmultiply": 2,
    "damagemultiply": 2,
    "speedmultiply": 2
  },
  {
    "seasky": false,
    "random": 0.1,
    "mob": "Zombie",
    "result": "allow",
    "healthmultiply": 0.5,
    "potion": "minecraft:invisibility,10000,1"
  }
]

Slows down all zombies and increases their health:

[
  {
    "mob": "Zombie",
    "result": "default",
    "nbt": {
      "Attributes": [
        {
          "Base": 40.0,
          "Name": "generic.maxHealth"
        },
        {
          "Base": 0.23,
          "Modifiers": [
            {
              "Operation": 2,
              "Amount": -0.5,
              "Name": "effect.moveSlowdown 0"
            }
          ],
          "Name": "generic.movementSpeed"
        }
      ]
    }
  }
]

potentialspawn.json Example

The following is an example of a potentialspawn.json file:

This example begets the Blazes all over the world, but only in Netrek:

[
  {
    "dimension": 0,
    "block": "minecraft:netherack",
    "mobs": [
      {
        "mob": "Blaze",
        "weight": 5,
        "groupcountmin": 1,
        "groupcountmax": 2
      }
    ]
  }
]


This example removes all squid spawning and adds Iron Golem to the village:

[
  {
    "remove": "Squid"
  },
  {
    "structure": "Village",
    "maxcount": "3,VillagerGolem",
    "mobs": [
      {
        "mob": "VillagerGolem",
        "weight": 5,
        "groupcountmin": 1,
        "groupcountmax": 2
      }
    ]
  }
]

Example of joot.json

Here is an example of a loot.json file

Make sure Blaze spawns Blaze's wands only if Blaze is killed by a player in the Nezer Fortress:

[
  {
    "mob": "Blaze",
    "remove": "minecraft:blaze_rod"
  },
  {
    "mob": "Blaze",
    "structure": "Fortress",
    "player": true,
    "item": "minecraft:blaze_rod"
  }
]


Make wizards drop non-zero stars only if they are killed by a rod:

[
  {
    "mob": "WitherBoss",
    "remove": "minecraft:nether_star"
  },
  {
    "mob": "WitherBoss",
    "player": true,
    "helditem": "minecraft:stick",
    "item": "minecraft:nether_star"
  }
]

In this example, a zombie drops an enchanted diamond sword:

  {
    "mob": "minecraft:zombie",
    "player": true,
    "item": "minecraft:diamond_sword",
    "nbt": {
      "ench": [
        {
          "lvl": 3,
          "id": 22
        }
      ]
    }
  }

Similar Mods/Addons

Game Version *

1.20.1 (a8b25575d4d06e5cd7163daf4b0ba374.jar)