El lenguaje de los dados Contenido

Sistemas de reglas

El lenguaje de los dados

Las fórmulas tras cada frase: notación de dados, valores que puede leer una tirada, cómo se interpreta una tirada, con recetas para mecánicas comunes.

Un pequeño lenguaje bajo cada frase

Cada número de un sistema de reglas es o un número sencillo o un pestaña Fórmula o en un pequeño lenguaje: los dados que tira una prueba, un objetivo, el máximo de una pista, el modificador de una característica, la salud de un enemigo por nivel, una cantidad en una carta de regla. Rara vez necesitas escribir uno: el editor de frases, el compositor y Hob los escriben por ti. La Avanzado muestra todas cuando quieras.

Es deliberadamente pequeño. No es un lenguaje de programación: no hay bucles, no alcanza valores fuera de los que se le entregan, nada que pueda comportarse mal. Una fórmula que no tiene sentido se rechaza al guardar, con una frase que dice qué falla.

Avanzado: la tirada y el objetivo de cada prueba, el máximo de cada pista, cada fórmula de valor derivado
Studio › Reglas › Avanzado: las fórmulas detrás de cada frase, cada una en su propio campo. Todo lo demás que tiene el sistema también está aquí, como datos editables.
El pie del editor: cambios sin guardar, un problema, escrito como una frase
Una fórmula rota se detecta mientras escribes, se explica con palabras y no se puede guardar.

Dados

EscribeSignificaEjemplo
d20Un dado de veinte caras13
3d6Tres dados de seis caras, sumados4 + 2 + 6 = 12
2d20kh1Dos d20, quédate con el más alto (ventaja)(7, 16) → 16
2d20kl1Quédate con el más bajo (desventaja)(19, 7) → 7
4d6kh3Cuatro d6, quédate con los tres mejores(5, 2, 6, 3) → 14
(@stat)d6Tantos dados como indique un valorProwl 3 → 3d6
d(@dexterity)Un dado tan grande como indique un valor, para juegos donde una característica es un dadoDexterity 10 → d10
6d10>=6Cuenta los dados que saquen 6 o más: el valor es el recuento(2, 6, 9, 10, 1, 7) → 4
3d6!Explosivo: una cara máxima tira otro dado(6, 2, 4) + 5 → 17
4dFDados Fate: cada uno −1, 0 o +1(+, 0, −, +) → +1
d100Percentil; d% es lo mismo47
d100t(1)Porcentual con un dado de decenas de bonificación (quédate con la mejor decena); t(-1) un dado de penalización(4 or 7, 3) → 43
d12[Hope]Un dado con nombre: se muestra con su nombre y las cartas de regla pueden leerloHope d12 (9)

Cada cara se guarda en el registro de la tirada, para que la bandeja de dados pueda repetirla y la ficha de tirada pueda mostrarla. Todos los dados se tiran a partir de una semilla: la misma tirada, repetida en el mismo turno, da las mismas caras.

Números y lógica

Aritmética
+ - * / y corchetes: floor((@str - 10) / 2)
Comparaciones
> >= < <= == !=, que da 1 o 0: @hp < 5
Lógica
y, o, no: @cond.blessed > 0 and @nerve >= 3
Opciones
if … then … else …: if @level >= 5 then 2 else 1. Solo se calcula la rama tomada, así que solo se tiran sus dados.
Funciones
floor ceil round abs min max clamp: clamp(@edge + @cond.edge, -1, 1)

Valores que una fórmula puede leer

EscribeQué esDónde
@strEl valor de una característica (por su id)En cualquier sitio
@str.modEl modificador de una característica: su valor cuando no tiene unoEn cualquier sitio
@statLa característica que se tira; @stat.mod su modificadorLa tirada y el objetivo de una prueba
@hpEl valor actual de una pista; @hp.max su máximoEn cualquier sitio
@proficiencyUn valor derivado (por su id)En cualquier sitio
@levelEl nivel del personaje; @xp su xp. En una aptitud fijada a Escala con el nivel de una clase, sus propios usos, coste, efectos y modificadores leen @level como su nivel en esa clase, mientras la tenganEn cualquier sitio
@class.hit_dieLo que dice su clase para un valor (el valor por defecto del sistema cuando no dice nada, calculado como propio de esa clase; si no, 0). Con varias clases, el de cada una se suma: sumado, el más alto o el de su primera clase, según fije el sistemaEn cualquier sitio
@classlevel.wizardSu nivel en una clase (por su id), 0 cuando no la tienenEn cualquier sitio
@classlevelSu nivel en esta clase: 2 * @classlevel crece con cada nivel en ellaLos valores propios de una clase, y los valores por defecto del sistema para las clases
@classfirst1 para la clase que tomaron primero, 0 para cualquier otra: lo que solo recibe la primera claseLos valores propios de una clase, y los valores por defecto del sistema para las clases
@own.hit_dieEl valor propio de esta clase para otro nombre (su dado de golpe), donde @class.hit_die leería el valor sumadoLos valores propios de una clase, y los valores por defecto del sistema para las clases
@classesCuántas clases tienen; @mastered cuántas están en su límiteEn cualquier sitio
@rankEl rango de esta aptitud: 1 cuando se toma por primera vez, uno más cada vez que se vuelve a tomarEl coste propio de una aptitud, sus efectos, usos y modificadores
@rank.toughenedEl rango de una aptitud (por su id), 0 cuando no la conocenEn cualquier sitio
@difficultyEl número tras la palabra que el narrador eligió para una etiqueta (Difícil → 20). Cada etiqueta se puede leer por su id: @edge, @position.La tirada y el objetivo de una prueba
@spend_push1 si el jugador pagó ese gasto antes de la tirada, si no 0La tirada de una prueba
@cond.edgeLo que suman las condiciones de la hoja como ventaja; @cond.mod como bonificador o penalizadorLa tirada de una prueba
@cond.poisonedEl nivel de una condición (0 si no está); @cond.poisoned.left sus turnos restantesEn cualquier sitio
@opp.insight.modLa característica o modificador del oponente, cuando una tirada va dirigida a alguien presente; @opp.tier su nivelLos objetivos opuestos de una prueba
@defenceLa defensa del defensorLa prueba de ataque
@secondUn valor que el golpe lee junto a su característica, por el nombre que le dé el sistema o el arma (Lo que lee cada ataque, Lo que lee su ataque): el segundo dado de una tirada de dos características, o cualquier otro nombre (@accuracy, @weapon_die)La prueba de ataque y el daño
@tierEl nivel del enemigo, de 1 a 6Plantillas de enemigo
@thisLa característica en sí; @linked la característica en la que se apoyaEl modificador de una característica
@group.Hope.highLa cara más alta de un dado con nombre; también .tops (caras más altas), .ones, .successes, .valueResultados y cartas de regla tras una tirada
@totalEl total de la tirada; también @target, @margin (total − objetivo), @measureResultados y cartas de regla tras una tirada
@event.amountEl daño del golpe que activó la cartaCartas de daño
@roll.highEl dado más alto de la tirada de ataque que asestó el golpe; @roll.low su más bajo; @group.First.value un dado con nombre. @roll.high + 5 es una tirada alta, sin dados propiosDaño (armas, aptitudes, enemigos, el del jugador)
@thing.ship.hullUn valor del primer objeto de un tipo del personajeEn cualquier sitio

Cómo se lee una tirada

Una prueba tiene una tirada y una forma de leerla. La lectura convierte los dados en la medida de los tramos de resultado:

LecturaMedidaOpciones
Total frente a un objetivoUn grado: −1 fallo grave, 0 fracaso, 1 éxito, 2 críticoescalones: supera el objetivo en esta cantidad para un crítico, falla por ella para un fallo grave (PF2e: 10). naturales: una cara máxima o mínima en el primer dado fija o desplaza el grado.
Total en tramosEl total en síTramos por rango: 10+, 7-9, 6- (PbtA).
Tirar por debajoUn grado: −1 fallo grave, 0 fracaso, 1 éxito, 2 difícil, 3 extremogrados (fracciones del objetivo), qué cuenta como crítico (un 1, sacar exactamente el objetivo, dobles), qué causa fallo grave, caras que siempre pasan o fallan, niveles de éxito en lugar de grados, o el dado de decenas de la propia tirada (tirar por debajo pero alto: mayor es mejor).
Dado más altoLa mejor cara; varias caras máximas cuentan uno másForged in the Dark.
Contar éxitosEl recuentoParejas de una cara como éxitos extra y un crítico (decenas en un conjunto de d10).

Además de cualquier lectura, una prueba puede comparar dos dados con nombre (Hope contra Fear): el que salga más alto suma una palabra al resultado y a sus propios efectos; dados iguales pueden ser un crítico (o solo si sale una cara alta, como dobles de 6 o más), y dados iguales bajos un fallo (dobles de 1).

Recetas

Ventaja de la quinta edición, con condiciones y agotamiento

(if @edge + clamp(@cond.edge + (if @exhaustion >= 1 then -1 else 0), -1, 1) > 0 then 2d20kh1
 else if @edge + clamp(@cond.edge + (if @exhaustion >= 1 then -1 else 0), -1, 1) < 0 then 2d20kl1
 else d20) + @stat.mod + @cond.mod

La prueba de característica de Classic d20: cualquier número de desventajas y ventajas cuenta una sola vez en cualquier sentido.

Esforzarte para un dado extra

if @stat + @spend_push <= 0 then 2d6kl1 else (@stat + @spend_push)d6

Forged in the Dark: cero puntos tira dos y se queda con el menor; pagar el gasto de «empuje» (2 Estrés) añade un dado.

Hope, Fear, y un d6 si gastas Hope

d12[Hope] + d12[Fear] + @stat + (if @spend_hope > 0 then d6 else 0)

Dos dados de característica: una característica es un dado

d(@stat)[First] + d(if @second_stat == 1 then @dexterity else @insight)[Second] + @cond.mod
lectura:  total contra @difficulty; los dados iguales de 6 o más son un crítico, los dobles de 1 un fallo

ataque: d(@stat)[First] + d(@second)[Second]     reads: { "second": "@might" }

El del compositor dos dados de característica motor: cada característica es un tamaño de dado (d6 a d12), y el segundo dado es la característica que nombra la palabra que elige el juez. Una característica mostrada como dado siempre se lee como uno real: un +1 de equipo deja el d8 en d8, y un +2 lo sube a d10. Una condición que mueve una característica por escalones ya está en @stat: Aturdido, un escalón menos en Perspicacia, tira un d10 de Perspicacia como d8. Ver Las condiciones que mueven una característica. El segundo dado de un golpe es @second, que cada ataque lee como la característica de combate; un bastón cuyas lecturas digan { "second": "willpower" } tira WLP + WLP. Ver Lo que lee su ataque.

Un número que crece con una clase

"values": { "caster": "@classlevel", "kit": "2 * @classlevel", "hp": "5" }

Los valores propios de una clase, en varias clases: un nivel de lanzador, 2 puntos de kit por nivel de clase y +5 puntos de golpe por tenerla. Sumados entre sus clases, un mago 2 / clérigo 3 tiene un nivel de lanzador de 5. Una aptitud heroica condicionada a la maestría se lee @classlevel.sentinel >= 10 o @mastered >= 1. Ver Números entre clases.

Puntos de golpe según el dado de cada clase

"hit_points": "@classfirst * (floor(@own.hit_die / 2) - 1) + @classlevel * (floor(@own.hit_die / 2) + 1)"

El valor por defecto de clase de Classic d20, calculado una vez para cada clase que tengan: el dado completo de la primera clase en su primer nivel, el promedio del dado en cada nivel posterior, y el promedio de una clase posterior desde su primer nivel. Un Guerrero 1 / Mago 1 obtiene 10 + 4. Ver Un valor por defecto calculado por clase.

Porcentual con dados de bonificación y penalización

d100t(@edge)                       lectura: tirar por debajo, objetivo @stat.mod * @difficulty

Una reserva de hambre: algunos dados son peligrosos

(@stat - @hunger)d10>=6 + (@hunger)d10[Hunger]>=6

Cuenta los éxitos de ambos grupos; luego una carta de regla lee @group.Hunger.ones para convertir un fallo con un 1 en un dado de Hambre en algo peor.

Grados de éxito de diez en diez

tirada:  d20 + @stat.mod
lectura:  total frente a @difficulty, escalones de 10, naturales 20 / 1 desplazan el grado

Una mentira opuesta

opposed: { "deception": "10 + @opp.insight.mod" }

Una mentira contada a alguien presente se tira contra su Perspicacia pasiva en lugar de una dificultad.