Plots Plugin

Plots Plugin

A dynamic prefab-based land management system. Define grids, load complex structures, and protect your world with intelligent masking

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

Скриншоты

Описание

Заговоры

Динамичная система управления земельными ресурсами на основе сборных сборов. Определите сетки, загрузите сложные структуры и защитите свой мир с помощью интеллектуальной маскировки.

Простой, но мощный способ управления творческими пространствами, позволяющий сосредоточиться на том, что действительно важно: строительстве.


Таблица содержимого

  1. Введение
  2. установка
  3. Динамическое поколение
  4. Витрина
  5. конфигурация
  6. Быстрый старт
  7. командование
  8. Система маскировки
  9. Разрешения
  10. Локализация
  11. Публичный API
  12. Архитектура данных

установка

  1. Место .джар Файл в папке модов.
  2. (необязательно) Добавить свой .prefab.json файлы для Моды/Hytale_Plots/prefabs/.
  3. Запустите сервер для создания конфигурации по умолчанию.

Динамическое поколение

Участки – это не просто статическая сетка. Он адаптируется к вашему конкретному дизайну.

  • Адаптивный размер: Сетка автоматически настраивается на любую ширину дороги или участка (ширина 4 или 150 блоков).
  • Режим острова (маскировка)Идеально подходит для плавающих островных миров. Система понимает форму вашей конструкции и предотвращает расширения, которые отклоняются от первоначального дизайна.
  • Защита вакуумаПредотвращает игрокам присоединение к отдельным островам или строительство в «пустоте», сохраняя эстетику вашей карты нетронутой.
  • Неквадратная поддержка: Полная поддержка независимой ширины и глубины (например, 32x64 участка).

Витрина

Вот пример того, чего вы можете достичь Использование пользовательского prefab для сюжета в нашей динамической системе. Эти плавучие острова были созданы автоматически с использованием системы сетки и защищены нашей гранулированной логикой маскировки.

Island Plot Индивидуальная структура островного участка, созданная из префаба и идеально интегрированная в сетку.

Island Plot Map Вид сверху вниз, показывающий, как префаб сюжета распределен по всему миру.

конфигурация

The config.json Полный контроль над вашим миром. Ниже приведена разбивка основных настроек:

Компания General & World

  • Язык языка: Местность, используемая для сообщений (по умолчанию: эн).
  • Разработчик:PlotWorldName: Название папки для вашего выделенного сюжетного мира.
  • Обсуждение DefaultWorldTime: Время начала мира (например, полдень, ночь).

Настройки (Grid Settings)

  • Плотность: Площадь внутреннего здания каждого участка.
  • Размер дороги: Ширина путей между участками. Настроить 0 Для безбрежной сетки.
  • MaxPlotsDefault: Сколько сюжетов игрок может претендовать по умолчанию.

Базовая логика (Base Logic)

  • Bedrock/Surface/Filling: Определите основные материалы для вашего поколения.
  • Советы: Установить эти пустой или Воздух Создать технический «Пустой мир», идеально подходящий для плавучих островов.

Prefabs (ядро)

  • Дорога/Площадь/Пересечение: Связывает конкретные предварительные проекты с сетью.
  • Важный: Используйте имя файла без тот .prefab.json расширение (например, использование) Мой остров для my_island.prefab.json).

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

  • Претензия /plot - Возьмите на себя ответственность за участок, на котором вы стоите.
  • /plot Home - Возвращает тебя к строительству.
  • /plot trust <player> - Дайте другу разрешение строить вместе с вами.
  • /plot rename <name> Дайте вашему проекту уникальное имя.

командование

Игроки

Командование Описание
Претензия /plot Утверждает текущий сюжет
Удаление /plot Удалить текущий сюжет
/plot Auto Найти и получить ближайший бесплатный участок
/plot Home Телепорт на ваш основной участок
/plot trust &lt;player&gt; Гранты дают разрешение другому игроку
/plot untrust &lt;player&gt Отзыв разрешения на строительство у игрока
/plot info Показать подробности о сюжете, в котором вы находитесь
/plot list Список всех принадлежащих вам участков
/plot Нерест Телепорты в сюжетный мир нерест
неопределенный  

Администрация

Командование Описание
/plot delete &lt;grid X&gt; &lt;gridY&gt;<br Удалить запись (только администраторы)

Система маскировки

Мы создали расширенную логику защиты для творческих серверов:

  • Вакуумное уважение: Если пространство между островами не является частью вашей первоначальной сборки, никто не может построить там. Это поддерживает вид «изолированного острова».
  • Вертикальная свобода: Если колонна уже содержит землю из вашей сборки, игрок может свободно строить вверх или вниз, что позволяет строить подвалы или башни.
  • Нижний пределЗдание ниже уровня 0 автоматически блокируется, чтобы предотвратить визуальный беспорядок в нижней части карты.

Разрешения

Plots использует гранулированную систему разрешений. Вы можете назначить эти узлы игрокам или группам:

Общие разрешения

Разрешение Описание
заговоры. * Полный административный доступ (неограниченные участки, обходная защита)
Скриншоты.claim Позволяет претендовать на участки с Претензия /plot или /plot Auto
заговоры. удалять Позволяет удалять принадлежащие участки с Удаление /plot
plots.delete. * Позволяет удалить любой Исполнитель (Administrator)
заговоры. нерест Позволяет посетить посвященный миру сюжет с /plot Нерест
plots.list Позволяет перечислять принадлежащие участки с /plot list
plots.info Позволяет просматривать сюжетную информацию с /plot info
plots.rename Позволяет переименовывать участки с /plot переименование
заговоры. доверие Позволяет управлять доверенными членами /plot Trust
   

Предельные разрешения

Разрешение Описание
plots.limit.X Устанавливает максимальное количество участков, которыми может владеть игрок (например, Разработчик:limit.5)
неопределенный  

Локализация

Мы стремимся поддерживать как можно больше языков.

  • Помогите перевестиПосетите наш Проект Кроудина внести свой вклад.
  • Полная настройка сообщений доступна в Лэнг/ Каталог в папке плагина.

Публичный API

Plots предоставляет всеобъемлющий общедоступный API для внешних плагинов для программного взаимодействия с системой сюжета.

Начало работы

импортировать com.overworldlabs.plots.api.PlotsAPI;

Получить API экземпляр
PlotsAPI api = PlotsAPI.getInstance();

Доступные API

Плотапи

Запросить и управлять участками:

// Получить участок по местоположению Факультативный участок = api.plot().getPlotAt(мир, x, z);

// Check ownership boolean isOwner = api.plot().isOwner(plot, playerUuid);

// Доверенные игроки Доверенный список = api.plot().getTrustedPlayers(plot);

####Путешествие
Слушайте сюжетные события:
api.events(.onClaim)(событие -> {Plot plot = event.getPlot(); UUID owner = event.getOwner(); // Handle claim event };

api.events(.onRename)(событие -> {String oldName = event.getOldName(); String newName = event.getNewName(); // Handle переименовать событие };

События

Доступные мероприятия:

  • Искатель - Увольняется, когда утверждается заговор
  • Невостребованное событие - Увольняют, когда сюжет невостребован
  • Событие доверия Увольнение, когда игроку доверяют
  • Недоверие События Увольнение, когда игроку не доверяют
  • Переименовать событие - Увольняют, когда участок переименовывают

Будущая документация

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

Архитектура данных

Все сохранено в простых, легких форматах: пункт

-

Гилограммная интеграция

Улучшите свой сервер с помощью динамических Гилограммы автоматически отображает информацию о сюжете в углу каждого заявленного сюжета.

  • Динамическая информацияАвтоматически отображает имя участка и имя владельца.
  • Локализованный текст: Используйте выбранный язык для всех ярлыков голограммы.
  • Полностью конфигурируемый: Переключать голограммы на / выключать или регулировать их смещение по высоте config.json.
  • Мгновенные обновленияГолограммы обновляют момент, когда сюжет переименовывается или передается.

Чтобы включить эту функцию, просто включите hylograms.jar Библиотека на вашем сервере либс или мод папка.

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

Plots

A dynamic prefab-based land management system. Define grids, load complex structures, and protect your world with intelligent masking.

A simple yet powerful way to manage creative spaces, allowing you to focus on what truly matters: building.


Table of Contents

  1. Introduction
  2. Installation
  3. Dynamic Generation
  4. Showcase
  5. Configuration
  6. Quick Start
  7. Commands
  8. The Masking System
  9. Permissions
  10. Localization
  11. Public API
  12. Data Architecture

Installation

  1. Place the .jar file in your mods folder.
  2. (Optional) Add your .prefab.json files to mods/Hytale_Plots/prefabs/.
  3. Start the server to generate the default configuration.

Dynamic Generation

Plots is not just a static grid. It adapts to your specific design.

  • Adaptive Sizing: The grid automatically adjusts to any road or plot width (whether 4 or 150 blocks wide).
  • Islands Mode (Masking): Perfect for floating island worlds. The system understands your construction's shape and prevents expansions that deviate from the original design.
  • Vacuum Protection: Prevents players from joining separate islands or building in the "void," keeping your map's aesthetics intact.
  • Non-Square Support: Full support for independent width and depth (e.g., 32x64 plots).

Showcase

Here is an example of what you can achieve utilizing a custom prefab for the plot within our dynamic system. These floating islands were generated automatically using the grid system and protected with our granular masking logic.

Island Plot A custom island plot structure generated from a prefab and perfectly integrated into the grid.

Island Plot Map Top-down view showing how the plot prefab is distributed across the world.

Configuration

The config.json allows total control over your world. Below is a breakdown of the main settings:

General & World

  • Language: The locale used for messages (default: en_us).
  • PlotWorldName: The folder name for your dedicated plot world.
  • DefaultWorldTime: The starting time of the world (e.g., midday, night).

Plots (Grid Settings)

  • PlotSize: The internal building area of each plot.
  • RoadSize: The width of the paths between plots. Set to 0 for a gapless grid.
  • MaxPlotsDefault: How many plots a player can claim by default.

Blocks (Base Logic)

  • Bedrock/Surface/Filling: Define the base materials for your world generation.
  • Pro Tip: Set these to Empty or Air to create a technical "Void World" perfect for floating islands.

Prefabs (The Core)

  • Road/Plot/Intersection: Links specific prefab designs to the grid.
  • Important: Use the filename WITHOUT the .prefab.json extension (e.g., use my_island for my_island.prefab.json).

Quick Start

  • /plot claim - Take ownership of the plot you are standing on.
  • /plot home - Takes you back to your construction.
  • /plot trust <player> - Give a friend permission to build with you.
  • /plot rename <name> - Give your project a unique name.

Commands

Players

Command Description
/plot claim Claims the current plot
/plot delete Delete the current plot
/plot auto Finds and claims the nearest free plot
/plot home Teleports to your primary plot
/plot trust &lt;player&gt; Grants build permission to another player
/plot untrust &lt;player&gt; Revokes build permission from a player
/plot info Shows details about the plot you are in
/plot list Lists all your owned plots
/plot spawn Teleports to the plot world spawn
undefined  

Administration

Command Description
/plot delete &lt;gridX&gt; &lt;gridY&gt;<br> Removes a plot record (admins only)

The Masking System

We created an advanced protection logic for creative servers:

  • Vacuum Respect: If the space between islands isn't part of your original prefab, no one can build there. This maintains the "isolated island" look.
  • Vertical Freedom: If a column already contains ground from your prefab, the player is free to build up or down, allowing for basements or towers.
  • Lower Limit: Building below level 0 is automatically blocked to prevent visual clutter at the bottom of the map.

Permissions

Plots uses a granular permission system. You can assign these nodes to players or groups:

General Permissions

Permission Description
plots.* Full administrative access (unlimited plots, bypass protection)
plots.claim Allows claiming plots with /plot claim or /plot auto
plots.delete Allows deleting owned plots with /plot delete
plots.delete.* Allows deleting any plot (Administrator)
plots.spawn Allows visiting the dedicated plot world with /plot spawn
plots.list Allows listing owned plots with /plot list
plots.info Allows viewing plot information with /plot info
plots.rename Allows renaming plots with /plot rename
plots.trust Allows managing trusted members with /plot trust
   

Limit Permissions

Permission Description
plots.limit.X Sets the maximum number of plots a player can own (e.g., plots.limit.5)
undefined  

Localization

We are committed to supporting as many languages as possible.

  • Help us translate: Visit our Crowdin Project to contribute.
  • Full message customization is available in the lang/ directory within the plugin folder.

Public API

Plots provides a comprehensive public API for external plugins to interact with the plot system programmatically.

Getting Started

import com.overworldlabs.plots.api.PlotsAPI;

// Get API instance
PlotsAPI api = PlotsAPI.getInstance();

Available APIs

PlotAPI

Query and manage plots:

// Get plot at location Optional plot = api.plot().getPlotAt(world, x, z);

// Check ownership boolean isOwner = api.plot().isOwner(plot, playerUuid);

// Get trusted players List trusted = api.plot().getTrustedPlayers(plot);

#### PlotEventAPI
Listen to plot events:
api.events().onClaim(event -> { Plot plot = event.getPlot(); UUID owner = event.getOwner(); // Handle claim event });

api.events().onRename(event -> { String oldName = event.getOldName(); String newName = event.getNewName(); // Handle rename event });

Events

Available events:

  • ClaimEvent - Fired when a plot is claimed
  • UnclaimEvent - Fired when a plot is unclaimed
  • TrustEvent - Fired when a player is trusted
  • UntrustEvent - Fired when a player is untrusted
  • RenameEvent - Fired when a plot is renamed

Future Documentation

A more comprehensive and organized documentation site is currently under development. Stay tuned for advanced tutorials, API references, and design tips!

Data Architecture

Everything is saved in simple, lightweight formats: ```

---

Hylograms Integration

Enhance your server with dynamic Hylograms that automatically display plot information at the corner of each claimed plot.

  • Dynamic Information: Automatically shows the Plot Name and Owner's Name.
  • Localized Text: Uses your selected language for all hologram labels.
  • Fully Configurable: Toggle holograms on/off or adjust their height offset in config.json.
  • Instant Updates: Holograms update the moment a plot is renamed or transferred.

To enable this feature, simply include the hylograms.jar library in your server's libs or mods folder.

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

Plots-1.1.1.jar

Early Access 21.01.2026 120.3 КБ
Скачать

Plots-1.1.0.jar

Early Access 20.01.2026 100.2 КБ
Скачать

Plots-1.0.0.jar

Early Access 17.01.2026 83.8 КБ
Скачать