LamMailBox
1.7.4A mailbox system for Minecraft servers that allows players to send items, messages, and commands between each other.
1.7.4latestLamMailBox 1.7.4Jul 2, 2026 - Fixed "Message not found" appearing in the receiver slot of the mail creation screen after selecting a receiver. - Fixed the page indicator button potentially showing "Message not found" instead of the page number. - The config updater now restores any missing options from the default config on startup, not just messages. Existing values and customizations are always preserved (a backup is created first).1.7.2LamMailBox 1.7.2Jun 26, 2026 - Fixed the Command Items button showing "Message not found" instead of its name. - Fixed scheduled delivery and expiry times showing%schedule_time%text instead of the real time (or "Not set"). - Fixed the current message preview disappearing while composing mail.1.7.1LamMailBox 1.7.1Jun 15, 2026 LamMailBox 1.7.1
Fixed
- Fixed sent-mail views allowing players to place or drag items into read-only GUI slots. - Fixed player-inventory click paths that could bypass GUI cancellation in mailbox views. - Players withoutlammailbox.composeno longer see the Create Mail or View Sent Mail buttons.Notes
- No config changes required. - Existingsettings.permissions.composecontrols both main mailbox action buttons.1.7.0LamMailBox 1.7.0Jun 13, 2026 LamMailBox 1.7.0
Fixed
- Fixed the Add Items menu saving GUI control buttons as real mail attachments. - The Back button will no longer be added to the player's inventory or included in sent mail items. - Customized item editor control slots inconfig.ymlare now respected consistently.Improved
- Save and close behavior in the Add Items menu now use the same item collection logic, preventing control items from leaking into mail contents. - Added regression coverage for the Add Items menu control-slot behavior.1.6.0LamMailBox 1.6.0Jan 19, 2026 - Add Manual Mailings More info here: https://github.com/LamaliaNetwork/LamMailBox/wiki/Automat…1.5.4LamMailBox 1.5.4Jan 5, 2026 - Fix Messaging with latest ysklib 1.6.9 (Required)1.5.3LamMailBox 1.5.3Oct 10, 2025 Highlights
- Config-driven command aliases –/lmbnow syncs its aliases fromsettings.command-aliases.lmb, falling back to legacy configs and updating live on/lmbreloadso clickable prompts always point at the primary alias.Configuration & UX
- Defaultconfig.ymlbumped to version 1.7 with expanded comments, optional custom-model-data hooks, and unified placeholder handling across messages and GUI elements.Dependency Notes
- Requires YskLib 1.6.7+ for the updated MessageManager and command alias utilities.1.5.2LamMailBox 1.5.2Oct 8, 2025 This is a light maintenance release that swaps LamMailBox onto the shared YskLib messaging helper and tidies a few internal workflows. Gameplay, commands, and configs behave exactly as before.Updates
- MessageManager integration (internal) – messages are now cached at startup via YskLib, trimming a little overhead when the plugin sends frequent notifications. - Dual placeholder support everywhere – both{placeholder}and legacy%placeholder%formats are accepted across commands, GUIs, and config entries. - Small responsiveness improvements from polishing GUI click handling and item rendering paths.Fixes
- Strengthened error handling in GUI click events to prevent potential edge-case issues - Improved code maintainability to enable faster bug fixes in future releasesChanges
- Config version incremented to 1.7 to reflect the placeholder helper swap (existing%placeholder%lines remain valid—no edits required). - YskLib dependency bumped to 1.6.4+ so the shared MessageManager feature is available. - Internal GUI helpers were grouped into focused classes for navigation, pagination, styling, and command item composition to keep future maintenance simple.1.5.1LamMailBox 1.5.1Oct 4, 2025 Updates
- Added pagination to mailbox and sent mail GUIs, keeping each viewer's page state and exposing configurable previous/next buttons plus a page indicator. - Introduced custom model data support across GUI decorations, command items, and mailings so resource-pack overrides display consistently in previews and persisted mail. - Expanded composer and review screens with back buttons and editor shortcuts, making it easier to jump between the mailbox, sent list, and item editors while drafting mail.Fixes
- Apply configuration-driven item meta without overwriting existing lore or custom model data, preserving detailed previews for stored mail, decorations, and command bundles. - Restored legacy command items by falling back to the generic action key when specialized metadata is missing, keeping older configurations clickable.Changes
- Raised the default configuration schema to 1.6 and added pagination/back-button/custom-model entries throughoutconfig.yml, alongside matching guidance inmailings.yml. - SQLite storage now migratesmail_command_itemsto add acustom_model_datacolumn and persists the optional value parallel to YAML command item definitions.Notes
- Use the command item editor's new custom model button to set a numeric model id or typeCLEARto reset, and update page button slots/materials to fit your layout before deployment. -%current%and%total%placeholders populate the pagination indicator text; translate the new config messages/titles if you localize player-facing strings. - If you upgraded from v1.5 or earlier, editgui.main.items.mail-display.slotsto free the bottom row (slots 37–44) so the next-page button has room; otherwise pagination controls stay hidden. - Back up your data before upgrading so the automatic column migration and config updater can run safely, then/lmbreloadto refresh GUI layouts after adjusting defaults.1.5.0LamMailBox 1.5.0Oct 3, 2025 Updates
- Introduced automated mailings defined inmailings.yml, supporting cron-based schedules, first-join delays, permission gates, and Folia-safe delivery with automatic player notifications. - Added the/lmb mailingsadmin command with live status reporting (last/next run previews, run counters) backed by YAML and SQLite repositories. - Expanded the mail composer: schedule or expire deliveries via the GUI clock, build reusable console command bundles with the new command-item editor, and preview current receivers/messages directly in the interface. - Upgraded/lmb sendto accept inline sections (| [commands] | schedule:YYYY:MM:DD:HH:mm | expire:YYYY:MM:DD:HH:mm) so console and admins can queue timed or command-driven mail in one call.Fixes
- Blocked players from mailing themselves and added capacity checks before accepting new receivers to prevent overfilled mailboxes. - Restricted bulk recipient and command attachment actions to admins, ensuring permission checks mirror the GUI workflow. - Added sent-mail deletion confirmation and safeguarded composer/item GUI closures so items return to players instead of being lost. - Normalizedallonlinetargets to snapshot current online players before storage, ensuring scheduled deliveries reach the correct recipients.Changes
- Bumped configuration schema to 1.4 with expanded messages, titles, and GUI metadata plus the newmailings.auto-cleanuptoggle for status pruning. - Mail records now capture optional schedule and expiry timestamps, defaulting expiration fromsettings.default-expire-dayswhen unspecified. - Command attachments persist as structured "command items" (YAMLcommand-itemssection or SQLitemail_command_itemstable) while retaining legacy command lists for backward compatibility.Notes
- Cron expressions follow the UNIX format (m h dom mon dow); disable any definition by settingenabled: false. -mailings.ymlis generated on first run—review default examples before enabling automation in production. - Back up your YAML/SQLite data before upgrading; the plugin will auto-create the newmail_command_items/mailing_statustables andmailing-status.ymlfile on startup. - Reloading via/lmbreloadrefreshes mailing definitions, runs auto-cleanup, and reports active IDs for quick verification.1.4.0LamMailBox 1.4.0Sep 26, 2025 Updates
- Added SQLite storage backend as an alternative to YAML for better performance on large servers. - Introduced/lmbmigratecommand to safely move mail data between YAML and SQLite storage backends. - Added newstorage.ymlconfiguration file for backend selection.Fixes
- Improved mail querying performance and scalability for servers with large mail volumes. - Enhanced error handling and validation throughout the storage system.Changes
- Redesigned storage layer with repository pattern for cleaner code architecture and future expandability. - Enhanced command alias system with support for multiple aliases from configuration. - Centralized mail logic to reduce code duplication and improve maintainability.Notes
- Existing YAML installations continue working unchanged—SQLite is opt-in via the newstorage.ymlfile. - SQLite is recommended for servers with high mail volumes (1000+ mails) due to better query performance and scalability. - Migration between backends requires empty target storage to prevent data loss—always backup before switching. - All existing GUI configurations and features work identically with both storage backends. - Use the/lmbmigratecommand to transfer data between storage types—automatic import has been removed for safety.Storage Configuration Example
# storage.yml - New configuration file storage: type: sqlite # or yamlMigration Command Usage
/lmbmigrate yaml sqlite # Move from YAML to SQLite /lmbmigrate sqlite yaml # Move from SQLite to YAML1.3.0LamMailBox 1.3.0Sep 25, 2025 Updates
- Added per-slotenabledtoggles across the mailbox, sent-mail, mail-view, and composer GUIs so you can hide any built-in control without custom code. - Decorations now acceptlorefor hover text and acommandslist that executes console actions with%player%/%uuid%placeholders. - Inline comments and README guidance explain how to wire the new toggles and command hooks directly fromconfig.yml.Notes
- Existing installs keep their behaviour—new flags default to the previous values until you opt in. - Place any console actions under the relevant decoration block inconfig.ymland use%player%/%uuid%where necessary.Config Example
gui: main: decoration: trigger-button: # Example of a decoration that runs commands (can add as many as you like) enabled: true # Set to false to hide this button material: LIGHT_WEIGHTED_PRESSURE_PLATE name: '&bTrigger Reward' lore: - '&7Runs a console command on click.' slots: [22] commands: # Commands to run when clicked (as console) - 'lp user %player% parent add reward' - 'say %player% (%uuid%) just triggered the reward button!'1.2.2LamMailBox 1.2.2Sep 25, 2025 Updates
- Added a dismiss button for text-only mails so players can clear their inbox without collecting rewards. - Compose GUI now hides item, command, and schedule controls for players lacking the required permissions, keeping the experience tidy for regular users.Fixes
- Resolved a crash that occurred when opening the Sent Mail view with an empty mailbox and no configured placeholder item. - Improved inbox behaviour so marking a mail as read shows the correct chat feedback even when no items or commands are attached.Changes
- Disabled slots in the compose screen now reuse the existing glass filler, giving a consistent look while indicating unavailable actions.1.2.1LamMailBox 1.2.1Sep 18, 2025 Initial Version
Similar projects
Plugin →VeinMiner
Mine the whole vein on mining a single ore/block. Make the tedious mining experience to something satisfying and fun! FTB Ultimine alternative
99.3MSueta
Simple Voice Chat
A working voice chat in Minecraft!
76.8MSueta
Chunky
Pre-generates chunks, quickly and efficiently
18.4MSueta
VeinMiner Enchantment
Veinminer Addon - Adds vineminer enchantment to enchanting tables. Only tools with the enchantment can veinmine
18MSueta
JourneyMap
Real-time map used for mapping in-game or your browser as you explore.
14.7MSueta
WorldEdit
A Minecraft Map Editor... that runs in-game! With selections, schematics, copy and paste, brushes, and scripting. Use it in creative, or use it temporarily in survival.
11.6MSueta