NOTE: https://github.com/mega12345mega/NBT-Editor/wiki/Updating-the-Client-Chest
Main Features:
- 1.20.5 & 1.20.6 Support
- Added a DataVersion tag to the client chest and exported .nbt files
- Added an updater tool to the client chest and DataVersion field in
/nbt import
for .nbt files without the tag- Added functions to the API to update NBT
- Added container support for horse variations (donkey, llama, camel, etc.)
- Added a config option to change the position of the additional tabs (client chest, enderchest) for JEI compatibility (Issue #58)
- inon13 added a Hebrew translation (he_il)
- hyplant updated Simplified Chinese (zh_cn)
- Xantrisse updated Polish (pl_pl)
Small Features & Changes:
- Changed the inventory keybind, when used in the container screens, to go back to the previous container rather than up to the parent container
- Changed the no armor restriction config to be no slot restriction, which now applies to shulker boxes and the horse screen rather than always being enabled for them
- Added toolips to explain highlighted tags in the editor
- Changed the min/max/-infinity/+infinity button in the attribute editor to 4 individual buttons
- Changed the -infinity & +infinity buttons in the attribute editor to use
Double.POSITIVE_INFINITY
instead ofDouble.MAX_VALUE
- Renamed the operations in the attribute editor to match 1.20.5+ names, which will also be used in older versions of Minecraft since they make more sense
- Made the book screen's page keybinds act the same as the client chest's page keybinds (influenced by the config)
- Replaced
/factory unstackable
with/factory randomuuid [add | remove]
and, for 1.20.5+,/factory maxstacksize (default | <size>)
- Changed the level limit in the enchantment editor to 255 in 1.17.1+
- Removed
/factory signboard import
- Moved the cancel button in group shortcuts to match aliases
- Moved the text for attribute operations and slots to the language files
- Added
/get help get
&/get help open
- Optimized calls checking if the subject is unsaved in the editor
- Changed the NBT Editor protocol version to 1, so this update is incompatible with previous versions of the mod (for client-server communication)
Bug Fixes:
- Fixed converting books to writable detecting black as formatting
- Fixed setting sign items to waxed not working
- Fixed importing uncompressed .nbt files failing
- Fixed no armor restriction (now no slot restriction) being disabled and enabled when it shouldn't
- Fixed the name field in the editor scrolling to the last character when editing NBT
- Fixed the disabled name field not updating when changing the name in the main name field in the display editor
- Fixed getting multiple stacks of items resulting in incorrect stack sizes sometimes
- Fixed the text format sometimes outputting incorrect formatting
- Fixed crash when converting simple text into the text format
- Fixed a Java exception appearing when providing out of bounds lines to
/factory display lore
instead of a proper message - Fixed armor stand entities not being considered containers
- Fixed crash when rendering entities in the guis if the entity is holding an enchanted item
- Fixed crash in the editor when the count is set to "+" and the type is changed
- Fixed crash when calling
/get preset
in <= 1.18.2 - Fixed vertical centering of the jump pages buttons in the client chest
- Fixed opening containers inside of world containers resulting in desync
- Fixed the toast messages (update available, incompatible protocol) not working in <= 1.20.2
- Fixed internal issue with cloning strings in the editor (this doesn't seem to actually break anything, but unsure)
- Fixed issues with truncating messages/commands in the extended chat field
- Fixed crash when entering "-" into the page field in the client chest
- Fixed quick moving items in horse variations sometimes causing the item to disappear (as it is moved to the invisible saddle or armor slots)
- Fixed mod conflicts with any mod that uses fake players (Issue #108)
Note: 1.20.5+ support is planned, but not included in this update as I wanted to finish this and release it
Block & entity editing is finally here! When the mod is installed on the server (it still works for items when only on the client), players with level 2 OP or above can:
For items:
- Edit their inventory while in survival mode
- Edit items in containers
- Access their ender chest via the new tab next to the client chest or /open echest
For blocks:
- Use /nbt
- Use on containers /open
- Use /factory blockstates
- Use /factory display name
- Use on lecterns /factory book
- Use on signs /factory signboard
- Use on skulls /factory unbindskull
- Use /get block
- Export, including to a block item with /nbt export item
For entities:
- Use /nbt
- Use /open
- Use /factory display name (the gui also has an option to toggle CustomNameVisible)
- Use /factory attributes
- Use /get entity
- Export, including to a spawn egg with /nbt export item
Here are the other changes in this update:
- TheFaceJD added a Russian translation (ru_ru)
- Darukshock added a French translation (fr_fr)
- Xantrisse is continuing to update Polish (pl_pl)
- Renamed /itemfactory to /factory
- Renamed /nbt export give to /nbt export cmd (as it can now produce /setblock and /summon commands)
- A discord server (https://discord.gg/PzeYTbEZjn)
- A config option to disable block updates when saving blocks
- A config option to fix MC-69683: Enchantment Glint effect doesn't render on block entities
- /factory book make_writable: A command version of the button in the book gui
- /nbt import: Opens a gui where you can drag .nbt and image files onto just like your inventory
- File importing now also works on the esc menu
- Container for horses specifically; now, instead of accessing the armor list, the first slot is the saddle and the second slot is the armor
- Extra information now appears on some crash messages
Bug Fixes:
- Fixed crashing in <=1.20.2 when adding click & hover events to text (Issue #91, Issue #93)
- Fixed some crashes due to working with malformed text
- Fixed -permanent:true in /get potion using a long duration instead of -1 (infinity)
- Fixed pasting into empty NBT lists not working sometimes
- Fixed crash when opening the large client chest if the small version had never been opened before (Issue #92, Issue #101)
- Fixed getting an item that should be added to a stack in your off hand instead overriding your middle hotbar slot
- Fixed command argument hints missing (Issue #86)
- Fixed spam in the log file if hdb requests fail (for example, if you're disconnected from the internet) - errors are still logged, but the timeout now works properly (Issue #89)
Main Features:
- NBT Autocomplete integration - when that mod is also installed, you will now get NBT suggestions, including tag names (use alt to navigate the dropdown in multi-line fields)
- Color selector for custom colors, instead of just a hex input
- Customizable command aliases (in /nbt config), with built in "extreme aliases" - one or two character aliases
- Item size tooltip - shows the bytes/kb/mb/gb of an item (must be enabled in /nbt config)
- Unbreakable itemfactory (/itemfactory unbreakable, /if ub)
- Container support for chiseled bookshelves, suspicious sand & gravel, and decorated pots
- Glowing signs color dropdown
- Client chest pages can now be named
- /clientchest now can take the page number or a page name as an argument
- Page Up and Page Down keys now can be used to navigate the client chest, with Shift for jumping (use /nbt config to inverse the keys)
- Made scrollbars better and added them to the multi-line text fields
- Cancel option for the shortcuts and aliases config
- The max scroll speed is now 10, and defaults to 5 (instead of a max of 2 with 1 default)
- Xantrisse has been keeping pl_pl up to date!
Bug Fixes:
Adds 1.20.2 support provided by shaijana!
This version DOES NOT support any other version of Minecraft.
Main Features:
- 1.20 & 1.12.1 support
- Now allows NaNf, Infinityd, etc. in nbt editor (which doesn't match /data: MC-200070); config option to disable
- Config screen is now organized
Bug Fixes:
- Fixed a crash when editing command group shortcuts outside of a world (via modmenu)
- Fixed group command shortcuts not ticking
- Fixed tooltips in config when using dropdowns
Noteworthy Code Base Changes (for API users):
- Version has been completely redone, so you should use Version.newSwitch() since it is no longer an enum
- Classes named MultiVersion[...] are now MV[...]
- MainUtil has had many methods moved into ItemReference and the new TextUtil
- Use NBTEditorAPI.registerConfigItem(Consumer<ConfigCategory>) to add to and create new config sub-categories
- I'm now regularly commiting and pushing so you can access the latest in-development versions on Github (download the Artifacts.zip for a compiled version)
NOTE: Minecraft 1.20 support will come in a follow up v1.12.1
Main Features:
- 1.17 support
- Display editor: A gui for item names and lore via /itemfactory display. The name, lore, and hideflags item factories have been moved to /itemfactory display <name | lore | hideflags>
- Book editor: A gui for custom written books via /itemfactory book [new]
- Sign editor: A gui for custom signs via /itemfactory signboard [new <type>] (sign is already taken as an alias of signature)
- Importing images (drag onto inventory for item with image lore, drag onto display editor to add to an existent item, drag onto book editor to embed into a page)
- Tooltip overflow fix: Automatically moves and scales tooltips to stay within the screen, useful for viewing lore images (can be disabled in config)
- Find & replace: Multi-line text fields (including the new formatted text fields) support Ctrl+F, including RegEx
- No armor restriction: Allows placing non-armor items into armor slots (must be enabled in the config) - was already possible by editing armor items, but this makes it easier
- Corrupt client chest pages are now backed up with a warning
- /items has been removed in favor of the /open alias
Bug Fixes:
- Fixed incompatibility with the clientcommands mod, causing a crash in some versions of Minecraft
- Fixed command syntax errors showing %s instead of information
- Fixed slots sometimes being referenced incorrectly (eg. space on armor opening a hotbar slot) in older Minecraft versions
- Fixed the offhand slot being referenced incorrectly
- Fixed /itemfactory display lore list, then clicking on a line, showing JSON instead of the currently configured text mode
- Fixed the text format system not allowing multiple formats at the same time (eg. bold and italic)
- Fixed item tooltips appearing underneath the page text field and logo in the client chest
- Fixed crash when hitting enter in a string input field if the input is invalid
- Fixed bottom right slot of a container being uneditable in some scenarios
- Fixed the save indication not waiting for a parent save to finish (eg. a sub-container within the client chest should wait for the client chest page to finish saving)
- Fixed client chest save errors not showing an error in chat
- Fixed closing the client chest or container view right after moving something into your inventory creating a ghost item
- Fixed deleting characters in multi-line text fields not adding an undo entry, so you couldn't Ctrl+Z just that edit
- Fixed a warning in the console about CommandExecutionC2SPacketMixin when launching in older versions
- Fixed the bridge library being loaded when launching the game causing a crash, making the mod incompatible with the feather launcher
- Fixed expanding an opened string causing the string to be replaced with the non-string version (eg. NbtString '{"text":"test"}' => NbtCompound {"text":"test"})
- Fixed crash when editing the display.Name tag if the name field at the top of the screen was scrolled over more than the new name length
- Fixed text fields being edited from the bottom of the screen up causing the lower ones to appear focused in some guis
- Fixed text field selection highlights not appearing on the text field in some guis
- Fixed the cursor in some text fields not blinking
Noteworthy Code Base Changes (for API users):
- ItemReference has been refactored, which allows you to create custom ItemReference types (meaning some enderchest mod could allow editing enderchest items directly for example)
- ClientContainerScreen is now called ClientHandledScreen
- the screens package has been sorted into sub-packages
Main Features:
- Now supports 1.19.4
- An itemfactory gui, which is accessible via the Shift + Space keybind or the button in the top right of all factories
- /nbt export file and screenshots now have [Open Folder] and [Delete] buttons (you can disable the buttons on screenshots in /nbt config)
- /nbt export file now includes the name of the item in the file name along with the timestamp
- /nbt export file <name> allows you to specify the name of the file
- Compatible enchantments are highlighted and sorted to the top of the dropdowns in the enchantments itemfactory
- The enchantment itemfactory now handles multiple entries of the same enchantment
- Shift-clicking the duplicate option on lists allows you to duplicate something a specified number of times
Bug Fixes:
- Lots of incompatibilities with other mods relating to the CreativeTab feature of the API
- Bundles are now treated as containers (you can open them with Ctrl + Space)
- The chat limit extension now works properly in 1.19.3+
- Fixed sliders sometimes randomly stopping sliding
- Fixed the tooltip rendering conflict with Enchantment Descriptions that caused the descriptions to appear in the wrong place
- Fixed the nbt formatter acting strangely when quotes were used around key names
- Fixed getting disconnected or having an item overwritten when receiving some invalid slot change packets when the client chest or container menu was open
Main Features:
- /get lostitem history: View your cursor's history, in case you delete an item or it glitches out
- /nbt export file: Export an item into a .nbt file
- Drag .nbt files onto any inventory screen to get the item
- Drag .nbt files into the editor screen to add the contents of the file
- An API for modders looking to add their own features to the mod
- A config option for unlimited client chest pages, which has some advantages and some drawbacks
- Convert written books back into writable books by opening them and clicking the "Make Writable" button
- When there is a new update, the NBT Editor icon will display "Update Available"
- There are now three dots on the list entries' bar, signaling the existence of a previously not well known menu
Bug Fixes:
- Fixed the key in the editor being unselected when clicking the value field or expand, in 1.19.3
- Fixed /get hdb sometimes freezing the game indefinitely - it may still cause a brief freeze right after startup, but this is unlikely
- Fixed clicking the same locked item twice causing it to be removed as if it wasn't locked
- Fixed rapidly adding two items to the client chest and then switching pages causing the second item to not be saved, when the page contains lots of data
- Fixed the /get help itemfactory command not showing information for the signature itemfactory
- Fixed a crash in the editor, where changing the count to empty and then changing the id crashed the game
Main Features:
- Now supports 1.18
- /nbt export <give|get|cmdblock>, which allows you copy a command or get a command block to receive the item you're currently holding
- The expand button in the editor now opens the value of the current path when no key is selected, allowing you to access the entire root tag at once if the path is empty
- There is a new text format, which is used in all the text related commands (refer to /get help textformat). This can be disabled in the config, which switches to the old JSON system
- /itemfactory name <name>, which names the item you're holding (and supports the text format)
- /itemfactory unstackable, which gives a random UUID to the item you're holding
- Shortcut commands, which can be enabled in the config (/nbt config). This allows you to, for example, run /lore instead of /itemfactory lore
Small Features:
- The config menu now uses the standard menu format (the same format the attributes and enchantment editor uses)
- The config menu has more descriptive tooltips
- The "Key Fix" config option has been renamed to "Mac Border Patch," and is now colored red on Mac computers
- New Mac users have the Mac Border Patch enabled by default
- There is now a config option to disable checking for updates
- /signature is now an itemfactory (use /itemfactory signature to access it)
Bug Fixes:
- The Mac Border Patch config option is now checked in the expand button's menu, fixing rendering
- The rename item feature inside the NBT editor now supports navigating with arrow keys
- /itemfactory lore's command suggestions now start with /itemfactory lore instead of /lore
- When opening strings in the NBT editor, true and false is now converted to "true" and "false," rather than 1b and 0b, which caused issues with text
Technical & major code changes:
- The language file's keys are now more consistent
- ConfigScreen's config options have been renamed with the language file
- Each command in /get <cmd> now has its own class in a package
- The command system was redone to allow for shortcuts
Main Features:
- Much more support for /open (previously only chests, barrels, and shulker boxes were supported):
- + Trapped chests
- + Armor stands & other spawn eggs, for armor and held items
- + Furnaces, blast furnaces, & smokers
- + Brewing stands
- + Campfires & soul campfires
- + Dispensers & droppers
- + Hoppers
- + Jukeboxes
- + Lecterns
- + Item frames & glow item frames
- Version checker (when the game starts, the mod checks for an update)
- /itemfactory attributes newuuids: re-randomizes the UUIDs on the attributes
- Air editing support & a related bug fix - refer to Issue #16 for more information
Small Features:
- The attributes itemfactory now has an autofill button for: the maximum value, minimum value, infinity, and negative infinity
- The message that prompts /get lostitem now has a "Click to execute" hover event (clicking worked previously, just without the hint)
- The client chest is now loaded asynchronously, to slightly speed up the loading time when there is a lot of data
- [Advanced] All error outputs that used e.printStackTrace() previously now use the logger with a message for context
Bug Fixes:
- Ctrl+Click no longer overrides previous enchantments, like it worked before v1.7.0. (It continued to work correctly for enchanted books specifically.)
- The client chest's locked slots feature is now passed onto inner containers when using Ctrl+Space
- UUIDs are now kept for unchanged attributes in the attribute itemfactory (previously every save randomized every attribute's UUID)
- Removing all the attributes in the itemfactory now also removes the AttributesModifier tag
- After changing the item's type in the nbt menu, previously the first action (like adding a tag) would not work
IMPORTANT: /hideflags, /max, /unbindskull, and /lore have all been moved to /itemfactory.
/removeflags (an alias for /hideflags) as been removed completely.
Main Features:
- The item factory system, which includes (other than the four commands above):
- An attribute editor
- A block state editor (for BlockStateTag)
- An enchantment editor (Ctrl+Click is still supported and recommended)
- There are now scroll bars
- You can configure the scroll speed of the mouse wheel for NBT Editor related menus (/nbteditor config)
Small Features:
- The previous screen is shown underneath the confirm and text/number input dialogs
- The text/number input dialog will now visibly disable the confirm button if the input is invalid
- The /hideflags screen now uses the new item editor system to match with the other item factories
Bug Fixes:
- Using Ctrl+Click on armor slots now works properly
- The save button in the nbt editor will no longer flash right when you open the menu
- The /open message has been updated to include the 27 slot requirement
- Ctrl+Click now works with extra high level enchantments
- When using /nbt on an item with an empty key, a confirm message to fix is shown. The message has been updated to specify that the empty key will be deleted.
- When canceling the empty key warning, you now go back to the previous location (like the client chest), rather than closing everything