feedback1d WM: cite the client push templates for 野鬃 / 琳琅诗怀雅
The direction rules now rest on client data instead of the skill wording: 野鬃 S2's attack ability carries buff wildmn_s_2[force] of template knockback[dir] (Knockback, _useSourceDirection true, force level -2 when off direction); 琳琅诗怀雅 S3, 山 S3 and 莫斯提马 S3 use knockback[relative] (radial); 圣聆初雪 S1 is KnockBackWithCharacterDirection (no correction). Comments, SIM.md and the test header cite these. The generic kit header notes its text keywords are only a fallback. PLAYING.md explains 野鬃's push direction to players. No behaviour change.
This commit is contained in:
1 parent
d374e537b9
commit
97538091ed
8 files changed
+38
-23
No files matched your search
@@ -1802,10 +1802,12 @@ export class Battle {
|
||||
/**
|
||||
* Push enemy `e` with 力度 `force` (PRTS 推与拉 §推力): the official distance of its 受力等级 (constants.js PUSH_TILES:
|
||||
* a 中力 push moves a weight-1 enemy 1.7 tiles, a weight-2 one 0.44, weight 3 0.12, weight ≥ 4 not at all). Radial
|
||||
* (the default: away from `from`, the pusher's centre — "沿着干员向自身中心点的射线方向") or directional (`dir` = the
|
||||
* pusher's direction {x, y}: 推击手 and the same "往攻击方向" wording (野鬃 S2), "朝部署方向"); a directional push on a
|
||||
* target more than 45° off `dir` or nearer than 0.25 tile becomes radial with 受力等级 −2 ("特殊修正"). `fixed` waives
|
||||
* both corrections (PRTS 圣聆初雪 S1 备注 "不会因角度过大或距离过近而变化方向与力度"); `fixedAngle` only the angle one (PRTS 见行者 S2 备注 "不会因为角度过大
|
||||
* (the default: away from `from`, the pusher's centre — "沿着干员向自身中心点的射线方向"; the client's buff template
|
||||
* knockback[relative]: 琳琅诗怀雅 S3, 山 S3, 莫斯提马 S3) or directional (`dir` = the pusher's direction {x, y}; template
|
||||
* knockback[dir], Knockback {_useSourceDirection: true, _decreaseForceLevelWhenNotInDirection: 2}: 推击手, 野鬃 S2
|
||||
* "往攻击方向"); a directional push on a target more than 45° off `dir` or nearer than 0.25 tile becomes radial with
|
||||
* 受力等级 −2 ("特殊修正"). `fixed` waives both corrections (圣聆初雪 S1 "朝部署方向": KnockBackWithCharacterDirection,
|
||||
* PRTS 备注 "不会因角度过大或距离过近而变化方向与力度"); `fixedAngle` only the angle one (PRTS 见行者 S2 备注 "不会因为角度过大
|
||||
* 而改变推动的方向或削减力度" — the < 0.25 tile rule still applies). `inward` = a radial push towards `from` (薄绿 S2's "拖拽", PRTS 备注 "实际为
|
||||
* 反方向(指向薄绿方向)的推开"), never nearer than PULL_STOP_RADIUS to its centre [ASSUMED: "至面前"]. `effect` = a 特效
|
||||
* push (PRTS 推与拉: one frame less of travel than a 弹道 push — constants.js PUSH_TILES_EFFECT / PUSH_EFFECT_SKILLS).
|
||||
|
||||
@@ -99,8 +99,9 @@ export const PALSY_MAX = 3;
|
||||
* ≥ 0 → all the way to the pull point (必定拉至身前), −1 → PULL_WEAK_SHARE of the starting distance, −2 → PULL_CRAWL
|
||||
* tiles, ≤ −3 → nothing. A pull "至面前" aims at the point PULL_ORIGIN tiles in front of the puller (拉力起点 "干员前方0.5格
|
||||
* 距离处") and stops once the target is within PULL_STOP_RADIUS of the puller's centre (急停 "拖拽者中心半径0.6708").
|
||||
* A directional push (推击手 and the same "往攻击方向" wording — 野鬃 S2 —, 朝部署方向) on a target more than 45° off the
|
||||
* direction or nearer than PUSH_DIRECTIONAL_MIN_DIST becomes radial with 受力等级 −2 (推与拉 "特殊修正").
|
||||
* A directional push (推击手, 野鬃 S2 — the client buff template knockback[dir] —, 朝部署方向) on a target more than 45°
|
||||
* off the direction or nearer than PUSH_DIRECTIONAL_MIN_DIST becomes radial with 受力等级 −2 (推与拉 "特殊修正";
|
||||
* knockback[dir] _decreaseForceLevelWhenNotInDirection 2).
|
||||
* PRTS 推与拉 gives two columns of 理想移动距离: 弹道 (a push carried by a projectile — "温蒂的23技能、阿消的12技能"; equal
|
||||
* to the 游戏数据基础 table above) and 特效 (an effect push, one frame less of travel — "食铁兽的12技能、见行者的12技能"):
|
||||
* PUSH_TILES_EFFECT, used by the skills in PUSH_EFFECT_SKILLS (见行者 S1 护身射击 / S2 惊爆射击, the only 特效 pushers of
|
||||
|
||||
@@ -33,7 +33,10 @@
|
||||
// force→onHit displacement with the official 力度 − 重量 rules (Battle.push / pullToFront): a pull "至面前" when the text says
|
||||
// 拖拽 or for hookmasters, else a push — along the unit's direction when the text says 往攻击方向 (the 推击手 wording, PRTS
|
||||
// 推与拉 方向力) / 朝部署方向 / 向前 / 身前方向 or for 推击手 (directional), otherwise away from the unit (radial); a skill of
|
||||
// constants.js PUSH_EFFECT_SKILLS (见行者 S1) pushes by PRTS 推与拉's 特效 column.
|
||||
// constants.js PUSH_EFFECT_SKILLS (见行者 S1) pushes by PRTS 推与拉's 特效 column. These keywords are only a fallback:
|
||||
// the hand-written kits follow the client's buff templates (knockback[dir] = directional, knockback[relative] = radial),
|
||||
// and the text can mislead — 琳琅诗怀雅 S3's "向前推开" is knockback[relative] (kits/tier3.js). No pool skill pushes
|
||||
// through this path with 向前 / 往攻击方向; the only generic push is 见行者 S1, a 推击手.
|
||||
|
||||
import { normalizeSkill } from '../simdata.js';
|
||||
import { sortEnemyTargets } from '../targeting.js';
|
||||
|
||||
@@ -929,10 +929,13 @@ export default {
|
||||
// ---------------------------------------------------------------------------------------------------------------
|
||||
// 1_19 野鬃 夹枪冲锋: wider range (skill grid), ATK +atk, "攻击会把目标往攻击方向中等力度地推开" (attack@force 1 = 中力) by
|
||||
// the official 力度 − 重量 distance (Battle.push: weight 0 → 2.14 tiles, 1 → 1.7, 2 → 0.44, 3 → 0.12, ≥ 4 → none; user
|
||||
// playtest #6 item 14). "往攻击方向" is the 推击手 wording (阿消 S1 / S2, 温蒂 S1, 食铁兽 S1, 见行者 S1), which PRTS 推与拉
|
||||
// calls 方向力: a push along her direction, radial at 受力等级 −2 for a target > 45° off it or < 0.25 tile away (特殊修正)
|
||||
// — so an enemy she grabs behind her centre (the hand-over after a push freed her block) is not thrown 1.7 tiles
|
||||
// towards the objective (player feedback D2, "往攻击方向相反方向推"; it was a radial push before).
|
||||
// playtest #6 item 14). A directional push (方向力, PRTS 推与拉): the client's S2 attack ability (charpack
|
||||
// char_496_wildmn, anim Skill_2) carries buff wildmn_s_2[force] of template knockback[dir] — buff_template_data:
|
||||
// Knockback {_useSourceDirection: true, _decreaseForceLevelWhenNotInDirection: 2} — i.e. along her deploy direction,
|
||||
// radial at 受力等级 −2 for a target > 45° off it or < 0.25 tile away (特殊修正); the radial pushes are
|
||||
// knockback[relative] (琳琅诗怀雅 S3, 山 S3, 莫斯提马 S3). Her text uses the 推击手 wording "往攻击方向". So an enemy she
|
||||
// grabs behind her centre (the hand-over after a push freed her block) is not thrown 1.7 tiles towards the objective
|
||||
// (player feedback D2, "往攻击方向相反方向推"; it was a radial push before).
|
||||
// 一致向前: after deploying (normal flag 0: first deployment only; elite flag 1: every deployment) every undeployed
|
||||
// 【近卫】 operator of the player costs `value` less DP to deploy (≤ max_stack_cnt per operator until it deploys).
|
||||
// Alternate S1 骑枪刺击 (PASSIVE, ON_DEPLOY): for `duration` s after every deployment ASPD +attack_speed.
|
||||
|
||||
@@ -400,7 +400,8 @@ const KITS = {
|
||||
// S1 仗义疏财 (passive, 2 coins): an attack spends a coin to heal the most injured ally (< 70 % HP) of the 8
|
||||
// surrounding tiles for attack@heal_scale × ATK. S3 千金一掷 (持续时间无限): attacks hit twice, kills give a coin;
|
||||
// closing it spends every coin on random ground enemies of the front range (atk_scale phys + a small push, radial
|
||||
// — PRTS 备注 "推开效果为径向推动" despite the text's 向前; 地面敌方单位, 弹道不可对空).
|
||||
// despite the text's 向前 — PRTS 备注 "推开效果为径向推动"; client charpack char_1033_swire2: the RandomGold ability
|
||||
// (Skill_3_End) carries swire2_s_3[knockback] of template knockback[relative]; 地面敌方单位, 弹道不可对空).
|
||||
// Auto-close (the mode casts everything itself; the player's "主动关闭" is not available): once the purse is full
|
||||
// (10) and an enemy stands in range. 精锐 module MER-Y: ATK +4 % per trait payment (≤ 5 stacks).
|
||||
chess_char_3_04_a: (bb, chess, def) => {
|
||||
@@ -492,8 +493,9 @@ const KITS = {
|
||||
if (!e) break;
|
||||
spent++;
|
||||
battle.dealDamage(unit, e, { amount: unit.s.atk * cash, type: 'phys', isSkill: true, tags: ['skill', 'swire2Cash'] });
|
||||
// "将目标小力地向前推开" — PRTS 备注 "金币弹道…推开效果为径向推动": a radial push away from her centre (not
|
||||
// along her direction, so no 45° / 0.25-tile 特殊修正), official 力度 − 重量 distance (Battle.push)
|
||||
// "将目标小力地向前推开" — PRTS 备注 "金币弹道…推开效果为径向推动", client knockback[relative]: a radial push
|
||||
// away from her centre (not along her direction, so no 45° / 0.25-tile 特殊修正), official 力度 − 重量
|
||||
// distance (Battle.push)
|
||||
if (e.alive) battle.push(e, force, { from: unit });
|
||||
}
|
||||
fx(battle, 'coin', unit, { n: 0, spent, skill: 'swire2_3' });
|
||||
|
||||
Reference in new issue
Block a user