mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 01:11:29 +00:00
[Rules] Backstab Damage Modifier (#3908)
* [Rules] Backstab Damage Modifier Added NPCBackstabMod - Default 1.9 - Lower mod = higher backstab. * Update special_attacks.cpp corrected math to npc base_damage
This commit is contained in:
parent
c731f3f560
commit
0f7f71334a
@ -587,6 +587,7 @@ RULE_INT(NPC, NPCToNPCAggroTimerMin, 500, "Minimum time span after which one NPC
|
|||||||
RULE_INT(NPC, NPCToNPCAggroTimerMax, 6000, "Maximum time span after which one NPC aggro another NPC (milliseconds)")
|
RULE_INT(NPC, NPCToNPCAggroTimerMax, 6000, "Maximum time span after which one NPC aggro another NPC (milliseconds)")
|
||||||
RULE_BOOL(NPC, UseClassAsLastName, true, "Uses class archetype as LastName for NPC with none")
|
RULE_BOOL(NPC, UseClassAsLastName, true, "Uses class archetype as LastName for NPC with none")
|
||||||
RULE_BOOL(NPC, NewLevelScaling, true, "Better level scaling, use old if new formulas would break your server")
|
RULE_BOOL(NPC, NewLevelScaling, true, "Better level scaling, use old if new formulas would break your server")
|
||||||
|
RULE_REAL(NPC,NPCBackstabMod, 1.9, "Multiplier for NPC Backstab, Higher = Lower backstab amount")
|
||||||
RULE_INT(NPC, NPCGatePercent, 20, " Percentage at which the NPC Will attempt to gate at")
|
RULE_INT(NPC, NPCGatePercent, 20, " Percentage at which the NPC Will attempt to gate at")
|
||||||
RULE_BOOL(NPC, NPCGateNearBind, false, "Will NPC attempt to gate when near bind location?")
|
RULE_BOOL(NPC, NPCGateNearBind, false, "Will NPC attempt to gate when near bind location?")
|
||||||
RULE_INT(NPC, NPCGateDistanceBind, 75, "Distance from bind before NPC will attempt to gate")
|
RULE_INT(NPC, NPCGateDistanceBind, 75, "Distance from bind before NPC will attempt to gate")
|
||||||
|
|||||||
@ -24,6 +24,7 @@
|
|||||||
#include "mob.h"
|
#include "mob.h"
|
||||||
#include "string_ids.h"
|
#include "string_ids.h"
|
||||||
#include "lua_parser.h"
|
#include "lua_parser.h"
|
||||||
|
#include "npc.h"
|
||||||
|
|
||||||
#include <string.h>
|
#include <string.h>
|
||||||
|
|
||||||
@ -182,7 +183,7 @@ int Mob::GetBaseSkillDamage(EQ::skills::SkillType skill, Mob *target)
|
|||||||
}
|
}
|
||||||
} else if (IsNPC()) {
|
} else if (IsNPC()) {
|
||||||
auto *npc = CastToNPC();
|
auto *npc = CastToNPC();
|
||||||
base = std::max(base, npc->GetBaseDamage());
|
base = round((npc->GetMaxDMG() - npc->GetMinDMG()) / RuleR(NPC, NPCBackstabMod));
|
||||||
// parses show relatively low BS mods from lots of NPCs, so either their BS skill is super low
|
// parses show relatively low BS mods from lots of NPCs, so either their BS skill is super low
|
||||||
// or their mod is divided again, this is probably not the right mod, but it's better
|
// or their mod is divided again, this is probably not the right mod, but it's better
|
||||||
skill_bonus /= 3.0f;
|
skill_bonus /= 3.0f;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user