They’re good foundations to build on. One would be hard-pressed to find an MMO client+server that’s as polished and complete.
The legal risks involved make it too risky for anybody within Blizzard’s reach to do anything but private tinkering with, unfortunately. It makes me wish for legislation that makes non-commercial game modding and reverse engineering strictly legal.
A few have made very custom content with new areas, higher levels, etc on top of 15-20 years of content updates from the original game.
Supposedly 3,000 users online right now but some servers allow botting. https://treestats.net/player_counts/?servers=emulator&range=
I remember it wasn’t implemented and I asked if just starting a new process and stopping the old would work? Someone said try and see, it did and I shared the code and it made it into the next build.
Over 20 years later I owe a career in game development to RunUO.
AzerothCore's "killer feature" is that it has a module system, where the game server can use C++ code to hook onto events. It's pretty slick and works quite nicely.
One of the things I've been interested in working on is setting up dynamic linking for the modules so it's easier to just download the compiled module and run it with the server instead of compiling the server with the module. The biggest problem I've run into with my implementation for that is the .so for each module ends up being on the scale of hundreds of megabytes, which seems incorrect.
There's a lot of people involved, and a lot of various PR's and issues in github. As with most projects, this is where it's a situation that the game is so large and there are only so many people maintaining the project and so many people testing or confirming issues.
The project is a fork of a fork of a fork, for the most part. Much of the code comes from either SunwellCore (parent), or more likely TrinityCore (grand-parent), and over the past few years since the SC fork has been maintenance and bugfixes. I don't think any of the "current" contributors wrote the code that manages the actual game world, for example. My biggest complaint, I would say, is that at times there's a lot of "well this is how we've done it in the past" as opposition to a new feature or pull request
I think I would consider AzerothCore to be as complex as a medium-large monolithic service, I'd say. That's basically what it is, since the client is "off-the-shelf". There's a lot going on in the source code, but it's generally not difficult to figure out where an issue is.
I hope that helped answer your question.
yeah, it's possible to create a new client. It'd be a lot of work, though.
Some people make their own patches for the standard client if they have something they want to integrate. I don't really know much about that, though
How difficult is it to start contributing to AC?
Testing PR's and confirming that the behavior is correct is actually one of the best things people can do to help - that's something we're always short on.
For most of the code, as long as you can justify the change, it makes sense, and it's in line with the style standard, it'll probably not be an issue
Its an incredibly fun learning experience to be honest. This really sparked my interest in programming. The freedom to create I felt! To think all i wanted to do was recreate swifty PVP videos... Private WoW Servers Hold an incredibly special place in my heart.
I looked up the definition of twink..
*> (among gay men) a gay or bisexual young man with a slim build and youthful appearance.
It's not clear to me how this translates to wow speak..
Modern MMOs are almost the exact opposite, especially in raids where insanely complex encounter design has become the norm. That’s great for the handful of people who enjoy that but not so great for the wider playerbase. Old WoW worked because it was playable for an absurdly wide audience — back in TBC I regularly ran into everybody from teenagers to age 70+ retirees and other demographics that sit solidly outside the usual gamer crowd.
A sibling commenter quipped about which quests are bugged and which aren't, but the reality of it is that the vast majority of quests work perfectly fine, including the quests that are heavily scripted (such as the Battle for the Undercity)
The question is more what's bugged and what's not
Seems it still has commits from when it was called darkstar made by me :)
- https://github.com/LandSandBoat/server/commit/0de00388eacf01...
- https://github.com/LandSandBoat/server/commit/47b3a5f9a3845d...
Not sure why the code called the compression zlib, but now looking at this code 10 years from now, it's certainly simply a dictionary based compression.
This is still incredible work on their part that would require an incredibly deep understanding of the game mechanics in order to reproduce their artifacts by observation
After hitting 25 or so it progressively more difficult to play with a clean conscience. Despite having a good job and secure finances there was an ever-present voice in the back of my mind prodding me to do something productive any time I played for more than a few minutes.
Recently I’ve been able to spend time playing again guilt-free, which I’ve done by accepting that there’s only so much productivity I can squeeze out in a day without risking burnout. When I sit down to play it’s after I’ve hit my “quota” of productive activities, and so I don’t get the impulse as much.
I still don’t play nearly as much as I did back in the day, so I’m not raiding or anything like that, but it’s enough time to mess around with alts and such.
One issue I did run into was with calling the WoW admin apis, which are soap. The documentation seems to suggest they just "work" after changing your server's configuration but I, for all my effort, could never get it too while using the container version
Would be nice to go back and visit some of the forbidden areas like gamemaster island and the hidden area under ironforge
It was all better when there wasn’t as much of an overarching story that they really felt they had to force you into.
And dailies. Fuck dailies. I already have a job.
Hopefully this project continues and adds support/tools for easier content creation and better documentation/customization than we've seen in the past.
You still need to have the WoW client installed, right?
The primary differences that come to mind between CMaNGOS and AC are AC's larger and more active community, AC's module system, and CMaNGOS has a relatively good bot (as in, non-human players) system [0].
As an aside, AC does have a playerbots module [1], but my understanding is that it doesn't have the same polish as CMaNGOS's. It's also distributed as a patch to the upstream AC repo instead of a standard AC module, so that can be a pain for some as well.
[0] - https://github.com/celguar/mangosbot-bots [1] - https://github.com/liyunfan1223/mod-playerbots
Where is all the logic for enemy spawning, their AI, complex raid encounters, etc? I poked around the repo a bit but couldn't find it. Where's all the gameplay code and logic?
One is https://github.com/daeken/OpenEQ
For more info, see the EQEmulator / ProjectEQ discord channel #project-open-eq
I feel like MaNGOS never really got good enough, and instead all the solutions in use branched off it. At least, MaNGOS certainly had a reputation for being janky and inaccurate 15 years ago
The dark path is fundraising from that audience of male 30-45 year olds with massive disposable incomes to make your own game.
This is a multithreaded server supporting dozens to hundreds of players simultaneously. All the game logic runs server side (else the players cheat).
is there some sort of performance benchmark showing number of online players per server compared to other similar solutions (paid and unpaid)
I mean, sure, if you're hosting 1000 of your closest friends, I can see the potential issues. But for you, and a small party, it shouldn't be that awful.
Large groups, close together, are the largest load factor on a server like this because of the explosion of interrelated event broadcasting. "Oops, Lulzmage just cast Blizzard on a pack of 10 toons in the midst of a two 40 man raids attacking Orgrimmar." WoW has never handled them well, and it's fundamentally why they rarely do "world events" anymore, even with the modern sharding tech.
But a hundred folks across Kalimdor killing boars one on one, eh, not that big a deal.