With its second major release, AzerothCore proved that the mangos/tc-based WoW development is still quite active and interesting in 2019.
What is AzerothCore?
In the last few years, AzerothCore has been dominating the scene of WoW emulation for what concerns the 3.3.5a (wotlk) version. It comes with the best player-experience that none of the Wrath of The Lich King private servers has ever provided before.
The project was born at the end of 2016 and based on MaNGOS -> TrinityCore -> SunwellCore. It was created by the development team of a former Italian private server called AzerothShard who decided to open source it and make available for the public.
How did it become successful?
AzerothCore was initially developed by a small number of contributors. However the community has grown a lot since its creation, and now it’s one of the most active open source WoW-server projects. How was this possible? There are many reasons behind its success, probably the main ones are:
- Players. They just love this emulator, because of the in-game features. It doesn’t matter how your architect your code, the players will only see the final results. If they like it, you will be successful. AzerothCore inherits from SunwellCore a lot of game improvements, which has brought the player experience to a new level, never seen in WoW emulation before.
- Modules. Have you ever wondered why many famous popular private servers don’t update their codebase frequently? Because they can’t easily do it. Most private servers have based their source in projects like TrinityCore and then modified it adding their custom features and private fixes. This prevents them to easily update their source code with latest TC version because of merge conflicts. Resulting in a huge, ugly and old codebase that no developer can easily maintain. AzerothCore solved this issue by introducing a module system, which allows developers to wrap their own customizations into external modules that leave the source core base clean and easy to update.
- Community. How many times have you seen a private server administrator asking for help in the MaNGOS or TrinityCore community, and being just shouted “We don’t support private servers!”. Apparently AzerothCore has realized that from private servers come contributors (devs, testers, bug reporters, code reviewers, …) and they are just being nice to people. The AC Discord chat has a much more friendly (and modern) atmosphere compared with the old IRC channels that wow devs were used to.
- Code quality. The lifecycle of all code changes in AzerothCore are the following: a change will first go through a Pull Request, then it will be code-reviewed and approved by other devs, finally tested by some tester, and then (only after the Continuous Integration check passes) finally merged into the master branch. Why all this steps? Because AC tend to avoid breaking commits. This is different than the push-directly-to-master strategy that all other WoW-server projects have been using so far.
- Easy to install. It’s quite obvious that if you make something easy to install, more people will tend to use it. AC simplified the installation process, and added in release 2.0.0 a new way of installing AC using Docker that even non-experienced users are able to understand.
- Crowdfunding. AzerothCore uses Bountysource to allow private server owners to donate money to support bugs resolution or custom module implementation. It’s a perfect win-win.
What improvements does 2.0.0 release include ?
There were many changes, some the most important ones are:
- Solved all DB installation issues
- Implemented AC Docker setup
- Fixed all DB startup errors
- Eluna is now supported
- Travis now prevents startup DB errors to get on master
- Fixed all compilation warnings
- Align most of the DB tables structure with TC
- Align SmartAI enums with TC
- Misc improvements to the SmartAI system
- The core will now trigger error if unsupported SmartAI action/even/types are used
- Fixed MySQL 5.7 issues
- Fixed many Quests (the list is too big to report it here)
- Improved movement and positioning for vanity pets
- Fixed clang 7 build
- Fixed Val’anyr Hammer of Ancient Kings
- Fixed Amplify Damage
- Update waypoints for black knight in Trail of the champion to be more blizzlike
- Fixed Mage Empowered Fire Talent
- Warlock Life Tap
- Fixed Mirror Image
- Added a few custom commands
- Fixed Glyph Learning for dual talent
- Fixed Deathgrip
- Fixed Rogue Tier 1 proc
- Fixed Guild Charter
- Fixed heirlooms to apply stats before giving health.
- Fixed pet bar will now show after /reload command
- Fixed npc falling through textures
- Fixed Noth the Plaguebringer casting upon returning back to ground
I already use AC, how can I upgrade my server after 2.0.0?