Skip to Content
🎉 ¡Ashes Of War 2.11.0! Queda un solo sistema de habilidades, un personaje nuevo reparte 18 NdP en vez de 6, y los arquetipos traen ese reparto ya hecho. Ver cambios →
Formato del bestiario por enlace

Formato del bestiario por enlace

Esta página no es una regla del juego: es para quien programa una herramienta que genere criaturas de Ashes of War y quiera que se impriman en las fichas oficiales.

Las fichas de /imprimir/bestiario aceptan un bestiario entero en la dirección. El enlace se abre y las fichas salen cargadas, sin cuentas ni servidores de por medio: las criaturas viajan adentro del enlace.

/imprimir/bestiario?bestiario=<base64url del JSON>

El resto de los parámetros siguen valiendo y se combinan con este: era, amenaza, bestias, blancos, densidad y traidas=0, que apaga las criaturas de la dirección sin sacarlas del enlace.

Se puede probar sin escribir una línea de código: acá abajo se pega el JSON de un bestiario y sale su enlace, el mismo que armaría la herramienta.

Cargar un bestiario desde su JSON

El enlace que sale de acá es el que hay que guardar o compartir: lleva las criaturas enteras adentro.

El JSON

El sobre lleva una lista y no una criatura suelta, porque un bestiario es plural: una mesa manda las cinco de su aventura de una vez, y un enlace de una sola es una lista de uno.

Este es el del Matón, el secuaz de ejemplo del manual, tal cual lo leen las fichas. No está escrito acá: sale del mismo dato que imprime su ficha, así que no puede quedar viejo.

El JSON del Matón, entero

Así lo leen las fichas. El formato, y cómo se arma el enlace que lo imprime, están en /formato-bestia.

{
	"format": 1,
	"bestias": [
		{
			"id": "maton",
			"name": "Matón",
			"supplement": "nucleo",
			"threat": "secuaz",
			"template": "bipedo",
			"role": "Bravucón o recluta sin entrenamiento",
			"description": "Carne de cañón que pelea envalentonada por el número y se desbanda cuando las cosas se ponen feas.",
			"skills": [
				{
					"name": "Combate Cuerpo a Cuerpo",
					"ndp": 1
				},
				{
					"name": "Esquivar",
					"ndp": 1
				},
				{
					"name": "Alerta",
					"ndp": 1
				}
			],
			"attacks": [
				{
					"name": "Arma improvisada o ligera",
					"damage": "1d6",
					"damageType": "contundente",
					"reach": 1
				}
			],
			"rd": 1,
			"minion": true,
			"tactics": [
				"Carga en grupo contra el que ve más débil",
				"Se desbanda cuando cae el primero de los suyos"
			],
			"notes": "Peligroso solo en grupo. Ideal para dar sensación de horda sin arriesgar un TPK."
		}
	]
}
CampoQué es
formatSiempre 1. Es la versión del formato, no la de la criatura. Obligatorio.
bestiasLa lista de criaturas. Obligatorio.

Y dentro de cada criatura:

CampoQué es
idUn identificador en minúsculas y con guiones. No se imprime; sirve para nombrarla en el parámetro bestias. Obligatorio.
nameEl nombre que va en el encabezado de la ficha. Obligatorio.
supplementLa ambientación: nucleo, medieval, moderno, cyberpunk o ciencia-ficcion. Obligatorio.
threatEl escalón de amenaza: secuaz, competente, elite o jefe. Ver el diseño de encuentros. Obligatorio.
templateLa plantilla corporal, que decide qué filas tiene la rejilla de heridas. Ver abajo. Obligatorio.
rdLa RD que se preimprime en todas las filas. Obligatorio.
roleUn subtítulo corto, tipo “Depredador de manada”.
descriptionDos líneas, hasta 140 caracteres. Más largo empuja a los ataques.
skillsLista de { name, ndp }. Solo las que importan, tres a cinco. El nombre tiene que ser el de Habilidades, tal cual: Esquivar e Interceptar van separadas, porque el GdC del escudo suma solo a Interceptar.
attacksLista de { name, damage, damageType, reach?, properties? }. Ver abajo.
rdByLocationExcepciones de RD por zona, por ejemplo { "Cabeza": 4 }. La etiqueta tiene que ser una fila de su plantilla.
shieldGdcEl GdC del escudo. El bono a Interceptar se calcula solo, no se manda.
movementSolo si difiere del estándar (1 m libre, 6 m con la acción, 18 m corriendo con tirada de Correr).
miniontrue para la regla de secuaz: cae con una sola herida grave.
woundsNoteUna salvedad sobre las casillas, que reemplaza al texto de la plantilla.
tacticsDos o tres viñetas: apertura, foco, cuándo huye.
notesNotas sueltas para el Narrador.

Todo lo que no sea id, name, supplement, threat, template y rd se puede omitir, y lo que falta se imprime en blanco. La ficha nunca escribe un número que nadie mandó.

Los ataques

Cada ataque declara su nombre, su dado de daño ("1d8", "2d6") y su damageType: cortante, perforante, contundente o energia. El tipo no reduce la RD, pero decide qué estados provoca, así que es obligatorio.

reach son metros: la longitud en cuerpo a cuerpo, el alcance máximo a distancia. properties es una lista de textos, y las que tocan la RD hay que escribirlas o la herida se resuelve mal: "Aplastante 1", "Perforante 2", "Área 3". Están todas en Armas.

Las plantillas corporales

La plantilla decide qué filas tiene la rejilla de heridas impresa y dónde mata una letal. El manual canoniza la bípeda en Combate; las otras cinco se derivan de ella para poder estatear bichos no humanoides.

templateFilasMuere por
bipedoCabeza, Torso, Brazo, Mano, Pierna, PieCabeza o Torso
cuadrupedoCabeza, Torso, Pata del., Pata tras.Cabeza o Torso
serpentinoCabeza, Torso, Cuerpo ant., Cuerpo post.Cabeza o Torso
aladoCabeza, Torso, Ala, PataCabeza o Torso
enjambreEnjambreNo muere por ubicación
colosoCabeza, Torso, Brazo, PiernaCabeza o Torso, con dos letales

Las filas que van de a pares (Brazo, Mano, Pierna, Pie, Pata, Ala) se imprimen dos veces, derecha e izquierda. Eso no se manda: sale de la plantilla.

Qué se rechaza y qué se avisa

No se imprime el bestiario si el JSON está roto, si el format no es el que leen estas fichas, si bestias no es una lista, o si a una criatura le falta el identificador, el nombre, la ambientación, el escalón, la plantilla o la RD, o alguno de esos no es lo que dice ser. Tanto el bloque de acá arriba como la página dicen cuál es el problema.

Se imprime igual, con un aviso en pantalla (nunca en el papel) si hay una habilidad con un nombre que no existe, una zona de RD que la plantilla no tiene, una descripción de más de 140 caracteres, o un identificador que choca con el de una criatura del manual.

Lo que no se revisa es el balance de la criatura: cuántos NdP le corresponden a un jefe o cuánto daño es demasiado. Eso es la guía del Narrador, no una regla, y quien manda su propio bicho ya decidió.

El tamaño del enlace

Una criatura cargada da unos 900 caracteres, y cinco pasan los 4000. Si el JSON se comprime con gzip antes de pasarlo a base64url, baja a menos de la mitad: las fichas reconocen las dos formas solas, así que comprimir es opcional y se puede agregar después.

Last updated on