Inventory Archiver can be useful in every server available. It is basically an improved enderchest plugin where the players can
save, edit and delete their inventory, completely lag free. You can even
add your friends to your inventories and give them 4 types of access.
The plugin can reach this lag free experience by using
asynchronous task execution in the main algorithms.
You can
configure the permissions so they can match perfectly with the server ranks or players.
Inventory modifying and loading
Inventory saving and deleting
Friend Access
Features
100% configurable.
Available in all versions. (1.8-1.21)
MYSQL support.
Support for ViaVersion, your players can use it from any version available, even after changing it.
Lags free.
Easy to use GUI and commands.
Configurable rank/permission system
Asynchronous task execution.
Offline inventory edit.
Friend access - Everyone can add their friends to their saved inventories.
Dismiss deleted inventories, so the player will never not understand where their inventory went.
Confirmation Gui so players don't have to regret rash decisions.
Delete from GUI or command.
Multiple players can edit one inventory at the same time.
Block click inventory opening.
Inventory loading.
Armor support.
Extra hand item support (1.13+)
Multi page system.
Synchronize between databases.
You can set up how many friends each group should be able to add to each inventory in the config file.
Players can add/remove friends with the /inventory friend command.
Players can set 4 types of access type for each friend with each inventory. These are:
Only View: Friends can only open your inventory but can't edit anything.
Edit: Friends can edit your inventory but can't take anything out of it.
Full Edit: Friends can take out anything from your inventory.
Load: Friends can full edit and load your inventory from the GUI.
Players can manage these access types from the "Friend Access Setup GUI" which they can open from each inventories main GUI.
Players can see their "friend inventories" from the "Friend Summary GUI" which they can open with double clicking on the required block or from the Summary GUI.
Commands (Available: /inventory, /inv, /kit)
Permission
invsaver.*
invsaver.others.* - Grants permission for everything with players.
invsaver.bypass.edit - No one will be able to edit your inventories.
invsaver.bypass.disabledworlds
invsaver.bypass.forcesave - Player's cannot force you to save your inventory.
invsaver.bypass.saveprice
invsaver.others.save.bypass.amount
You can synchronize between the databases with this command.
It won't delete the existing data, just add the rest from the other database.
In both cases the config.yml "database-type" section must be mysql. And the plugin must connect to the mysql server.
Code (YAML):
######################################### # # You can find the permissions and commands on # the spigot page of the plugin! # ######################################### # # Plugin configuration: # ######################################### # The type of the database. # Options: flatfile or mysql # Flatfile will save data in your local storage in the plugins/invArchiver folder. ######################################### DATABASE: flatfile
######################################### # Mysql Database Connection ######################################### MYSQL-DATABASE:
HOST: localhost
PORT: 3306
DATABASE: inventory_saver_db
USER: root
PASSWORD: "" ######################################### # The plugin will save in this format the date when sb saves or edits an inventory. # Help for the formating: https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html DATE-FORMAT: "dd/MM/yyyy HH:mm:ss" ######################################### # If true, the console alert your when a new update comes out. ######################################### UPDATE-CHECKER: true
######################################### # If true players can open inventory (same as /inv menu but not running through command so if you want to disable command and just using this it will work fine) by clicking on the block below. ######################################### OPEN-INV-WITH-BLOCK:
ENABLE: true
MATERIAL: ENDER_CHEST
DISABLED-WORLDS: - world_disabled_block
######################################### # In the disabled worlds player won't be able to use the block click function. Except players with "invarchiver.bypass.disabledworlds" permission. ######################################### DISABLED-WORLDS: - world_disabled
######################################### # Disable the economy manager for the plugin. # If it's true, the save price for the groups won't matter. ######################################### ECONOMY:
DISABLE: false
######################################### # If true, the inventory automatically deletes itself when loaded. ######################################### LOAD-INV-DELETE: true
######################################### # If true, the inventory automatically deletes itself when someone else loads a players inventory. ######################################### LOAD-OTHER-INV-DELETE: false
######################################### # If true, the inventory automatically deletes when a friend load an inventory. ######################################### LOAD-FRIEND-INV-DELETE: true
######################################### # If true the players inventory will be deleted when it gets saved. ######################################### DELETE-ON-SAVE: true
######################################### # If true, the loaded inventory will simply overwrite the player's inventory ######################################### OVERWRITE-INVENTORY: false
######################################### # Drop items on the ground if player loads something and it isn't empty. ######################################### DROP-ITEMS-WHEN-LOAD: true
######################################### # If true, you can overwrite the inventory contents. ######################################### OVERWRITE-INV-NAMES: true
######################################### # If true, player can load inventories from the sum gui. ######################################### RIGHT-CLICK-SUMGUI-LOAD: true
######################################### # Here you can disable the friend access feature ######################################### FRIEND-ACCESS:
ENABLED: true
DOUBLE-CLICK: true
DEFAULT-TYPE: VIEW
# Available: VIEW, EDIT, FULL_EDIT, LOAD ######################################### # You can turn on and off the confirmation gui, which appears when you delete, load or clear inventories. ######################################### CONFIRMATION-GUI:
DELETE: true
LOAD: false
CLEAR: true
######################################### # The summary GUI (for short SumGUI) is the place where players can navigate through all of their inv or others. ######################################### SUMMARY-GUI:
TITLE: "&8%target% &6&l| &8Page: %page%" ITEMS:
FILLER:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
NORMAL-ICON: # If first-item is true, the plugin will find the first item on the saved inventory and shows it as the icon of the inv in the SumGUI. # If false, it will show what you set up at the material. FIRST-ITEM: true
NAME: "&6%invname%" MATERIAL: GOLD_INGOT
LORE: -
"" - "&7Saved by: &e%savedby%" - "&7Saved at: &e%savedat%" -
"" - "&7Last modified by: &b%modifiedby%" - "&7Last modified at: &b%modifiedat%" -
"" -
"&a&lLeft-Click &7to &aopen &7the inventory." -
"&b&lRight-Click &7to &bload &7the inventory." DISMISS-ICON:
NAME: "&c%invname%" MATERIAL: REDSTONE
LORE: -
"" -
"&c%invname% &7got deleted!" -
"" - "&7Deleted by: &c%deletedby%" - "&7Deleted at: &c%deletedat%" -
"" -
"&7Click here to &adismiss &7the inventory." GO-LEFT:
NAME: "&aGo to page &e%page%" MATERIAL: ARROW
GO-RIGHT:
NAME: "&aGo to page &e%page%" MATERIAL: ARROW
CLOSE:
NAME: "&cClose" MATERIAL: ARROW
INFORMATION:
NAME: "&6Information - Page %page%" MATERIAL: EMERALD
LORE: -
"" -
"&6%number% &7inventories saved." FRIEND-SUMMARY:
NAME: "&dFriend Summary GUI" MATERIAL: PLAYER_HEAD
DAMAGE: 3
LORE: -
"" -
"&aOpen &7the &dFriend Summary GUI&7." ######################################### # MainGUI is the GUI which opens when you open an inventory from SumGUI. ######################################### INVENTORY-MAIN-GUI:
TITLE: "&6%invname% &8inventory" ITEMS:
FILLER:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
BACK:
NAME: "&aBack" MATERIAL: ARROW
LOAD:
NAME: "&6Load" MATERIAL: BLAZE_POWDER
DELETE:
NAME: "&cDelete" MATERIAL: REDSTONE
FRIEND-SETUP:
NAME: "&eFriends Setup" MATERIAL: PLAYER_HEAD
DAMAGE: 3
######################################### # Friend Setup - This is where you can manage the access types of your friends. ######################################### FRIEND-SETUP-GUI:
TITLE: "&6%inventory% &8friends" ITEMS:
FILLER:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
BACK:
NAME: "&cBack to main GUI" MATERIAL: ARROW
FILLER-ITEM:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
FRIEND:
NAME: "&e%player%" LORE:
ACTIVE-ACCESS: " &a» %name%" INACTIVE-ACCESS: " &c» %name%" LORE: -
"%access%" ######################################### # Friend Summary - This is where you can see the GUIs you have been added to as a friend. ######################################### FRIEND-SUMMARY-GUI:
TITLE: "&eYour friend inventories &6&l| &8%page%" ITEMS:
FILLER:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
NORMAL-ICON: # If first-item is true, the plugin will find the first item on the saved inventory and shows it as the icon of the inv in the SumGUI. # If false, it will show what you set up at the material. FIRST-ITEM: true
NAME: "&c%invname%" MATERIAL: GOLD_INGOT
# This is the default item for the icon LORE: -
"" - "&7Owner: &c%owner%" - "&7Access Type: &e%access_type%" -
"" - "&7Last modified by: &b%modifiedby%" - "&7Last modified at: &b%modifiedat%" -
"" -
"&a&lLeft-Click &7to &aopen &7the inventory." GO-SUMMARY-GUI:
NAME: "&dSummary GUI" MATERIAL: CHEST
LORE: -
"" -
"&7You have &d%number% &7inventories." -
"" -
"&aOpen &7the &dSummary GUI&7." GO-LEFT:
NAME: "&aGo to page &e%page%" MATERIAL: ARROW
GO-RIGHT:
NAME: "&aGo to page &e%page%" MATERIAL: ARROW
CLOSE:
NAME: "&cClose" MATERIAL: ARROW
######################################### # Friend Main GUI - This is where you can take a look at or edit/load your friend's inventory. ######################################### FRIEND-MAIN-GUI:
TITLE: "&6%invname% &8inventory" ITEMS:
FILLER:
MATERIAL: GRAY_STAINED_GLASS_PANE
DAMAGE: 7
BACK:
NAME: "&aBack" MATERIAL: ARROW
LOAD:
NAME: "&6Load" MATERIAL: BLAZE_POWDER
######################################### # The confirmation GUI is the GUI where players have to approve tasks. ######################################### CONFIRMATION-GUIS:
DELETE:
TITLE: "&cAre you sure?" ITEMS:
ACCEPT:
NAME: "&cDelete Inventory" MATERIAL: GREEN_STAINED_GLASS_PANE
DAMAGE: 13
CANCEL:
NAME: "&aCancel and go back" MATERIAL: RED_STAINED_GLASS_PANE
DAMAGE: 14
CLEAR:
TITLE: "&cAre you sure?" ITEMS:
ACCEPT:
NAME: "&cClear Inventories" MATERIAL: GREEN_STAINED_GLASS_PANE
DAMAGE: 13
CANCEL:
NAME: "&aCancel and go back" MATERIAL: RED_STAINED_GLASS_PANE
DAMAGE: 14
LOAD:
TITLE: "&cAre you sure?" ITEMS:
ACCEPT:
NAME: "&cLoad Inventory" MATERIAL: GREEN_STAINED_GLASS_PANE
DAMAGE: 13
CANCEL:
NAME: "&aCancel and go back" MATERIAL: RED_STAINED_GLASS_PANE
DAMAGE: 14
######################################### # You can set up the permissions as you wish. Extend the list like below. # # Each rank has the permission like invarchiver.rank.RANK-NAME # Example for the gold rank: invarchiver.rank.gold # # Weight means if a player has multiple permissions, they will get the one with the highest weight. For example OPs always receive "infinite" rank with this setup. # The amount means how many inventories the players with the rank are able to save. # Edit means whether the players with the rank can edit their inventory from the gui or not. # Save price talks for itself. ######################################### RANKS:
DEFAULT:
WEIGHT: 1
AMOUNT: 2
EDIT: false
SAVE-PRICE: 100
ACCESS-PER-INV: 0
GOLD:
WEIGHT: 2
AMOUNT: 5
EDIT: true
SAVE-PRICE: 50
ACCESS-PER-INV: 2
IRON:
WEIGHT: 3
AMOUNT: 20
EDIT: false
SAVE-PRICE: 20
ACCESS-PER-INV: 5
DRAGON:
WEIGHT: 4
AMOUNT: 30
EDIT: true
SAVE-PRICE: 0
ACCESS-PER-INV: 10
INFINITE:
WEIGHT: 100
AMOUNT: 100
EDIT: true
SAVE-PRICE: 0
ACCESS-PER-INV: 18
# Max is 18 for now
Code (YAML):
# # I recommend reading the config.yml and the spigot page first! # DONT-HAVE-PERMISSION: "&cYou don't have permission to use this!" RELOAD: "&aFiles reloaded successfully!" DONT-HAVE-RANK: "&cYou don't have permission to do this." NO-RANK: "&cYou have no inventory saver rank." PLAYER-NO-RANK: "&cPlayer doesn't have an inventory saver rank." NO-MYSQL-CONNECTION: "&cThere is no mysql connection. You should check the config file." SYNC-MYSQL-TO-FLATFILE: "&aYou successfully synchronized the mysql database to the flatfile." SYNC-FLATFILE-TO-MYSQL: "&aYou successfully synchronized the flatfile database to the mysql." CANT-EDIT: "&cYou don't have permission to edit your inventories." CANT-EDIT-PLAYERS-INV: "&cYou don't have permission to edit %player%'s inventory." INV-LOADED: "&aYou successfully loaded inventory &e%invname%&a." INV-IS-DELETED: "&c%inv% inventory is deleted." INV-NOT-EMPTY: "&cBecause your inventory wasn't empty, your stuff got dropped on the ground." INV-NOT-EMPTY2: "&cYou can't load the inventory because your inventory isn't empty." CANT-FIND-PLAYER: "&cPlayer not found!" CANT-OPEN-SB-INV: "&cYou can't open their inventory." CANT-FIND-INV: "&cCan't find inventory under this name." INV-SAVED: "&aYour successfully saved your inventory with the name &e%name%&a." INV-SAVE-PROBLEM: "&cThe name must be at least 5 and no more than 18." MONEY-WITHDRAW: "&a%money%$ has been deducted from your account." NOT-ENOUGH-MONEY: "&cYou don't have enough money on your account. &7(%money%$)" NAME-TAKEN: "&cInventory name is already taken." INV-EMPTY: "&cYour inventory is empty, so you can't save it!" CANT-SAVE-INV: "&cYou don't have permission to save any more inventory!" TARGET-INV-EMPTY: "&cTarget's inventory is empty." CANT-SAVE-SB-INV: "&cYou can't save their inventory!" SAVED-SB-INV: "&aYou saved &e%target%&a's inventory!" INV-SAVED-BY: "&aYour inventory got saved by &e%player%&a with name &7%invname%&a." INV-DONT-EXISTS: "&cInventory doesn't exits!" INV-CLEAR: "&aAll inventories have been successfully deleted!" INV-CLEAR-BY: "&cYour inventories have been deleted by &e%player%&c." INV-DELETED: "&eYour &c%invname% &einventory has been &cdeleted&e." CANT-CLEAR: "&cYou can't clear their inventories." CANT-LOAD: "&cYou can't load their inventories." DISABLED-WORLD: "&cYou can't use this in this world." NO-INV-SAVED: "&cYou have 0 saved inventory." TARGET-NO-INV-SAVED: "&c%target% has 0 saved inventory" FEATURE-DISABLED: "&cThis feature is currently disabled." FRIEND-COMMAND-HELP: "&c/%label% friend <inv_name> add/remove <player>" FRIEND-ALREADY-HAS-ACCESS: "&c%player% already has access to your inventory." FRIEND-DONT-HAVE-ACCESS: "&c%player% doesn't have access to your inventory." FRIEND-MAX-ACCESS: "&cYou cannot give more access to this inventory." FRIEND-ADD-INV: "&eYou successfully &aadded &6%player% &eto your &6%inventory% &einventory as a friend." FRIEND-REMOVE-INV: "&eYou successfully &cremoved &6%player% &efrom your &6%inventory% &einventory as a friend." FRIEND-DISABLED: "&cOnly the inventories owner is allowed to access the friend setup GUI." FRIEND-CANNOT-ADD-YOURSELF: "&cYou cannot add your self as a friend to your inventory." DONT-HAVE-ACCESS-TO-FRIEND: "&cYou don't have access for any inventories of &e%player%&c." FRIEND-CANT-LOAD: "&cYou don't have permission to load this inventory." FRIEND-ACCESS-TYPES:
VIEW: "Only View" EDIT: "Edit" FULL-EDIT: "Full Edit" LOAD: "Load" HELP-COMMAND: # Label means /kit or /inv or /inventory -
"&8&m---------------------------------------------------" -
" &6» &e/%label% info &7- Show information." -
" &6» &e/%label% menu &7- Open summary gui." -
" &6» &e/%label% save <name> &7- Save inventory." -
" &6» &e/%label% friend <name> add/remove <player> &7- Friend access." -
" &6» &e/%label% load <name> &7- Save inventory." -
" &6» &e/%label% clear &7- Deletes all inventories." -
" &6» &e/%label% delete <name> &7- Delete a inventory." -
"&8&m---------------------------------------------------" OP-HELP-COMMAND: # Label means /kit or /inv or /inventory -
"&8&m---------------------------------------------------" -
" &6» &e/%label% info &7- Show information." -
" &6» &e/%label% info <player> &7- Show the players information." -
" &6» &e/%label% menu &7- Open summary gui." -
" &6» &e/%label% menu <player> &7- Open the players summary gui." -
" &6» &e/%label% save <name> &7- Save inventory." -
" &6» &e/%label% save <name> <player> &7- Save the players inventory." -
" &6» &e/%label% friend <name> add/remove <player> &7- Friend access." -
" &6» &e/%label% load <name> &7- Save inventory." -
" &6» &e/%label% load <name> <player> &7- Load players inventory." -
" &6» &e/%label% clear &7- Deletes all inventories." -
" &6» &e/%label% clear <player> &7- Deletes all the player's inventories." -
" &6» &e/%label% delete <name> &7- Delete a inventory." -
" &6» &e/%label% reload &7- Reload the config and language file." -
" &6» &e/%label% sync <mysql/flatfile> <flatfile/mysql> \n &7Synchronize the databases." -
"&8&m---------------------------------------------------" INFO-COMMAND: -
"&7&m------------------------------------" -
" &6&l%player%'s &7informations" -
"" - " &6» &7InvArchiver Rank: &e%group%" - " &6» &7Saved inventories: &e%savedinv%" - " &6» &7Can save: &e%allinv%" - " &6» &7Can edit: &e%editinv%" - " &6» &7Save price: &e%price%$" -
"&7&m------------------------------------"
Dependencies
Vault - (Required to retrieve permissions for offline players)