I'm new to this stuff, and I'm trying to figure out as much as I can on my own, but I've run into a bit of a stumbling block.
There's a lot of things I want to alter, and just can't seem to actually find where or how to do so. In some cases, the code is fairly easy for me to understand, but altering or replicating it are another matter entirely.. For a few examples:
Haste: I know about the DBC for ratings (Though if someone could direct me to a solid list of the order they go in in that file, that'd be great; I can't find one), but I want to implement an increasing return for it. I looked through source files, and found a section in Player.cpp for various stat formulas. I read through the section on dodge, but as far as I can tell, the formula there calculates the portion of dodge which is subject to diminishing returns, but not the actual formula for diminishing returns itself, so I have no idea how I'd actually go about implementing such a thing.
Vampiric Touch and Unstable Affliction: In both cases, I'd like to make the backfire effects that occur on dispel also trigger at the end of the spell's duration. With Unstable Affliction, I just wound up adding a periodic trigger effect for 15 seconds to cast the backfire spell, but Vampiric Touch benefits from haste, and already has three effects. I found the script in spell_priest.cpp, but I have no idea how I'd actually change it.
Chef's Hat passive: The passive that makes you cook faster. It uses a dummy effect, but I can't find it in the source files at all. I want to make similar items for other professions, but I have no idea where to look.
And lastly, spellcasting itself: I want to implement something similar to Cataclysm's chaincasting mechanism, where hitting a spell's keybind a certain period of time before the GCD completes queues the spell to begin as soon as it does rather than firing an error. I don't even necessarily want to make it customizable like it was in Cata, though that'd be nice, but I can't figure out where I'd have to make a change like that, or how it'd need to be done.
I'm sure a lot of this boils down to me not understanding code all that well, but all the guides I've seen only pertain to the most common things changed. Hell, it took me days to find a single post on a single thread that mentioned what group of rows crit was on in the combat ratings DBC, and that's the only thing I ever found that said anything more than "Edit this dbc for that." When it comes to something that's not database/dbc editing... well, I'm entirely lost.
If someone could point me in the right direction for the above examples, or throw some links with some extremely useful compiled information my way, that'd be awesome. All I really have is TC's wiki and wowdev's dbc wiki, currently.