Lista canônica de atributos do jogo (HP, ATK, DEF...) que outras páginas referenciam.

attributeDefinitions#

Define os atributos do jogo numa lista única que vira fonte da verdade pra todas as outras páginas que mexem com stats.

Por que importa#

Sem este addon, cada página de personagem inventa seus próprios stats — e em 6 meses você tem 4 versões de "ataque" (atk, attack, dmg, Attack). Aqui você define uma vez que existe hp, atk, def, e tudo no projeto referencia essas chaves.

Onde costuma viver#

  • Página de tipo 🎯 Atributos. Esse é o caminho mais comum.
  • Páginas em branco (criadas manualmente) também aceitam o addon.

Geralmente você tem uma só página de atributos no projeto inteiro. Múltiplos perfis (combate, social, mágico) também são possíveis se você precisar separar conjuntos.

Schema#

CampoTipoPadrãoDescrição
idSimstringID interno do addon (auto-gerado).
nameSimstringNome amigável do addon (default: Definições de Atributos).
attributesSimAttributeDefinitionEntry[]Lista de atributos. Cada entry é um stat.

AttributeDefinitionEntry#

CampoTipoPadrãoDescrição
idSimstringID interno da entry.
keySimstringChave técnica em snake_case (ex.: hp, max_mana). É essa chave que outras páginas referenciam.
labelSimstringNome amigável que aparece na UI (ex.: HP, Mana Máxima).
valueTypeSim"int" | "float" | "percent" | "boolean"Tipo do valor. Define o tipo de input no painel e a normalização.
defaultValueSimnumber | booleanValor padrão quando um perfil não sobrescreve.
minnumberValor mínimo aceitável (opcional). Útil pra HP que nunca pode ser negativo.
maxnumberValor máximo (opcional). Útil pra %s entre 0–100.
unitstringSufixo visual (ex.: s pra segundos, % pra porcento). Não afeta o valor exportado.

Exemplo#

Um perfil clássico de RPG:

{
  "id": "attr-defs-1",
  "name": "Atributos Base",
  "attributes": [
    { "id": "1", "key": "hp",  "label": "HP",  "valueType": "int", "defaultValue": 100, "min": 0 },
    { "id": "2", "key": "atk", "label": "ATK", "valueType": "int", "defaultValue": 10,  "min": 0 },
    { "id": "3", "key": "def", "label": "DEF", "valueType": "int", "defaultValue": 5,   "min": 0 },
    { "id": "4", "key": "spd", "label": "SPD", "valueType": "int", "defaultValue": 5,   "min": 0 }
  ]
}

Quem aponta pra este addon#

Quase todos os addons "atribute-aware" referenciam um attributeDefinitions via campo definitionsRef:

  • attributeProfile.definitionsRef — define quais keys o perfil pode preencher
  • attributeModifiers.definitionsRef — define quais keys o modifier pode alterar
  • progressionTable (quando usado pra escalar atributos) — referencia indiretamente
  • skills.SkillCost.definitionsRef (quando o custo é tipo attribute) — qual perfil define a key

Wizard#

A page type 🎯 Atributos cria este addon pré-populado com 4 atributos comuns (HP, ATK, DEF, SPD). Você pode aceitar, remover ou adicionar outros no momento da criação via slot picker. Personalizações:

  • Slots padrão: checkboxes pra ligar/desligar HP/ATK/DEF/SPD
  • Slots customizados: até N campos extras com key + label + valueType

Tudo isso vira a attributes[] da entry final.

Veja também#