How World of Warcraft works!

แชร์
ฝัง
  • เผยแพร่เมื่อ 24 ม.ค. 2025

ความคิดเห็น • 354

  • @Warpgatez
    @Warpgatez ปีที่แล้ว +293

    Private server development encouraged me to learn programming when I was in high school over 15 years ago. This is awesome to see someone teaching this.

    • @ollivainionpaa684
      @ollivainionpaa684 ปีที่แล้ว +8

      Yes but instead of calling it "private server" it is called DevOps project.
      Because algorithms are telling that DevOps is popular search input today. Even DevOps is just basic IT man from 20 years ago who installed every computer in offices and schools.
      Just a new brand name to trick new generation to do something old.

    • @Warpgatez
      @Warpgatez ปีที่แล้ว +6

      @@ollivainionpaa684 yeah not really sure why he titled it Dev Ops. This is more Database Administration / programming. But he doesn’t have the whole series out. Maybe 100 videos deep it’ll tie everything together to show Dev Ops as a whole.

    • @ollivainionpaa684
      @ollivainionpaa684 ปีที่แล้ว +2

      @@Warpgatez Also DevOps is not bringing anything, it is a principle and is equal to say: "Working gets you money." which shouldn't make sense but for some it does due' filling the gaps. He just wanted to use the word to pump up the viewers.
      Could have at least said: "DevOps in World of Warcraft private server."

    • @gaborrab4785
      @gaborrab4785 ปีที่แล้ว +5

      A friend of mine had a very popular private server for Dota that he wrote. Blizzard later hired him and worked on SC II and Diablo 3 server code.

    • @Smartady92
      @Smartady92 ปีที่แล้ว +2

      Same, with Mangos I got in contact with SQL. And I learned it to get new objects into the world.

  • @TheMrRockOn
    @TheMrRockOn ปีที่แล้ว +78

    As someone who had done that back in 2007 when TBC was in its prime, and as I current DevOps engineer, I'd say that you explained it awesomely well. Well done. It's very interesting still after so many years!

  • @ChazRagg
    @ChazRagg ปีที่แล้ว +56

    So excited for this series, i have such a deep passion for both DevOps and wow i still can't believe this mash up is happening

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +4

      I’m excited for it too! :-) thank you for watching.

  • @David-we3sb
    @David-we3sb ปีที่แล้ว +9

    as a wendys patty flipper who played guild wars for the past 15 years, this video felt so good

  • @realisticlevel2553
    @realisticlevel2553 ปีที่แล้ว +12

    This video should be watched before starting a Computer Science Networking class. The students would appreciate the importance of the class.

  • @Barc0d3
    @Barc0d3 ปีที่แล้ว +4

    DUDE. I grew up with wow, and it was an entry point for my curiosity. I got into private servers, which lead me to learn basic IT concepts, which then lead me to game hacking, which then lead me to being an it security professional today. Love how it served/serves similar stories for many people. Wow as a tool to learn!

  • @zulth2065
    @zulth2065 ปีที่แล้ว +43

    This is so cool, as a software engineer it's so nice to see what goes on behind the curtains. Keep it up :D

  • @jani14jani
    @jani14jani ปีที่แล้ว +368

    Best change you could make in Elewynn forrest is to Change Hogger as a skull level NPC and having him run around the forest killing every player that crosses his path.

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +64

      That’s entirely possible! And, in fact, maybe I will do that ;-)

    • @xeroxzamg7503
      @xeroxzamg7503 ปีที่แล้ว +15

      ​@@MichaelCrillyplease bro that would be insane

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +21

      Check out tomorrow’s Short :D

    • @vibesmagma8451
      @vibesmagma8451 ปีที่แล้ว +4

      @@MichaelCrillyyou gotta make stitches invincible too 🤣

    • @ChristopherStone
      @ChristopherStone ปีที่แล้ว +1

      I love this idea.

  • @ChromieCraft
    @ChromieCraft ปีที่แล้ว +52

    Thank you for bringing our work out to a much wider audience, looking forward to seeing some of your PRs feed into Azerothcore one day!

    • @johndeljoy8071
      @johndeljoy8071 ปีที่แล้ว +2

      Thankfull player here :) Continue doing great work :)

  • @irgudev
    @irgudev 3 หลายเดือนก่อน +1

    Thank god i've found your channel. I was creating a dungeon crawler in godot using wow models, now im so deep in your channel. Thanksss!!

  • @yassineyounes5830
    @yassineyounes5830 ปีที่แล้ว +24

    As a devops engineer who played Wow for the last 15 years of my life, this video felt so good and perfect ! thank u for sharing the knowledge

  • @nothin_gg
    @nothin_gg ปีที่แล้ว +64

    Nice! As a sofware engineer and a WoW player this is interest me very much. Keep it up!

    • @TudorSicaru
      @TudorSicaru ปีที่แล้ว +1

      Haha same, and I'm fascinated to see behind the curtains of a game I've been playing since 2007

  • @NinaFelwitch
    @NinaFelwitch 6 หลายเดือนก่อน +1

    It was fun playing around a WoW server when I ran my own in the late 2000s. Figuring out the database and adding and changing npcs and items was really cool.

  • @cloontang89
    @cloontang89 ปีที่แล้ว +4

    This is awesome. Long time WoW player and Software Engineer here - so cool to see how the architecture behind this works. Looking forward to the rest of the series. Cheers!

  • @fernandoereno5597
    @fernandoereno5597 ปีที่แล้ว +6

    Holy mother of code, this is so cool ... tyvm for your time invested on this, you're awesome!!!

  • @Misutoslope
    @Misutoslope ปีที่แล้ว +11

    Thanks for making this video! I created and hosted a Burning Crusade private WoW server many years ago when I was 13. I would charge people for armor sets and weapons with overpowered stats, add spells from other classes, etc. Made over $5,000.
    My parents made me shut it down when we received a cease and desist letter from Blizzard. Lovely memories

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว

      Ha ha!

    • @Painbow9553
      @Painbow9553 11 หลายเดือนก่อน

      What a scumbag. Charging money for somebody else's game? This is the internet, dude. Don't ever do that again. The spirit of the internet is the FREE dissemination of information. Ugh. Scamming scum.

  • @vanBombi
    @vanBombi ปีที่แล้ว

    As a DevOps engineer and former WoW player and enthusiast I found this content and your SoloCraft project super exciting and can't wait to try it out myself. It's so cool to see the architecture in such a great details after all these years of playing both retail and private servers.

  • @Doronamo
    @Doronamo ปีที่แล้ว +3

    I've played around with servers in the past for fun, but this series gives me such a better look now (as an adult) at what's going on while also pertaining to a career field I'm interested in now. Thank you for doing this!

  • @johnmannp
    @johnmannp ปีที่แล้ว +7

    I am so happy that I got this video recommended :D
    This is so freaking cool man! I always wanted to know, how the mmos SQL side works. Very informative video, keep it up man!

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      Thank you! There’s more to come :-)

  • @WoWUndad
    @WoWUndad ปีที่แล้ว +1

    Dude the insane thing is how this vid is gonna hit a million views, thats a lot of people interested in very technical game programming.

  • @spanniYT
    @spanniYT ปีที่แล้ว +6

    Great video! You covered the basics of the server infrastructure brilliantly, but there are two notes I'd like to make. First one would be that it is not said, that the actual WoW servers are still working exactly like that. AFAIK the versions used by several of those opensource cores are all based on one version that was leaked years ago. Actual retail WoW still uses similar infrastructure but probably more advanced (eg. authentication via launcher, shards, crossrealm). Second one is that the table you used to search for the NPC is not actually its current representation in the world, but, as the name suggests, the template of that creature. The world representation of a creature is in the creature table (eg. current position, buffs, etc) - the creature creature_template connection is for example used for NPCs with multiple occurences in the world, let's say a generic murloc. By the way: look out for client side caching when changing certain things. Sometimes the client won't show updates because of that.
    I'm exicted to see the next videos! Keep it up!

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      Thanks for those awesome insights! Thank you :-) I’m definitely getting more videos done soon.

    • @Neehize
      @Neehize ปีที่แล้ว

      What leak are you referring to? I know the alpha build got leaked, but I was unaware of any server-side or actual source code leak. AFAIK, Abyss2, the server powering the alpha leak was quickly hand-crafted by reverse engineering the alpha client.

    • @spanniYT
      @spanniYT ปีที่แล้ว

      @@Neehize Not sure tbh, that's just what I heard. Maybe just rumours. I think it was like a combination of both - reverse engineering and some leaked code bits of Vanilla and BC.

    • @Neehize
      @Neehize ปีที่แล้ว

      @@spanniYT Never heard of a code leak but I think I'd be aware had there been one. To my knowledge, the code written in these cores is entirely written by hand by reverse engineering the client packet by packet.

    • @insu_na
      @insu_na ปีที่แล้ว

      @@Neehize There was no code leak. It was rumored that MaNGOS started from a leaked server, but anyone who's seen the full version history knows that this isn't true.
      Additionally, if it *were* leaked code, then you can bet that ABK lawyers would sue all open source project into the ground through code patent BS.

  • @seank5358
    @seank5358 ปีที่แล้ว +3

    I'm a software engineer and was a big wow player in the past, so interesting to see how things work. Thanks for the video!

  • @SneakyLeif
    @SneakyLeif ปีที่แล้ว +1

    I remember spending weeks and weeks getting a wrath server running on my old laptop more than a decade ago. This is extremely useful, thank you so much!!

  • @Dimka8787
    @Dimka8787 ปีที่แล้ว +1

    when ever i feel restless staying up late, and cant get my self to sleep i watch this video. My sleeping habits has hugely improved.

  • @Titi-pu2hl
    @Titi-pu2hl ปีที่แล้ว +3

    DBC files are contained directly in the client and re extracted 1:1(for legal reasons because directly distributing client sides is not allowed), those files are just "printed" data tables from blizzard's SQL database for the client to read without having to communicate with the server.
    vmaps, mmaps etc are ngenerated by extractors from reading the maps and models data to generate serverside navigation mesh data in custom format used by the server. Those extractors/generators are an important component of the emulator

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      That’s really good to know. Thank you! It makes sense new files are generated from the original.

    • @JapaAppa
      @JapaAppa ปีที่แล้ว

      Can you explain more about what you are talking about regarding DBC files and legality? I dont really understand what you're saying here.

    • @Titi-pu2hl
      @Titi-pu2hl ปีที่แล้ว

      @@JapaAppa blizzard's files are copyrighted and distributing them is illegal

    • @JapaAppa
      @JapaAppa ปีที่แล้ว

      @@Titi-pu2hl that doesn't stop anybody from doing it lol. But okay I was just confused as to what you meant with "extracted 1:1"

  • @ImAzraa
    @ImAzraa ปีที่แล้ว

    One of my first projects was to tune warrior statistics and metrics from Retail back into our emulator. Buff markers, trigger condition flags, values and multipliers as column values for the calculations, all of that. It all lived in an SQL server. The guys trusted me and a few other guys with this job.
    I recall i had to correct Armor Penetration values for bosses and their contribution and DR from trinkets and passive values in Wrath. It was hell. I loved every second of it.
    Mind you, this was back when you actually needed a brain to play WoW.

  • @arianaponytail
    @arianaponytail ปีที่แล้ว

    your video is litteraly my dream video. hanks you so much for shareing with us about all this! Great work! Very much appriciated.

  • @viktoras1236
    @viktoras1236 ปีที่แล้ว +1

    I've been waiting for this kind of video for a very long time.. such an undeveloped topic in wow community. Subscribed and will follow along!🎉

  • @peorth
    @peorth ปีที่แล้ว

    This video was amazing! as a software engineer and architect, and Wow player, I really enjoyed it! I hope you see more videos around the same topic :D

  • @butzenmummel5093
    @butzenmummel5093 ปีที่แล้ว

    I got you randomly recommended. Looking forward for this series! subscribed.

  • @ezeess7239
    @ezeess7239 ปีที่แล้ว +1

    i just came here to say i think you're beard is amazing. The colors, the shape, the texture. All of it. Amazing.

  • @hyrwow
    @hyrwow ปีที่แล้ว +2

    Mint video mate! Will be keeping an eye on this project and your uploads, this is incredibly insightful and you are very skilled at presenting things in an easy-to-digest way!

  • @alphacamo5410
    @alphacamo5410 ปีที่แล้ว

    I really enjoyed this video! I'm a software developer at the minute however I'm thinking about progressing into a DevOps role. I'm going to watch more videos from your channel.

  • @JeffNoel
    @JeffNoel ปีที่แล้ว +1

    I feel like this video should be shown in game development courses at college/university. Great introduction to the intricacies of the network structure, server setup, DBs, etc. Well done!

  • @urRuffy
    @urRuffy ปีที่แล้ว +5

    This is brilliant, I never thought about WoW from a Developers perspective.

  • @keizop820
    @keizop820 ปีที่แล้ว

    Damm your explanations are so clear! I think this project is a really good way to introduce DevOps! I haven't checked your other content yet but I subscribed without hesitation!

  • @tsuzot8192
    @tsuzot8192 ปีที่แล้ว +1

    I have one of the original server blades that WoW ran on. They auctioned them off years ago for St Jude's.

  • @unbreakable5510
    @unbreakable5510 ปีที่แล้ว +1

    Welcome to repacks! Glad to have you onboard!

  • @raphtube1
    @raphtube1 ปีที่แล้ว

    Awesome idea, dude! Keep up the good work, wanna see the rest of the series! Liked and subscribed!

  • @TheJschreib
    @TheJschreib ปีที่แล้ว +4

    Really neat - you've got my sub can't wait to come on this journey. PS: I get the sense the devs use some sort of world editor for any changes they make that handles the sql updates behind the scenes. It will be really interesting to see how changes impact the world given that we are essentially reverse engineering the data model.

  • @rampage3926
    @rampage3926 ปีที่แล้ว +1

    just old days get fresh for me like 15 years ago

  • @sirflimflam
    @sirflimflam ปีที่แล้ว

    Man this video brings me back to my time with MaNGOS in the mid 2000s. I had a small private server up and running to explore in vanilla wow, and it was fun learning they had a bunch of the Burning Crusade maps and data tucked away in the vanilla client and we could convince the client to load us into, like a WIP version of the Black Morass, a beta version of old hillsbrad foothills, among others.

  • @LuminousWatcher
    @LuminousWatcher ปีที่แล้ว +1

    Great run-through. You have me considering whether I could run that on my k8s cluster.... interesting thought

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว

      Oh yeah, totally. AzerothCore has a Docker image. You could easily run it in a container and therefore on a K8s cluster.

  • @woroshi
    @woroshi ปีที่แล้ว

    Man... I was really looking into move to the DevOps area next year and also had the desire to create my own WoW server. You just combined both things I wanna learn into one. I wish I could give you a hug. Definittely, I'll follow all your videos.

  • @DigiD702
    @DigiD702 ปีที่แล้ว +9

    Good information, Ive been working on these servers for about 10 years now, Started working on them when 3.3.5a was released so around 2008. There are tons of code, SQL and much more that go into running a server. No project is 100% so always tons of things to fix and look into.

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      It’s so much, isn’t it? Right now, as I type this, I’m actually working on a utility to abstract the DB behind YAML for 3.3.5a. It’ll make it SO much easier to work with the database.

  • @Thompers
    @Thompers ปีที่แล้ว +1

    Really enjoyed this as someone considering getting into networking

  • @mrdogfood97
    @mrdogfood97 ปีที่แล้ว +1

    Very interested to see more! I played around with TrinityCore a couple of years ago, but didn't really know what I was doing so it would be great to get more into it!

  • @lumendio3
    @lumendio3 ปีที่แล้ว

    Definitely want more! I've always loved playing with setting up a local private server. Very interested in learning how it all works.

  • @ClarkPotter
    @ClarkPotter ปีที่แล้ว

    Wow. This was unbelievable. Sub'd after about 4 mins. I've always wanted to know how these games work, and I now have an Eagle-eye outline of it, and it makes sense. Channels like this are the best part of utoob to me.

  • @GoopBalloon
    @GoopBalloon ปีที่แล้ว

    Haven't touched AzerothCore or TrinityCore in a bit, but I remember how excited I was the first time I copied and converted the alliance zeppelin in Icecrown (The Skybreaker?) from a transport object to a static one and populated it with custom NPCs above the south island in Tanaris as a server hub. Always wanted to make my own transport system though, but never got around to figuring out the waypoint system you have to pair with it.
    Anywho, this series will probably reel me back in, and just as well get way more people involved in the server emulator codebases :)

  • @dave_s_vids
    @dave_s_vids ปีที่แล้ว

    Ooh, this sounds like a fascinating series! Looking forward to more!

  • @xXhotshot55Xx
    @xXhotshot55Xx ปีที่แล้ว +1

    This is pretty neat. Can't wait to see what else comes from this video series.

  • @drshepherd6567
    @drshepherd6567 ปีที่แล้ว +1

    You and that video is amazing! Was waiting for such a thing for so long. I even played and experimented with WoW Server on my home PC a bit, but it needs so much time and then when I had it going it was just so much to learn to manipulate just small easy things. ;)

  • @djskott
    @djskott ปีที่แล้ว

    Legit series right here. Im interested in seeing your dive in to loot tables and such. Thanks bro!

  • @redplazma8030
    @redplazma8030 ปีที่แล้ว +3

    love love love this, always wanted to look inside the guts of Azeroth. Please give more!

  • @rolandtennapel5058
    @rolandtennapel5058 ปีที่แล้ว +1

    Good to see projects like these still up and running. Played WoW legit for about 6 months before I got tired (and poor) of the whole cash-model. Played 'single player' (with a local server running similar server emulation software) for years. Had a blast and could play on LAN's with friends as well (didn't put it online, at least not for long, just to test, but speeds were terrible with my setup and it was more to be able to play the game at all without the financial drain than play with friends). This was almost 2 decades ago I think 🤔😊 Tought me a lot about how things work in the background and rekindled my fire in programming 🤗

  • @saidmouhoun
    @saidmouhoun ปีที่แล้ว

    You just got a suscriber.
    Very quality content

  • @svenssko
    @svenssko ปีที่แล้ว

    Man, this takes me back to when I made a private server during TBC. Pretty sure I followed an old HSWoW guide on how to set up the World, Auth, MySQL, Hamachi, etc.. Years later when I became a data analyst I had WoW to thank for my first introduction to SQL.

  • @TimHoekstra
    @TimHoekstra ปีที่แล้ว +1

    Interesting topic to cover! Thanks for doing so!

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      No problem! Thanks for watching. More to come :)

  • @shinga_lana
    @shinga_lana ปีที่แล้ว +1

    I can't completely remember, haven't worked on this in a long time. But if I remember correctly. One of those map files helps handle to location of NPC, not only the longitude and latitude but their vertical location so they don't hang in the air or spawn underground. Same as for players if the Vmap, (Vertical Map) is out of sync you have pockets where you fall through the world.
    PS: Linux works better, however it can be run from a windows machine with a bit more configure and simulation software.
    On another note be careful that this post is not illegal from Blizzards POV.

  • @0grdt
    @0grdt ปีที่แล้ว +1

    yesterday I thought about how cool would it be to do a video about the technical sites of warcraft, well I dont have to think about it now ;)

  • @rightarchivist
    @rightarchivist ปีที่แล้ว +3

    I spent so much time trying to mod mysql to get into classic azeroth's Mount Hyjal, since it kicks you out of the area. They have a funny way of applying the debuff that I couldn't figure out.

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +2

      That’ll likely be an area trigger or a constant check in the code. Probably can’t be adjusted via the DB.

  • @slava_in3757
    @slava_in3757 ปีที่แล้ว

    Such a great video! Always wanted to know the details of how one of my favourite games work under the hood

  • @FirstLast-gk6lg
    @FirstLast-gk6lg ปีที่แล้ว +1

    OMG this is awesome I have always wanted a single player GM WoW experience I am immediately going to try to get this working

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว +1

      There’s a video tutorial that shows you how to do it on Windows! :-)

  • @davidcroft2528
    @davidcroft2528 ปีที่แล้ว

    This is great! I messed around with some of the other wow solo projects (lights hope etc) a few years ago and thought it was a great learning tool for SQL. I've worked in IT for nearly 20 years but had minimal database exposure. I managed to tweak things like the AQ quest line to complete the war effort quests - breaking things and learning a lot along the way. That was a while ago now so looking forward to following this along.

  • @StefanKastner
    @StefanKastner ปีที่แล้ว

    Thank you so much for doing this! I'm looking forward to learn more!

  • @andreasd.8928
    @andreasd.8928 ปีที่แล้ว

    This is exactly what I've been looking for. Very interested to see what's next!

  • @nirvoamagana479
    @nirvoamagana479 ปีที่แล้ว +1

    Pretty cool! Hyped for next the videos!

  • @kirarevcrow
    @kirarevcrow ปีที่แล้ว +1

    As a software engineer and a wow player myself, this video is a so much valuable in understanding how one of my favourite game works behind the scene.

    • @drafura
      @drafura ปีที่แล้ว

      You're a software engineer and didn't had clue ? really ?

  • @Steeleelsteely
    @Steeleelsteely ปีที่แล้ว

    Great video! Thank you!
    I am not sure with your field of interest specifically is - but would love a video explaining the communication that happens between the players client and the game server. What kind of packages is send, how does the server verify if the packages / action by the client is valid, etc..

  • @MrOmega-cz9yo
    @MrOmega-cz9yo ปีที่แล้ว +4

    I'm a recently retired DBA, and I'm looking into creating computer games as a hobby. So I am very interested in this series.

  • @anxiety_fitness
    @anxiety_fitness ปีที่แล้ว

    I remember when I was about 9 or 10 I made a WoW private server and learned so much about SQL by manipulating the database and creating my own items etc. and also about hosting and network configurations etc. at one point I had 100 signs ups to my server! It was so much fun so this video was really great to see as an adult now with much more context and understanding on to what actually is happening behind the scenes.

  • @denizorsel1029
    @denizorsel1029 ปีที่แล้ว +1

    For people who can't make their experiment accessible to Internet regardless the correct configuration, sometimes ISP providers block any tcp port request on their level so your router (modem) doesn't event receive the request. It is better to consult your ISP to have open port subscription or change if they dont offer it.
    Alternative to this is to create a VPN but for performance reasons I wouldn't recommend it. Last resort is to host your experiment on rental servers where you don't have to deal with network setup but yeah it costs some.

  • @fritzschnitzmueller3768
    @fritzschnitzmueller3768 ปีที่แล้ว +1

    What a great video idea! As a wow enjoyer and sw dev this was very interesting

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว

      So glad you liked it. Thank you.

  • @dannuz6365
    @dannuz6365 ปีที่แล้ว +1

    please keep doing this kind of content, always I wanted to know how WOW works and this is great for me right now because I'm programmer

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว

      Future videos will of interest to you then for sure

  • @felixburmester8376
    @felixburmester8376 ปีที่แล้ว +1

    How cool is that! Looking forward to seeing more videos about it :D

    • @MichaelCrilly
      @MichaelCrilly  ปีที่แล้ว

      There might be one coming very soon :-) (spoiler alert: there IS one coming very soon!)

  • @CheeseChuckie
    @CheeseChuckie ปีที่แล้ว

    Great idea! Would love a video series with more on this!

  • @ecogreco
    @ecogreco ปีที่แล้ว

    As a programmer and a long time World of Warcraft player, I totally love this.

  • @duanefalk219
    @duanefalk219 ปีที่แล้ว

    This is very interesting, thank you! I hope you’ll also be able to explain some of the mechanics of the game- ie the steps it goes through in determining dps or aggro or loot drops.

  • @GraubartDerErste
    @GraubartDerErste ปีที่แล้ว +6

    I barely understood anything, but Murlocs are love

  • @droojohnson
    @droojohnson ปีที่แล้ว

    This series rules. This series rules. This series rules.
    I dived into AzerothCore a couple years back when I realized I really needed a better handle on backend development. It was enormously helpful, and learning about the data structure of the game was also super enlightening. The composability of it all is baffling, in the neatest way.

  • @axel_r_
    @axel_r_ ปีที่แล้ว

    Awesome work! Subscribed!

  • @xLycannonx
    @xLycannonx ปีที่แล้ว +4

    This is so cool! Thank you for breaking all of this down.

  • @cryogenical_
    @cryogenical_ ปีที่แล้ว

    I find it such a clever way to approach a game that's live effectively 24/7 but still needs frequent tuning. Someone can just quickly change a database value without ever needing to turn off any servers in order to tune a fight.

  • @martincets8334
    @martincets8334 ปีที่แล้ว

    Fantastic video mate! I just found your channel and have subscribed as I would love to see more of this. If you do, I would be grateful if you could go into more detail about how the database synchronizes changes done to entities with multiple clients, for example, an NPC getting affected by multiple clients such as heals, attacks, buffs and debuffs at the same time.

  • @therealjordiano
    @therealjordiano ปีที่แล้ว +1

    Not the hero we expected, but the hero we need to master CD

  • @jacobester3846
    @jacobester3846 ปีที่แล้ว +1

    Amazing video, thanks! I have been wondering about this.... I know that the game's data (information, player stats etc.) is constantly being written/read to a database. But surely things like player position/animations/spell effects that are being synced many times a second are not constantly being synced over the database? Are those things just being handled by non-persistent host that deals with specific things that happen in the game that do not need to be written to the db?

  • @overdev1993
    @overdev1993 ปีที่แล้ว +1

    this takes me back 15 years ago where I did have my own small emualted WoW private server, I fooled around with MySQL and the databases aswell :)

  • @GreenwoodTony7
    @GreenwoodTony7 ปีที่แล้ว +1

    I'm very interested in how it all works. Looking forward to this series.

  • @Orodben
    @Orodben ปีที่แล้ว

    Very interesting video. There are three things I am interested in specifically: Can you add a NPC to the database and set a spawn location? Can you change or add objects like houses or guard towers? Can you create your own quests?

  • @NvrKill
    @NvrKill ปีที่แล้ว

    DBC Files are there for Pre-Load the Database Information to the Client. It also stores the sounds and references to styles of armore etc.
    Map Files are the Map at it selfe.
    MMaps (Meta Map) Files are for the Meta informations of the terain like tree positions etc.
    VMaps (Visiual Map) Files are the Map Information for the visual Information of the terain like tree styles etc.
    Maps, MMaps and VMaps are needed so NPCs, Players and Object don't feel through the ground. It also says if a Player/NPC can walk through a wall or not.
    This is the simplified explanation of the files.
    Correction here:
    Auth Server is a server that runs apart from the world server. This requires an SQL Database or an SQL Database-Tablle too. In Mangos, Trinity and ArcEmu Cores (AzerothCore is based on Trinity), It's a simple authetification, where the passwords are stored as MD5 string. It only checks if username is existing and if the password ist matching to the username.

  • @kveldulfpride
    @kveldulfpride ปีที่แล้ว

    I'm a Network / Voice engineer, and I'm sold. I'll be taking a good long hard look at doing this in my lab.
    I have made inroads with python and dabbled with SQL, so this seems like dessert.
    I use to be more of a table top nerd too, which probably contributed to reservations I've had as wow evolved, particularly with stat inflation - with each expansion. Really left a sour taste in my mouth (example). Something I'd like to revert and polish (along with a lot of other ideas).

  • @angrydonut6998
    @angrydonut6998 ปีที่แล้ว

    I remember running one of this without a clue on what I was doing just following tutorials on internet forums :')

  • @Miztingz
    @Miztingz ปีที่แล้ว +6

    Very cool video!
    From a purely devops point of view it'd be cool to see 15:13 done as a hotfix, zero downtime etc which is what you're always looking for
    From a nerdy wow player point of view, it'd be cool to investigate the lag that happens in current retail wow due to massive amounts of random number generation, and where the bottleneck is with the large amounts of data that are flowing at any given time

  • @kirksaintpatrick3921
    @kirksaintpatrick3921 ปีที่แล้ว +1

    Please keep up this series!

  • @canberkak4678
    @canberkak4678 ปีที่แล้ว

    Love it. Great work. Please continue with this series

  • @thingthing978
    @thingthing978 ปีที่แล้ว +1

    Dang Michael, you're blowing up!

  • @itsatrollworld
    @itsatrollworld ปีที่แล้ว

    This is awesome! Looking forward to more of these!

  • @CookieCurls
    @CookieCurls ปีที่แล้ว

    I’m actually amazed how simple it is.

  • @HorusDidNothingWrong-fq8ix
    @HorusDidNothingWrong-fq8ix ปีที่แล้ว +2

    Oh my god this is amazing !! 🤩