Cube Unbound Wiki Web del juego EN Discord 0

Cómo hacer tu propia mazmorra

Una mazmorra nueva son dos archivos JSON: la horda que vive dentro y la propia mazmorra. El juego la construye sola en el mundo: los pisos, las salas con sus rejas, la arena del jefe, la sala del tesoro y el portal de vuelta. No hace falta programar.

Vale para la Alfa 0.2.3.1 (la gratuita) y las siguientes. Como ejemplo haremos El Osario sin Nombre, una cripta de esqueletos en bosques y llanuras. ¿Es tu primer mod? Lee antes la guía de mods. Más tutoriales (armas, criaturas, jefes y estructuras) en Tutoriales.

Paso 1: la horda

La horda son los enemigos que salen en cada sala. Crea mods/horde/hordes/legion_osario.json:

{
  "id": "legion_osario",
  "name": "Legión del Osario",
  "countScale": 1.0,
  "units": [
    {
      "mob": "crypt_skeleton",
      "weight": 60
    },
    {
      "mob": "bone_sniper",
      "weight": 25
    },
    {
      "mob": "acolyte_necromancer",
      "weight": 15,
      "fromLevel": 12
    }
  ]
}
CampoQué es
idIdentificador único de la horda. La mazmorra la nombra con él.
nameNombre visible.
countScaleMultiplica cuántos enemigos salen por sala (de 0,01 a 20; 1 = normal). La cantidad base según el nivel está en mods/horde/rules.json.
unitsLas tropas. Cada una lleva mob (el id de una criatura de mods/mobs o de mods/factions), weight (su proporción: aquí, 60 esqueletos por cada 25 francotiradores) y, si quieres, fromLevel (desde qué nivel de mazmorra aparece; por defecto, desde el 1).

Criaturas de hueso que ya existen: crypt_skeleton (Esqueleto Guardián de Cripta), bone_sniper (Arquero Óseo de Tiro Rápido), acolyte_necromancer (Nigromante de Túnica Rota), lich_commander (Señor de la Cripta Esquelético), undead_horde (Esqueleto de la horda), undead_archer (Arquero esquelético), undead_caster (Nigromante de hueso). Cada una muestra su id al pie de su página del bestiario.

Paso 2: la mazmorra

Crea mods/dungeons/osario.json:

{
  "format": 1,
  "id": "osario",
  "name": "El Osario sin Nombre",
  "biomes": [
    "forest",
    "plains"
  ],
  "km": [
    0.5,
    3
  ],
  "level": 8,
  "floors": 2,
  "rooms": 7,
  "faction": "legion_osario",
  "boss": "torvald",
  "weight": 10,
  "theme": {
    "wall": "cobblestone",
    "wallAlt": "mossy_stone",
    "floor": "stone",
    "ceiling": "stone",
    "pillar": "wood",
    "light": "lantern",
    "accent": "mushroom_brown"
  }
}
CampoQué esSi no lo pones
idObligatorio. Identificador único.—
biomesObligatorio. En qué biomas puede salir (al menos uno). Los ids están en la referencia de datos.—
nameNombre que sale al entrar y en el mapa.el id
factionEl id de la horda del paso 1.salas vacías
bossEl jefe de la arena: una criatura con bloque "boss". Aquí, Capitán Esquelético Torvald. Todos los jefes están en Jefes y únicos.sin jefe
levelNivel de la mazmorra, de 1 a 500: el de sus enemigos y su botín.1
floorsPisos, de 1 a 5.1
roomsSalas de combate repartidas entre los pisos, de 2 a 14 (además de la arena y el tesoro).6
km[mín, máx]: a cuántos kilómetros del inicio del mundo puede salir. Nunca sale a menos de 0,25 km.a cualquier distancia
weightCuánto sale frente a las demás mazmorras que encajan en el mismo sitio, de 0 a 1000.10
stylecrypt (cripta), mine (mina) o sunken (hundida: sólo sale bajo el agua).crypt
floodAgua dentro: none, arena (sólo la arena) o all.all en las hundidas; none en las demás
yAltura de la mazmorra, de 8 a 60.la elige el juego
themeLos bloques: wall (pared), wallAlt (pared alterna), floor (suelo), ceiling (techo), pillar (columnas), light (luces), accent (adornos) y, en las minas, ore y oreAlt (vetas). Los ids de bloque están en la referencia.piedra labrada y faroles

"format": 1 no hace falta, pero así quedan igual que los archivos del juego.

Paso 3: en inglés (opcional)

Para que el nombre salga traducido a quien juega en inglés, crea mods/lang/en/dungeons/osario.json y mods/lang/en/horde/hordes/legion_osario.json:

{
  "id": "osario",
  "name": "The Nameless Ossuary"
}
{
  "id": "legion_osario",
  "name": "Ossuary Legion"
}

Paso 4: probarla

  1. Los datos se leen al arrancar: cierra el juego y ábrelo de nuevo (F4 recarga los modelos, no los datos).
  2. Las mazmorras se colocan al generar el terreno: búscala en un mundo nuevo o en zonas que aún no hayas visitado.
  3. Para encontrarla rápido mientras pruebas, sube weight a 1000 y pon km cerca del inicio, por ejemplo [0.3, 2]. Sale en el mapa cuando pasas cerca de su entrada. Después vuelve a dejar el weight en 10.
Si no aparece nunca, revisa el archivo de la mazmorra: si tiene un error (un bioma o un bloque que no existe, un style mal escrito, una coma de más), el juego la salta sin avisar. Los errores de la horda, en cambio, sí salen en el aviso de arriba de la pantalla al arrancar. Y si la mazmorra nombra una horda que no existe, al entrar en cada sala verás «no hay horda …» y la sala se da por despejada.

Para jugarla en LAN o en un servidor, todos necesitan la misma carpeta mods: el juego avisa si no coincide.

¿Y los spawners?

En la Alfa 0.2.3.1 no hay spawners: los enemigos de la horda salen al entrar en cada sala y, cuando caen todos, se abren las rejas. ¿Tienes ideas de cómo deberían funcionar? Cuéntaselas a Santiago en el Discord.

¿Ya la tienes? Compártela en el portal de mods.


Make your own dungeon (English)

A new dungeon is two JSON files: the horde that lives inside and the dungeon itself. The game builds it in the world on its own: floors, gated rooms, the boss arena, the treasure room and the portal back. No coding needed. Works from Alpha 0.2.3.1 (the free one) on.

  1. Horde: mods/horde/hordes/<id>.json with id, name, countScale (0.01–20, multiplies how many enemies per room) and units: each one has mob (a creature id from mods/mobs or mods/factions), weight (its share) and optionally fromLevel (from which dungeon level it shows up). See the first example above.
  2. Dungeon: mods/dungeons/<id>.json. Required: id and biomes (at least one). Optional: name, faction (the horde id), boss (a creature with a "boss" block), level 1–500, floors 1–5, rooms 2–14, km [min, max] from the world start, weight 0–1000, style crypt / mine / sunken (sunken only spawns underwater), flood none / arena / all, y 8–60 and theme with block ids. See the second example above; biome and block ids are in the data reference.
  3. English name (optional): mods/lang/en/dungeons/<id>.json with {"id": "...", "name": "..."}, and the same for the horde in mods/lang/en/horde/hordes/.
  4. Test it: restart the game (data is read at startup) and look in a new world or in unexplored areas. To find it fast, use "weight": 1000 and "km": [0.3, 2] while testing. If it never shows up, check the dungeon file: a dungeon with an error is skipped without a warning for now. Horde errors do show up at startup.

Spawners: Alpha 0.2.3.1 has none. The horde appears when you enter each room, and the gates open when it is cleared. Ideas are welcome on our Discord.