Hammers (Beta)

Script Hammers (Beta) 0.7.5

  • Welcome to skUnity!

    Welcome to skUnity! This is a forum where members of the Skript community can communicate and interact. Skript Resource Creators can post their Resources for all to see and use.

    If you haven't done so already, feel free to join our official Discord server to expand your level of interaction with the community!

    Now, what are you waiting for? Join the community now!

Supported Skript Version
  1. 2.12
  2. 2.13
  3. 2.14
  4. 2.15
Supported Minecraft Versions
  1. 1.20
  2. 1.21
  3. 26.1
Requirements : Skript

About the Script:
This script provides a fully redesigned and modular Hammer Mining System for Minecraft servers using Skript.It allows players to mine large areas instantly using special hammers with custom model data, while maintaining full control over breaking shapes, directions, and tool durability.

The system is built on a clean and unified configuration structure, making it easy to add new hammer types, adjust breaking sizes, or customize behavior without touching the core logic.Each hammer uses directional offsets to generate accurate breaking patterns based on the player’s pitch and horizontal facing, ensuring consistent and predictable mining results.

The script also includes a protection layer that prevents breaking unbreakable or restricted blocks, handles tool durability correctly, and supports natural block drops.With the /hammer command, players or admins can easily give themselves any hammer type with the correct model data.

Overall, this script delivers a powerful, optimized, and expandable hammer system suitable for survival, custom SMPs, or mod‑like gameplay enhancements.

⭐ Features:
-
Unified & Modular Configuration
- Accurate Direction-Based Breaking
- Multiple Hammer Types
- Perfect Cuboid Mining
- Block Protection System
- Realistic Tool Durability
- Natural Block Drops
- Clean & Optimized Breaking Logic
- Aternos Support

Installation:
-
Place the main code inside: Skript/scripts

Compatibility:
The script supports both Java and Bedrock players.

Usage:
To get the hammer use this command:
Code:
/hammer <item> <hammer_type> [player]
# item (Required): Any item with durability.
# hammer_type (Required): 3x3, 3x3x3, 5x5 and 5x5x3
# player (Optional): Specific player

Examples
Code:
/hammer diamond_pickaxe 3x3
# Give you the 3x3 hammer
Code:
/hammer diamond_axe 3x3x3 KOUMOMOM
# Give KOUMOMOM the 3x3x3 hammer

Or you can set custom model data of an item to:
Code:
# 1245123 (3x3)
# 1245174 (3x3x3)
# 1245176 (5x5)
# 1245186 (5x5x3)

And you can add Unbreakable Blocks here:
Code:
set {Hammers.UnbreakableBlocks::*} to obsidian, end_portal_frame, command_block, barrier, structure_block, spawner, ender_chest, shulker_box and end_portal

How to Add a New Hammer Type?

1. Choose a Custom Model Data ID

Pick any number that is not already used. Example:
Code:
1245199

2. Register the Hammer Type
Add the hammer name to the hammer types list:
Code:
add "5x5x5" to {Hammers.Types::*}

3. Assign the Model Data
Link the model data to the hammer type:
Code:
set {Hammers.Config.5x5x5.Model} to 1245199
set {Hammers.ModelToType.1245199} to "5x5x5"

4. Define the Breaking Offsets
Each hammer type uses exactly two vectors:
  • Vector 1: The first corner of the cuboid
  • Vector 2: The opposite corner of the cuboid
Both vectors are calculated starting from the block the player breaks.

Meaning:
If the player breaks a block at (X, Y, Z) and your first vector is vector(2, 0, -2),
then the hammer will treat (X + 2, Y + 0, Z - 2) as the first corner of the mining area.

Your second vector defines the opposite corner, and the system will automatically generate the full cuboid between these two corners.

Define the two vectors for each direction:
Code:
set {Hammers.Config.5x5x5.Up::*} to vector(...) and vector(...)
set {Hammers.Config.5x5x5.Down::*} to vector(...) and vector(...)
set {Hammers.Config.5x5x5.South::*} to vector(...) and vector(...)
set {Hammers.Config.5x5x5.North::*} to vector(...) and vector(...)
set {Hammers.Config.5x5x5.East::*} to vector(...) and vector(...)
set {Hammers.Config.5x5x5.West::*} to vector(...) and vector(...)

If you have any feedback or suggestions, I’d love to hear them so I can make it even better

Untitled.png
Author
kouro
Downloads
82
Views
388
First release
Last update
Rating
0.00 star(s) 0 ratings

Latest updates

  1. Hammers (Beta) 0.7.5

    Update Log: 1. Complete Hammer System Rewrite - Rebuilt the entire hammer system using a...