This tutorial will focus on nerfing / buffing spells. There are many ways to nerf spells and I will be covering easier once.
First way is really easy, but not all spells can be affected by it (example would be Mortal Strike or Backstab or other spells that have % Weapon Damage):
1. Open your world database using software that you prefer (I use HeidiSQL
2. Locate table called `spell_bonus_data` and open it.
3. Now I'll give you two possible examples:
a) Spell is already in there
b) Spell needs to be added
a) Lets use "Ice Lance" for this example.
Write a simple code for filtering
select *from spell_bonus_data where comments like "%Ice Lance%"
Now as you can see table consists of 4 'bonuses'
direct_bonus -> Scales with spell power
direct_dot_bonus -> Scales with spell power (Damage over time effects)
ap_bonus -> scales with attack power
ap_dot_bonus -> scale with attack power (Damage over time effects)
Now since Ice Lance is a mage spell we would expect it to scale with spell power. Change direct_bonus to value that you want. I'll set it to 5.
Apply changes, go in game and ".reload spell_bonus_data".
Lets see difference in damage.
As you can see it's hitting for about 5 times harder.
b) Spell isn't in database yet
For this one I will use warrior ability "Execute" if you go ahead and search for it, you will see that there are no results for it, but that doesn't always mean that it can't be buffed/nerfed via spell_bonus_data.
Find Execute on wotlk.openwow and use it's spell id. Now we are buffing Execute, http://wotlk.openwow.com/spell=20647
spell is triggered by execute and that's why we'll use it's ID. The reason behind it is in Effect #1, normal Execute uses Dummy Effect (Base Value) and you cannot change it's scaling, while http://wotlk.openwow.com/spell=20647
has School Damage (Physical). Sometimes you will simply have to try many spells before you find the right one.
Insert into spell_bonus_data (entry, ap_bonus, comments) values (20647, 100, 'Warrior - Execute');
You can clearly see that damage is A LOT higher.
Second way is mostly useful for nerfing/buffing effects that are brought by spell. Use this tool:
And this will be useful for your editing: http://www.pxr.dk/wowdev/wiki/index.php?title=Spell.dbc
For starters, navigate to folder in which your dbc files are located. Find and open spell.dbc with MyDbcEditor. For this example I will be buffing Crusader Strike. http://wotlk.openwow.com/spell=35395
In MyDbcEditor go to Edit -> Go to ID -> 35395
Go to effects (72, 73, 74)
We can clearly see 3 effects and we will use pxr to understand these values http://www.pxr.dk/wowdev/wiki/index....ell.dbc/Effect
- First effect is 121 -> Normalized weapon damage
- Second Effect is 31 -> Weapon damage percent -> and this is what we will edit
- Third effect is 6 -> Apply Aura
So, now go to base value of second effect (82):
You will see that it has 74 (that's 75%). The way Base Points work is something like this:
- If you want your value to be y , the way you will get it is x = y - 1 .
I will buff it to 10000% damage -> so that's x = 10000 -1 = 9999 -> we will put this in base points
Before you close your MyDbcEditor make sure that you've saved your editing. File -> Save
DBC changes require world restart, so go ahead and type ".server restart 1"
There's a lot more to dbc editing when it comes to nerfing/buffing spells. Always make sure that you check SpellTrigger if you can't find effect that you are looking for.
This is a beginner guide, and I hope someone learns something from it. If there are any parts that you have trouble understanding, feel free to post reply.