Описание
# BiggerEnderChest
**A sqidgeon Plugin**
> Replace vanilla ender chests with a bigger custom GUI. Per-player sizing, full metadata, SQL or JSON storage.
> **⚠ Data loss warning:** This plugin replaces the vanilla ender chest inventory system. When you first install it, any items currently in your vanilla ender chests will not carry over automatically — players must manually empty their ender chests before installation to avoid losing items.
[](https://modrinth.com/plugin/bigger-echests)
[](https://www.curseforge.com/minecraft/bukkit-plugins/bigger-echests/)
---
## Platforms
[](https://modrinth.com/plugin/anft-vpn/version/1.0.0B)
[](https://modrinth.com/plugin/anti-vpn/version/1.0.0B)
[](https://modrinth.com/plugin/anti-vpn/version/1.0.0B)
[](https://modrinth.com/plugin/anti-vpn/version/1.0.0B)
---
## Requirements
- **Java** 8+
- **Minecraft 1.13+**
- **LuckPerms** *(optional — falls back to Bukkit permissions)*
---
## Features
- **Replaces vanilla ender chests** — right-click opens a bigger GUI, no commands needed
- **Per-player sizing** — grant exactly the right number of rows via permissions
- **Full metadata preservation** — enchantments, lore, custom names, trims, everything survives
- **Three storage backends** — JSON files, SQLite, or MySQL — pick what fits your server
- **Human-readable JSON** — open `userdata/` files to see items in plain `minecraft:*` format
- **SQLite & MySQL** — built-in SQLite driver or connect to an external MySQL server
- **Click-through-safe GUI** — only listens for close events, no click/drag interference
- **LuckPerms integration** — full permission node support with per-group and per-player sizing
- **One JAR, any 1.13+ server** — no version-specific builds needed
- **Lightweight** — zero scheduler tasks, zero external API calls at runtime
---
## How it works
BiggerEnderChest intercepts vanilla ender chest interactions and opens a larger custom GUI instead. Player contents are persisted across restarts in either human-readable JSON files, SQLite, or MySQL.
When a player right-clicks an ender chest, the plugin cancels the default behaviour and opens an inventory sized to the player's highest permission level (1-6 rows). The 54-slot maximum matches a double chest for maximum space.
On close, every item is serialised with full metadata (enchantments, lore, custom names, trim, etc.) using Mojang's built-in `ItemStack.serialize()` format and stored via the configured backend.
| Storage | Setup | Best for |
|---|---|---|
| JSON | Zero — drops files in `userdata/` | Single-server, easy file editing |
| SQLite | Zero — creates `data.db` | Single-server, no file clutter |
| MySQL | Connection config required | Multi-server (bungee) networks |
---
## Database
BiggerEnderChest stores player ender chest contents in a real database.
**SQLite** (default — zero setup):
```yaml
storage:
method: sqlite
```
Creates `plugins/BiggerEnderChest/data.db` automatically on first start.
**MySQL / MariaDB** (external server):
```yaml
storage:
method: mysql
mysql:
host: your.db.host
port: 3306
database: minecraft
username: db_user
password: "yourpassword"
table: ender_chest_data
```
---
## LuckPerms Permissions
BiggerEnderChest integrates with LuckPerms out of the box. If LuckPerms isn't installed it falls back to Bukkit permissions automatically.
| Permission | Default | Description |
|---|---|---|
| `biggerenderchest.use` | `true` | Open the bigger ender chest |
| `biggerenderchest.size.1` | `false` | 1 row (9 slots) |
| `biggerenderchest.size.2` | `false` | 2 rows (18 slots) |
| `biggerenderchest.size.3` | `false` | 3 rows (27 slots) |
| `biggerenderchest.size.4` | `false` | 4 rows (36 slots) |
| `biggerenderchest.size.5` | `false` | 5 rows (45 slots) |
| `biggerenderchest.size.6` | `true` | 6 rows (54 slots) |
| `biggerenderchest.*` | OP | All permissions |
Set a player's chest size via LuckPerms:
```
/lp user kevin permission set biggerenderchest.size.3 true
```
Assign a size to a group:
```
/lp group default permission set biggerenderchest.size.4 true
```
Remove a higher size so a lower one takes effect:
```
/lp user kevin permission unset biggerenderchest.size.6
```
---
## Commands
### `All of the commands`
| Subcommand | Description |
|---|---|
| `/enderchest` | Opens enderchest GUI |
| `/echest` | Opens enderchest GUI |
| `/ec` | Opens enderchest GUIs |
```
## Configuration
### `config.yml`
```yaml
# Number of rows for the bigger ender chest (1-6, each row = 9 slots)
# This is the default size for players without a specific permission.
rows: 6
# Title shown on the GUI
gui-title: "&8Bigger Ender Chest"
# Command settings
command:
# Set to false to disable /enderchest, /echest, and /ec commands entirely
enabled: true
# Storage settings
storage:
# Available methods: json, sqlite, mysql
method: json
# JSON file storage settings
json:
# Directory for JSON files (relative to plugin folder)
folder: userdata
# SQLite settings (used when method: sqlite)
sqlite:
# Database file path (relative to plugin folder)
file: data.db
# MySQL settings (used when method: mysql)
mysql:
host: localhost
port: 3306
database: minecraft
username: root
password: ""
# Table name for storing ender chest data
table: ender_chest_data
# Connection pool settings
pool-size: 5
connection-timeout: 5000
```
---
## File Structure
After first startup your plugin folder will look like this:
```
plugins/BiggerEnderChest/
├── config.yml
└── userdata/
└── (Minecraft User ID).json
```
## Support
[](https://discord.gg/J2RRQcjHsM)
---
## Licence
This project is maintained by **sqidgeon**.
You are NOT allowed to re-distribute this plugin without consent from us!
---~~~~