ConstructionWand-Plugin

constructionwand but its plugin!

562

ConstructionWand-Plugin

🏗️ Construction Wand

<p align="center"> This document was generated by AI (not reviewed) </p>

<p align="center"> <img src="https://img.shields.io/badge/Minecraft-1.16--1.21.4-green" alt="Minecraft Version"> <img src="https://img.shields.io/badge/Folia-Supported-blue" alt="Folia Support"> <img src="https://img.shields.io/badge/License-MIT-yellow" alt="License"> </p>

A Minecraft server plugin inspired by the Forge mod Construction Wand. Allows players to quickly extend block placement, greatly improving building efficiency!

✨ Features

- 🔨 Resource Pack Support - Stone, Iron, Diamond, Netherite, Infinity - 🎯 Resource Pack Support - Right-click on a block surface to automatically extend placement of the same block - 👁️ Resource Pack Support - Particle effects show where blocks will be placed - 🎨 Resource Pack Support - Adjustable preview color and mode (full/corners/outline) - ⚡ Resource Pack Support - Building Extension enchantment increases maximum block placement - 🌍 Resource Pack Support - Simplified Chinese, Traditional Chinese, English, Classical Chinese - 🛡️ Resource Pack Support - Supports WorldGuard, Residence, GriefPrevention, etc. - 🚀 Resource Pack Support - Fully compatible with Folia servers - 📦 Resource Pack Support - Custom wand textures (supports 1.14-1.21.4+)

📋 Wand Types

| Wand | Max Blocks | Durability | Base Material | |------|-----------|--------|----------| | Stone Construction Wand | 9 | 131 | Stone Pickaxe | | Iron Construction Wand | 27 | 250 | Iron Pickaxe | | Diamond Construction Wand | 128 | 1561 | Diamond Pickaxe | | Netherite Construction Wand | 256 | 2031 | Netherite Pickaxe | | Infinity Construction Wand | 1024 | ∞ | Nether Star |

🔧 Installation

1. Download the latest plugin JAR file 2. Place the JAR file in your server's `plugins` folder 3. Restart the server 4. (Optional) Install the resource pack for custom textures

Resource Pack Installation

Package the `CWResourcepack` folder as a ZIP file, then: - Server: Place in `.minecraft/resourcepacks` folder - Server: Upload to the web and set the `resource-pack` URL in `server.properties`

📖 Usage

Basic Usage

1. Craft or obtain a construction wand via command 2. Hold the construction wand 3. Ensure you have the blocks to place in your inventory 4. Right-click on a block surface 5. The wand will automatically extend placement of the same block

Crafting Recipes

All wands follow the same crafting pattern:

``` Empty Empty [Material] Empty [Stick] Empty [Stick] Empty Empty ```

| Wand | Material | Core | |------|------|------| | Stone | Cobblestone | Stone Pickaxe | | Iron | Iron Ingot | Iron Pickaxe | | Diamond | Diamond | Diamond Pickaxe | | Netherite | Netherite Ingot | Netherite Pickaxe | | Infinity | Nether Star | Nether Star |

💻 Commands

Main command: `/constructionwand` (aliases: `/cw`, `/wand`)

| Command | Description | Permission | |------|------|------| | `/cw help` | Show help information | None | | `/cw list` | List all wand types | None | | `/cw preview` | Toggle preview mode | `constructionwand.preview` | | `/cw gui` | Open settings GUI | `constructionwand.settings` | | `/cw give <type> [player]` | Give a wand | `constructionwand.give` | | `/cw itemgui` | Open item acquisition GUI | `constructionwand.itemgui` | | `/cw enchant <enchantment> <level>` | Enchant a wand | `constructionwand.enchant` | | `/cw lang <language>` | Switch language | `constructionwand.lang` | | `/cw reload` | Reload configuration | `constructionwand.reload` | | `/cw nbtdebug` | Debug NBT information | `constructionwand.nbtdebug` |

🔐 Permissions

Player Permissions (Default: Enabled)

| Permission | Description | |------|------| | `constructionwand.use` | Allow using construction wands | | `constructionwand.use.stone` | Allow using stone construction wand | | `constructionwand.use.iron` | Allow using iron construction wand | | `constructionwand.use.diamond` | Allow using diamond construction wand | | `constructionwand.use.netherite` | Allow using netherite construction wand | | `constructionwand.use.infinity` | Allow using infinity construction wand | | `constructionwand.preview` | Allow toggling preview mode | | `constructionwand.settings` | Allow opening settings GUI |

Admin Permissions (Default: OP)

| Permission | Description | |------|------| | `constructionwand.give` | Allow giving wands | | `constructionwand.itemgui` | Allow opening item acquisition GUI | | `constructionwand.enchant` | Allow using enchant command | | `constructionwand.lang` | Allow switching server language | | `constructionwand.reload` | Allow reloading configuration | | `constructionwand.nbtdebug` | Allow using NBT debug | | `constructionwand.bypass` | Bypass region protection checks |

Permission Groups

| Permission Group | Description | |--------|------| | `constructionwand.player` | Includes all player permissions | | `constructionwand.admin` | Includes all permissions |

⚔️ Enchantment System

Building Extension

Increases the wand's maximum block placement count.

| Level | Bonus | |------|------| | I | +15% | | II | +30% | | III | +50% | | IV | +75% | | V | +100% |

How to Obtain: - Use `/cw enchant building_extension <level>` command - Enchant construction wands at an enchanting table (random level 1-5)

⚙️ Configuration

config.yml

```yaml

Language setting

language: "en_US" # Options: zh_CN, zh_TW, en_US, lzh

Preview settings

preview:

Particle color

particle-color: "RED" # RED, GREEN, BLUE, YELLOW, ORANGE, PURPLE, WHITE, AQUA, LIME or #RRGGBB

Preview mode

mode: "full" # full, corners, outline

Region protection settings

protection: use-event-check: true use-worldguard: true

Wand settings (customize each wand's properties)

wands: stone: enabled: true max-blocks: 9 durability: 131

... other wand configurations

```

Enchantment Configuration (enchant/building_extension.yml)

```yaml enabled: true max-level: 10 levels: 1: 0.15 2: 0.30 3: 0.50 4: 0.75 5: 1.00

... higher levels

default-increment: 0.15 ```

🌐 Multi-language Support

Supported languages: - `zh_CN` - Simplified Chinese - `zh_TW` - Traditional Chinese - `en_US` - English - `lzh` - Classical Chinese

Use `/cw lang <language_code>` to switch languages.

🔌 Compatibility

Server Software

- Spigot 1.16+ - Paper 1.16+ - Folia (fully supported)

Region Plugins

- WorldGuard - Residence - GriefPrevention - Towny - Lands - PlotSquared

Minecraft Versions

- 1.16.x - 1.21.4+ - Automatically adapts CustomModelData format (legacy integer/new string)

📁 Project Structure

``` ConstructionWand/ ├── src/main/java/org/little100/constructionWand/ │ ├── ConstructionWand.java # Main plugin class │ ├── action/ # Block placement logic │ ├── command/ # Command handling │ ├── enchant/ # Enchantment system │ ├── gui/ # GUI interfaces │ ├── i18n/ # Internationalization │ ├── listener/ # Event listeners │ ├── preview/ # Preview system │ ├── protection/ # Region protection │ ├── recipe/ # Crafting recipes │ ├── utils/ # Utility classes │ └── wand/ # Wand management ├── src/main/resources/ │ ├── config.yml # Configuration file │ ├── plugin.yml # Plugin information │ ├── enchant/ # Enchantment configs │ └── lang/ # Language files └── CWResourcepack/ # Resource pack ```

🛠️ Building

```bash

Clone the repository

git clone https://github.com/Little100/ConstructionWand_Pugin.git

Enter directory

cd ConstructionWand_Pugin

Build

./gradlew build

Output files are in build/libs/

```

📝 Changelog

v1.0.0

- Initial release - Five construction wands - Particle preview system - Multi-language support - Enchantment system - Region plugin compatibility - Folia support

📄 License

This project is licensed under the GPLv3 License - see the LICENSE file for details.

🙏 Acknowledgments

- Inspired by: Construction Wand (Forge Mod) - Thanks to all contributors and testers!

🐛 Bug Reports

If you find a bug or have a feature suggestion, please submit it on GitHub Issues.

---

<p align="center"> Made with ❤️ by Little_100 </p>

<p align="center"> <a href="https://github.com/Little100/ConstructionWand_Pugin">GitHub Repository</a> </p>

ADS