ChestLockPin icon

ChestLockPin 1.0.4

Secure your chests with PIN codes – simple, powerful protection for any server.

✅ ChestLockPin – Protect Your Chests With PINs

Make your Minecraft survival world more realistic and secure! With ChestLockPin, players can lock their chests with custom 4-8 digit PIN codes. Whether you're running a public SMP or a private friends server, this adds a fun layer of personal security to your storage.


🔑 Features

  • 🔢 Custom PIN GUI
    Set and enter PINs through a fully configurable and intuitive inventory GUI.

  • 2025-04-20_06-24-55.png2025-04-20_06-25-04.png
  • 🛡️ Chest Protection
    Players must input the correct PIN to access protected chests.

  • 🧠 PIN Reset System
    Forgot your code? If you're the owner, easily reset it through the GUI.

  • 🧰 Code sitter Tool
    Allows the player to create a chest lock
  • 2025-04-20_06-24-18.png2025-04-20_06-24-21.png1.PNG
  • 💣 Brute Force Tool (Optional)
    Allow players to try and break into locked chests with a risk-based tool.

  • 2025-04-20_06-24-37.png2025-04-20_06-24-39.png2.PNG
  • 🧰 Double Chest Support
    Full compatibility with double chests – both sides get protected.

  • 🗂️ Configurable Everything
    Modify messages, GUI titles, item textures, materials, and more.

    ###########################
    # ChestLockPin Config #
    ###########################

    # Language file to load from /lang (ex: en_US.yml, fr_FR.yml)
    lang: en_US

    ##################
    # Database #
    ##################

    # Type of database: "sql" = SQLite (local), "mysql" = remote MySQL
    data: sql

    database:
    address: "localhost"
    db-name: "chestlock"
    hostname: "root"
    password: ""

    ###########################
    # PIN Inventory Config #
    ###########################

    inventory-pin:
    name: "§f[§4Locked PIN§f]"

    pin-items:
    title: "§6Create Your PIN"
    item-0:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMGViZTdlNTIxNTE2OWE2OTlhY2M2Y2VmYTdiNzNmZGIxMDhkYjg3YmI2ZGFlMjg0OWZiZTI0NzE0YjI3In19fQ=="
    slot: 40
    item-1:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNzFiYzJiY2ZiMmJkMzc1OWU2YjFlODZmYzdhNzk1ODVlMTEyN2RkMzU3ZmMyMDI4OTNmOWRlMjQxYmM5ZTUzMCJ9fX0="
    slot: 12
    item-2:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNGNkOWVlZWU4ODM0Njg4ODFkODM4NDhhNDZiZjMwMTI0ODVjMjNmNzU3NTNiOGZiZTg0ODczNDE0MTk4NDcifX19"
    slot: 13
    item-3:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMWQ0ZWFlMTM5MzM4NjBhNmRmNWU4ZTk1NTY5M2I5NWE4YzNiMTVjMzZiOGI1ODc1MzJhYzA5OTZiYzM3ZTUifX19"
    slot: 14
    item-4:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZDJlNzhmYjIyNDI0MjMyZGMyN2I4MWZiY2I0N2ZkMjRjMWFjZjc2MDk4NzUzZjJkOWMyODU5ODI4N2RiNSJ9fX0="
    slot: 21
    item-5:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNmQ1N2UzYmM4OGE2NTczMGUzMWExNGUzZjQxZTAzOGE1ZWNmMDg5MWE2YzI0MzY0M2I4ZTU0NzZhZTIifX19"
    slot: 22
    item-6:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMzM0YjM2ZGU3ZDY3OWI4YmJjNzI1NDk5YWRhZWYyNGRjNTE4ZjVhZTIzZTcxNjk4MWUxZGNjNmIyNzIwYWIifX19"
    slot: 23
    item-7:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNmRiNmViMjVkMWZhYWJlMzBjZjQ0NGRjNjMzYjU4MzI0NzVlMzgwOTZiN2UyNDAyYTNlYzQ3NmRkN2I5In19fQ=="
    slot: 30
    item-8:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvNTkxOTQ5NzNhM2YxN2JkYTk5NzhlZDYyNzMzODM5OTcyMjI3NzRiNDU0Mzg2YzgzMTljMDRmMWY0Zjc0YzJiNSJ9fX0="
    slot: 31
    item-9:
    type: "head"
    texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvZTY3Y2FmNzU5MWIzOGUxMjVhODAxN2Q1OGNmYzY0MzNiZmFmODRjZDQ5OWQ3OTRmNDFkMTBiZmYyZTViODQwIn19fQ=="
    slot: 32


    # item-1:
    # type: "head"
    # texture: "eyJ0ZXh0dXJlcyI6eyJTS0lOIjp7InVybCI6Imh0dHA6Ly90ZXh0dXJlcy5taW5lY3JhZnQubmV0L3RleHR1cmUvMThiOWE0MzU1YzFhYmVlMTQ0MDIyNmQ2MTRiNDQ2NDFkNDkyZDcyNDI1OWIwMTQ3MWYxZGYzZGI5M2U0N2RlIn19fQ=="
    # slot: 10
    # item-2:
    # material: "minecraft:emerald"
    # slot: 11
    # item-3 à item-9 similaires...

    confirm:
    material: "minecraft:green_stained_glass_pane"
    name: "§8[§aConfirm§8]"
    slot: 48

    cancel:
    material: "minecraft:red_stained_glass_pane"
    name: "§8[§cCancel§8]"
    slot: 50

    forgot:
    material: "minecraft:book"
    name: "§8[§bForgotten PIN§8]"
    slot: 49
  • 🌍 Language Support
    Easily translatable – default lang files included (en_US.ymlfr_FR.yml

  • 🧪 Built for Paper
    Supports versions from 1.21+ and Java 21 via module support.


🧾 Admin Features

  • 🔧 /chestpin admin|remove mode to bypass PINs

  • ❌ Remove or override any chest lock

  • 🧑 View all locked chests per player


📦 Configuration

  • 🖼️ Fully customizable GUI layout

  • 📜 Lang system (prefixes, success/failure messages, etc.)

  • 💾 SQLite and MySQL support (set in config.yml


📍 Permissions

chestlockpin.use Allows players to lock chests
chestlockpin.bypass Allows admins to open any chest

📌 Requirements

  • Java 21

  • Paper 1.21+


💬 Need Help?

Join our Discord or leave a comment below! I actively support all feedback and suggestions.
This plugin is actively maintained and evolving!

secure

gui

protection

chest-lock

inventory

minecraft-security

paper

plugin

admin

smp

storage