Minecraft / Dev ToolsACTIVE· curado

RPGRoll

Framework RPG modular para servidores Minecraft

lang
Java 100%
files
4703
since
2026.07

Descriptionfuente: README.md

Un framework RPG modular para Minecraft Java Edition 26.1.1 (Paper) diseñado para transformar un servidor vanilla en una experiencia de rol completa inspirada en juegos como Dungeons & Dragons, MMORPGs clásicos y sistemas RPG modernos.

Featuresfuente: README.md

  1. 01Clases y Razas (con bonificaciones, efectos pasivos y habilidades únicas)
  2. 02Trabajos (Jobs)
  3. 03Niveles y Experiencia (XP)
  4. 04Estadísticas y atributos del jugador (asignables)
  5. 05Traits y Skills (habilidades activas usables)
  6. 06Editores visuales (GUI) para razas, clases, trabajos, skills y traits
  7. 07API pública (módulo api) para que otros plugins integren contra RPGRoll

Technologyfuente: manifiestos · topics · lenguajes

Languages
Java
Minecraft
Paper APIBukkit / SpigotVaultPlaceholderAPI
Tooling
GradleJUnit / Mockito
  • Java 100.0 %

Structurefuente: árbol del repositorio

  • .gitignore
  • api/
  • └ src/
  • ascension/
  • └ src/
  • build-logic/
  • └ src/
  • build.gradle.kts
  • chat/
  • └ src/
  • common/
  • └ src/
  • core/
  • └ src/
  • crafting/
  • └ src/
  • crates/
  • └ src/
  • deploy-to-server.bat
  • disasters/
  • └ src/
  • dungeons/
  • └ src/
  • economy/
  • └ src/
  • effects/
  • └ src/
  • enchantments/
  • └ src/
  • extras/
  • └ src/
  • fishing/
  • └ src/
  • furniture/
  • └ src/
  • fx/
  • └ src/
  • gradle.properties
  • gradle/
  • └ wrapper/
  • gradlew
  • gradlew.bat
  • guilds/
  • └ src/
  • items/
  • └ src/
  • LICENSE
  • licensing.properties
  • licensing/
  • └ src/
  • machines/
  • └ src/
  • magic/
  • └ src/
  • mobs/
  • └ src/
  • npcs/
  • └ src/
  • packinstaller/
  • └ src/
  • packs/
  • └ arsenal-elemental/
  • └ reino-no-muerto/
  • pass/
  • └ src/
  • quests/
  • └ src/
  • ranching/
  • └ src/
  • README.md
  • recipes/
  • └ src/
  • sackresourcepack/
  • └ src/
  • seasons/
  • └ src/
  • settings.gradle.kts
  • tab/
  • └ src/
  • traps/
  • …

Status notesfuente: README.md

El core, RPGRoll-Lib y los 24 addons descritos arriba están implementados, compilando y en la versión 1.0.0.


Changelogfuente: README.md

Mostrar cambios →

Cambios recientes aplicados en todo el ecosistema:

  • 🚀 Migración completa a Paper 26.1.1 (Java 25) — se abandona el soporte a 1.21.1: los 21 módulos (core + 20 addons) ahora compilan contra la nueva API de Paper. Incluye la renombrada de todas las constantes de Attribute (se les quitó el prefijo GENERIC_/PLAYER_/ZOMBIE_) y la adaptación a que Sound dejó de ser un Enum plano
  • 🖱️ Botones "Volver" arreglados en todas las GUIs — encantamientos, tiendas de NPCs, chat, crates y RPGRoll-FX: el botón Volver/Cerrar reabría el menú anterior sin cerrar de verdad el inventario activo, dejando la GUI "congelada". Corregido en 59 archivos (el reopen() de cada GUI ahora usa open() en vez de build())
  • 🧟 Mobs de RPGRoll-Mobs vuelven a moverse y patrullar — se removía la IA nativa de Bukkit (Mob#setAware(false)) para evitar que interfiriera con el motor de IA propio, pero esa misma llamada también bloquea el sistema de pathfinding de Paper, dejando a los mobs completamente estáticos. Ya no se desactiva
  • ✏️ /renchant remove corregido — ahora resuelve el encantamiento por su id real antes de intentar removerlo, en vez de fallar silenciosamente
  • ⌨️ Autocompletado (Tab) real en todos los plugins — cada comando (/rpg, /rpgeffects, /mobadmin, /renchant, etc.) sugiere ahora desde el contenido real registrado: razas, clases, encantamientos, efectos, tipos de entidad, ítems, jugadores online, mundos, etc. — no solo la lista de subcomandos
  • 🎨 Colores de texto 100% configurables desde YAML — todos los módulos soportan ahora los 4 formatos de color en cualquier mensaje configurable: códigos clásicos (&b&l), hex por carácter (&#RRGGBB), hex estilo BungeeCord (&x&R&R&G&G&B&B) y MiniMessage completo, incluyendo gradientes (<gradient:#54daf4:#545eb6>texto</gradient>). Antes el color venía parcialmente fijo en el código Java
  • 🔎 Buscador global en la documentación — la web de docs ahora tiene una barra de búsqueda (Ctrl/Cmd+K) que indexa cada página y cada sección de cada addon
  • 📚 Ejemplo de referencia "todos los campos" en cada addon — cada uno de los addons con contenido YAML incluye un archivo _reference_full.yml (o equivalente) que documenta absolutamente todas las opciones disponibles para su tipo de contenido principal, espejado en la web de documentación. El guion bajo hace que no se cargue: es documentación, no contenido de juego (quítaselo a una copia para probarlo)
  • 💰 Nuevo addon: RPGRoll-Economy — monedas múltiples, wallets, bancos y préstamos, mercado dinámico con oferta/demanda real, tiendas de jugador, subastas, empresas, impuestos y libro mayor de transacciones. También se registra como proveedor del servicio Economy de Vault, dejando funcional al resto del ecosistema (Jobs, Guilds, Items, Workers) sin tocar esos módulos
  • ⚒️ Nuevo addon: RPGRoll-Crafting — recetas personalizadas con ingredientes/condiciones ricas y sistema de calidad, estaciones de crafteo propias (multi-etapa, con combustible), puente con las estaciones vanilla que exponen una API de receta genérica (mesa de crafteo, familia de hornos, cortadora de piedra, mesa de herrería) y motores dedicados de yunque y fermentación
  • 🎭 Reskin visual de mobs y animales — RPGRoll-Mobs y RPGRoll-Ranching pueden ahora mostrar un modelo completamente custom (no solo el mob/animal vanilla) sin depender de ModelEngine/BetterModel: la entidad real queda invisible y se le monta una entidad ItemDisplay como pasajero, portando un ítem con CustomModelData propio. Ranching usa un reskin único por raza; RPGRoll-Mobs va más allá y soporta una lista de skins por mob (model.skins), sorteada por peso al spawnear y persistida (nunca vuelve a sortear en la vida del mob). Las texturas se sincronizan solas hacia SackResourcePack (si está instalado) desde una carpeta resourcepack/ en cada plugin — mismo mecanismo que ya usa RPGRoll-Items
  • 🎣 RPGRoll-Fishing ahora sincroniza sus texturas solo — las especies ya soportaban custom-model-data, pero faltaba conectar esa carpeta resourcepack/ con SackResourcePack; ahora se sincroniza sola al arrancar el plugin, igual que Items/Mobs/Ranching
  • 👷 RPGRoll-Workers ahora también soporta reskin visual por profesión — mismo mecanismo (ItemDisplay pasajero) que Ranching: un minero, granjero, etc. puede mostrar un modelo completamente custom en vez del entity-type vanilla. De paso se corrigió un leak preexistente: el worker nunca se limpiaba de memoria/disco al morir su entidad
  • 🌍 RPGRoll-Economy: economías regionales + integración activa con Guilds/Seasons — MarketEngine.price(producto, ubicación) aplica ahora un multiplicador por MarketRegion (caja AABB con precios distintos por zona, ej. "el mineral es más barato en esta ciudad minera") y otro por estación activa (season-modifiers del producto, ej. las cosechas bajan de precio en harvest) si RPGRoll-Seasons está instalado. Además, una tarea periódica cobra un impuesto PROPERTY a cada guild por cada GuildTerritory que tenga reclamada (descontado de su GuildVault real vía GuildsAPI) — antes Guilds/Seasons solo eran dependencias de compilación, sin ningún código en runtime usándolas
  • 📀 Empaquetado/distribución final — ./gradlew release arma un único .zip versionado con los 24 jars del ecosistema (core + 23 addons), fallando la build si algún módulo quedó en una versión distinta al resto. Core y NPCs (los únicos dos que shadean dependencias propias) resuelven solos su jar final vía shadowJar, el resto vía jar — ver la sección "Distribución" más abajo
  • 🧰 Nueva herramienta web: Diseñador de TAB — RPGRoll-TAB es el único addon sin GUI Studio dentro del juego, así que en su lugar la web de documentación suma un tool 100% en el navegador (como el Diseñador de Salas de Dungeons) que arma con formularios los 10 tipos de contenido de TAB — perfiles, contextos, scoreboards, tablists, nametags, belowname, bossbars, sorting, teams y animaciones — y genera el YAML exacto que lee cada *Parser.java, listo para copiar o descargar

README.md

Leer documento fuente →

🛡️ RPGRoll Framework

RPGRoll

Un framework RPG modular para Minecraft Java Edition 26.1.1 (Paper) diseñado para transformar un servidor vanilla en una experiencia de rol completa inspirada en juegos como Dungeons & Dragons, MMORPGs clásicos y sistemas RPG modernos.

Ya no es un único plugin: es un ecosistema de 1 core + 24 addons independientes sobre una librería común (RPGRoll-Lib), cada uno instalable por separado — incluye un asset pipeline de resource packs (SackResourcePack) que no depende de ningún otro módulo.

📖 Documentación completa: docs.sackito.online

☕ ¿Te gusta el proyecto? Puedes apoyarlo con una donación en Ko-fi.


🆕 Novedades recientes

Cambios recientes aplicados en todo el ecosistema:

  • 🚀 Migración completa a Paper 26.1.1 (Java 25) — se abandona el soporte a 1.21.1: los 21 módulos (core + 20 addons) ahora compilan contra la nueva API de Paper. Incluye la renombrada de todas las constantes de Attribute (se les quitó el prefijo GENERIC_/PLAYER_/ZOMBIE_) y la adaptación a que Sound dejó de ser un Enum plano
  • 🖱️ Botones "Volver" arreglados en todas las GUIs — encantamientos, tiendas de NPCs, chat, crates y RPGRoll-FX: el botón Volver/Cerrar reabría el menú anterior sin cerrar de verdad el inventario activo, dejando la GUI "congelada". Corregido en 59 archivos (el reopen() de cada GUI ahora usa open() en vez de build())
  • 🧟 Mobs de RPGRoll-Mobs vuelven a moverse y patrullar — se removía la IA nativa de Bukkit (Mob#setAware(false)) para evitar que interfiriera con el motor de IA propio, pero esa misma llamada también bloquea el sistema de pathfinding de Paper, dejando a los mobs completamente estáticos. Ya no se desactiva
  • ✏️ /renchant remove corregido — ahora resuelve el encantamiento por su id real antes de intentar removerlo, en vez de fallar silenciosamente
  • ⌨️ Autocompletado (Tab) real en todos los plugins — cada comando (/rpg, /rpgeffects, /mobadmin, /renchant, etc.) sugiere ahora desde el contenido real registrado: razas, clases, encantamientos, efectos, tipos de entidad, ítems, jugadores online, mundos, etc. — no solo la lista de subcomandos
  • 🎨 Colores de texto 100% configurables desde YAML — todos los módulos soportan ahora los 4 formatos de color en cualquier mensaje configurable: códigos clásicos (&b&l), hex por carácter (&#RRGGBB), hex estilo BungeeCord (&x&R&R&G&G&B&B) y MiniMessage completo, incluyendo gradientes (<gradient:#54daf4:#545eb6>texto</gradient>). Antes el color venía parcialmente fijo en el código Java
  • 🔎 Buscador global en la documentación — la web de docs ahora tiene una barra de búsqueda (Ctrl/Cmd+K) que indexa cada página y cada sección de cada addon
  • 📚 Ejemplo de referencia "todos los campos" en cada addon — cada uno de los addons con contenido YAML incluye un archivo _reference_full.yml (o equivalente) que documenta absolutamente todas las opciones disponibles para su tipo de contenido principal, espejado en la web de documentación. El guion bajo hace que no se cargue: es documentación, no contenido de juego (quítaselo a una copia para probarlo)
  • 💰 Nuevo addon: RPGRoll-Economy — monedas múltiples, wallets, bancos y préstamos, mercado dinámico con oferta/demanda real, tiendas de jugador, subastas, empresas, impuestos y libro mayor de transacciones. También se registra como proveedor del servicio Economy de Vault, dejando funcional al resto del ecosistema (Jobs, Guilds, Items, Workers) sin tocar esos módulos
  • ⚒️ Nuevo addon: RPGRoll-Crafting — recetas personalizadas con ingredientes/condiciones ricas y sistema de calidad, estaciones de crafteo propias (multi-etapa, con combustible), puente con las estaciones vanilla que exponen una API de receta genérica (mesa de crafteo, familia de hornos, cortadora de piedra, mesa de herrería) y motores dedicados de yunque y fermentación
  • 🎭 Reskin visual de mobs y animales — RPGRoll-Mobs y RPGRoll-Ranching pueden ahora mostrar un modelo completamente custom (no solo el mob/animal vanilla) sin depender de ModelEngine/BetterModel: la entidad real queda invisible y se le monta una entidad ItemDisplay como pasajero, portando un ítem con CustomModelData propio. Ranching usa un reskin único por raza; RPGRoll-Mobs va más allá y soporta una lista de skins por mob (model.skins), sorteada por peso al spawnear y persistida (nunca vuelve a sortear en la vida del mob). Las texturas se sincronizan solas hacia SackResourcePack (si está instalado) desde una carpeta resourcepack/ en cada plugin — mismo mecanismo que ya usa RPGRoll-Items
  • 🎣 RPGRoll-Fishing ahora sincroniza sus texturas solo — las especies ya soportaban custom-model-data, pero faltaba conectar esa carpeta resourcepack/ con SackResourcePack; ahora se sincroniza sola al arrancar el plugin, igual que Items/Mobs/Ranching
  • 👷 RPGRoll-Workers ahora también soporta reskin visual por profesión — mismo mecanismo (ItemDisplay pasajero) que Ranching: un minero, granjero, etc. puede mostrar un modelo completamente custom en vez del entity-type vanilla. De paso se corrigió un leak preexistente: el worker nunca se limpiaba de memoria/disco al morir su entidad
  • 🌍 RPGRoll-Economy: economías regionales + integración activa con Guilds/Seasons — MarketEngine.price(producto, ubicación) aplica ahora un multiplicador por MarketRegion (caja AABB con precios distintos por zona, ej. "el mineral es más barato en esta ciudad minera") y otro por estación activa (season-modifiers del producto, ej. las cosechas bajan de precio en harvest) si RPGRoll-Seasons está instalado. Además, una tarea periódica cobra un impuesto PROPERTY a cada guild por cada GuildTerritory que tenga reclamada (descontado de su GuildVault real vía GuildsAPI) — antes Guilds/Seasons solo eran dependencias de compilación, sin ningún código en runtime usándolas
  • 📀 Empaquetado/distribución final — ./gradlew release arma un único .zip versionado con los 24 jars del ecosistema (core + 23 addons), fallando la build si algún módulo quedó en una versión distinta al resto. Core y NPCs (los únicos dos que shadean dependencias propias) resuelven solos su jar final vía shadowJar, el resto vía jar — ver la sección "Distribución" más abajo
  • 🧰 Nueva herramienta web: Diseñador de TAB — RPGRoll-TAB es el único addon sin GUI Studio dentro del juego, así que en su lugar la web de documentación suma un tool 100% en el navegador (como el Diseñador de Salas de Dungeons) que arma con formularios los 10 tipos de contenido de TAB — perfiles, contextos, scoreboards, tablists, nametags, belowname, bossbars, sorting, teams y animaciones — y genera el YAML exacto que lee cada *Parser.java, listo para copiar o descargar

✨ Características

Núcleo (RPGRoll / core)

  • 🎭 Clases y 🧬 Razas (con bonificaciones, efectos pasivos y habilidades únicas)
  • ⚒️ Trabajos (Jobs)
  • ⭐ Niveles y 📈 Experiencia (XP)
  • ❤️ Estadísticas y atributos del jugador (asignables)
  • 💎 Traits y ⚔️ Skills (habilidades activas usables)
  • 🖼️ Editores visuales (GUI) para razas, clases, trabajos, skills y traits
  • 🧩 API pública (módulo api) para que otros plugins integren contra RPGRoll

Ecosistema de addons

Cada addon extiende el core con un sistema completo propio, construido por componentes/YAML configurables (no hardcodeado en Java) y con su propio editor visual (GUI "Studio"):

AddonQué agrega
🧑‍🤝‍🧑 NPCsNPCs interactuables (tiendas, diálogos, menús) como Mannequins nativos, sin ProtocolLib
🎁 CratesCajas con ruleta de premios, integrables con DecentHolograms
✨ EnchantmentsEncantamientos personalizados basados en componentes (triggers/condiciones/efectos)
📜 QuestsMisiones ramificadas por etapas, objetivos, condiciones y eventos
🎒 ItemsÍtems personalizados con stats, sockets, skins, mejoras y recetas
🌟 AscensionProgresión avanzada: evolución de razas, especialización de clases, talentos, prestigio, legado y afinidades; logros con criterios y recompensas, facciones con reputación, rangos y rivalidades, títulos, rangos de oficio que desbloquean recetas, y razas, clases, rasgos y especializaciones secretas
👹 MobsMobs, jefes e invocaciones a medida (componentes, fases, IA propia, loot, reskin visual propio)
🏰 DungeonsMazmorras instanciadas: salas, oleadas, jefes, dificultades, ranking; estructuras NATIVE/CUSTOM y schematics de WorldEdit (opcional)
🛡️ GuildsEquipos temporales (Teams) y organizaciones permanentes (Guilds)
💬 ChatCanales, proximidad, idiomas, roles, whisper, antispam, reacciones, logs
🎆 RPGRoll-FXLibrería reusable de partículas con formas, sonidos, títulos/actionbar/bossbar
🌀 RPGRoll-EffectsMotor de efectos de estado (buffs/debuffs/auras) aplicable desde cualquier addon
🪄 RPGRoll-MagicEscuelas de magia, hechizos por componentes, maná, catalizadores, grimorios, runas
🍂 RPGRoll-SeasonsCalendario y estaciones: clima, temperatura por bioma, vegetación dinámica, eventos mundiales
🎣 RPGRoll-FishingPesca como profesión: especies, cañas/carnadas, minijuego, tesoros, enciclopedia de capturas
🐄 RPGRoll-RanchingGanadería viva: genética hereditaria, reproducción, nutrición, bienestar, enfermedades/vacunas, reskin visual por raza
👷 RPGRoll-WorkersNPCs trabajadores autónomos con IA por reglas, necesidades, logística, economía y reskin visual propio
📦 SackResourcePackAsset pipeline standalone: fusión de resource packs, CustomModelData, build+hash, distribución automática
💰 RPGRoll-EconomyMonedas múltiples, wallets, bancos/préstamos, mercado dinámico con oferta/demanda, tiendas, subastas, empresas, impuestos y libro mayor — proveedor del servicio Economy de Vault
⚒️ RPGRoll-CraftingRecetas personalizadas (ingredientes/condiciones ricas, calidad), estaciones de crafteo propias, puente con estaciones vanilla y motores de yunque/fermentación
📋 RPGRoll-TABTabList, Scoreboard, Nametags, BelowName y BossBars 100% personalizables por placeholders — perfiles, contextos y animaciones por YAML (o el Diseñador de TAB en la web)
🌡️ RPGRoll-ExtrasNecesidades y condiciones de supervivencia configurables (sed, stamina, fatiga, temperatura, oxígeno, estrés) con umbrales que aplican efectos
🪤 RPGRoll-TrapsMotor de trampas/mecanismos por YAML: triggers/condiciones/acciones/cadenas, bloques reforzados con llave, puertas secretas, y torretas autónomas que apuntan y disparan a jugadores/mobs hostiles
📖 RPGRoll-RecipesRecetario al estilo JEI: cómo se hace y para qué sirve cada objeto, leyendo las recetas vanilla, las de cualquier plugin, la fermentación y las estaciones de RPGRoll (RecipeSource en RPGRoll-Lib para que cualquier plugin publique las suyas)
🏭 RPGRoll-MachinesMáquinas: hornos, altos hornos y ahumadores mejorables (velocidad, combustible, doble resultado), spawners con mejoras, pila y recogida con toque de seda, y canteras que excavan solas dentro del claim de su dueño (fortuna, toque de seda, autofundido, filtro)

Ver el detalle completo de cada uno (comandos, permisos, formato YAML, ejemplos) en el sitio de documentación (UI/).


🧩 Ecosistema de módulos

MóduloComando raízDepende de (hard)Integraciones opcionalesPrecio estimado
core (RPGRoll)/rpgRPGRoll-LibVault, PlaceholderAPI$20
NPCs/npcRPGRoll-Lib—$8
Crates/crateRPGRoll-LibDecentHolograms$6
Enchantments/renchantRPGRoll-LibPlaceholderAPI$10
Quests/quest, /questadminRPGRoll-LibPlaceholderAPI$12
Items/item, /itemadminRPGRoll-LibEnchantments, Vault, PlaceholderAPI$15
Ascension/ascend, /ascendadminRPGRoll-Lib, RPGRollEnchantments, Quests, PlaceholderAPI$16
Mobs/mobadminRPGRoll-LibItems, Quests, PlaceholderAPI, SackResourcePack$15
Dungeons/dungeon, /dungeonadminRPGRoll-Lib, Mobs, GuildsItems, Quests, PlaceholderAPI, WorldEdit$15
Guilds/guild, /team, /guildadminRPGRoll-LibItems, Quests, Vault, PlaceholderAPI$12
Chat/channel, /w, /language, /chatadmin, ...RPGRoll-LibGuilds, PlaceholderAPI$10
RPGRoll-FX/rpgfxRPGRoll-Lib—$6
RPGRoll-Effects/rpgeffectsRPGRoll-LibRPGRoll-FX, Guilds$10
RPGRoll-Magic/magic, /magicadminRPGRoll-Lib, RPGRollRPGRoll-FX, RPGRoll-Effects$18
RPGRoll-Seasons/seasons, /seasonsadminRPGRoll-LibRPGRoll-FX, RPGRoll-Effects, Mobs$14
RPGRoll-Fishing/fishing, /fishingadminRPGRoll-LibRPGRoll-FX, RPGRoll-Effects, Seasons, SackResourcePack$14
RPGRoll-Ranching/ranching, /ranchingadminRPGRoll-LibRPGRoll-FX, RPGRoll-Effects, Seasons, SackResourcePack$16
RPGRoll-Workers/workers, /workersadminRPGRoll-LibRPGRoll-FX, RPGRoll-Effects, Seasons, Ranching, Fishing, Guilds, Vault, SackResourcePack$16
SackResourcePack/srp(ninguno, standalone)S3 (subida remota)$12
RPGRoll-Economy/economy, /economyadminRPGRoll-LibVault, PlaceholderAPI, Guilds, Seasons$18
RPGRoll-Crafting/crafting, /craftingadminRPGRoll-LibItems, Economy, Guilds, Seasons$17
RPGRoll-TAB/tabadminRPGRoll-LibProtocolLib, PlaceholderAPI$19
RPGRoll-Extras/extrasadminRPGRoll-LibRPGRoll-TAB, RPGRoll-Seasons, PlaceholderAPI, Vault$13
RPGRoll-Traps/trapadminRPGRoll-LibItems, RPGRoll-Effects, Mobs, PlaceholderAPI$14
RPGRoll-Pass/pase, /diario, /votar, /passadminRPGRoll-LibQuests, Mobs, Crates, Items, Votifier, Vault$12
RPGRoll-Furniture/muebles, /furnitureadminRPGRoll-LibSackResourcePack, Vault$14
RPGRoll-Recipes/recetas (/jei)RPGRoll-LibCrafting, Furniture, Items, Extras (solo orden de carga)$8
RPGRoll-Machines/machinesRPGRoll-LibVault, GriefPrevention, Items, Crates$14

Solo Ascension y Magic necesitan el core: prestigio y hechizos trabajan directamente sobre el personaje (nivel, maná, vida, stats de combate). El resto funciona con o sin RPGRoll: si el core está instalado, leen nivel, raza, clase, oficios y maná del personaje (requisitos, recompensas de EXP, HUD de equipo...) a través de RPGRoll-Lib; si no, esos requisitos no aplican y las recompensas de EXP de personaje se omiten, pero el módulo funciona completo. La economía se toma directamente de Vault.

Todos los comandos administrativos, de jugador y con contenido dinámico (razas, ítems, encantamientos, especies, entidades, etc.) tienen autocompletado real por Tab.

Los precios son estimados (USD) en función de la complejidad de cada módulo — el canal de venta es voxel.shop.


📦 Compatibilidad

SoftwareVersión
Minecraft26.1.1
Paper✅
Java25
VaultOpcional (Soft Depend)
PlaceholderAPIOpcional (Soft Depend)
ProtocolLibOpcional (Soft Depend, TAB)
DecentHologramsOpcional (Soft Depend, Crates)

📀 Distribución (para quien mantiene el repo)

Todos los módulos comparten un único número de versión (1.0.0 hoy, en cada build.gradle.kts). Para armar el paquete de release completo del ecosistema:

./gradlew release

Esto arma build/distributions/RPGRoll-Ecosystem-<versión>.zip con el .jar final de los 24 addons, el core y RPGRoll-Lib (26 en total) más un MANIFEST.txt con la lista. Antes de copiar los jars, checkReleaseVersions falla la build si algún módulo quedó en una versión distinta al resto — evita publicar un release con addons desincronizados. Los dos módulos que empaquetan dependencias propias (core shadea :api y el licenciamiento; npcs shadea y reubica OkHttp) usan su shadowJar, no el jar plano — la tarea ya lo resuelve sola por módulo, no hace falta tocar nada al agregar un addon nuevo mientras siga la convención rpgroll.addon-conventions.

Al terminar, verifyRelease compara el SHA-256 de cada jar del zip con el jar compilado de su módulo y falla si falta alguno, si sobra alguno o si alguno no coincide. Esa tarea se ejecuta siempre, también cuando el resto sale UP-TO-DATE: los archivos que arma Gradle son reproducibles, así que recompilar sin cambiar nada da jars idénticos byte a byte y el zip conserva su fecha original. Eso es correcto, pero desde fuera se parece demasiado a "el zip se quedó viejo", y antes de publicar esa duda hay que poder resolverla sin mirar fechas. El MANIFEST.txt del zip lleva esos mismos SHA-256, para comprobar más tarde que el jar instalado en un servidor es el que salió del release.

No corre como parte de ./gradlew build — es completamente opt-in.


🔧 Instalación

⚠️ Los módulos de RPGRoll son de pago — se compran en la tienda oficial, shop.sackito.online, que es también desde donde se descargan los .jar.

Licencia. Al comprar te llega una clave RPGR- por correo, y queda guardada en Mis compras. Cada plugin crea al arrancar plugins/<plugin>/license.yml; pega la clave en el campo key y reinicia:

key: 'RPGR-XXXXX-XXXXX-XXXXX-XXXXX'

No hay nada más que configurar: el plugin sabe solo a qué servicio consultar. Si la conseguiste apoyando en Ko-fi o Patreon, es el mismo tipo de clave — crea tu cuenta en la tienda con el mismo correo y aparecerá en Mis compras con sus descargas.

Si el servicio de licencias no responde, el plugin no te bloquea: se apoya en la última validación correcta durante 7 días.

  1. Descarga los .jar de los módulos que quieras usar.
  2. Coloca siempre RPGRoll-Lib dentro de plugins/: es la librería compartida del ecosistema, gratuita y sin licencia, y la necesitan todos los módulos (excepto SackResourcePack, que es standalone). Añade también RPGRoll (core) si usas Ascension o Magic, o si quieres personajes (nivel, raza, clase, oficios) que el resto de módulos pueda aprovechar.
  3. Agrega los addons que quieras encima, respetando sus dependencias duras (ver tabla de Ecosistema de módulos) — por ejemplo, Dungeons requiere que Mobs y Guilds ya estén instalados.
  4. Reinicia el servidor.
plugins/
├── RPGRoll-Lib.jar
├── RPGRoll.jar          (opcional salvo Ascension/Magic)
├── RPGRoll-Items.jar
├── RPGRoll-Enchantments.jar
├── RPGRoll-Mobs.jar
├── RPGRoll-Guilds.jar
├── RPGRoll-Dungeons.jar
└── ...

⚠️ No cambies online-mode una vez que el servidor tenga personajes creados. RPGRoll guarda a cada jugador por UUID en players.db (y en el resto de bases de datos de los addons). Minecraft asigna un UUID distinto al mismo nombre de usuario según el servidor esté en modo online u offline, así que alternar online-mode hace que RPGRoll trate esa cuenta como un personaje totalmente nuevo — el original queda huérfano en la base de datos, no se fusiona ni se migra automáticamente. Elige un modo antes de lanzar el servidor en serio y no lo cambies después.


🎮 Comandos

Comando principal del core:

/rpg

Alias:

/rpgroll
/dnd

Cada addon agrega su propio comando raíz (ver tabla de Ecosistema de módulos) — por ejemplo /npc, /quest, /mobadmin, /magic, /srp.

👤 Comandos de Jugador (core)

ComandoDescripciónPermiso
/rpg createCrear personajerpgroll.player.create
/rpg statsVer estadísticasrpgroll.player.stats
/rpg mystatsVer estadísticas detalladasrpgroll.player.mystats
/rpg levelVer nivel y experienciarpgroll.player.level
/rpg classVer o cambiar claserpgroll.player.class
/rpg raceVer o cambiar razarpgroll.player.race
/rpg jobsVer y gestionar trabajosrpgroll.player.jobs
/rpg skillsVer habilidadesrpgroll.player.skills
/rpg traitsVer traitsrpgroll.player.traits
/rpg allocateGastar puntos de estadísticarpgroll.player.allocate
/rpg useskillUsar una habilidad aprendidarpgroll.player.useskill

👑 Comandos de Administrador (core)

ComandoDescripciónPermiso
/rpg reloadRecargar configuraciónrpgroll.admin.reload
/rpg addxp <jugador> <cantidad>Agregar experienciarpgroll.admin.addxp
/rpg levelup <jugador>Subir nivel (Debug)rpgroll.admin.levelup
/rpg guiAbrir interfaces en modo previewrpgroll.admin.gui
/rpg setrace <jugador> <raza>Cambiar la raza de un jugadorrpgroll.admin.setrace
/rpg setclass <jugador> <clase>Cambiar la clase de un jugadorrpgroll.admin.setclass
/rpg resetstats <jugador>Reiniciar y reembolsar atributosrpgroll.admin.resetstats
/rpg job <sub> <jugador>Gestionar trabajos de jugadoresrpgroll.admin.job
/rpg contentEditor visual de razas/clases/etc.rpgroll.admin.content

🔐 Permisos

Cada módulo define su propio árbol de permisos con el mismo patrón rpgroll<addon>.<player|admin>.* (por ejemplo rpgrollnpcs.admin.*, rpgrollmobs.admin.*, rpgrollmagic.use). El del core es:

Jugador

rpgroll.player.*

Incluye: create, stats, mystats, level, class, race, jobs, skills, traits, allocate, useskill.

Administrador

rpgroll.admin.*

Incluye: reload, addxp, levelup, gui, setrace, setclass, resetstats, job, content.

Acceso total

rpgroll.*

🎨 Personalización de textos

Todos los mensajes configurables desde YAML aceptan cualquiera de estos 4 formatos de color, elegidos libremente por quien edita el archivo (nunca fijos en el código Java):

  • Legacy clásico: &b&lArquero
  • Hex por carácter: &#54DAF4B&#54C8EB...
  • Hex estilo BungeeCord: &x&5&4&D&A&F&4...
  • MiniMessage, incluyendo gradientes: <gradient:#54daf4:#545eb6>Arquero</gradient>

🧩 Integraciones

Actualmente soporta (todas opcionales salvo donde se indica):

  • Vault — RPGRoll-Economy se registra como proveedor del servicio Economy; Items/Guilds/Workers lo consumen para pagos y salarios
  • PlaceholderAPI — placeholders en casi todos los addons
  • ProtocolLib — opcional, lo usa RPGRoll-TAB
  • DecentHolograms — hologramas en Crates
  • S3 (SigV4) — subida remota de resource packs en SackResourcePack

🛠️ Tecnologías

  • Java 25
  • Gradle (multi-módulo, con build-logic como plugin de convenciones y Shadow)
  • Paper API 26.1.1
  • Adventure API (Component, MiniMessage, LegacyComponentSerializer)
  • SQLite
  • Vault API
  • React + TypeScript (sitio de documentación en UI/)

📖 Filosofía del proyecto

RPGRoll no busca ser simplemente un plugin con niveles.

El objetivo es convertirse en un Framework RPG que permita a cualquier servidor construir su propio mundo de fantasía mediante sistemas modulares, altamente configurables y fáciles de extender — cada addon es su propio motor basado en componentes/YAML, no una lista fija de opciones.

La idea es que prácticamente cualquier mecánica RPG pueda implementarse utilizando este framework.


❤️ Estado del desarrollo

El core, RPGRoll-Lib y los 24 addons descritos arriba están implementados, compilando y en la versión 1.0.0.


☕ Apoya el proyecto

Puedes comprar los módulos en shop.sackito.online, o si quieres apoyar el desarrollo, puedes donar en Ko-fi. Cualquier aporte ayuda a que el proyecto siga avanzando.


📄 Licencia

Software propietario — todos los derechos reservados. El código es visible, pero no es libre.

Este repositorio es público para que se pueda leer y auditar el trabajo, no para reutilizarlo. El uso está sujeto a los términos de la Licencia de Uso Comercial (EULA): podés instalar y ejecutar en tus propios servidores los módulos que hayas comprado, pero no redistribuirlos, revenderlos, ni publicar builds derivadas.

Que el código esté a la vista no lo convierte en código abierto: no hay permiso de uso, copia ni modificación más allá de lo que dice el EULA.


👨‍💻 Autor

Sack

Framework RPG para servidores Paper inspirado en Dungeons & Dragons y MMORPGs.

Next project PC Remote