Difference between revisions of "User:AVS/Secondary skill format"
From VCMI Project Wiki
< User:AVS
(→Questions) |
(→Questions) |
||
(One intermediate revision by the same user not shown) | |||
Line 1: | Line 1: | ||
= Questions = | = Questions = | ||
− | |||
* Should default values (with no skill level) be configured too? | * Should default values (with no skill level) be configured too? | ||
** {{todo}} Discuss with whole team | ** {{todo}} Discuss with whole team | ||
* Can we avoid limitation of "at most one bonus if each type per skill level"? Current selector code for extract bonus from previous level: | * Can we avoid limitation of "at most one bonus if each type per skill level"? Current selector code for extract bonus from previous level: | ||
− | |||
:*<syntaxhighlight lang="cpp"> | :*<syntaxhighlight lang="cpp"> | ||
Selector::type(type).And(Selector::sourceType(Bonus::SECONDARY_SKILL)) | Selector::type(type).And(Selector::sourceType(Bonus::SECONDARY_SKILL)) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
+ | * Should commander skills be unified with hero skills? | ||
+ | |||
+ | * Should this be a part of HeroClass handler or separate handler? | ||
= Format = | = Format = |
Latest revision as of 10:16, 30 January 2014
Questions
- Should default values (with no skill level) be configured too?
- [Todo] Discuss with whole team
- Can we avoid limitation of "at most one bonus if each type per skill level"? Current selector code for extract bonus from previous level:
Selector::type(type).And(Selector::sourceType(Bonus::SECONDARY_SKILL))
- Should commander skills be unified with hero skills?
- Should this be a part of HeroClass handler or separate handler?
Format
Skill format
{
"skillName":
{
//required for H3 skills, not allowed in mods (even if mod is overriding original skill) | number
//numeric id
"id": 42,
//required | string
//translatable name
"name": "Skill Name",
//optional | default = false| boolean
//this skill cant be learned in usual way, overrides chance to get
"special": true,
//optional| default 0| chance to learn by default for any Hero Class from any mod
"defaultChance": 3,
//optional | no default | string-numeric dictionary as json object
//class-specific chance (reveresed version of Hero Class attribute)
"chances":
{
"core:hero.cleric": 5
}
//required | object
"levels":{
"basic": { [Skill level format]},
"advanced": { [Skill level format]},
"expert": { [Skill level format]}
}
}
}
Skill level format
{
//optional| default auto-generated| string
//translatable name
"name": "Basic nothing",
//optional |no default| string-bonus dictionary as JSON object
//there are skills handled only by skill level
//and there might be skill that give bonus only on high level
// (allows overriding by name)
// !!! At most one bonus of each type
"bonuses":
{
"firstBonus":{[bonus format]},
"secondBonus":{[bonus format]}
}
},