戰鬥

# Combat and Skill System Overview

Atavism provides a combat and skill system to all users allowing players in their games to fight npc's and other players along with progressing and getting stronger as they go.

The default system uses 3 types of content:

* Skills
* Abilities
* Effects

Skills are given to the player and have a skill level that can be increased as the player spends skill points on it or the player use it. Skills cannot be used, they are a progression controller. A skill contains a list of abilities that are given to the player as they increase the skill level of the skill.

**Skills技能**是玩家可擁有一個技能等級, 會隨著**投放技能點數**或是**使用技能**來增加. 技能不能被使用, 他們是流程中的控制者. 一個技能可能包含一系列的招式, 並隨著技能成長.

Abilities are used (activated) by the player and will generally generally show up on the players action bar. An ability will have numerous requirements such as an activation cost, length and target type. When a player tries to activate an ability it will check the requirements and if all are matched it will apply the effects linked to the ability.

**Abilities招式**是可以被玩家使用, 通常會顯示在動作快捷列, 一個招式有各種施展條件例如啟動花費, 詠唱時間與目標類型. 當一個玩家嘗試啟動一個招式, 會檢查需求, 若符合則會應用該招式對應的效果.

Effects cause a change such as reducing someone's health, increasing a stat or stunning a target. Effects come in various types like Damage, Restoration, and Stat effects and can be instant (like a damage effect dealing instant damage) or have a duration (such as a Stat Effect that increases a stat for a while) and can even pulse (i.e Heal Over Time).

**Effects效果**是引起一個改變, 例如減少玩家的生命值, 增加一個屬性或震暈一個目標. 效果有各種來源例如傷害, 恢復, 以及屬性效果(立即效果改變)或是(一段時間的效果改變), 甚至可以隨時間增加來治療(Heal Over Time).

## How to approach the System

One way to approach using the system is the following:

* Plan out your skills, what abilities they have and what the abilities do (their effects).
* Create your skills but don't give them any abilities (as they are not yet created)
* For each ability create the effects first then create the ability that will apply them.
* Go back to the skills and set what abilities players will learn from it.

Skills can then be given to players upon character creation by adding them in the player character setup plugin in the Atavism Unity Editor.

**規劃你的技能, 招式與產生的效果.**

**創建你的技能但不要給他們招式(先只建立技能)**

**針對每一個招式先創建效果, 然後才創建招式去設定效果.**

**回到技能部份去設定招式.**

```
1.先紙上規劃 技能 招式 效果

```

```
2.在編輯器先建立技能

```

```
3.在編輯器上先建立效果

```

```
4.在編輯器上建立招式, 把效果LINK到招式

```

```
5.把招式LINK到技能

```

## Setting Mob Stats

Mob stats are set in the Stats plugin. When creating a stat there are a few fields for setting the base value and how much it increases in actual amount and percent each level. The level of a mob is then set in the Mob Templates plugin. The formula for the stats is:

`(base_value + (increase * (mob-level-1))) * (1 + ( (percentage / 100) * (mob-level - 1)))`

For example, if you have the stat strength with the following values:

* Base Value: 10
* Increases by: 3 and percent 5

At level 1 the strength stat is 10 for the mob, and at level 10 it is:

`(10 + (3 * (10-1))) * (1 + ( (5 / 100) * (10 - 1))) = 53.65 (which will be rounded down to 53).`

### **Player Stats**

The starting value of stats and how they increase as a player levels upcan be set for each Race/Class template. It follows the format of starting stat value, how much the value changes each level (as a number) and then how much in percentage it changes. The formula is:

`(base_value + (increase * (level-1))) * (1 + ( (percentage / 100) * (level - 1)))`

As an example:

* crush\_resistance: 5
* Increases by: 2 and Percent: 3

Means the player starts with 5 for their crush resistance then when they level up to level 2 it will be 7. At level 10 it will be:

`(5 + (2 * (10-1))) * (1 + ( (3 / 100) * (10 - 1))) = 29.21 (which will be rounded down to 29).`