Configuração de habilidades
Os custos das habilidades, quais raças podem aprender cada habilidade e qual mestre ensina o quê ficam em um único arquivo, config/dragonminez/skills.json. O ajuste das técnicas (experiência, recargas, tempos de conjuração, tamanhos dos ataques de ki e destruição do terreno) fica ao lado dele, em config/dragonminez/techniques.json. Esta página documenta os dois arquivos.
Os esquemas deles são definidos em SkillsConfig.java e TechniqueConfig.java. Para ver o que cada habilidade e técnica faz no jogo, veja Habilidades e Técnicas.
Estrutura principal do skills.json
| Chave | Padrão | O que faz |
|---|---|---|
configVersion |
Um texto de versão | Versão interna do esquema. Não a edite à mão (veja Como usar JSON). |
kiSkills |
Lista de ids | Nomes das técnicas de ataque de ki (por exemplo kamehameha, final_flash).
|
strikeSkills |
Lista de ids | Nomes das técnicas de ataque de golpe (por exemplo meteor, dragon_fist).
|
evasionSkills |
taiyoken, rage_scream, afterimage, sleep_recovery, dimensional_teleport |
Nomes das técnicas de evasão. |
formSkills |
superforms, legendaryforms, godforms, androidforms |
Os nomes das habilidades de níveis de transformação. |
stackSkills |
kaioken, ultimate |
Os nomes das habilidades de formas acumuláveis. |
androidBlacklistedForms |
superforms, legendaryforms |
Nomes das habilidades de formas que os Androids não podem aprender. |
skills |
Veja abaixo | Um mapa de nome de habilidade para { costs, allowedRaces }.
|
skillOfferings |
Veja abaixo | Um mapa de nome de mestre para uma lista de nomes de habilidades. |
Não existe um skill-offerings.json separado: o skillOfferings fica dentro do skills.json, junto com skills.
kiSkills, strikeSkills, evasionSkills, formSkills, stackSkills, androidBlacklistedForms) descrevem o que existe no código. Elas são renovadas com os padrões do mod sempre que a configuração é atualizada para uma versão nova, então edições nelas não são mantidas. skills e skillOfferings mantêm suas edições.
Custos e requisitos das habilidades
O mapa skills define o custo de cada nível de uma habilidade e quais raças podem aprendê-la:
"skills": {
"kamehameha": { "costs": [2000], "allowedRaces": [] },
"kaioken": { "costs": [1000, 1500, 2500, 4000, 7500], "allowedRaces": [] },
"potentialunlock": { "costs": [600, 1600, 2400, 3200, 4000, 4800, 5600, 6400, 7200, 8000, -1, 8800, 9600], "allowedRaces": [] }
}
| Campo | O que faz |
|---|---|
costs |
Lista do custo em pontos de treino para subir a cada nível. O índice 0 é o custo do nível 1, e assim por diante. O número de entradas é o nível máximo da habilidade. Uma entrada -1 marca esse nível como não comprável: ele precisa ser concedido de outra forma (por exemplo, o nível 11 de Potencial Liberado pelo Grande Ancião Guru, ou Ultimate pelo Velho Kaioshin).
|
allowedRaces |
Lista das raças que podem aprender esta habilidade. Uma lista vazia (ou "all") significa que qualquer raça pode aprendê-la. Nas técnicas (de ki, de golpe e de evasão), qualquer raça ainda pode aprendê-las com um mestre, mas só as raças da lista podem equipá-las em um slot de técnica. Por padrão, gum_punch, mystic_ball e sleep_recovery estão definidas como ["majin"].
|
As habilidades de formas (superforms, godforms, legendaryforms, androidforms) têm preço por raça em races/<race>/character.json (veja Raças personalizadas).
Custos padrão das habilidades
| Habilidade | Custos por nível (TP) |
|---|---|
jump, sprint, meditation, kisense |
300, 600, 900, 1,200, 1,500, 1,800, 2,100, 2,400, 2,700, 3,000 |
fly |
1,500, 600, 900, 1,200, 1,500, 1,800, 2,100, 2,400, 2,700, 3,000 |
kicontrol |
3,000 |
potentialunlock |
600, 1,600, 2,400, 3,200, 4,000, 4,800, 5,600, 6,400, 7,200, 8,000, -1, 8,800, 9,600 |
kiboost |
2,000, 4,000, 6,000, 8,000 |
kimanipulation, instant_transmission, defense_penetration, healing_reduction, ki_infusion, kiprotection |
600, 1,200, 1,800, 2,200, 2,600, 2,800, 3,000, 3,200, 3,600, 4,000 |
kaioken |
1,000, 1,500, 2,500, 4,000, 7,500 |
ultimate |
-1 (concedido pelo Velho Kaioshin) |
fusion |
25,000, 5,000, 10,000, 15,000, 20,000 |
Cada técnica predefinida tem um único custo (o preço de desbloqueio); veja as tabelas de Ataques de Ki, Ataques de Golpe e Técnicas de evasão.
Quem ensina cada habilidade
O mapa skillOfferings lista as habilidades e técnicas que cada mestre oferece:
"skillOfferings": {
"goku": ["kicontrol", "fly", "instant_transmission", "fusion", "kamehameha", "spiritbomb", "dragon_fist", "super_god_fist", "oozaru_fist"],
"roshi": ["jump", "meditation", "kicontrol", "kamehameha", "afterimage"],
"default": ["kicontrol", "jump"]
}
As chaves são o id do mestre (ou o id de um NPC de missão) que oferece a habilidade. "default" é a lista de reserva usada por qualquer mestre ou NPC sem entrada própria. As compras são verificadas no servidor: você precisa estar a até 10 blocos de um mestre que ofereça a habilidade, sua raça precisa ser permitida (exceto nas técnicas, que qualquer raça pode aprender; veja allowedRaces acima), e um mestre que te recuse por causa da sua índole não vai te ensinar.
Ofertas padrão
| Id do mestre | Mestre | Habilidades oferecidas |
|---|---|---|
roshi |
Mestre Kame | jump, meditation, kicontrol, kamehameha, afterimage
|
goku |
Goku | kicontrol, fly, instant_transmission, fusion, kamehameha, spiritbomb, dragon_fist, super_god_fist, oozaru_fist
|
kingkai |
Rei Kai | kicontrol, kaioken, potentialunlock, kimanipulation, kaioken_attack, spiritbomb
|
vegeta |
Vegeta | kicontrol, defense_penetration, potentialunlock, galick_gun, big_bang, final_flash, final_explosion, fake_moon, deadly_dance_vegetto, spirit_breaking_cannon
|
oldkai |
Velho Kaioshin | kicontrol, ki_infusion, healing_reduction, soul_punisher
|
gohan |
Gohan | kicontrol, kiboost, kiprotection, kisense, masenko, makkanko, kamehameha, ki_barrage
|
piccolo |
Piccolo | potentialunlock, kicontrol, masenko, makkanko, ki_barrage, kienzan, hellzone_grenade
|
krillin |
Kuririn | kicontrol, sprint, kisense, kienzan, kienzan_doble, ki_barrage, taiyoken, afterimage, deadly_dance
|
frieza |
Freeza | kicontrol, fly, jump, sprint, kisense, meditation, potentialunlock, death_beam, emperor_death_beam, supernova, kienzan_doble, deadly_dance, meteor
|
trunks |
Trunks | kicontrol, kiboost, kiprotection, burning_attack, heat_dome, shining_sword_attack, galick_gun, ki_barrage, meteor
|
cell |
Cell | kicontrol, instant_transmission, kimanipulation, ki_infusion, kiprotection, defense_penetration, healing_reduction, kiboost, kamehameha, kienzan, galick_gun, masenko, death_beam, ki_barrage, afterimage, deadly_dance, meteor
|
yamcha |
Yamcha | kicontrol, ki_infusion, wolf_fang, sokidan, kamehameha, ki_barrage
|
baba_earth |
Vovó Uranai | kicontrol, meditation
|
buu |
Majin Boo | assault_rain, gum_punch, mystic_ball, sleep_recovery
|
default |
Qualquer outro mestre ou NPC | kicontrol, jump
|
O que o JSON pode e não pode mudar
- Reajustar habilidades existentes: sim. Altere
costs, restrinja ou amplieallowedRaces, e adicione ou remova uma habilidade ou técnica da listaskillOfferingsde um mestre (por exemplo, para o Mestre Kame ensinar o Disco Destruidor). - Adicionar uma habilidade ou técnica predefinida totalmente nova: não, não só com JSON. Habilidades novas precisam de código Java de verdade e de registro antes que você possa citar o nome delas aqui. O JSON só controla custo, requisitos e oferta das habilidades que já existem no código. Os jogadores ainda podem criar seus próprios ataques de ki no Criador da técnica (veja Técnicas).
techniques.json
O config/dragonminez/techniques.json ajusta as técnicas por tipo: uma entrada para cada tipo de ataque de ki, e uma para cada técnica predefinida de golpe e de evasão. Ele é sincronizado com os clientes e recarregado junto com o resto da configuração.
{
"KiAttacks": {
"wave": { "castTimeTicks": 50, "damageMultiplier": 1.0, "kiCostMultiplier": 1.0, "baseSizeCap": 2.0, "transformedSizeCap": 5.0, "maxDestructionRadius": 12.0, "...": "..." }
},
"StrikeAttacks": {
"dragon_fist": { "cooldownTicks": 320, "damageMultiplier": 1.0, "...": "..." }
},
"EvasionAttacks": {
"taiyoken": { "cooldownTicks": 900, "...": "..." }
}
}
Ataques de Ki
KiAttacks tem uma entrada por tipo de ataque de ki: small_ball, medium_ball, giant_ball, wave, laser, beam, disk, explosion, shield, barrage e area.
| Campo | Padrão | O que faz |
|---|---|---|
minXPCost |
100 |
Custo base em XP de uma melhoria (cresce com a força da técnica e as melhorias já compradas). |
maxXPCost |
-1 |
Limite superior do custo em XP de uma melhoria (-1 significa sem limite).
|
xpCostMultiplier |
1.0 |
Multiplicador dos custos em XP das melhorias; acima de 1, cada melhoria extra fica mais cara. |
xpGainMultiplier |
1.0 |
Multiplicador do XP ganho. |
xpGainPerHit / xpGainPerKill |
1 / 3 |
XP ganho por acerto / por abate. |
kiCostMultiplier |
1.0 |
Multiplicador do custo de ki deste tipo. |
damageMultiplier |
1.0 |
Multiplicador do dano deste tipo. |
destructionMultiplier |
1.0 |
Multiplicador do raio de destruição de blocos deste tipo (0 significa sem dano ao terreno).
|
maxDestructionRadius |
Esfera gigante e Explosão 32; Onda, Raio e Área 12; os outros 6 |
Limite absoluto do raio de destruição (0 ou menos significa sem limite).
|
castTimeTicks |
Esfera pequena e Laser 0; Esfera média e Disco 30; Rajada, Escudo e Área 40; Onda e Raio 50; Esfera gigante e Explosão 60 |
Tempo para carregar até 100%. Esfera pequena e Laser são sempre instantâneos. |
baseSizeCap |
Esfera gigante 15, Explosão 12, Esfera média 4.5, Onda 2, Raio e Disco 1.2, Rajada 1.5, os outros 0 |
Tamanho máximo até o qual o ataque cresce com a Força do Ki na forma base (0 mantém o tamanho próprio da técnica).
|
transformedSizeCap |
Esfera gigante e Explosão 25, Esfera média 7, Onda 5, Raio e Disco 2.3, Rajada 2.5, os outros 0 |
O mesmo, mas transformado ou usando uma forma acumulável como o Kaioken. |
sizePowerFloor / sizePowerCeiling |
100 / 1000000 |
Força do Ki em que um ataque está no próprio tamanho / atinge o limite (o crescimento entre os dois é logarítmico). |
A destruição de blocos também está sujeita às gamerules de destruição com ki (veja Gamerules).
Ataques de golpe
StrikeAttacks tem uma entrada para cada id de técnica de golpe.
| Campo | Padrão | O que faz |
|---|---|---|
cooldownTicks |
Definido por técnica, por exemplo meteor_burst 600, dragon_fist 320, oozaru_fist / mystic_ball 280, super_god_fist / kaioken_attack / spirit_breaking_cannon 240, deadly_dance_vegetto 200, meteor / deadly_dance / shining_sword_attack 160, wolf_fang 140, oozaru_slam 120 |
Recarga da técnica (antes das melhorias). |
castTimeTicks |
0 |
Tempo de conjuração mostrado nos detalhes da técnica (os golpes começam assim que você aperta a tecla). |
damageMultiplier |
1.0 |
Multiplicador do dano da técnica. |
kiCostMultiplier |
1.0 |
Multiplicador do custo de ki. |
minXPCost / maxXPCost / xpCostMultiplier |
100 / -1 / 1.0 |
Custos em XP das melhorias, como nos ataques de ki. |
xpGainMultiplier / xpGainPerHit / xpGainPerKill |
1.0 / 1 / 3 |
Ganhos de XP, como nos ataques de ki. |
Técnicas de evasão
EvasionAttacks tem uma entrada para cada id de técnica de evasão.
| Campo | Padrão | O que faz |
|---|---|---|
cooldownTicks |
Definido por técnica, por exemplo sleep_recovery 1200, taiyoken 900, afterimage 200, rage_scream / dimensional_teleport 80 |
Recarga da técnica (antes das melhorias). |
damageMultiplier |
1.0 |
Multiplicador do dano (Grito de fúria). |
kiCostMultiplier |
1.0 |
Multiplicador do custo de ki. |
minXPCost / maxXPCost / xpCostMultiplier |
100 / -1 / 1.0 |
Custos em XP das melhorias. |
xpGainMultiplier / xpGainPerHit |
1.0 / 2 |
Ganhos de XP (as técnicas de evasão ganham XP cada vez que são usadas). |
Recarregar e validar
- Edite
config/dragonminez/skills.json,techniques.jsonou os dois. - Valide a sintaxe do JSON.
- Execute
/dmzreload config(ou/dmzreload). Os jogadores conectados recebem os novos valores ressincronizados automaticamente. - Confira no jogo o menu de habilidades do mestre que você alterou.