npm 包 gw2-itemstats 使用教程

介绍

gw2-itemstats 是一个可以用于计算各类 Guild Wars 2 道具属性的 npm 包。它可以帮助你计算各种加成和属性,例如各类基础属性(如力量、灵巧等)、各类加成(如力量加成、愤怒加成等)、各类吸收(如伤害吸收、攻击吸收等)等。本文主要介绍如何使用 gw2-itemstats 这个 npm 包。

安装

在使用 gw2-itemstats 之前,我们需要先安装它。在命令行中运行以下命令即可完成安装:

--- ------- ------ -------------

使用

安装完成后,我们就可以在自己的项目中使用 gw2-itemstats 了。下面是一个简单的使用示例:

----- - ---------- --------- --------------- ---------- - - -------------------------

-- ------
----- -------- - --- --------------------- -----
----- --------- - --- ---------------------- ----
----- -------- - --- --------------------- ----

-- ----
----- ----- - --- ----------------- ----
----- --------- - --- --------------------- ----
----- ------- - --- ------------------- ----

-- ----
----- ----- - --- ------------------- ------
----- ---------- - --- ------------------------ ----

-- ----
----- ------ - ---------------------
  ---------
  ----------
  ---------
  ------
  ----------
  --------
  ------
  -----------
---

--------------------

输出结果如下:

-
  --------- ----
  ---------- ---
  --------- ---
  ------ ---
  ---------- ---
  -------- ---
  ------ -----
  ----------- ---
  ------- -----
  ----------- --------------------
  ------------------------ -------------------
  ---------- ------
  -------------- -----
  --------------------------- -----
  --------------------------------- -------------------
  ---------------------------------- --
  --------------------------------- --
  ---------------------------------- -
-

可以看到,计算结果包含了各类基础属性、加成和吸收,以及计算后的各类属性值。下面我们将逐个介绍其中的各个概念和属性。

Attribute

Attributegw2-itemstats 中最基础的概念,它表示一个基础属性。每个 Attribute 由两个参数构成:名称和数值,例如下面这个例子:

----- -------- - --- --------------------- -----

表示玩家的力量属性为 100。目前支持的基础属性包括:

  • Power:力量
  • Precision:灵巧
  • Ferocity:残暴
  • Vitality:体力
  • Toughness:韧性
  • Healing:治疗效果
  • ConditionDamage:症状造成
  • ConditionDuration:症状持续时间
  • BoonDuration:增益持续时间

Additive

Additive 是加成的概念,它表示一个可以增加基础属性数值的项。每个 Additive 由两个参数构成:名称和数值,例如下面这个例子:

----- ----- - --- ----------------- ----

表示玩家装备的武器有 10 点力量加成。目前支持的加成包括:

  • Power:力量加成
  • Precision:灵巧加成
  • Ferocity:残暴加成
  • Vitality:体力加成
  • Toughness:韧性加成
  • Healing:治疗效果加成
  • ConditionDamage:症状造成加成
  • ConditionDuration:症状持续时间加成
  • BoonDuration:增益持续时间加成
  • CritChance:暴击率加成
  • CritDmg:暴击伤害加成

Multiplicative

Multiplicative 是属性乘法的概念,它表示一个可以乘以基础属性数值的项。每个 Multiplicative 由两个参数构成:名称和数值,例如下面这个例子:

----- ------------------ - --- ------------------------------------ -----

表示玩家的残暴属性数值要乘以 1.5。目前支持的乘法属性包括:

  • ConditionDamageMultiplier:症状造成乘法
  • CritChanceWithPrecision:考虑到灵巧的暴击率乘法
  • CritPower:暴击伤害乘法
  • IncomingPhysicalDamageMultiplier:受到物理伤害的乘法
  • IncomingConditionDamageMultiplier:受到症状造成的乘法
  • OutgoingPhysicalDamageMultiplier:造成物理伤害的乘法
  • OutgoingConditionDamageMultiplier:造成症状造成的乘法

Absorption

Absorption 是吸收的概念,它表示一个可以吸收伤害的项。每个 Absorption 由两个参数构成:名称和数值,例如下面这个例子:

----- ----- - --- ------------------- ------

表示玩家的护甲值为 1000,可以吸收一定伤害。目前支持的吸收项包括:

  • Armor:护甲吸收
  • ArmorPenetration:护甲穿透
  • Protection:免伤吸收
  • IncomingPhysicalDamageReduction:受到物理伤害的减免
  • IncomingConditionDamageReduction:受到症状造成的减免
  • OutgoingPhysicalDamageMultiplier:造成物理伤害的乘法
  • OutgoingConditionDamageMultiplier:造成症状造成的乘法

Attribute.calculate

Attribute.calculategw2-itemstats 中最关键的计算函数,它接收一个 Array 类型的参数,参数中包含了基础属性、加成、乘法和吸收等所有需要计算的属性,帮助我们计算出最终的结果。例如下面这个例子:

----- ------ - ---------------------
  ---------
  ----------
  ---------
  ------
  ----------
  --------
  ------
  -----------
---

计算结果将包含各类属性和计算后的值。这些值包括:

  • Health:总生命值
  • CritChance:暴击率
  • CritChanceWithPrecision:灵巧考虑后的暴击率
  • CritPower:暴击伤害
  • ArmorAdjusted:默认的护甲吸收
  • ArmorAdjustedWithToughness:包括韧性的护甲吸收
  • IncomingPhysicalDamageMultiplier:受到物理伤害的乘法
  • IncomingConditionDamageMultiplier:受到症状造成的乘法
  • OutgoingPhysicalDamageMultiplier:造成物理伤害的乘法
  • OutgoingConditionDamageMultiplier:造成症状造成的乘法

示例

下面是一个完整的示例,它演示了如何计算一个具有力量 200、灵巧 100、残暴 50、体力 1000、韧性 500、护甲 2000、免伤 25%、攻击吸收 10 且包含一个症状造成加成的行会崇拜者装备的属性值。

----- - ---------- --------- --------------- ---------- - - -------------------------

-- ------
----- -------- - --- --------------------- -----
----- --------- - --- ---------------------- -----
----- -------- - --- --------------------- ------

-- ----
----- --------- - --- --------------------- -----
----- -------- - --- -------------------- ----
----- --------------- - --- --------------------------- ----

-- ------
----- ----------------------- - --- ----------------------------------------- -----

-- ----
----- ----- - --- ------------------- ------
----- ---------- - --- ------------------------ ----
----- ---------------- - --- ------------------------------ ----

-- ----
----- ------ - ---------------------
  ---------
  ----------
  ---------
  ----------
  ---------
  ----------------
  ------------------------
  ------
  -----------
  -----------------
---

--------------------

输出结果如下:

-
  --------- ----
  ---------- ----
  --------- -----
  ---------- ----
  --------- ---
  ---------------- ---
  ------------------------ --------------------
  ------ -----
  ----------- ---
  ----------------- ---
  ------- ------
  ----------- --------------------
  ---------- -------
  -------------- -----
  --------------------------- -----
  --------------------------------- -------------------
  ---------------------------------- -------------------
  --------------------------------- --
  ---------------------------------- ------------------
-

可以看到,这个角色的总生命值为 27685,暴击率为 9.47%,暴击伤害为 1562.5,护甲吸收为 2000,护甲吸收加上韧性属性共 2795,表示玩家总的伤害减免为 51.28%。另外,这个角色受到的症状造成伤害乘以 1.15,造成的症状造成伤害乘以 1.16(因为有行会崇拜者套装加成)。

总结

gw2-itemstats 是一个非常强大的 npm 包,可以帮助我们轻松计算 Guild Wars 2 中各种复杂的属性和加成。本文中我们介绍了 AttributeAdditiveMultiplicativeAbsorption 等各类概念和属性,及其使用方法。希望本文能够帮助大家更好的学习和应用 gw2-itemstats 包。

来源:JavaScript中文网 ,转载请联系管理员! 本文地址:https://www.javascriptcn.com/post/6005680581e8991b448e428d


猜你喜欢

  • npm 包 nueah-net 使用教程

    npm 是一个非常重要的 Node.js 包管理器,可以通过它来方便地安装和管理各种 Node.js 模块和工具。这次我们要介绍的是一个 npm 包,名为 nueah-net。

    3 年前
  • npm 包 nueah-process 使用教程

    简介 nueah-process 是一个包含多个前端工具方法的 npm 包,可以帮助前端开发者更轻松地处理数据、字符串、时间等。本文将详细介绍如何使用这个 npm 包,在实践中掌握这些工具方法。

    3 年前
  • npm 包 @i2/runonpage 使用教程

    前言 在现代的 Web 开发中,前端技术与日俱增,我们的代码也逐渐变得越来越复杂。为了更高效地管理和组织代码,我们常常会使用各种工具和框架。在这些工具和框架的背后,有一个我们常常忽略的神秘的存在,那就...

    3 年前
  • npm 包 lluchmk-ng2-table 使用教程

    在前端开发中,表格是一个非常常见的组件。为了简化表格组件的开发和使用,我们可以使用现成的开源组件,其中 lluchmk-ng2-table 就是一个非常不错的选择。

    3 年前
  • npm 包 rollup-plugin-strip-prop-types 使用教程

    前言 在前端开发中,我们使用许多工具和技术来提高我们的开发效率。npm 包是其中一种非常重要的工具,它提供了许多好用的库和工具,让我们的开发变得更加简单。其中,rollup-plugin-strip-...

    3 年前
  • npm 包 Platzom-mtn 使用教程

    什么是 Platzom-mtn Platzom-mtn 是一个前端开发工具,包含多种字符串转换方法,可用于对字符串进行处理和操作。 如何安装 Platzom-mtn 要使用 Platzom-mtn,您...

    3 年前
  • npm 包 dfinity-tx 使用教程

    在使用区块链应用程序时,与区块链进行交互的事情之一是在区块链上执行事务。 dfinity-tx 是一个 Node.js 模块,这是与 Dfinity 区块链进行交互的一种方式。

    3 年前
  • npm 包 vue-auto-float-directive 使用教程

    vue-auto-float-directive 是一个 Vue 框架的 npm 包,该包提供了一种简单易用的方式,让页面中的某些元素可以随着用户的滚动而滑动或者固定在页面的某个位置上。

    3 年前
  • npm 包 get-own-property 的使用教程

    简介 get-own-property 是一个 npm 包,用于获取对象的自有属性。它可以帮助前端开发者更方便地处理对象属性。 安装 在终端或命令行窗口中,执行以下命令来安装 get-own-prop...

    3 年前
  • npm 包 kafka-observable 使用教程

    在前端开发中,处理流式数据是一个很常见的场景。Kafka 是一种流式数据平台,它可以处理海量消息并支持高吞吐量和高可靠性,因此在大规模互联网应用中得到了广泛应用。kafka-observable 是一...

    3 年前
  • npm 包 lintworm 使用教程

    什么是 lintworm? lintworm 是一种非常有用的 npm 包,它可以帮助程序员在编写代码时精确地遵循一系列代码风格和规范。lintworm 通过对代码进行一系列的静态分析,来发现代码中可...

    3 年前
  • npm 包 personity-report 使用教程

    介绍 在前端开发中,我们经常会使用各种 npm 包来帮助我们完成任务。其中,personity-report 是一个可以帮助我们生成人格报告的 npm 包,通过分析文本,自动生成一个与文本相关的人格描...

    3 年前
  • npm 包 react-recaptcha-dev 使用教程

    在前端开发中,有些功能需要借助第三方库来实现。recaptcha 是一种反人类行为识别技术,可以在网站提交表单时防止机器人自动提交。如果你使用 React 来开发网站,那么 react-recaptc...

    3 年前
  • npm 包 rollup-plugin-hash 使用教程

    前置知识 在学习 rollup-plugin-hash 之前,你需要具备以下知识: 熟悉 npm 管理包的基本操作 熟悉 Rollup 的基本使用方法 什么是 rollup-plugin-hash...

    3 年前
  • npm 包 thobitcore 使用教程

    介绍 thobitcore 是一个 Node.js 包,用于实现比特币和其他加密货币的钱包和区块链相关应用程序。它是一个高可扩展性的工具,提供了许多先进的功能,包括区块链解析、私钥管理、交易管理等等。

    3 年前
  • npm 包 vue-navigation-plugin 使用教程

    本文将为大家介绍一款名为 vue-navigation-plugin 的 npm 包,它提供了一种方便的方式来实现前端路由的管理和跳转。本文将详细介绍这个包的使用方法以及其背后的技术原理,帮助读者更好...

    3 年前
  • npm 包 @noticeable/remove-markdown 使用教程

    在前端开发中,我们经常需要将 Markdown 格式的文本转换为普通的文本或 HTML 格式,以便在网页中进行展示或处理。而 @noticeable/remove-markdown 是一款 npm 包...

    3 年前
  • npm 包 input-ip 使用教程

    在进行前端开发中,经常需要获取用户的 IP 地址。今天,我们将介绍一个名为 input-ip 的 npm 包,它可以帮助我们简单地获取用户的 IP 地址。 input-ip 如何工作 该 npm 包利...

    3 年前
  • npm 包 cbll 使用教程

    在前端开发中,我们通常需要使用一些第三方开源库来方便我们的开发。其中 Node.js 环境下的包管理工具 npm 可以帮我们快速下载和安装这些第三方库。 在本篇文章中,我们将介绍一个常用的 npm 包...

    3 年前
  • npm 包 homebridge-mqtt-door 使用教程

    随着物联网技术的发展,智能家居设备开始逐渐普及。然而,不同厂商生产的设备使用不同的通信协议,使得设备之间的不兼容问题也逐渐显现出来。为了解决这个问题,MQTT协议应运而生。

    3 年前

相关推荐

    暂无文章