mirror of
https://github.com/EQEmu/Server.git
synced 2025-12-12 09:31:30 +00:00
Implement bard song instrument mod caps
The maximum bard songs can be effected by instrument mods is 3.6. This is set by the rule Character:BaseInstrumentSoftCap which defaults to 36 Also fix Echo of Taelosia and Ayonae's Tutelage to increase the mod cap.
This commit is contained in:
parent
0c3c84d711
commit
3f8ee533d3
@ -1,5 +1,9 @@
|
|||||||
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
EQEMu Changelog (Started on Sept 24, 2003 15:50)
|
||||||
-------------------------------------------------------
|
-------------------------------------------------------
|
||||||
|
== 11/13/2013 ==
|
||||||
|
demonstar55: Implemented bard song effect cap. You can set the base cap with the rule Character:BaseInstrumentSoftCap, defaults to 36 or "3.6" as it is sometimes referred to.
|
||||||
|
demonstar55: Fix Echo of Taelosia and Ayonae's Tutelage to increase the mod cap instead of further improving the instrument mod
|
||||||
|
|
||||||
== 11/11/2013 ==
|
== 11/11/2013 ==
|
||||||
demonstar55: Changed the way walk speed is calculated to allow mobs to have their walk speed equal a 100% movement reduction
|
demonstar55: Changed the way walk speed is calculated to allow mobs to have their walk speed equal a 100% movement reduction
|
||||||
|
|
||||||
|
|||||||
@ -97,6 +97,7 @@ RULE_BOOL ( Character, EnableDiscoveredItems, true ) // If enabled, it enables E
|
|||||||
RULE_BOOL ( Character, EnableXTargetting, true) // Enable Extended Targetting Window, for users with UF and later clients.
|
RULE_BOOL ( Character, EnableXTargetting, true) // Enable Extended Targetting Window, for users with UF and later clients.
|
||||||
RULE_BOOL ( Character, KeepLevelOverMax, false) // Don't delevel a character that has somehow gone over the level cap
|
RULE_BOOL ( Character, KeepLevelOverMax, false) // Don't delevel a character that has somehow gone over the level cap
|
||||||
RULE_INT ( Character, FoodLossPerUpdate, 35) // How much food/water you lose per stamina update
|
RULE_INT ( Character, FoodLossPerUpdate, 35) // How much food/water you lose per stamina update
|
||||||
|
RULE_INT ( Character, BaseInstrumentSoftCap, 36) // Softcap for instrument mods, 36 commonly referred to as "3.6" as well.
|
||||||
RULE_CATEGORY_END()
|
RULE_CATEGORY_END()
|
||||||
|
|
||||||
RULE_CATEGORY( Mercs )
|
RULE_CATEGORY( Mercs )
|
||||||
|
|||||||
@ -1796,6 +1796,7 @@ uint16 Mob::GetInstrumentMod(uint16 spell_id) const {
|
|||||||
return(10);
|
return(10);
|
||||||
|
|
||||||
uint16 effectmod = 10;
|
uint16 effectmod = 10;
|
||||||
|
int effectmodcap = RuleI(Character, BaseInstrumentSoftCap);
|
||||||
|
|
||||||
//this should never use spell modifiers...
|
//this should never use spell modifiers...
|
||||||
//if a spell grants better modifers, they are copied into the item mods
|
//if a spell grants better modifers, they are copied into the item mods
|
||||||
@ -1856,6 +1857,7 @@ uint16 Mob::GetInstrumentMod(uint16 spell_id) const {
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// TODO: These shouldn't be hardcoded.
|
||||||
if(spells[spell_id].skill == SkillSinging)
|
if(spells[spell_id].skill == SkillSinging)
|
||||||
{
|
{
|
||||||
effectmod += 2*GetAA(aaSingingMastery);
|
effectmod += 2*GetAA(aaSingingMastery);
|
||||||
@ -1866,14 +1868,20 @@ uint16 Mob::GetInstrumentMod(uint16 spell_id) const {
|
|||||||
effectmod += 2*GetAA(aaInstrumentMastery);
|
effectmod += 2*GetAA(aaInstrumentMastery);
|
||||||
effectmod += 2*GetAA(aaImprovedInstrumentMastery);
|
effectmod += 2*GetAA(aaImprovedInstrumentMastery);
|
||||||
}
|
}
|
||||||
effectmod += 2*GetAA(aaAyonaesTutelage); //singing & instruments
|
|
||||||
effectmod += 2*GetAA(aaEchoofTaelosia); //singing & instruments
|
// TODO: These shouldn't be hardcoded.
|
||||||
|
effectmodcap += GetAA(aaAyonaesTutelage);
|
||||||
|
effectmodcap += GetAA(aaEchoofTaelosia);
|
||||||
|
|
||||||
|
|
||||||
if(effectmod < 10)
|
if(effectmod < 10)
|
||||||
effectmod = 10;
|
effectmod = 10;
|
||||||
|
|
||||||
_log(SPELLS__BARDS, "%s::GetInstrumentMod() spell=%d mod=%d\n", GetName(), spell_id, effectmod);
|
if (effectmod > effectmodcap)
|
||||||
|
effectmod = effectmodcap;
|
||||||
|
|
||||||
|
_log(SPELLS__BARDS, "%s::GetInstrumentMod() spell=%d mod=%d modcap=%d\n",
|
||||||
|
GetName(), spell_id, effectmod, effectmodcap);
|
||||||
|
|
||||||
return(effectmod);
|
return(effectmod);
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user