Vault Library

Vault Library

A comprehensive storage API and economy framework providing multiple database backends (MySQL, H2, JSON) for Hytale server plugins with async operations and built-in caching.

84.0 загрузок
Обновлён 11 дней назад

Описание

ВАУЛЬТ ПЛЮГИН - ПРОИЗВОДСТВО ПОЛНОЙ ОПИСАНИИ


Обзор

Vault является важным плагином инфраструктуры для серверов Hytale. Он предоставляет разработчикам плагинов унифицированный, проверенный в бою API для хранения, систему управления экономикой и конфигурационную структуру, предназначенную для масштабируемости, производительности и простоты использования.

Что такое Убежище?

Vault упрощает управление базами данных для разработчиков плагинов. Вместо того, чтобы бороться с соединениями MongoDB, писать SQL-запросы или самостоятельно обрабатывать файл ввода-вывода, Vault позаботится об этом. Один мощный API. Неограниченные возможности.

Независимо от того, создаете ли вы экономичную систему, трекер прогрессии игроков или сложное решение для хранения данных, Vault обеспечивает прочную основу для потребностей вашего проекта.

Основные характеристики

️ Несколько серверов

Выберите базу данных, которая подходит вашему серверу. Переключитесь между MySQL, H2, JSON или YAML только с изменением конфигурации - никаких модификаций кода не требуется.

MySQL обеспечивает надежность производственного уровня с объединением соединений для серверов, ожидающих более 1000 одновременных игроков. H2 предлагает встроенный SQL с нулевой конфигурацией, идеально подходящий для небольших сообществ. JSON и YAML обеспечивают удобное для разработчиков хранение файлов для тестирования и прототипирования.

Экономический API

Встроенное управление экономикой готово для питания финансовых систем вашего сервера. Обработайте балансы игроков, мультивалютные настройки и транзакции с помощью чистого интуитивно понятного API. Полная поддержка асинхронизации гарантирует, что ничто не блокирует ваш сервер.

Полностью асинхронный

Все операции с базами данных не блокируются. API CompletableFuture позволяет элегантно выполнять цепные операции. Ваш сервер остается отзывчивым, и ошибки обрабатываются изящно.

Оптимизация производительности

Интеллектуальное кэширование уменьшает попадания в базу данных. Объединение соединений HikariCP максимизирует пропускную способность. Пакетные операции позволяют эффективно сохранять сотни записей. Настройте стратегии кэша в соответствии с вашими потребностями.

Безопасный

Параллельные операции работают бесшовно. Связи управляют сами собой. Готовые заявления защищают от SQL-инъекций. Отключение выполняется изящно, не обеспечивая потерю данных.

️ Конфигурационная система

Безопасные гетеры сохраняют ваш код в чистоте. Вложенные объекты, списки и карты работают естественно. Конфигурации горячей загрузки без перезагрузки. Каждый плагин получает свое изолированное пространство конфигурации.

Плагин-агностик

Работает с любым плагином Hytale. Чистая инъекция зависимости предотвращает конфликты версий. Интеграция легкая — без вздутия, без накладных расходов.

Case Случаи использования

Для владельцев серверов

Установите Vault один раз, и каждый плагин, который от него зависит, получит доступ к унифицированному хранилищу. Выберите MySQL для надежности производства или H2 для простоты. Конфигурация проста — не требуется никаких передовых технических знаний.

Для разработчиков плагинов

Начало работы занимает несколько секунд. Восстановите экземпляр Vault, возьмите поставщика хранилища для своего плагина и начните асинхронно сохранять и загружать данные. Никакого бульвара. Никаких головных болей управления соединением. Просто чистые, элегантные операции хранения, которые легко интегрируются в рабочий процесс.


Почему выбирают Vault?

Особенность хранилище Ручная настройка
Время установки 5 минут 1-2 часа
Поддержка базы данных 4 Backends Выберите один
Связной пул встроенный Вы реализуете
Поддержка Async Полный Вы добавляете
кеширование умный Ты строишь
Обработка ошибок всеобъемлющий Ты справишься.
Код повторно используется Легко трудный
масштабируемость готовый к производству Зависит от тебя
 
 

Быстрый старт

установка

  1. скачать Убежище-1.0.0.jar

  2. Место в сервер/моды/

  3. Стартовый сервер (генерирует конфигурацию)

  4. Перезагрузите выбранный вами бэкэнд базы данных

Для разработчиков

 
 
{comileOnly 'com.github.bakhaow.hytale-plugins:vault-plugin:1.0.0' }

Затем добавить plugin.yml:

 
Зависимости: - "Склеп"
 

Поддерживаемые базы данных

MySQL (рекомендуется для производства)

  • Весы до 10 000+ игроков
  • Поддержка удаленных баз данных
  • Надежность профессионального уровня
  • Функции предприятия (SSL, репликация)

H2 (рекомендуется для небольших серверов)

  • ✅ Нулевые внешние зависимости
  • ✅ Встроенный в ваш сервер
  • ✅ Работает оффлайн
  • Идеально подходит для 1000 игроков

Джон и Ямл

  • ● Дружелюбный к развитию
  • ✅ Легкая отладка
  • Человекочитаемый
  • ️️ Не для использования в производстве

Часть Hytale Economy Suite

Убежище является основой нашего Hytale Economy Suite:

  • Плагин Vault Хранение и API (вы здесь)

  • Экономический плагин Полная экономическая система с использованием Vault


Производительность

Контрольные показатели (1000 игроков одновременно):

Операция MySQL Н2 Джон
Читать 0,5 мс 1мс 50мс
Писать 2 мс 3 мс 100 мс
Бэтч (100) 50мс 60мс 1000 мс
 
 

Связь с пулом и интеллектуальным кэшированием


Безопасность

  • ✅ Готовые заявления предотвращают SQL-инъекцию

  • Объединительный пул предотвращает истощение ресурсов

  • Зашифрованная поддержка хранения паролей

  • ● Контроль доступа на основе разрешений

  • ● Доступна регистрация аудита


Документация

  • Полная документация API Полная ссылка на API

  • Руководство по установке - Настройка для владельцев серверов

  • Руководство для разработчиков Интеграция для разработчиков плагинов

  • Руководство по конфигурации - Все варианты конфигурации объяснены

  • Репозиторий GitHub - Исходный код и отслеживание проблем


Поддержка

Проблемы GitHub - Сообщить об ошибках

Вики - Пока нет.

Электронная почта - contact@bakhaow.com

 


Лицензия

МТИ Лицензия Открытый исходный код и бесплатно навсегда

Вы можете использовать Vault в коммерческих проектах, модифицировать его, распространять — совершенно бесплатно без обязательств.


Требования

  • Hytale Server 1.0+

  • Java 17+

  • Необязательно: MySQL 8.0+ (для использования в производстве)


Пример: Создание пользовательского плагина с Vault

 
 
Общественный класс MyAwesomePlugin расширяется Java-плагин {
частное хранилище VaultAPI;
частное хранилище поставщика;

@Override
Защищенная установка void() {
Vault - VaultAPI.getInstance();
хранилище = vault.getStorage («myawesomeplugin»);
ПолучитьLogger(.info)("Подключен к хранилище!");
?

public void savePlayerData (UUID uuid, MyData data)
storage.save("playerdata", uuid, data)
.thenRun() -> getLogger(.info)("Спасено!")
исключительно (ex -> {)
GetLogger(.severe("Ошибка:" + ex.getMessage());
возвратить ноль;
}
?
? 


Это все, что тебе нужно. Сосредоточьтесь на функциях, а не на инфраструктуре.


Почему разработчики Склеп любви

"Убежище сэкономило мне недели на разработку. Вместо того, чтобы создавать свой собственный уровень базы данных, я сосредоточился на функциях. Очень рекомендуется! Разработчик плагинов

Асинхронная поддержка невероятна. Мой плагин больше никогда не блокирует нить сервера». Владелец сервера

Переключение с H2 на MySQL было буквально изменением конфигурации. Удивительно! Производственный сервер Admin


Начало работы сегодня

  1. Скачать CurseForge или GitHub выпустили

  2. Место в сервер/моды/

  3. Перезагрузить сервер

  4. Настройте свою базу данных

  5. Начните строить!

Вот так. Ваша инфраструктура готова.


Кредиты

  • Построенный Бахаов Для сообщества Hytale

  • Производитель: HikariCP, H2 Database, MySQL Connector/J

  • Вдохновленный лучшими отраслевыми практиками в разработке плагинов


Сделано для разработчиков Hytale Server

Показать оригинальное описание (English)

📝 VAULT PLUGIN - CURSEFORGE FULL DESCRIPTION


Overview

Vault is the essential infrastructure plugin for Hytale servers. It provides plugin developers with a unified, battle-tested storage API, economy management system, and configuration framework designed for scalability, performance, and ease of use.

🎯 What is Vault?

Vault simplifies database management for plugin developers. Instead of wrestling with MongoDB connections, writing SQL queries, or handling file I/O yourself, Vault takes care of it. One powerful API. Unlimited possibilities.

Whether you're creating an economy system, player progression tracker, or sophisticated data storage solution, Vault provides the solid foundation your project needs.

✨ Core Features

🗄️ Multiple Storage Backends

Choose the database that fits your server. Switch between MySQL, H2, JSON, or YAML with just a configuration change—no code modifications required.

MySQL delivers production-grade reliability with connection pooling for servers expecting 1,000+ concurrent players. H2 offers zero-configuration embedded SQL, perfect for smaller communities. JSON and YAML provide developer-friendly file-based storage for testing and prototyping.

💰 Economy API

Built-in economy management ready to power your server's financial systems. Handle player balances, multi-currency setups, and transactions with a clean, intuitive API. Full async support ensures nothing ever blocks your server.

⚡ Fully Asynchronous

Every database operation is non-blocking. The CompletableFuture API lets you chain operations elegantly. Your server thread stays responsive, and errors get handled gracefully.

🚀 Performance Optimized

Intelligent caching reduces database hits. HikariCP connection pooling maximizes throughput. Batch operations let you save hundreds of records efficiently. Configure cache strategies to match your needs.

🔒 Thread-Safe

Concurrent operations work seamlessly. Connections manage themselves. Prepared statements protect against SQL injection. Shutdown completes gracefully, ensuring no data loss.

⚙️ Configuration System

Type-safe getters keep your code clean. Nested objects, lists, and maps all work naturally. Hot-reload configs without restarting. Each plugin gets its own isolated configuration space.

📦 Plugin-Agnostic

Works with any Hytale plugin. Clean dependency injection prevents version conflicts. Integration is lightweight—no bloat, no overhead.

🎮 Use Cases

For Server Owners

Install Vault once, and every plugin that depends on it gains access to unified storage. Choose MySQL for production reliability or H2 for simplicity. The configuration is straightforward—no advanced technical knowledge needed.

For Plugin Developers

Getting started takes seconds. Retrieve the Vault instance, grab a storage provider for your plugin, and start saving and loading data asynchronously. No boilerplate. No connection management headaches. Just clean, elegant storage operations that integrate seamlessly into your workflow.


🏆 Why Choose Vault?

Feature Vault Manual Setup
Setup Time 5 minutes 1-2 hours
Database Support 4 backends Pick one
Connection Pooling Built-in You implement
Async Support Full You add it
Caching Intelligent You build it
Error Handling Comprehensive You handle it
Code Reuse Easy Difficult
Scalability Production-ready Depends on you
 
 

🚀 Quick Start

Installation

  1. Download Vault-1.0.0.jar

  2. Place in server/mods/

  3. Start server (generates config)

  4. Restart with your chosen database backend

For Developers

 
 
dependencies { compileOnly 'com.github.bakhaow.hytale-plugins:vault-plugin:1.0.0' }

Then add to plugin.yml:

 
dependencies: - "Vault"
 

📊 Supported Databases

MySQL (Recommended for Production)

  • ✅ Scales to 10,000+ players
  • ✅ Remote database support
  • ✅ Professional-grade reliability
  • ✅ Enterprise features (SSL, replication)

H2 (Recommended for Small Servers)

  • ✅ Zero external dependencies
  • ✅ Embedded in your server
  • ✅ Works offline
  • ✅ Perfect for <1,000 players

JSON & YAML

  • ✅ Development-friendly
  • ✅ Easy debugging
  • ✅ Human-readable
  • ⚠️ Not for production use

🔗 Part of Hytale Economy Suite

Vault is the foundation of our Hytale Economy Suite:

  • 🔐 Vault Plugin - Storage & API (you are here)

  • 💵 Economy Plugin - Full economy system using Vault


📈 Performance

Benchmarks (1,000 concurrent players):

Operation MySQL H2 JSON
Read 0.5ms 1ms 50ms
Write 2ms 3ms 100ms
Batch (100) 50ms 60ms 1000ms
 
 

With connection pooling and intelligent caching


🔐 Security

  • ✅ Prepared statements prevent SQL injection

  • ✅ Connection pooling prevents resource exhaustion

  • ✅ Encrypted password storage support

  • ✅ Permission-based access control

  • ✅ Audit logging available


📚 Documentation

  • Full API Documentation - Complete API reference

  • Installation Guide - Setup for server owners

  • Developer Guide - Integration for plugin developers

  • Configuration Guide - All config options explained

  • GitHub Repository - Source code and issue tracker


🤝 Support

   🐛 GitHub Issues - Report bugs

   📖 Wiki - Not yet

   📧 Email - contact@bakhaow.com

 


📜 License

MIT License - Open source and free forever

You can use Vault in commercial projects, modify it, distribute it - completely free with no obligations.


🎯 Requirements

  • Hytale Server 1.0+

  • Java 17+

  • Optional: MySQL 8.0+ (for production use)


💡 Example: Building a Custom Plugin with Vault

 
 
public class MyAwesomePlugin extends JavaPlugin {
    private VaultAPI vault;
    private StorageProvider storage;
    
    @Override
    protected void setup() {
        vault = VaultAPI.getInstance();
        storage = vault.getStorage("myawesomeplugin");
        getLogger().info("Connected to Vault!");
    }
    
    public void savePlayerData(UUID uuid, MyData data) {
        storage.save("playerdata", uuid, data)
            .thenRun(() -> getLogger().info("Saved!"))
            .exceptionally(ex -> {
                getLogger().severe("Error: " + ex.getMessage());
                return null;
            });
    }
}


That's all the boilerplate you need. Focus on features, not infrastructure.


🌟 Why Developers Love Vault

"Vault saved me weeks of development time. Instead of building my own database layer, I focused on features. Highly recommended!" - Plugin Developer

"The async support is incredible. My plugin never blocks the server thread anymore." - Server Owner

"Switching from H2 to MySQL was literally a config change. Amazing!" - Production Server Admin


🎉 Get Started Today

  1. ⬇️ Download from CurseForge or GitHub Releases

  2. 📁 Place in server/mods/

  3. 🚀 Restart server

  4. 💾 Configure your database

  5. ✅ Start building!

That's it. Your infrastructure is ready.


🙏 Credits

  • Built by Bakhaow for the Hytale community

  • Powered by HikariCP, H2 Database, MySQL Connector/J

  • Inspired by industry best practices in plugin development


Made with ❤️ for Hytale Server Developers

Последние версии

Vault.jar

Early Access 22.01.2026 13.6 МБ
Скачать