Language

DTC - Destroy The Core

DTC - Destroy The Core

Modrinth

A competitive PvP event where players must destroy the core to earn rewards.

122 downloads updated 3mo ago
Modrinth
Paper Spigot 1.19 – 1.21.11 Game-mechanicsMinigameUtility

⚔️ EC-DTC — Destroy The Core

Version
Minecraft
Platform
PlaceholderAPI

Evento PvP competitivo avanzado para servidores Paper donde los jugadores destruyen un núcleo para ganar recompensas, dominar el ranking y obtener premios automáticos.

Documentación para uso público. Los cambios recientes del plugin están en la sección Changelog al final.


🚀 ¿Qué es EC-DTC?

EC-DTC (Destroy The Core) es un sistema de eventos PvP automático y manual totalmente configurable.

Los jugadores deben destruir un núcleo con vida configurable.
Cada golpe cuenta. Cada porcentaje importa.
Al finalizar, se calcula un TOP de contribución y se reparten recompensas automáticamente.


✨ Características Principales

  • ✅ Sistema multi-evento por ID (default, mina, nether, etc.)
  • ✅ Scheduler independiente por evento
  • ✅ Mensajes 100% editables en MiniMessage
  • ✅ BossBar con progreso en tiempo real
  • ✅ Sistema de contribución individual
  • ✅ TOP final con recompensas por posición
  • ✅ Recompensas por porcentaje acumulado
  • ✅ Protección inteligente de bedrock fuera del evento
  • ✅ Placeholders para HUD, Scoreboard y Menús
  • ✅ Estadísticas guardadas por jugador
  • ✅ Soporte completo para PlaceholderAPI

✅ Compatibilidad

  • Java 17+
  • Paper/Spigot 1.20+
  • PlaceholderAPI (opcional, recomendado)

⚙️ Instalación

  1. Compila o descarga el .jar.
  2. Copia el archivo en plugins/.
  3. Inicia el servidor para generar config.yml y lang.yml.
  4. Edita configuración y mensajes.
  5. Ejecuta /dtc reload para aplicar cambios.

⌨️ Comandos

| Comando | Descripción | Permiso |
|---|---|---|
| /dtc start [id] | Inicia un evento por ID (default, mina, etc.) | dtc.admin |
| /dtc stop [id] | Detiene el evento activo (opcionalmente validando ID) | dtc.admin |
| /dtc info [id] | Muestra información del evento/perfil | dtc.admin |
| /dtc time | Muestra tiempo y ID del próximo evento programado | dtc.admin |
| /dtc top | Muestra ranking del evento activo | dtc.admin |
| /dtc reload | Recarga config y mensajes | dtc.admin |


🧩 Placeholders (%dtc_*%)

| Placeholder | Descripción |
|---|---|
| %dtc_blocks_broken% | Bloques rotos por el jugador |
| %dtc_blocks_remaining% | Bloques restantes del núcleo |
| %dtc_blocks_total% | Vida total del núcleo |
| %dtc_my_contribution% | Contribución del jugador en % |
| %dtc_global_stats% | Valor global de contribución del jugador |
| %dtc_minutes_until_event% | Minutos aproximados hasta el próximo evento |
| %dtc_time_until_event% | Tiempo restante formateado |
| %dtc_next_event% | Hora del próximo evento (HH:mm) |
| %dtc_event_active% | true / false si hay evento activo |
| %dtc_event_time_left% | Tiempo restante del evento activo |


🗂️ Configuración recomendada

1) Perfil de núcleo por evento

Se define en Events.<id>:

Events:
  default:
    CoreHealth: 5
    CoreMaterial: OBSIDIAN
    Location:
      world: "world"
      x: -174
      y: 48
      z: -24
    break-sound: BLOCK_BEACON_DEACTIVATE
    break-sound-volume: 1.0
    break-sound-pitch: 1.0

2) Scheduler por evento (estructura única)

Schedule:
  TimeZone: "UTC"
  Events:
    default:
      ActiveDays: ["SUNDAY"]
      Times: ["03:00"]
    mina:
      ActiveDays: ["MONDAY"]
      Times: ["01:00"]
  • Formato de hora: HH:mm
  • Si falta configuración de horarios, el plugin no crashea; registra debug [DTC-DEBUG] y no programa ese evento.

3) Recompensas por golpe (umbrales acumulados)

Core:
  hit-rewards:
    "30":
      - give %player% diamond 1
    "60":
      - give %player% netherite_ingot 1
    "90":
      - give %player% emerald 1
    "100":
      - give %player% enchanted_golden_apple 1

Interpretación: 30% / 30% / 30% / 10%.

4) Control al finalizar evento

Core:
  replace-on-end: true
  • true: reemplaza el núcleo por bedrock al terminar.
  • false: no reemplaza automáticamente.

💬 Mensajería (MiniMessage)

lang.yml acepta MiniMessage:

  • <red>Texto</red>
  • <bold>Texto</bold>
  • <gradient:#ff0000:#00ffff>Texto</gradient>

🧾 Changelog reciente

v2.0.0

  • Nuevo sistema de multi-evento por ID (start/info/stop con id).
  • Scheduler por evento con Schedule.Events.<id>.ActiveDays y Times.
  • Soporte completo de MiniMessage en mensajes (lang.yml) y textos de config usados por el plugin.
  • /dtc time ahora soporta %event_id% además de %time% en Messages.NextTimeCommand.
  • Fix de Core.hit-rewards por umbrales acumulados (config y lectura consistentes).
  • Clave explícita Core.replace-on-end para controlar reemplazo al terminar evento.
  • Corrección de errores de compilación por imports y genéricos.
  • Cancelación correcta de tareas para evitar duplicados tras reload.
  • Null-safety en PlaceholderAPI cuando no hay jugador en contexto.
  • Limpieza del mapa de cooldown en protección de bedrock.

Versions

No version history available. Use the Download button to get the latest from the source.

Comments 0

No comments yet. Be the first to share your thoughts.

Download DTC - Destroy The Core

Files are served directly from the original source. Modgrid does not host or modify them.