killerduki 54 Report post Posted October 28, 2016 (edited) https://www.reddit.com/r/wowservers/comments/59tvha/cmangos_presents_first_fully_blizzlike_magic/?st=iuttuq6s&sh=bc9adbda Greetings, reddit! In recent years, the notion that open source deep legacy (classic and TBC) emulation having died out was prevailing due to past history, a history of project mismanagement, project forks, discontinued projects as well as overhyped closed source projects generally discouraging development on the open sources by recieving all the thunder. We've seen some interest in legacy open source development being expressed in this subreddit, and we are sad to see, that our project is rarely mentioned in replies. We realize, that lack of communication on the project's part is one of many reasons for this. Therefore, this is our debut attempt to address this issue to an extent, and communcate with people, who share our passion for legacy WoW and open source, in a traditional form for this subreddit: a unique feature showcase. Keep in mind, however, that we aren't a private server project! Tonight we are proud to be treating you with a little something special; a cornerstone WoW game mechanic that should have been implemented a long time ago, and has been assumed by the many to already be implemented correctly: Magic resistance. You may have experienced it yourself; getting an abnormally high amount of resists against targets with any amount of resistance on most private servers. This truly shows in PvP: a huge portion of your direct damage spells actually get fully resisted, so much so that it at the very least hapopens as often, if not more times, than if the target was equipped with a full set of resistance gear. Look no further, the sad truth is here: The truly blizzlike resist distribution was never implemented in Classic and TBC server emulators such as cMaNGOS, and binary spell mechanics are either too unprecise or missing altogether. The sheer research that has gone into the different aspects of magic resistance was going on for a good week, with most of the challenge and ambition being a complete reconstruction of the official magic resistance distribution for Classic and TBC WoW. A lot of trial and error went into Binary spells implementation even before work on resistance started. The results are presented below, and has already been merged with Classic, TBC and WotLK branches at the time of this text's publification. Changelog: Binary spell implementation: Assumed to be the most precise to date based on accumulated data for Classic, TBC and WotLK. A TBC+ feature: Multi-school spells (e.g., frostfire) now interact with magic resistance correctly (calculations now use the value of the most vulnerable school). Bonus magic resistance mitigation for non-binary spells are now based on level difference (The real blizzlike mechanic behind WotLK's "510 boss resistance"). Random distribution of magic resistance for Classic and TBC now fully blizzlike; calculated from an archived page with the official Blizzard resistance table. Random distribution of magic resistance for WotLK now also fully blizzlike as a byproduct of the above; with correct upper and lower peaks. Detailed gameplay changes: Binary spells are now incapable of partially resisting and magic resistance mitigation is directly translated into a chance for a complete resist. Non-binary spells have a chance of partially and fully resisting based on the victim's magic resistance mitigation, with the chance for a complete resist never exceeding 25% with 75% magic resistance mitigation, which was the cap in Classic and TBC. Frostbolt and other spells with a similar structure in the Classic branch are now considered binary (it was changed in patch 2.3), which gives Frost Mages a certain edge over Fire Mages; these spells now ignore 6% of resistance mitigation imposed by the boss' level difference. The final magic resistance table for Classic and TBC now looks like this (rounded off to a flat 1% of resistance mitigation): https://i.imgur.com/IXDyrMb.png The final magic resistance table for WotLK now looks like this (rounded off to a flat 1% of resistance mitigation): https://i.imgur.com/vhmC8e5.png List of references: Official resistance table for Classic and TBC: https://web.archive.org/web/20090206211016/http://www.worldofwarcraft.com/info/basics/resistances.html Original research on resistace, highly underestimated at a time: https://web.archive.org/web/20161015101615/https://dwarfpriest.wordpress.com/2008/01/07/spell-hit-spell-penetration-and-resistances/ WotLK EJ research on resistance: https://web.archive.org/web/20130610125321/http://elitistjerks.com/f15/t44675-resistance_mechanics_wotlk/ Credit for all these changes go to: Warlockbugs (research and implementation) Killerwife (cracking the official table for classic and TBC) cMaNGOS on web: cMaNGOS homepage: http://cmangos.net cMaNGOS on Github: https://github.com/cmangos cMaNGOS IRC: #cmangos on irc.rizon.net Edit: correcting post formatting Edited October 28, 2016 by killerduki 3 Share this post Link to post Share on other sites