← Назад к ресурсам

Vanilla Essentials: Technical Tools

A mod that adds useful tools for technical players, command block users, and mapmakers.

Modrinth game-mechanics management utility

Описание

# Vanilla Essentials A mod that adds useful tools for technical players, command block users, and mapmakers Feel free to send feedback [here](https://docs.google.com/forms/d/e/1FAIpQLScXe0xAWlpl7xKlKYQjnKrzolt4ZT3SnkwT8F-xkrxFGEyimQ/viewform?usp=dialog) ## Features ### Entities * Hitbox entity ### Commands * `/raycast` * `/compare` * `/rename` * `/advancedsummon` * `/count` * `/activate` * `/convert` * `/iftick` * `/distance` * `/rtp` * `/coords` * `/nearfill` * `/scan` * `/ifat` * `/area` * `/findblock` * `/ifpowered` * `/wait` ### Keybinds * Copy block position (`F6`) * Change fly speed (`backtick`) * Quick fill (`F8`) ### Scoreboard Criteria * Right-click * OP permission ### Other * Antikill * Antitp * Entity selector count argument * Exclude self argument * Adds a `custom_data` NBT tag to every entity ## Usage ### Hitbox Entity * An invisible entity with a hitbox. * Has NBT data `scale` to adjust its size and `IsEnabled` to toggle collision. * This is a **server-side** feature. ### Commands #### `/raycast` * Performs a raycast from the player's perspective to detect a block. * Usage: * `/raycast block []` * `/raycast ifblock []` * With `block`, returns the coordinate along the given axis (`x`, `y`, or `z`) of the block the player is looking at. * With `ifblock`, returns `1` if the block the player is looking at matches the given block state. * If no block is hit, the command fails. * Returns the result or error if conditions are not met. * Runs on the **server side**. #### `/compare` * Runs command on entities whose NBT values match a comparison source (another entity or storage). * Usage: * `/compare entity ` * `/compare storage ` * Runs on the **server side**. #### `/rename` * Renames the item you're holding in your main hand. * Usage: `/rename ` * Supports only **plain text** — no color codes or JSON components. * Runs on the **client side**. #### `/advancedsummon` * Spawns entities with advanced options. * Usage: * `/advancedsummon area []` — summons one entity per block in the cuboid area. * `/advancedsummon multiple []` — summons the specified number of entities. * Runs on the **server side**. #### `/count` * Counts entities and players matching the target selector. * Usage: `/count ` * Returns the count as the command result. * Runs on the **server side**. #### `/activate` * Toggles interactable blocks at the specified position. * Can activate command blocks. * For levers, it flips the state (on/off). * For buttons and pressure plates, it simulates pressing and automatically releases after 1 second. * Usage: `/activate ` * Runs on the **server side**. #### `/convert` * Converts blocks into entities. * Usage: `/convert (falling_block|block_display) []` * Runs on the **server side**. #### `/iftick` * Checks if the current game tick matches the specified tick number. * Usage: `/iftick ` * Succeeds only if the current tick count modulo `` is zero. * Useful for timing functions to run periodically. * Runs on the **server side**. #### `/distance` * Measures the straight-line (Euclidean) distance between two blocks or two entities. * Usage: * `/distance block ` * `/distance entity ` * Outputs the integer distance in chat. * Returns the integer distance as the command result. * Runs on the **server side**. #### `/rtp` * Teleports target entities to a **random grid-aligned** position within the specified cuboid area. * Usage: `/rtp ` * Runs on the **server side**. #### `/coords` * Client-side command to save, list, remove, and copy named block positions. * Positions are saved **per world/server** in a JSON file (`saved_cords.json`) inside your Minecraft folder. * Usage: * `/coords save ` — saves your current player block position under ``. * `/coords list` — lists all saved positions for the current world/server. * `/coords remove ` — deletes the saved position ``. * `/coords copy ` — copies the saved coordinates `` to your clipboard as `x y z`. * Saved coordinates persist between Minecraft sessions. * Runs on the **client side**. #### `/nearfill` * Fills a volume relative to the player’s position using an offset. * Usage: * `/nearfill ` — fills the block at the offset from the player with ``. * `/nearfill replace ` — replaces blocks. * Runs on the **server side**. #### `/scan` * Returns the specified block count in an area. * Usage: `/scan ` * Runs on the **server side**. #### `/ifat` * Executes a command as all targets in an area. * Usage: `/ifat ` * Runs on the **server side**. #### `/area` * Executes a command for every block in an area. * Usage: `/area ` * Runs on the **server side**. #### `/findblock` * Finds the closest block in a radius and returns the axis. * Usage: `/findblock []` * Runs on the **server side**. #### `/ifpowered` * Detects if a block is powered. * Usage: `/ifpowered []` * The command fails if the block is not powered but succeeds if the not boolean is set to true. * Runs on the **server side**. #### `/snapshot` * Used to restore areas. * Usage: * `/snapshot save []` * `/snapshot restore ` * `/snapshot remove ` * Runs on the **server side**. #### `/wait` * Delays command block chains * Usage: `/wait ` * Runs on the **server side**. ### Keybinds #### Copy Block Position (`F6`) * Press `F6` while looking at a block to copy its coordinates to your clipboard. * Coordinates format: `x y z`. #### Change Fly Speed (`backtick`) * Scroll while holding `backtick` to change fly speed. #### Quick fill (`F8`) * Press the key once to select the first corner of an area. * Press again to select the second corner — the area will be filled with the block in your hand. * Press Ctrl + key to manually clear the selection. * If only the first point is selected, it will auto-clear after 30 seconds. ### Scoreboard Criteria #### Right-click * Tracks when the player right-clicks with any item. #### OP Permission * Custom scoreboard criteria that detects if a player has operator permissions. ### Other #### Antikill * Entities tagged `antikill` cannot be killed by `/kill`. #### Antitp * Entities tagged `antitp` cannot be teleported by `/tp`. #### Entity selector count argument * Can be used in any entity selector (`@e[...]`) with the `count` argument. * Supports a single number (`count=2`) or a range (`count=2..3`). * The selector only targets entities if the number of matches falls within the specified range. * If the number of matching entities is outside the range, no entities are targeted. #### Exclude self argument * When added to an entity selector (`exclude_self=true`), it excludes the executor entity (`@s`) from the targets.