HyGuard – Claims / Regions

HyGuard – Claims / Regions

Por VceHyPlug 22 de enero de 2026
#API#claims#HyGuard - Reclamaciones / Regiones#Hytale#Mod#plugin#regions

Un plugin que gestiona las reclamaciones de los jugadores y/o las regiones de los administradores. Esperamos que pueda ayudar.

Archivo de Configuración – V1.1.0

  • MapRefreshTick: 100                        Cada cuánto se actualiza el mapa del mundo (expresado en después de la actualización total del tick)
  • PlayerMaxChunks = 4;                      Límite máximo de reclamaciones por jugador
  • PlayerChunksCanDetach = false;      En los trozos en la región del jugador pueden desconectarse entre sí
  • PlayerChunksDecay = false;              Si los trozos se eliminan automáticamente si el jugador no inicia sesión durante un tiempo total

Comandos Actuales

  •  /hg                                          Abrir la GUI de reclamaciones (aún en progreso)
  •  /hg claim                                         Reclama tus trozos
  •  /hg unclaim                                     Desreclama tus trozos
  •  /hg trust {player}                             Confía en un jugador para editar tu trozo
  •  /hg untrust {player}                         Desconfía de un jugador para editar tu trozo
  •  /hg ban {player}                               Prohíbe a un jugador entrar en tu trozo
  •  /hg unban {player}                            Levanta la prohibición a un jugador para entrar en tu trozo
  •  /hg funclaim {region}                       [COMANDO ADMIN] Fuerza a desreclamar un trozo
  •  /hg fclaim {region}                           [COMANDO ADMIN] Fuerza a reclamar un trozo
  •  /hg fclaim {region}                            [COMANDO ADMIN] Fuerza a reclamar un trozo
  •  /hg region tp {region}                       [COMANDO ADMIN] Teletransportarse a una región

¡Puedes crear regiones de administrador! ¡Son totalmente configurables! 
¡Después de todo, las reclamaciones son un preset personalizado de estas regiones!

  • /hg region create {region}
  • /hg region delete {region}
  • /hg region group create {region} {group}
  • /hg region group delete {region} {group}
  • /hg region group add {region} {group} {player}
  • /hg region group remove {region} {group} {player}
  • /hg region group remove {region} {group} {player}
  • /hg region group permission add {region} {group} {permission} {DENY/ALLOW}
  • /hg region group permission remove {region} {group} {permission}

Eventos Actuales

  • event.movement
  • event.breakblock
  • event.placeblock
  • event.interact

Soporte API Agregado – V1.1.0

IMPLEMENTACIÓN MAVEN

Agrega el archivo en la configuración de lib en el directorio principal del proyecto

<dependency>
    <groupId>it.hytale</groupId>
    <artifactId>HyGuard</artifactId>
    <version>1.1.0</version>
    <scope>system</scope>
    <systemPath>${project.basedir}/lib/HyGuard-1.1.0.jar</systemPath>
</dependency>

MÉTODOS DE API

public interface IRegionManager {

  CompletableFuture<Void> create(Ref<EntityStore> ref, String regionName);

  CompletableFuture<Void> delete(Ref<EntityStore> ref, String regionName);

  CompletableFuture<Void> teleport(Ref<EntityStore> ref, Player player, String regionName);

  void decay(String regionName);

}

public interface IPermissionManager {

  CompletableFuture<Void> remove(Ref<EntityStore> ref, String regionName, String groupName, String permission);

  CompletableFuture<Void> add(Ref<EntityStore> ref, String regionName, String groupName, String permission, State state);

}
public interface IGroupManager {

  CompletableFuture<Void> create(Ref<EntityStore> ref, String regionName, String groupName);

  CompletableFuture<Void> delete(Ref<EntityStore> ref, String regionName, String groupName);

  CompletableFuture<Void> add(Ref<EntityStore> ref, String regionName, String groupName, UUID targetUuid);

  CompletableFuture<Void> remove(Ref<EntityStore> ref, String regionName, String groupName, UUID targetUuid);

}

Si estás usando SimpleClaim y quieres usar este plugin, hice un convertidor en python de las configuraciones de regiones, puedes ejecutarlo en google.colab si lo deseas, aquí está el código:

import json

from collections import defaultdict

input_path = "/content/Claims.json"

output_path = "/content/Regions.json"

with open(input_path, "r", encoding="utf-8") as f:

    data = json.load(f)

regions_map = defaultdict(lambda: {

    "UUID": None,

    "Region": None,

    "Chunks": [],

    "Groups": [],

    "IsFullChunkOnly": True,

    "IsOverlapable": True,

    "IsOverlapping": False,

    "IsDecayable": False,

    "Priority": 0,

    "MapColor": 16092226,

    "Title": None

})

for dim in data.get("Dimensions", []):

    dimension_name = dim.get("Dimension", "default")

    for chunk in dim.get("ChunkInfo", []):

        owner_uuid = chunk.get("CreatedTracker", {}).get("UserUUID")

        chunk_x = chunk.get("ChunkX")

        chunk_z = chunk.get("ChunkY")

        username = chunk.get("CreatedTracker", {}).get("UserName", "Unknown")

        title = f"{username} Claim"

        region_name = title.replace(" ", "")

        if regions_map[owner_uuid]["UUID"] is None:

            regions_map[owner_uuid]["UUID"] = owner_uuid

            regions_map[owner_uuid]["Region"] = region_name

            regions_map[owner_uuid]["Title"] = title

            regions_map[owner_uuid]["Groups"] = [

                {

                    "Permissions": [

                        {"State": "DENY", "Permission": "event.breakblock"},

                        {"State": "DENY", "Permission": "event.placeblock"},

                        {"State": "DENY", "Permission": "event.interact"}

                    ],

                    "Players": [],

                    "Group": "DEFAULT",

                    "Priority": 0

                },

                {

                    "Permissions": [

                        {"State": "ALLOW", "Permission": "event.breakblock"},

                        {"State": "ALLOW", "Permission": "event.placeblock"},

                        {"State": "ALLOW", "Permission": "event.interact"}

                    ],

                    "Players": [{"UUID": owner_uuid}],

                    "Group": "trust",

                    "Priority": 10

                },

                {

                    "Permissions": [

                        {"State": "DENY", "Permission": "event.movement"}

                    ],

                    "Players": [],

                    "Group": "ban",

                    "Priority": 10

                }

            ]

        regions_map[owner_uuid]["Chunks"].append({

            "X": chunk_x,

            "Z": chunk_z,

            "World": dimension_name,

            "Offsets": []

        })

regions = list(regions_map.values())

output = {"Regions": regions}

with open(output_path, "w", encoding="utf-8") as f:

    json.dump(output, f, indent=2, ensure_ascii=False)

¡Para el ERROR que permite a los jugadores robar de cofres reclamados usando la mesa de trabajo, considera instalar AntiWorkBenchDetectChest como una medida temporal! 

Relacionados:

DeathCounter REST API

DeathCounter REST API

#API#API REST de DeathCounter#DeathCounter

API REST para DeathCounter API-REST Obtén todas las muertes en el Universo (o EnablePerWorldTracking está deshabilitado ...

HyVoltz

HyVoltz

#API#electricidad#Hytale

HyVoltz es una API de electricidad ligera para mods de Hytale. La API se llama HyVoltz; la unidad de energía que maneja ...

PlayerInteractLib

PlayerInteractLib

#API#Hytale#Interacción

PlayerInteractLib es una biblioteca ligera del lado del servidor que restaura un evento de interacción de jugador que fa...

Armor Abilties

Armor Abilties

#API#Armadura#habilidades

La API de habilidades de armadura: El plugin de habilidades de armadura está dirigido a creadores de paquetes, permitién...

Mob Spawners

Mob Spawners

#API#Commands#events

Hytale Spawners añade generadores de mobs personalizados al juego para modos de juego complejos o para SMP general Comma...

FoxEconomy

FoxEconomy

#API#Economía#FoxEconomy

FoxEconomy &#8211; Plugin de economía todo en uno para Hytale FoxEconomy te permite dar a los jugadores dinero en el jue...