Skip to content

Commit

Permalink
Merge pull request #63 from burobrasil/gm/dynamic-races
Browse files Browse the repository at this point in the history
Raças e Classes dinâmicas
  • Loading branch information
jmonteiro authored Sep 27, 2024
2 parents 0565270 + 00d85d3 commit b033b12
Show file tree
Hide file tree
Showing 100 changed files with 2,434 additions and 293 deletions.
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,15 +6,15 @@ Sistema do Old Dragon 2a Edição para FoundryVTT.

## Recursos

- **Criação Personalizada:** Jogadores podem criar Personagens, Monstros & Inimigos e Itens (incluindo Armas, Armaduras, Escudos, Itens Gerais, Recipientes & Vasilhames, Montarias & Transportes) de forma personalizada;
- **Criação Personalizada:** Jogadores podem criar Personagens, Monstros & Inimigos, Raças, Classes e Itens (incluindo Armas, Armaduras, Escudos, Itens Gerais, Recipientes & Vasilhames, Montarias & Transportes) de forma personalizada;
- **Cálculo Automático de Modificadores:** O módulo calcula automaticamente os modificadores de atributos, otimizando o processo de criação e evolução de personagens;
- **Cálculo Automático de Movimento:** O módulo calcula automaticamente as variações de movimento (Correr, Nadar e Escalar) baseado no valor do movimento atual;
- **Cálculo Automático de Carga:** O módulo calcula automaticamente a Carga Máxima e a Carga Atual do personagem. A Carga Máxima é representada pelo maior valor entre os atributos de Força e Constituição, além de bônus provenientes de equipamentos como a Mochila. A Carga Atual leva em consideração a soma da carga de todos os itens que personagem possui. (O peso das moedas ainda não está sendo incluído).
- **Raças e Classes Dinâmicas:** Ao vincular uma Raça e Classe ao personagem, o módulo insere e calcula automaticamente os dados de movimento, experiência para o próximo nível, Base de Ataque (BA) e Jogadas de Proteção (JPD/JPC/JPS). Além disso, as Habilidades de Raça e Habilidades de Classe são exibidas dinâmicamente, de acordo com o nível atual do personagem.
- **Cálculo Automático de Carga:** O módulo calcula automaticamente a Carga Máxima e a Carga Atual do personagem. A Carga Máxima é representada pelo maior valor entre os atributos de Força e Constituição, além de bônus provenientes de equipamentos como a Mochila. A Carga Atual leva em consideração a soma da carga de todos os itens que personagem possui, incluindo moedas.
- **Rolagens de Dados Aprimoradas para Personagens:** Inclui rolagens para Atributos, Jogadas de Proteção (JPD/JPC/JPS), Ataques (BAC/BAD), Dano e Chance de Nocaute com opções de Ajuste de Teste e Modificador Opcional;
- **Rolagens de Dados Aprimoradas para Monstros & Inimigos:** Inclui rolagens para Jogada de Proteção (JP), Moral (MO), Dados de Vida/Pontos de Vida (DV/PV), Ataque (BA) e Dano com opções de Ajuste de Teste e Modificador Opcional;
- **Gerenciamento de Magias e Equipamentos:** Permite adicionar, editar, mover, remover e lançar magias, bem como gerenciar equipamentos. Alterações em itens refletem dinamicamente no Peso Total, Valor Total e Carga Atual/Máxima do personagem;
- **Equipar/Desequipar itens**: Permite equipar/desequipar Armas, Armaduras, Escudos, Recipientes & Vasilhames. Armas equipadas são exibidas na aba "Ataques". Ao equipar uma Armadura ou Escudo, os bônus de CA são adicionados automaticamente à Classe de Armadura do personagem. Ao equipar uma Mochila, o valor da Carga Máxima permitida é atualizado automaticamente.
- **Compêndio SRD**: O módulo inclui gratuitamente o compêndio "SRD". Esta coleção concisa e compacta inclui Equipamentos, Magias, Monstros & Inimigos, Tabelas de Rolagem, Personagens Prontos, além do SRD (Documento de Referência) em si, o que possibilita consultar regras e instruções sem a necessidade de sair do aplicativo.
- **Compêndio SRD**: O módulo inclui gratuitamente o compêndio "SRD". Esta coleção concisa e compacta inclui Raças, Classes, Equipamentos, Magias, Monstros & Inimigos, Tabelas de Rolagem, Personagens Prontos, além do SRD (Documento de Referência) em si, o que possibilita consultar regras e instruções sem a necessidade de sair do aplicativo.
- **Iniciativa (Combat Encounter)**: O módulo utiliza a regra de iniciativa alternativa "Iniciativa Individual", presente no LB2 (pág. 88). Ao adicionar Personagens e Monstros & Inimigos a um Encontro, utilizando o _Combat Encounter_, ao clicar em "Rolar Iniciativa" será lançado 1d12 para cada participante do combate. Os personagens com os resultados mais altos agem primeiro. Por tanto, a ordem das ações será: Maior resultado > 2º maior resultado > 3º maior resultado.

O restante da ficha deve ser preenchida e gerenciada manualmente. Mais abaixo você encontra uma lista de pendências com o que planejamos implementar no futuro.
Expand Down
Binary file added src/assets/compendium-banner/classes.webp
Binary file not shown.
Binary file added src/assets/compendium-banner/races.webp
Binary file not shown.
109 changes: 96 additions & 13 deletions src/lang/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@
"TYPES.Item.container": "Recipiente/Vasilhame",
"TYPES.Item.vehicle": "Montaria/Transporte",
"TYPES.Item.spell": "Magia",
"TYPES.Item.race": "Raça",
"TYPES.Item.race_ability": "Habilidade de Raça",
"TYPES.Item.class": "Classe",
"TYPES.Item.class_ability": "Habilidade de Classe",
"TYPES.Item.monster_attack": "Ataque de Monstro",

"olddragon2e": {
Expand Down Expand Up @@ -80,6 +84,7 @@
"bad_roll": "Rolar ataque à distância",
"jp": "Jogada de Proteção",
"jp_short": "JP",
"jp_selector": "Bônus na Jogada de Proteção",
"jp_long": "JP | Jogada de Proteção",
"jpd": "Jogada de Proteção de Destreza",
"jpd_short": "JPD",
Expand All @@ -94,15 +99,14 @@
"mv_swim": "Nadar",
"mv_fly": "Voar",
"race": "Raça",
"races": {
"humano": "Humano",
"elfo": "Elfo",
"anao": "Anão",
"halfling": "Halfling",
"meio_elfo": "Meio-Elfo",
"gnomo": "Gnomo"
},
"race_skills": "Habilidades de Raça",
"race_flavor": "Apresentação",
"race_description": "Descrição",
"race_ability_description": "Descrição",
"race_ability_xp": "% de Bônus na Experiência Ganha",
"race_ability_jp": "Disponibilidade de Bônus na Jogada de Proteção",
"race_ability_bonus_damage_archery": "Bônus no Dano com Arco",
"race_ability_rogue_talent": "Bônus no Talento de Ladrão",
"race_abilities": "Habilidades de Raça",
"infravision": "Infravisão",
"class": "Classe",
"classes": {
Expand All @@ -127,15 +131,71 @@
"bruxo": "Bruxo",
"elfo_aventureiro": "Elfo Aventureiro"
},
"class_skills": "Habilidades de Classe",
"class_flavor": "Apresentação",
"class_description": "Descrição",
"class_ability_description": "Descrição",
"class_ability_level3_description": "Descrição - 3º Nível",
"class_ability_level6_description": "Descrição - 6º Nível",
"class_ability_level10_description": "Descrição - 10º Nível",
"class_ability": {
"equipment_restrictions": {
"weapons": "Armas",
"armors": "Armaduras",
"magic_items": "Itens Mágicos"
},
"race_restrictions": "Restrições de Raça",
"on_level": {
"3": "3",
"6": "6",
"10": "10"
},
"daily_uses": "Usos diários",
"hp": "Pontos de Vida",
"high_level_hp_bonus": "Bônus de PV em níveis altos",
"restrictions": "Restrições",
"alignments": "Alinhamentos",
"races": "Raças",
"levels": "Níveis",
"ba": "Base de Ataque",
"jp": "Jogada de Proteção",
"xp": "Experiência"
},
"class_abilities": "Habilidades de Classe",
"rogue_talents": "Talentos de Ladrão",
"armadilha": "Armadilha",
"arrombar": "Arrombar",
"cultura": "Cultura",
"decifrar": "Decifrar",
"disfarce": "Disfarce",
"escalar": "Escalar",
"furtividade": "Furtividade",
"percepcao": "Percepção",
"punga": "Punga",
"rastrear": "Rastrear",
"senso_de_perigo": "Senso de Perigo",
"veneno": "Veneno",
"skills": "Habilidades",
"details": "Detalhes",
"alignment": "Alinhamento",
"alignment_tendency": "Tendência de Alinhamento",
"alignment_tendencies": {
"ordeiro": "Ordeiro",
"neutro": "Neutro",
"caotico": "Caótico"
},
"ordeiro": "Ordeiro",
"neutro": "Neutro",
"caotico": "Caótico",
"languages": "Idiomas",
"reputation": "Reputação",
"reputation_levels": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5"
},
"appearance": "Aparência",
"personality": "Personalidade",
"background": "Histórico",
Expand All @@ -159,7 +219,7 @@
"load": "Carga",
"load_current": "Atual",
"load_max": "Máx.",
"flavor": "Descrição",
"flavor": "Apresentação",
"concept": "Conceito",
"concepts": {
"humanoide": "Humanoide",
Expand All @@ -185,6 +245,7 @@
},
"habitat": "Habitat",
"habitats": {
"qualquer": "Qualquer",
"planicies": "Planícies",
"colinas": "Colinas",
"montanhas": "Montanhas",
Expand Down Expand Up @@ -284,6 +345,7 @@
"create_container": "Criar novo recipiente/vasilhame",
"create_vehicle": "Criar nova montaria/transporte",
"create_spell": "Criar nova magia",
"create_monster_attack": "Criar novo ataque de monstro",
"open": "Abrir",
"show": "Visualizar",
"cast": "Lançar",
Expand Down Expand Up @@ -316,19 +378,40 @@
"navigation": {
"character": {
"attacks_tab": "Ataques",
"skills_tab": "Habilidades Raça/Classe",
"race_tab": "Raça",
"class_tab": "Classe",
"spells_tab": "Magias",
"equipment_tab": "Equipamentos",
"details_tab": "Detalhes"
},
"monster": {
"attacks_tab": "Ataques",
"info_tab": "Informações"
},
"race": {
"about_tab": "Sobre",
"features_tab": "Características",
"abilities_tab": "Habilidades de Raça"
},
"race_ability": {
"about_tab": "Sobre",
"mechanics_tab": "Mecânicas"
},
"class": {
"about_tab": "Sobre",
"features_tab": "Características",
"abilities_tab": "Habilidades de Classe"
},
"class_ability": {
"about_tab": "Sobre",
"mechanics_tab": "Mecânicas"
}
},
"success": "Sucesso",
"failure": "Falha",
"import": "Importar",
"cancel": "Cancelar"
"cancel": "Cancelar",
"none": "Nenhum",
"null": ""
}
}
109 changes: 96 additions & 13 deletions src/lang/pt-BR.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,10 @@
"TYPES.Item.container": "Recipiente/Vasilhame",
"TYPES.Item.vehicle": "Montaria/Transporte",
"TYPES.Item.spell": "Magia",
"TYPES.Item.race": "Raça",
"TYPES.Item.race_ability": "Habilidade de Raça",
"TYPES.Item.class": "Classe",
"TYPES.Item.class_ability": "Habilidade de Classe",
"TYPES.Item.monster_attack": "Ataque de Monstro",

"olddragon2e": {
Expand Down Expand Up @@ -80,6 +84,7 @@
"bad_roll": "Rolar ataque à distância",
"jp": "Jogada de Proteção",
"jp_short": "JP",
"jp_selector": "Bônus na Jogada de Proteção",
"jp_long": "JP | Jogada de Proteção",
"jpd": "Jogada de Proteção de Destreza",
"jpd_short": "JPD",
Expand All @@ -94,15 +99,14 @@
"mv_swim": "Nadar",
"mv_fly": "Voar",
"race": "Raça",
"races": {
"humano": "Humano",
"elfo": "Elfo",
"anao": "Anão",
"halfling": "Halfling",
"meio_elfo": "Meio-Elfo",
"gnomo": "Gnomo"
},
"race_skills": "Habilidades de Raça",
"race_flavor": "Apresentação",
"race_description": "Descrição",
"race_ability_description": "Descrição",
"race_ability_xp": "% de Bônus na Experiência Ganha",
"race_ability_jp": "Disponibilidade de Bônus na Jogada de Proteção",
"race_ability_bonus_damage_archery": "Bônus no Dano com Arco",
"race_ability_rogue_talent": "Bônus no Talento de Ladrão",
"race_abilities": "Habilidades de Raça",
"infravision": "Infravisão",
"class": "Classe",
"classes": {
Expand All @@ -127,15 +131,71 @@
"bruxo": "Bruxo",
"elfo_aventureiro": "Elfo Aventureiro"
},
"class_skills": "Habilidades de Classe",
"class_flavor": "Apresentação",
"class_description": "Descrição",
"class_ability_description": "Descrição",
"class_ability_level3_description": "Descrição - 3º Nível",
"class_ability_level6_description": "Descrição - 6º Nível",
"class_ability_level10_description": "Descrição - 10º Nível",
"class_ability": {
"equipment_restrictions": {
"weapons": "Armas",
"armors": "Armaduras",
"magic_items": "Itens Mágicos"
},
"race_restrictions": "Restrições de Raça",
"on_level": {
"3": "3",
"6": "6",
"10": "10"
},
"daily_uses": "Usos diários",
"hp": "Pontos de Vida",
"high_level_hp_bonus": "Bônus de PV em níveis altos",
"restrictions": "Restrições",
"alignments": "Alinhamentos",
"races": "Raças",
"levels": "Níveis",
"ba": "Base de Ataque",
"jp": "Jogada de Proteção",
"xp": "Experiência"
},
"class_abilities": "Habilidades de Classe",
"rogue_talents": "Talentos de Ladrão",
"armadilha": "Armadilha",
"arrombar": "Arrombar",
"cultura": "Cultura",
"decifrar": "Decifrar",
"disfarce": "Disfarce",
"escalar": "Escalar",
"furtividade": "Furtividade",
"percepcao": "Percepção",
"punga": "Punga",
"rastrear": "Rastrear",
"senso_de_perigo": "Senso de Perigo",
"veneno": "Veneno",
"skills": "Habilidades",
"details": "Detalhes",
"alignment": "Alinhamento",
"alignment_tendency": "Tendência de Alinhamento",
"alignment_tendencies": {
"ordeiro": "Ordeiro",
"neutro": "Neutro",
"caotico": "Caótico"
},
"ordeiro": "Ordeiro",
"neutro": "Neutro",
"caotico": "Caótico",
"languages": "Idiomas",
"reputation": "Reputação",
"reputation_levels": {
"0": "0",
"1": "1",
"2": "2",
"3": "3",
"4": "4",
"5": "5"
},
"appearance": "Aparência",
"personality": "Personalidade",
"background": "Histórico",
Expand All @@ -159,7 +219,7 @@
"load": "Carga",
"load_current": "Atual",
"load_max": "Máx.",
"flavor": "Descrição",
"flavor": "Apresentação",
"concept": "Conceito",
"concepts": {
"humanoide": "Humanoide",
Expand All @@ -185,6 +245,7 @@
},
"habitat": "Habitat",
"habitats": {
"qualquer": "Qualquer",
"planicies": "Planícies",
"colinas": "Colinas",
"montanhas": "Montanhas",
Expand Down Expand Up @@ -284,6 +345,7 @@
"create_container": "Criar novo recipiente/vasilhame",
"create_vehicle": "Criar nova montaria/transporte",
"create_spell": "Criar nova magia",
"create_monster_attack": "Criar novo ataque de monstro",
"open": "Abrir",
"show": "Visualizar",
"cast": "Lançar",
Expand Down Expand Up @@ -316,19 +378,40 @@
"navigation": {
"character": {
"attacks_tab": "Ataques",
"skills_tab": "Habilidades Raça/Classe",
"race_tab": "Raça",
"class_tab": "Classe",
"spells_tab": "Magias",
"equipment_tab": "Equipamentos",
"details_tab": "Detalhes"
},
"monster": {
"attacks_tab": "Ataques",
"info_tab": "Informações"
},
"race": {
"about_tab": "Sobre",
"features_tab": "Características",
"abilities_tab": "Habilidades de Raça"
},
"race_ability": {
"about_tab": "Sobre",
"mechanics_tab": "Mecânicas"
},
"class": {
"about_tab": "Sobre",
"features_tab": "Características",
"abilities_tab": "Habilidades de Classe"
},
"class_ability": {
"about_tab": "Sobre",
"mechanics_tab": "Mecânicas"
}
},
"success": "Sucesso",
"failure": "Falha",
"import": "Importar",
"cancel": "Cancelar"
"cancel": "Cancelar",
"none": "Nenhum",
"null": ""
}
}
2 changes: 2 additions & 0 deletions src/module/OD2Item.js
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,8 @@ export default class OD2Item extends Item {
container: 'systems/olddragon2e/templates/partials/cards/container-card.hbs',
vehicle: 'systems/olddragon2e/templates/partials/cards/vehicle-card.hbs',
spell: 'systems/olddragon2e/templates/chat/spell-chat.hbs',
race_ability: 'systems/olddragon2e/templates/partials/cards/race_ability-card.hbs',
class_ability: 'systems/olddragon2e/templates/partials/cards/class_ability-card.hbs',
monster_attack: 'systems/olddragon2e/templates/partials/cards/monster_attack-card.hbs',
};

Expand Down
Loading

0 comments on commit b033b12

Please sign in to comment.