【汉化】YEP.178 – Skill Mastery Levels


Introduction


Note: If you are using YEP_SkillCore.js and/or YEP_X_SkillCooldowns.js, place this plugin under those in the plugin manager list. This plugin works independent of those plugins, but will work better with them if placed in this specific order.
注意:如果您使用的是YEP_SkillCore.js和/或YEP_X_SkillCooldowns.js,请将此插件放在插件管理器列表中的插件下。

In some RPG’s, using skills over and over will result in some form of skill mastery, effectively increasing the damage output, decreasing the cost of said skills, and/or lowering the cooldown duration of the skills, too. This plugin lets you accomplish such by adding in a Skill Mastery Level mechanic.
在角色扮演游戏中,重复使用技能可以增加技能熟练度,有效地增加伤害输出,降低所述技能的成本,或降低技能的冷却持续时间。此插件允许您通过添加技能熟练度来实现此目的。

The Skill Mastery Level mechanic works like such: when an actor or enemy uses a skill in battle, they gain mastery EXP. Once the mastery EXP reaches a certain threshhold, that skill’s mastery level will increase, giving it the desired mastery effects, of which can be increased damage, decreased skill costs, or decreased cooldown duration. Each of these aspects can be adjusted globally or individually from the formula used for the EXP required per level up to the damage increase, cost alteration, or cooldown durations.
技能熟练度的工作原理如下:当一个角色在战斗中使用技能时,他们获得精通EXP。一旦掌握EXP达到某个阈值,该技能的熟练度将增加,使其具有所需的掌握效果,其中可以增加伤害,降低技能成本或减少冷却持续时间。这些方面中的每一个都可以从用于每级所需的EXP的公式全局或单独调整。


Notetags


To determine the effect the mastery level of a skill has or other various mastery-related properties, use the following notetags for those skills:
要确定技能的熟练度或其他各种熟练度效果,请使用以下注意事项来获得这些技能:

Skill Notetags:

<Max Mastery Level: x>
– Replace ‘x’ with the max mastery level you want a skill to have. If you don’t want the skill to have any mastery level at all, replace it with 0.

  • 将“x”替换为您希望技能拥有的最高精通等级。如果您不希望技能有熟练度,请将其替换为0。

<Mastery Effect: +x Damage Per Level>
<Mastery Effect: +x HP Cost Per Level>
<Mastery Effect: +x MP Cost Per Level>
<Mastery Effect: +x TP Cost Per Level>
<Mastery Effect: +x Cooldown Per Level>
<Mastery Effect: -x Damage Per Level>
<Mastery Effect: -x HP Cost Per Level>
<Mastery Effect: -x MP Cost Per Level>
<Mastery Effect: -x TP Cost Per Level>
<Mastery Effect: -x Cooldown Per Level>
– This will increase or decrease the damage, HP cost, MP cost, TP cost, cooldown turns respectively for the skill depending on its mastery level. Replace ‘x’ with a flat number value of how much you want it to shift per the skill’s mastery level.
– Note: HP Cost requires YEP_SkillCore.js.
– Note: Cooldown requires YEP_X_SkillCooldowns.

  • 这将分别增加或减少技能的伤害,HP成本,MP成本,TP成本和冷却时间,具体取决于其熟练度。将“x”替换为您希望它根据技能的熟练度的增减多少。
  • 注意:HP Cost需要YEP_SkillCore.js。
  • 注意:冷却需要YEP_X_SkillCooldowns。

<Mastery Effect: +x% Damage Per Level>
<Mastery Effect: +x% HP Cost Per Level>
<Mastery Effect: +x% MP Cost Per Level>
<Mastery Effect: +x% TP Cost Per Level>
<Mastery Effect: +x% Cooldown Per Level>
<Mastery Effect: -x% Damage Per Level>
<Mastery Effect: -x% HP Cost Per Level>
<Mastery Effect: -x% MP Cost Per Level>
<Mastery Effect: -x% TP Cost Per Level>
<Mastery Effect: -x% Cooldown Per Level>
– This will increase or decrease the damage, HP cost, MP cost, TP cost, cooldown turns respectively for the skill depending on its mastery level. Replace ‘x’ with a percentile number value of how much you want it to shift per the skill’s mastery level.
– Note: HP Cost requires YEP_SkillCore.js.
– Note: Cooldown requires YEP_X_SkillCooldowns.

  • 这将分别增加或减少技能的伤害,HP成本,MP成本,TP成本和冷却时间,具体取决于其熟练度。将'x'替换为百分数,表示您希望它根据技能的熟练度增减多少百分比。
  • 注意:HP Cost需要YEP_SkillCore.js。
  • 注意:冷却需要YEP_X_SkillCooldowns。

<No Damage Mastery Effect>
<No HP Cost Mastery Effect>
<No MP Cost Mastery Effect>
<No TP Cost Mastery Effect>
<No Cooldown Mastery Effect>
– These notetags will disable their respective mastery effects from the default settings. They will just have their default value with nothing changed about them at all.
– Note: HP Cost requires YEP_SkillCore.js.
– Note: Cooldown requires YEP_X_SkillCooldowns.

  • 这些将从默认设置禁用其各自的熟练效果。他们将只有他们的默认值,根本没有任何改变。
  • 注意:HP Cost需要YEP_SkillCore.js。
  • 注意:冷却需要YEP_X_SkillCooldowns。

<Custom EXP Mastery Formula: x>
– Makes a custom EXP mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom EXP Mastery Formula: level * 20 + 5>

  • 为该技能制作自定义EXP精通公式。将'x'替换为您想要使用的所需公式。

<Custom Damage Mastery Formula: x>
– Makes a custom damage mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom Damage Mastery Formula: value(1.00 + (level * 0.20))>

  • 为技能制作自定义伤害公式。将'x'替换为您想要使用的所需公式。

<Custom HP Cost Mastery Formula: x>
– Makes a custom HP cost mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom HP Cost Mastery Formula: cost(1.00 – (level * 0.05))>
– Note: HP Cost requires YEP_SkillCore.js.

  • 为该技能制定自定义HP消耗公式。将'x'替换为您想要使用的所需公式。

<Custom MP Cost Mastery Formula: x>
– Makes a custom MP cost mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom MP Cost Mastery Formula: cost(1.00 – (level * 0.05))>

  • 为技能制定自定义MP消耗公式。将'x'替换为您想要使用的所需公式。

<Custom TP Cost Mastery Formula: x>
– Makes a custom TP cost mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom TP Cost Mastery Formula: cost(1.00 – (level * 0.05))>

  • 为该技能制定自定义TP消耗公式。将'x'替换为您想要使用的所需公式。

<Custom Cooldown Mastery Formula: x>
– Makes a custom cooldown mastery formula for the skill. Replace ‘x’ with the desired formula you wish to use for it.
– Example: <Custom Cooldown Mastery Formula: turns – (level * 1.5)>

  • 为技能制定自定义冷却公式。将'x'替换为您想要使用的所需公式。

Actor and Enemy Notetags:

<Starting Skill Masteries>
list
list
list
</Starting Skill Masteries>
– If you want actors and/or enemies to have initial starting skill mastery levels, use the above notetag. This will only apply for actors when starting a new game or initializing them. Replace ‘list’ with one of the following setups:
-如果你想要的角色或敌人有初始熟练度,使用上述notetag。这仅适用于开始新游戏或初始化游戏时的角色。将“list”替换为以下设置之一
Skill x: level
Skill x: level, exp
name: level
name: level, exp
– Replace ‘x’ with the ID of the skill you wish to alter the starting mastery level of. Alternatively, you can replace ‘Skill x’ with the skill ‘name’. If multiple skills have the same name in the database, this will apply to the first skill entry with that name.

  • 将“x”替换为您希望改变其起始熟练度的技能的ID。或者,您可以将“技能x”替换为技能“名称”。如果多个技能在数据库中具有相同的名称,则这将适用于具有该名称的第一个技能条目。
    – Replace ‘level’ with the level you wish to start it off as. This cannot go under 0 nor go above the maximum level of the skill.
  • 将“级别”替换为您希望将其启动的级别。这不能低于0,也不能高于技能的最高等级。
    – If used, replace ‘exp’ with the amount of EXP it will currently have at the start. This cannot be greater than or equal to the maximum value for the skill mastery level’s EXP. If not used, it will default to 0.
  • 如果使用,请将'exp'替换为开始时当前具有的EXP量。这不能大于或等于技能掌握等级EXP的最大值。如果未使用,则默认为0。

例:

Example:

<Starting Skill Masteries>
Skill 5: 2
Skill 6: 3, 4
Firaga: 7
Firaja: 8, 10
</Starting Skill Masteries>
– In the above example, the actor/enemy will have Skill 5 and 6 starting at levels 2 and 3 respectively. However, Skill 6 will also have some skill EXP starting at 4. The actor/enemy’s ‘Firaga’ and ‘Firaja’ skills will start at levels 7 and 8 respectively while ‘Firaja’ will have 10 skill EXP at the very start.

  • 在上面的例子中,角色或敌人将从开始获得技能5和6的熟练度分别为2和3。然而,技能6也将从4开始有一些技能EXP。'Firaga'和'Firaja'技能将分别从7级和8级开始,而'Firaja'将在一开始就有10点技能EXP。

Script Calls


For those with JavaScript experience, you can use the following script calls reference or alter skill mastery levels to your liking:
对于具有JavaScript经验的人,您可以根据自己的喜好使用以下脚本调用引用或更改技能掌握程度:

Script Calls:

battler.skillMasteryLevel(skillId)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose mastery level you wish to acquire. This will return the mastery level of that skill.

battler.setSkillMasteryLevel(skillId, level)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose mastery level you wish to alter. Replace ‘level’ with the level of the skill you wish to set it to. This will not allow the skill mastery level to go below 0 or above its max level and the number of uses will be set to 0 for that level.

battler.gainSkillMasteryLevel(skillId, value)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose mastery level you wish to increase. Replace ‘value’ with the amount of levels to increase (or decrease) the skill’s current mastery level by.

battler.skillMasteryUses(skillId)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose current mastery usage amount you wish to acquire the value of. This will return the current mastery usage amount of that skill.

battler.setSkillMasteryUses(skillId, value)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose current mastery usage amount to be changed. Replace ‘value’ with the amount to set the amount to. If the usage amount exceeds the need to reach the next level, the skill automatically update to the next mastery level and set the mastery usage amount to 0.

battler.gainSkillMasteryUses(skillId, value)
– ‘battler’ is a variable that represents an actor/enemy. Replace ‘skillId’ with the ID of the skill whose current mastery usage amount to be changed. Replace ‘value’ with the amount to increase/decrease. If the usage amount exceeds the need to reach the next level, the skill automatically update to the next mastery level and set the mastery usage amount to 0.


Lunatic Mode – Requires YEP_SkillCore.js


There are no specific Skill Mastery Levels lunatic notetags, but this part of the help file will serve as a means to answer potential questions that people may have about how to add special effects based on a battler’s mastery level.

These examples require YEP_SkillCore.js as they use the Skill Core’s lunatic notetags to produce special effects.

YEP_SkillCore.js Skill Notetag Examples:

<After Eval>
if (user.skillMasteryLevel(item.id) >= 5) {
target.addState(10);
target.removeState(9);
}
<After Eval>

The above code will make a check to see if the user’s current mastery level of the skill is greater than or equal to 5. If it is, then state 10 in the database will also be applied to the target. However, state 9 will then be removed from the target.

<After Eval>
if (user.skillMasteryLevel(item.id) >= 2) {
user.addBuff(3, 5);
user.addDebuff(5, 8);
}
<After Eval>

The above code will make a check to see if the user’s current mastery level of the skill is greater than or equal to 2. If it is, then the user will gain a DEF buff for 5 turns. However, the user will then suffer a debuff for MDF for 8 turns.

For reference on what the parameter ID’s are:

0 = MaxHP
1 = MaxMP
2 = ATK
3 = DEF
4 = MAT
5 = MDF
6 = AGI
7 = LUK

<After Eval>
if (user.skillMasteryLevel(item.id) >= 3) {
$gameTemp.reserveCommonEvent(5)
}
<After Eval>

The above code will make a check to see if the user’s current mastery level of the skill is greater than or equal to 3. If it is, common event 5 will be reserved and ran once applicable.

There are more possibilities with the way lunatic code can be used than just these examples listed here. For some ideas, be sure to check out the Tips & Tricks.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 205,236评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,867评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,715评论 0 340
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,899评论 1 278
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,895评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,733评论 1 283
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,085评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,722评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,025评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,696评论 2 323
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,816评论 1 333
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,447评论 4 322
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,057评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,009评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,254评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,204评论 2 352
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,561评论 2 343