Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement m(atk) / m(def) percent system #3290

Merged
merged 33 commits into from
Apr 30, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
10c141c
Implement atk/def percent calculation design
skyleo May 24, 2021
edf49ba
Include atk-percent on client status-window just like on officials
skyleo May 25, 2021
cad69e7
Include def-percent on clientside vit def only like on officials
skyleo Sep 11, 2021
9116ae8
Send updatestatus to client when atk or def percent change
skyleo Apr 15, 2024
b49d223
Ensure that we know if enum scb_flag can't be bigger than 32 bit
skyleo May 24, 2021
0e3d1e5
Use enum scb_flag type where intended to
skyleo Jun 6, 2021
d9b6380
Implement atk_percent into battle->calc_weapon_attack for general cases
skyleo May 25, 2021
df6d8d2
Implement def_percent into battle->calc_defense similar to official b…
skyleo May 25, 2021
618e47b
Implement matk_percent into battle->calc_magic_attack for general cases
skyleo May 25, 2021
9573e8f
Implement mdef_percent into status->calc_mdef2 similar to official be…
skyleo May 25, 2021
6ae0bc8
Implement proper atk-def-percent handling for Tarot Card of Fate
skyleo Jun 6, 2021
12af335
Implement proper atk-percent handling for Gospel
skyleo Jun 6, 2021
adc989b
Implement proper atk-def-percent handling for Provoke
skyleo Jun 6, 2021
c2d8dd8
Implement proper atk-def-percent handling for LK_CONCENTRATION
skyleo Jun 7, 2021
66ae990
Implement proper atk-percent handling for Homunculus skill Blood Lust
skyleo Jun 7, 2021
6707359
Implement proper atk-def-percent handling for LK_JOINTBEAT
skyleo Jun 7, 2021
e740c3d
Implement proper atk-def-percent handling for SL_SKE
skyleo Jun 7, 2021
9c0138d
Implement proper atk-percent handling for HLIF_FLEET
skyleo Jun 7, 2021
8b5a3b8
Implement proper atk-percent handling for Curse
skyleo Jun 7, 2021
2b2cd3e
Implement proper atk-percent handling for NPC_POWERUP's SC_INCATKRATE
skyleo Jun 7, 2021
68ef746
Implement proper atk-percent handling for Divest Weapon
skyleo Jun 7, 2021
6f0c6b9
Implement proper matk-mdef-percent handling for PF_MINDBREAKER
skyleo Jun 7, 2021
bf51a23
Add comment for SC_INCMATKRATE being used by nothing
skyleo Jun 7, 2021
598e1f7
Implement proper def-percent handling for RG_STRIPSHIELD
skyleo Jun 8, 2021
36f47db
Implement proper def-percent-handling for GS_FLING
skyleo Jun 16, 2021
46865af
Implement proper def-percent-handling for Angelus
skyleo Jun 16, 2021
e249e01
Implement proper def-percent handling for SC_POISON and SC_DPOISON
skyleo Jul 5, 2021
4d1793b
Add comment for SC_STONESKIN in the future
skyleo Jul 5, 2021
3e93716
Add known enum scb_flag to HPMHookGen
skyleo Apr 15, 2024
63c2f9f
Regenerate hooks
skyleo Apr 15, 2024
159f6c1
Fix Asura Strike being affected by ATK % bonuses such as Provoke or G…
skyleo Mar 21, 2022
085785b
Improve MSVC support for enum scb_flag via typedef e_scb_flag
skyleo Apr 16, 2024
25e2d3c
Regenerate hooks
skyleo Apr 16, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions db/constants.conf
Original file line number Diff line number Diff line change
Expand Up @@ -1307,6 +1307,10 @@ constants_db: {
SC_SOULDIVISION: 716

SC_ACTIVE_MONSTER_TRANSFORM: 717
SC_TAROTCARD_ATK_PERC: 719
SC_TAROTCARD_MATK_PERC: 720
SC_TAROTCARD_DEF_PERC: 721
SC_GOSPEL_ATK_PERC: 722

comment__: "Emotes"
e_gasp: 0
Expand Down
94 changes: 63 additions & 31 deletions db/pre-re/sc_config.conf
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,10 @@ SC_TYPE: {
Range: (bool, defaults to false)
Regen: (bool, defaults to false)
Dye: (bool, defaults to false)
AtkPerc: (bool, defaults to false)
DefPerc: (bool, defaults to false)
MatkPerc: (bool, defaults to false)
MdefPerc: (bool, defaults to false)
All: (bool, defaults to false)
}
Icon: (string, defaults to SI_BLANK) The status icon attached to the SC
Expand All @@ -92,10 +96,8 @@ SC_PROVOKE: {
NoBoss: true
}
CalcFlags: {
Batk: true
Watk: true
Def: true
Def2: true
AtkPerc: true
DefPerc: true
}
Icon: "SI_PROVOKE"
Skill: "SM_PROVOKE"
Expand Down Expand Up @@ -198,7 +200,7 @@ SC_ANGELUS: {
Buff: true
}
CalcFlags: {
Def2: true
DefPerc: true
}
Icon: "SI_ANGELUS"
Skill: "AL_ANGELUS"
Expand Down Expand Up @@ -459,7 +461,7 @@ SC_NOEQUIPWEAPON: {
Buff: true
}
CalcFlags: {
Watk: true
AtkPerc: true
}
Icon: "SI_NOEQUIPWEAPON"
Skill: "RG_STRIPWEAPON"
Expand All @@ -473,7 +475,7 @@ SC_NOEQUIPSHIELD: {
Buff: true
}
CalcFlags: {
Def: true
DefPerc: true
}
Icon: "SI_NOEQUIPSHIELD"
Skill: "RG_STRIPSHIELD"
Expand Down Expand Up @@ -756,11 +758,9 @@ SC_LKCONCENTRATION: {
Buff: true
}
CalcFlags: {
Batk: true
Watk: true
Hit: true
Def: true
Def2: true
AtkPerc: true
DefPerc: true
}
Icon: "SI_LKCONCENTRATION"
Skill: "LK_CONCENTRATION"
Expand Down Expand Up @@ -980,8 +980,8 @@ SC_JOINTBEAT: {
Debuff: true
}
CalcFlags: {
Batk: true
Def2: true
AtkPerc: true
DefPerc: true
Speed: true
Aspd: true
}
Expand All @@ -994,8 +994,8 @@ SC_MINDBREAKER: {
Buff: true
}
CalcFlags: {
Matk: true
Mdef2: true
MatkPerc: true
MdefPerc: true
}
Skill: "PF_MINDBREAKER"
}
Expand Down Expand Up @@ -5389,7 +5389,7 @@ SC_MIRACLE: {
}
SC_POISON: {
CalcFlags: {
Def2: true
DefPerc: true
Regen: true
}
Icon: "SI_CLOUDKILL"
Expand Down Expand Up @@ -5532,10 +5532,8 @@ SC_ALMIGHTY: {
}
SC_SKE: {
CalcFlags: {
Batk: true
Watk: true
Def: true
Def2: true
AtkPerc: true
DefPerc: true
}
Icon: "SI_SKE"
Skill: "SL_SKE"
Expand Down Expand Up @@ -5568,8 +5566,7 @@ SC_SLEEP: {
SC_CURSE: {
CalcFlags: {
Luk: true
Batk: true
Watk: true
AtkPerc: true
Speed: true
}
Skill: "NPC_CURSEATTACK"
Expand All @@ -5586,7 +5583,7 @@ SC_BLIND: {
}
SC_DPOISON: {
CalcFlags: {
Def2: true
DefPerc: true
Regen: true
}
Skill: "NPC_POISON"
Expand Down Expand Up @@ -5723,8 +5720,7 @@ SC_KNOWLEDGE: {
}
SC_FLING: {
CalcFlags: {
Def: true
Def2: true
DefPerc: true
}
Skill: "GS_FLING"
}
Expand All @@ -5743,15 +5739,13 @@ SC_HLIF_CHANGE: {
}
SC_HAMI_BLOODLUST: {
CalcFlags: {
Batk: true
Watk: true
AtkPerc: true
}
Skill: "HAMI_BLOODLUST"
}
SC_HLIF_FLEET: {
CalcFlags: {
Batk: true
Watk: true
AtkPerc: true
Aspd: true
}
Skill: "HFLI_FLEET"
Expand Down Expand Up @@ -5902,8 +5896,7 @@ SC_INCMSPRATE: {
}
SC_INCATKRATE: {
CalcFlags: {
Batk: true
Watk: true
AtkPerc: true
}
}
SC_INCMATKRATE: {
Expand Down Expand Up @@ -6408,3 +6401,42 @@ SC_ACTIVE_MONSTER_TRANSFORM: {
SC__FEINTBOMB_MASTER: {
Skill: "SC_FEINTBOMB"
}
SC_TAROTCARD_ATK_PERC: {
Flags: {
NoSave: true
NoClearanceReset: true
Debuff: true
}
CalcFlags: {
AtkPerc: true
}
}
SC_TAROTCARD_MATK_PERC: {
Flags: {
NoSave: true
NoClearanceReset: true
Debuff: true
}
CalcFlags: {
MatkPerc: true
}
}
SC_TAROTCARD_DEF_PERC: {
Flags: {
NoSave: true
NoClearanceReset: true
Debuff: true
}
CalcFlags: {
DefPerc: true
}
}
SC_GOSPEL_ATK_PERC: {
Flags: {
NoSave: true
Debuff: true
}
CalcFlags: {
AtkPerc: true
}
}
Loading
Loading