> For the complete documentation index, see [llms.txt](https://thanhpahts-organization.gitbook.io/product-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://thanhpahts-organization.gitbook.io/product-docs/ultimate-storage/i.-introduce.md).

# I. Introduce

### **1. Overview**

UltimateStorage is a Paper plugin that stores supported resources in a virtual player storage. It is designed around configurable categories, real drop detection, category-based upgrades, GUI-first player actions, and asynchronous SQLite saving.

### **2. Main Features**

* Real drop storage for block drops, mob drops, and fishing rewards.
* Configurable storage categories with custom GUI icons.
* Deposit, withdraw, sell, transfer, and category upgrade workflows.
* Global and per-category auto storage toggles.
* Custom heads, HeadDatabase icons, CustomModelData, configurable sounds, and configurable messages.
* Vault, PlayerPoints, PlaceholderAPI, SuperiorSkyblock2, and HeadDatabase hooks through soft dependencies.

### **3. Dependencies**

<kbd>*Paper server: 1.21.1-26.2*</kbd>

| Plugin            | Type     | Purpose                                                                   |
| ----------------- | -------- | ------------------------------------------------------------------------- |
| Vault             | Optional | Required when economy.mode is VAULT and sell/upgrade economy should work. |
| PlayerPoints      | Optional | Required when economy.mode is PLAYERPOINTS.                               |
| PlaceholderAPI    | Optional | Required for %ultimatestorage\_\*% placeholders.                          |
| SuperiorSkyblock2 | Optional | Required for the island dedication system.                                |
| HeadDatabase      | Optional | Required only when GUI icons use HeadDatabase IDs.                        |

### **4. Installation**

1. Place UltimateStorage-1.0.jar into the server plugins folder.
2. Install optional dependencies only for the features you want to use.
3. Start the server once to generate the plugin folder and default config files.
4. Edit config.yml, storage.yml, messages.yml, dedication.yml, and GUI files as needed.
5. Restart the server, or use /us reload after safe config edits.

| Important: The plugin has no hard plugin dependency. Optional hooks simply become unavailable when their plugin is not installed. |
| --------------------------------------------------------------------------------------------------------------------------------- |
