6 ms·
Building a WoW (World of Warcraft) Server in Elixir
- h1fra 2y agoImpressive, feels crazy to be able to build something like this without really knowing what they actually did on the backend.
- hakanderyal 2y agoThis was a good read. As a former WoW addict, I barely stopped myself from undertaking implementing one for myself. This is not an area I'm familiar with and I always assumed this kind of work would involve concepts that are foreign to me, but upon reading it seems it was not that magical.
- deleted 2y ago[deleted]
- kubb 2y agoI’ve never played WoW, because I’ve always felt that it would require impossible time commitment from me. Looking at the game when others play it makes me think that I would be so happy if I could experience it with a group of friends. Maybe if I retire and by some miracle know enough people, we can get together and form an awesome guild, and explore the world for the first time?
- cacois 2y agoThat's a lovely vision. If by the same miracle I retire around the same time, I'm in - haven't played since college, so I'm sure its hardly the same game I knew.
- AmericanChopper 2y agoI used to play wow a lot, and it was fun… when I was young. When you have few responsibilities, and all of your friends also have few responsibilities you can invest a lot of time into leisure activities like this without giving much up. The problem I see with games in general is that so many of them are now designed to dominate your time the way wow does. I somewhat recently used to play Warzone once a week (or once every other week) with a group of friends, and that’s a game that you should be able to pick up, play for a couple of hours, and come back whenever you want and play for a few more hours. But it’s not. New content comes out all the time, and a whole new game comes out once a year. If you don’t stay on top of it, you just don’t get the proper experience of the game. So once my casual level of interest drops below the level of time the game demands from you, I just give up playing it. This trend of a constant demand for grinding and micro transactions has creeped into way too many products imo, and the conclusion I’ve come to is that most of these games are just not made for people like me any more.
- foobarkey 2y agoBlizzard sometimes launches new classic progress from scratch, right now bit wowed out but in 5-10 years I could go one more round - hopefully this is still a thing in 20-30 years, seems like a good retirement hobby instead of bingo
- bluescrn 2y agoThe Covid lockdown period coincided quite nicely with WoW Classic. But the experience of Classic WoW now is nothing like its early months (now 20 years ago!). It's a 'solved' game now, everything is known, documented, data mined, and optimized. Players rush to max level using optimized routes to then join guilds of like-minded players to speed-run the raids. Little tolerance for 'noobs'. The sense of adventure and exploration is long-gone.
- ffsm8 2y agoThat's a cultural issue though. All (multiplayer/online) games can be considered "solved" as the practice of min maxing has become the norm. Sure, there are always a few days to weeks while the min/maxers are figuring things out, but that's generally not enough time for someone that's not a streamer to experience the content before a "solution" is provided.
- tikkabhuna 2y agoI can't agree enough with this. WoW back in the day was a little wild west, you could go to Wowhead or was it Thottbot (?) for information but it wasn't great. You could really explore and forge your own path. I rejoined for WoW Classic and to be honest playing without all my old friends was just quite sad. I had the same experience with CoD Warzone. It took off during Covid and I could play with a bunch of mates and people could run different loadouts and strategies. By the time Warzone 2 came out, everything is, like you said, optimized and little room for error. I honestly think streamers have ruined games with progression. There's too much drive to be at the top and too little focus on just enjoying the game.
- valval 2y agoYou’re free to join any guild full of noobs and just ignore guides and material that you deem too optimized for you. I’m the exact opposite from you, always rushing to the end game content and competing on the leaderboards. I dislike nothing more than updates that dismiss serious end game players because the noobs (99% of the player base in all honesty) dictate the difficulty and rewards of the content.
- 2y ago
- robrtsql 2y agoI used to feel that way. I recently (well, 2 or 3 years ago..) started playing Final Fantasy XIV. I think a lot of MMOs these days have quality-of-life improvements so that you no longer have to “nolife” the game if you don’t want to. For example, I knew people who played WoW who joined a guild and then had to keep their weekend evenings open so they could raid with the guild. Nowadays, these games come with matchmaking so you can find a group of players to complete a dungeon with (the only exception is the hardest content, where you are unlikely to find 7 other random players who are prepared enough to play them). It turns out playing an MMO is a lot more manageable now.
- 127 2y agoI think for a casual player who doesn't want another job to raid in WoW, FF XIV is really nice go your own pace alternative. Plus the 10-year long story arc is really good. You can go as fast or as slow as you want, you don't need to worry about gearing to get into dungeons or raids. There's a ton of content. WoW has better core gameplay (more fun to click buttons and kill simple mobs), more responsive, much more active open world, better quality of life. Final Fantasy has better boss fights, much more immersive and coherent storyline, no need for alts to try different classes.
- jauntywundrkind 2y agoIt's been well over a decade since I played EVE Online, and man, there's so many really compelling gaming-with-other-oeiple experiences I would love to be having there. But I feel like I'd need some real world friends to be interested, and it's been a significant chunk of time.
- hakanderyal 2y agoIt was some of the best years of my life, perfect storm of time availability and means to play it. But it really is addictive once you give in to it. I was playing 10+ hours per day, every day, for months.
- KeplerBoy 2y agoI feel like it uses its appeal once you peep behind the scenes. As a young teen it truly felt like magic, but now it just feels like manipulating a database with extra steps.
- _rs 2y ago> but now it just feels like manipulating a database with extra steps Well, realistically that is most of software development at this point. Sometimes I get depressed about that, but other times it fades away when an app brings delight to its users or solves a problem - it's a bit more humanizing and inspiring
- KeplerBoy 2y agoSure, after all most of us work jobs to manipulate the number in a database that represents our account balance, but I don't want to do that in video games anymore. No more gold farming for me, thanks.
- pjc50 2y agoI was wondering about the existing state of the art and the legal status, and found previously on HN: https://news.ycombinator.com/item?id=14886007 https://news.ycombinator.com/item?id=14886007 User "marenkay" author of "MaNGOS" saying that they regretted open-sourcing it, although not because of any actions by Activision-Blizzard.
- Sakos 2y agoWhich I feel is a wild take. WoW private servers wouldn't be where they are now without things like ManGOS. Especially with all the infighting and competition between servers and servers being shutdown. It's what holds back private servers the most. You can never build on what's already been done by others. They're all spinning their wheels and reinventing shit people did years ago. I was interested in contributing to one of these projects but when I realized they were all just keeping everything to themselves, I gave up on that idea.
- intelVISA 2y agoIt's straightforward to build a toy example, but there's many rough edges in order to make it performant at scale that aren't covered. Once you target >million concurrent every duplicated byte, syscall, matters! Thankfully Blizz doesn't have such concerns/CCU post-Activison..!
- fouronnes3 2y agoA pipe dream of mine is an open source WoW 1.12 client implementation. I wonder if anyone has ever attempted that. Bonus point if it compiles to javascript :)
- mnmalst 2y agoI am not aware of an open source client, I am not aware of any clients that are not based on the original client for that matter. Recently the turtle wow (a private server) team announced that they are working on a completely new Unreal Engine 5 client which sounds quit exiting. https://turtle-wow.org/turtle-wow-2 https://turtle-wow.org/turtle-wow-2
- filcuk 2y agoHow is this possible, would they not run into infringement issues?
- shafyy 2y agoYes, I'm also wondering this. Also, how do they get the source code?
- norswap 2y agoThey don't — they just rewrite from scratch, usually using the original art assets from the game. You could decompile the game client if you wanted to, but that's probably more trouble than it's worth in most cases. Most of the business logic is in the server anyway, the client is just to initiate actions and render the world state. (And similarly servers did not have the code, just assets + wire format between client and server, and they reversed engineered things from there, pretty successfully.)
- shafyy 2y agoCrazy. And they don't get into legal trouble?
- seper8 2y agoThis is super cool and I really like the fact that you added the dates. Puts things in perspective!
- Eumenes 2y agoI was drunk the other night asking genAI to make me an overengineered encrypted messaging system using extensive steganography involving WoW. Got me deep into WoW add-on development.
- doublerabbit 2y agoAs a s'kiddie who used to host gameservers (Q3, IRCd, RTCW) and which is now a dying art, I give many kudos to anyone developing home-brew projects to emulate any sort of game server. I loved Habbo Hotel as a teen, and the fact there are still folk developing a "retro hotels", self hosted, really sparks a little bit of joy. I just don't have the fanbase, time nor power of influence to get folk to join but I check around now and then. https://devbest.com/forums/habbo-releases.31/ https://devbest.com/forums/habbo-releases.31/ https://forum.ragezone.com/community/habbo-hotel.282/ https://forum.ragezone.com/community/habbo-hotel.282/
- deleted 2y ago[deleted]
- dindresto 2y agoI was active in the WoW server emulation scene somewhere around 2008 to 2012 and fondly look back on that time. Especially the German forum darkwow.de (and later mmonerds.de) is one of the reasons I got into computer science and I'm still in touch with some of the former members. Ten years later I got an MSc degree in computer science and programming is one of my most profound hobbies.
- zelo 2y agoThat's awesome! It made me a bit nostalgic, thinking back to the first program I ever wrote. It was a WoW bot that walked between the mailbox and the auction house, manipulating auction prices. The bot would drive the glyph prices to the bottom by lowering the lowest price by just 1 bronze to always be the cheapest when sorted by price. Then, it would buy up the entire market stock and offer everything for 50 gold each, starting the cycle again. It was glue code between Lua extensions and xdotool, all written in Bash, running WoW under Wine on Linux. The bot was pulling in about 20K gold per day on a single account. The fun part is, I was 14 years old and had zero programming knowledge at the time—just a feeling that this process could be automated and access to Google. The bot was reading the game state by capturing specific parts of the screen and comparing MD5 checksums of where the buttons were supposed to appear. I used xdotool for mouse and keyboard input, along with in-game settings like Lua command execution inside the game console to target specific NPCs or mailboxes and click to move. It probably pushed me toward pursuing a career in this industry.