Para que serve o DefaultClassInfo.txt
O arquivo MuServer\Data\Character\DefaultClassInfo.txt guarda os atributos de referência de cada classe e os valores usados no cálculo básico de vida e mana. O GameServer e o GameServerCS carregam essas informações na inicialização. O arquivo original tem 15 linhas de classe, com índices de 0 a 14.
Os atributos iniciais também servem como referência quando comandos de reset de atributos restauram os pontos da classe. Vitalidade e energia de referência entram no cálculo de vida e mana; algumas operações de frutas usam os atributos de referência como limite inferior. Portanto, alterar uma linha pode afetar personagens já existentes quando os valores forem recalculados ou os atributos forem restaurados.
Formato de cada linha
Class Strength Dexterity Vitality Energy Leadership MaxLife MaxMana LevelLife LevelMana VitalityToLife EnergyToMana
Cada linha contém 12 campos, separados por espaços ou tabulações. Os seis primeiros são números inteiros; os campos de vida e mana aceitam valores decimais com ponto, como 1.5. Termine o arquivo com end. A linha iniciada por // é apenas o cabeçalho comentado.
| Campo | Significado |
|---|---|
Class |
Índice interno da classe, de 0 a 14 no arquivo fornecido. Não use o código DBClass do banco de dados aqui. |
Strength |
Força de referência da classe, usada ao restaurar os atributos. |
Dexterity |
Agilidade de referência da classe. |
Vitality |
Vitalidade de referência da classe. Também é subtraída da vitalidade atual ao calcular o ganho adicional de vida. |
Energy |
Energia de referência da classe. Também é subtraída da energia atual ao calcular o ganho adicional de mana. |
Leadership |
Comando de referência da classe. No arquivo original, o Dark Lord (Class 4) começa com 25; as demais linhas usam 0. |
MaxLife |
Vida base usada antes dos acréscimos de nível, vitalidade, equipamentos e outros efeitos. |
MaxMana |
Mana base usada antes dos acréscimos de nível, energia e outros efeitos. |
LevelLife |
Vida adicional por nível acima do nível 1. Também entra no cálculo dos níveis master quando aplicáveis. |
LevelMana |
Mana adicional por nível acima do nível 1. Também entra no cálculo dos níveis master quando aplicáveis. |
VitalityToLife |
Multiplicador do ganho de vida pelos pontos de vitalidade acima da referência, incluindo bônus aplicáveis. |
EnergyToMana |
Multiplicador do ganho de mana pelos pontos de energia acima da referência, incluindo bônus aplicáveis. |
O cálculo básico de vida parte de MaxLife + LevelLife × (Level − 1) + (Vitality − Vitality de referência + bônus) × VitalityToLife. Para mana, a lógica equivalente usa MaxMana, LevelMana, Energy e EnergyToMana. Níveis master e outros sistemas podem acrescentar valores depois; estas expressões servem para entender a função do arquivo, não para prever o valor final exibido em todas as situações.
Índices das classes
Class |
Classe no código | Class |
Classe no código |
|---|---|---|---|
0 |
Dark Wizard | 8 |
Rune Wizard |
1 |
Dark Knight | 9 |
Slayer |
2 |
Fairy Elf | 10 |
Gun Crusher |
3 |
Magic Gladiator | 11 |
Kundun |
4 |
Dark Lord | 12 |
Lemuria |
5 |
Summoner | 13 |
Illusion Knight |
6 |
Rage Fighter | 14 |
Alquimista |
7 |
Grow Lancer |
Essa tabela representa os índices existentes no arquivo e no código do servidor. A presença de uma linha não significa, por si só, que a classe esteja disponível no cliente ou habilitada para criação.
Exemplo do arquivo original
1 28 20 25 10 0 110 20 2.0 0.5 3.0 1.0
Essa é a linha do Dark Knight (Class 1). Seus atributos de referência são 28 força, 20 agilidade, 25 vitalidade e 10 energia. A vida base é 110, com 2.0 de crescimento por nível; a mana base é 20, com 0.5 por nível. Cada ponto de vitalidade acima da referência acrescenta 3.0 à vida básica, antes dos demais ajustes do personagem.
Antes de editar
- Faça uma cópia do arquivo. Mantenha uma linha completa por índice e preserve a ordem dos 12 campos; uma linha incompleta pode interromper a leitura das seguintes.
- Altere apenas a classe desejada. Para balancear vida e mana, revise juntos os valores base, o ganho por nível e os multiplicadores de atributo.
- Recarregue Character → DefaultClassInfo no menu do GameServer e do GameServerCS, ou reinicie os processos em manutenção planejada. O reload atualiza as referências em memória; reconecte o personagem de teste para conferir o recálculo.
- Teste uma classe nova e outra já existente, com e sem pontos adicionais. Se usar comandos de reset de atributos, confira se os valores restaurados continuam corretos.