ConstructionWand-Plugin
constructionwand but its plugin!
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>