-
Notifications
You must be signed in to change notification settings - Fork 155
Manuals
NineChronicles GameObjects are sorted based on the Sorting Layer.
- InGameBackground
- InGameBackgroundVFX
- Character
- CharacterVFX
- InGameForeground
- InGameForegroundVFX
- UI
- VFX
- SystemUI
UI is managed by Canvas
in Game.unity scene. UI uses two sorting layers, and there are detailed layers below them.
Name | Order |
---|---|
Hud | 0 |
Widget | 10 |
StaticLayer | 20 |
Popup | 30 |
Animation | 40 |
Tooltip | 50 |
TutorialMask | 60 |
Screen | 70 |
Name | Order |
---|---|
System | 0 |
Development | 10 |
UI is managed with widget. A widget belongs to a layer with the same name as the WidgetType.
WidgetType | Layer Name | Sorting Layer |
---|---|---|
Hud | Hud | UI |
Widget | Widget | UI |
StaticLayer | StaticLayer | UI |
Popup | Popup | UI |
Animation | Animation | UI |
Tooltip | Tooltip | UI |
TutorialMask | TutorialMask | UI |
Screen | Screen | UI |
System | System | SystemUI |
Development | Development | SystemUI |
UI prefabs have UI_
prefixed. Add 'type' to the suffix to the object that inherited Widget. (e.g : WidgetType - Popup -> UI_HelpPopup)
How to calculate damage in battle
Damage
= (playerATK + equipmentATK + SkillPower - targetDef) * comboRatio * elementalRatio * CriticalRatio
+---------------------------------------------------------+
| Total Damage = Player ATK + Equipment ATK + Skill Power |
+----------------------------+----------------------------+
|
v
+---------------------------------------------------------+
| Damage = Total Damage - Target DEF |
+----------------------------+----------------------------+
|
v
+----------------------------------------------------------+
| Damage *= Combo Ratio (ComboCount * 100%) |
+----------------------------+-----------------------------+
|
v
+----------------------------------------------------------+
| Damage *= Elemental Ratio (120%) |
+----------------------------+-----------------------------+
|
v
+----------------------------------------------------------+
| Damage *= Critical Ratio (150%) |
+----------------------------+-----------------------------+
|
v
+----------------------------------------------------------+
| D a m a g e |
+----------------------------------------------------------+
Related links
How the skills actually selected in Nine Chronicles
+---------------------+
| Get skills |
| with 0 cooldown | ** default attack skill cooldown is always 0
| |
+---------------------+
|
|
V
/---------------------\ +---------------------+
| Have only | Yes | Use |
| default attack | ----> | default attack |
| skill? | | skill |
\---------------------/ +---------------------+
|
| No
V
+---------------------+
| Sum chance of | e.g., Skill A - chance 50%
| all skills | Skill B - chance 30%
| call it 'sumChance' | Sum : 80 = 50%(Skill A) + 30%(Skill B)
+---------------------+
|
|
V
/---------------------\ +---------------------+
| random <= sumChance | No | Use |
| random range: 1~100 | ----> | default attack |
| | | skill |
\---------------------/ +---------------------+
|
| Yes
V
+---------------------+
| Select | ** Use WeightedSelector to select skills.
| skill based on | WeightedSelector decisions based on
| weight(chance) | each choice's proportion of the total weight.
+---------------------+
|
| Yes
V
+---------------------+
| Use |
| selected skill |
| skill |
+---------------------+
-
Cooldown
gets value from SkillSheet -
Power
andChance
gets value from item - How to access buff data.
- Take the
skill id
and find the matchingbuffer id
on the SkillBuffSheet - Find the data in the BuffSheet with the buff id
- Take the
-
Duration
getsmodify_type
from BuffSheet
In the tutorial, the scenario is called recursively, and when the play id
does not exist, stop is called.
Tutorial trigger conditions are managed by TutorialController. Tutorial execution is managed in Tutorial.
┌────────┐
│play() │
│id:1 │
│nextId:2│
└───┬────┘
┌───▼────┐
│play() │
│id:2 │
│nextId:3│
└───┬────┘
┌───▼────┐
│play() │
│id:4 │
│nextId:?│
└───┬────┘
┌───▼────┐
│Stop() │
└────────┘
- TutorialScenario.json - Tutorial scenario flow data
- TutorialPreset.json - Tutorial directing data
- tutorial.csv - Tutorial text
Home
| Get Started
| Manuals
| Reference