Docs

Minas

PulsePrison tiene dos clases de minas:

  • Minas de rango: minas públicas que construís en el mundo, cada una ligada a un rango.
  • Minas privadas: una mina personal por jugador, hecha de paquetes, que crece con mejoras.

Las dos cuentan como mina para los encantamientos de área, colocables y robots, y pagan por el mismo pipeline: encantamientos, venta, mochila, niveles, mascotas, temporada y clan.


Minas de rango

Configuraciónconfig.yml (sección mines)
Datosmines.yml
Menúmenus/mines.yml (/mines)

Crear una mina

text
/mine pos1                             parado en una esquina
/mine pos2                             parado en la esquina opuesta
/mine create a A                       crea la mina "a" para el rango A; el spawn es tu posición
/mine composition a add STONE 80
/mine composition a add DIAMOND_ORE 5
/mine setdelay a 600                   reset cada 10 minutos (0 lo apaga)
/mine setpercent a 50                  reset al 50% minado (0 lo apaga)

Si están activos los dos resets, gana el primero que se cumpla.

Comandos de staff

ComandoHace
/mine pos1 · /mine pos2Esquinas de la región
/mine create <id> [rango]Crea la mina
/mine composition <id> list|add <bloque> <peso>|remove <bloque>|clearMezcla de bloques
/mine setrank <id> <rango|none>Rango requerido
/mine setspawn <id>Mueve el spawn a tu posición
/mine setdelay <id> <segundos> · /mine setpercent <id> <0-100>Resets
/mine seticon <id> <material> · /mine rename <id> <nombre>Cómo se ve en /mines
/mine reset <id> · /mine info <id> · /mine list · /mine delete <id>Gestión

Permiso: pulseprison.mine.admin.

Jugadores

  • /mines (aliases /mina, /minas) muestra las minas con bloqueo, porcentaje minado y tiempo al próximo reset.
  • /mine tp <id> lleva a una mina desbloqueada.
  • Minar en la mina de un rango superior se bloquea con un aviso. Los jugadores con prestigio saltan el chequeo, porque el prestigio los devuelve al primer rango (rank-access.prestige-unlocks-all).

Motor de reset

yaml
mines:
  engine: auto                      # auto, worldedit o batched
  blocks-per-tick: 25000            # solo el motor interno
  broadcast-resets: true
  default-reset-delay-seconds: 600
  default-reset-percentage: 0
  rank-access:
    enabled: true
    prestige-unlocks-all: true
  • Con FastAsyncWorldEdit o WorldEdit, auto les delega el reset.
  • Sin ellos, el motor interno reparte el trabajo en varios ticks sin físicas.
  • Los jugadores dentro de la mina se llevan al spawn antes de rellenarla.

Minas privadas

Configuraciónpmines/config.yml, pmines/types/*.yml
Estructuraspmines/structures/*.ppmine
Menúspmines/menus/ (main, members, public, admin, admin-types)
Datosdata/pmines/
Móduloprivate-mines

Cómo funcionan

  • El mundo de minas (pulseprison_pmines) está vacío en el servidor. Cada jugador recibe los bloques de las minas por paquetes, así resetear, expandir o mejorar no escribe el mundo y miles de bloques por segundo no cuestan actualizaciones de mundo.
  • Cada mina guarda una semilla y un bit por bloque minado. Una mina de 61×61×60 ocupa unos 28 KB.
  • Las roturas se validan en el servidor: acceso, pico, tiempo de rotura vanilla, alcance y roturas por segundo.
  • PacketEvents viene incluido. No necesita WorldEdit ni WorldGuard.
  • En el mundo de minas nadie es expulsado por "volar" parado sobre bloques de paquetes. Volar de verdad requiere pulseprison.pmine.fly o tener vuelo antes de entrar.

Tipos, etapas y expansión

Un tipo es una estructura (la isla, las paredes, el spawn) con una caja minable. Se crea en el servidor con /pmineadmin setup: ver Crear un tipo de mina privada.

Cada tipo tiene un archivo en pmines/types/:

yaml
name: '&bDefault'
structure: default
spawn: {x: 0.5, y: 100.0, z: 0.5, yaw: 0.0, pitch: 0.0}
min-corner: {x: -5, y: 40, z: -5}      # caja minable
max-corner: {x: 5, y: 89, z: 5}
max-expansion: 34                      # bloques que puede crecer por lado
expansion-cost:
  currency: money
  base: 25000
  growth: 1.15                         # cada expansión cuesta base × growth^n
block-types:                           # etapas de bloques
  '1':
    cost: {}
    blocks:
      STONE: 70
      COBBLESTONE: 30
  '2':
    cost:
      money: 500000
      tokens: 5000
    requirement:
      rank: C
      prestige: 0
      pickaxe-level: 25
    blocks:
      COBBLESTONE: 50
      ANDESITE: 30
      DIAMOND_ORE: 1
  • Expansión: la caja minable crece un bloque por lado por compra, hasta max-expansion.
  • Etapas: cada etapa cambia la mezcla de bloques. Se compran con cost y piden requirement (rango, prestigio, nivel de pico).
  • Siguiente tipo: con upgrade-next-mine, después de la última etapa la mina pasa al siguiente tipo de mine-order.

Opciones principales de pmines/config.yml

OpciónHace
default-mine · mine-order · upgrade-next-mineTipo inicial y orden de tipos
percent-mined-to-reset · reset-percentage-optionsReset automático y opciones del menú
mine-gaps.chunksChunks vacíos entre minas
max-membersMiembros por mina
tax-currency · tax-max-rateImpuesto a visitantes
invites.require-accept · invites.expire-secondsInvitaciones
player-purchases.enabledCompras de expansiones y etapas desde el menú
join.teleport-to-spawnLlevar al spawn al entrar
tools-in-mine-world.enabledDar el pico solo dentro del mundo de minas
commands.base-commandQué hace /pmine solo: gui, teleport o context
commands.resetCooldown del reset manual por permiso
setup.*Límites del setup y altura del spawn
performance.*Caché, guardado e hilos
anticheat.*Alcance, tiempo de rotura, roturas por segundo y castigos

Cada opción está comentada en el archivo.

Las parcelas de las minas tienen un tamaño fijo desde que se crea la primera mina: el del tipo más ancho más mine-gaps. Si después agregás un tipo más ancho, se desactiva mientras existan minas. Elegí el tamaño de tus estructuras antes de abrir.

Comandos de jugador

/pmine (aliases /privatemine, /pm, /minaprivada):

ComandoHace
/pmineMenú de la mina, o teletransporte según commands.base-command
/pmine createReclama tu mina
/pmine go [jugador]Va a tu mina o a la de otro
/pmine invite|uninvite <jugador>Miembros. Con require-accept, responde con /pmine accept|deny <dueño>
/pmine ban|unban <jugador>Baneos; expulsa al jugador si está adentro
/pmine members · /pmine publicMenú de miembros y navegador de minas abiertas
/pmine open · /pmine lockAbre o cierra la mina a visitantes
/pmine tax <porcentaje>Impuesto sobre lo que ganan los visitantes mientras estás conectado
/pmine reset · /pmine resetpercentReset manual y umbral del automático
/pmine expand · /pmine upgrade · /pmine infoCrecimiento y detalles

Permisos: pulseprison.pmine (todos), pulseprison.pmine.<subcomando> si commands.permissions está activo, pulseprison.pmine.reset.vip y pulseprison.pmine.reset.staff para resets más rápidos.

Comandos de staff

/pmineadmin (aliases /adminmine, /amine, /apm), permiso pulseprison.pmine.admin:

ComandoHace
menuMenú de administración
go <jugador> · info <jugador> · reset <jugador>Gestión
expand|shrink <jugador> [cantidad|max|min]Expansión
upgrade|deupgrade <jugador> [cantidad|max] · setupgrade <jugador> <etapa>Etapas
settype <jugador> <tipo>Cambia el tipo
setresetpercent <jugador> <porcentaje|-1>Umbral de reset
delete <jugador> confirmBorra la mina
setup ...Crea tipos, ver la guía
reload · statsRecarga y estadísticas de rendimiento

Placeholders

%pulseprison_pmine_<clave>% para la mina del jugador y %pulseprison_pmine_here_<clave>% para la mina donde está parado. Ver Placeholders.

Eventos para addons

PrivateMineCreateEvent, PrivateMineResetEvent, PrivateMineResetCompleteEvent, PrivateMineUpgradeEvent, PrivateMineAccessEvent, PrivateMineVisitEvent, PrivateMineTaxEvent y PrivateMineBlocksMinedEvent. Ver Eventos.

Minas | PulsePrison Core Docs