Unity, MMOs, and Pantheon

  • Unity, MMOs, and Pantheon

    (originally from a post I made on YouTube in reaction to Bazgrim’s video on the subject)

    Unity has been fantastic. It allowed us to start with virtually nothing -- we could download art assets, we could use built in code like UI, gameplay, network, shaders, etc. But then as we have grown, we have been able to test and use other libraries and functionality, many geared more for MMOs. Then, even more recently, we've begun to replace shaders with our own code, stock assets with our own assets, developing a solid content creation pipeline that incorporates popular and professional tools as well as in-house Pantheon-specific tools, and more. I have personally chatted with various people at Unity including the CEO and their goal, now that they feel they have the top engine for smaller teams and projects, is to compete directly with the higher end engines often used by AAA teams and at larger companies. To that end, Pantheon is very important to them because it's an MMO. I don’t know of any other genre that pushes every aspect of game development like MMOs do.

    With MMOs, networking code and support (and speed and efficiency) is paramount. At this point we are using code that is plenty robust enough to take us into alpha and probably beyond. That said, we are also considering our own network layer to make things run even more efficiently and to give us the control we need to create both vast regions with hundreds or thousands of players and NPCs, as well as smaller areas packed with gamers perhaps doing a raid (or some other get-together). What’s key is we have options – modify what we’re using now, take advantage of tech that appears in the future, or even write most or all of our own tech.

    One of the things that excites me the most is how often they update and also how easy it is to incorporate their updates into our game. If you look at our early streams and then follow along chronologically (as Baz did a bit in his video) you can see the visual fidelity go up and up. This is a combination of us getting better, putting in our own assets, modifying the engine itself where necessary (e.g. our own shaders and more), and Unity themselves consistently upgrading and expanding upon the capabilities (including the visual graphical goodness). Our efforts and their efforts combine and there have been several jumps in fidelity and performance since inception. And, quite honestly, this is an ongoing process and it really gets me excited. We are constantly working on both the guts of the game as well as how it looks -- we want watching the game to be as compelling as possible, not just playing it. In fact, our next major milestone, Project Faerthale, incorporates both a lot of new gameplay but also the graphics, animations, etc. have really leveled up.

    So I'm feeling great about: 1. how far we've come (just look at the early stuff), 2. where we're at now, where we can put up screenshots that I think are pretty impressive, even when compared to other new and AAA titles, and 3. where we're going to end up at launch, again with tons of new art assets and graphical upgrades we're doing in-house as well as using the version of Unity that exists then as opposed to now. And this is key: normally, doing both would be a real headache - in my last project we had to eventually stop incorporating the latest engine updates and fork the code completely, taking the source code and heading off into the best direction possible for the game we were making. In fact, we did this with EQ as well – in that case the engine company was small and eventually shut down. So we had to grab all of the code, hire one of the engineers that worked on the original engine, and create one of the first MMO engines ever even though we were already well into development. That wasn’t easy – it paid off, but it took resources and time.

    This has NOT happened with Unity. We've been able to upgrade to their more recent versions, often with not a lot of work involved. And there's nothing more rewarding than seeing your game suddenly advance in visuals, or in performance, etc. just by upgrading to a newer version! In a sense it's like we have two teams, we get together and merge our tech on occasion, and the result is fantastic. Stuff like this did NOT happen even 10 years ago. Honestly, I can't even envision how good Pantheon will play, perform, and look at launch. And then, of course, there’s the Grand Vision -- where we'll end up taking Pantheon post-launch. You see, we're not stopping, and neither is Unity. We’ll always continue to push the tech to make a better looking and playing game. So Pantheon Expansion #3, just as an example, will likely look upgraded, even in the same older areas, than how it looked at launch. So yes, absolutely we made the right call (not that there aren't other awesome engines, with trade-offs of course, out there). But I know Unity was the right choice for us at inception and then has continued to be and will continue. Again, I would recommend you find really early videos of the game, then check it out a few months later, and then check out the next one after that, etc. To me, that's proof of what I'm talking about, that I'm not just drinking my own Kool-Aid here -- the proof is there and there's zero reason not to assume both Visionary Realms and Unity will continue to play very well with each other far, far into the future.

    In the meantime, if you are a developer, whether a couple of guys in a garage or a well-established team and studio, I’d definitely study the top engines out there and of course pick the one best for you both at this time and thinking of where you’ll be in the future. And you know what? Unity may well be that right choice, that choice that both lets you focus on game development right away and also doesn’t cause you to regret your decision months or years later.

    -Brad McQuaid

     June, 2019

     

3 comments
  • Kratuk
    Kratuk A Brad Blog! It must be Christmas. We thought you had forgotten about this little section of the website, sir. Good to have you back. And looking forward to seeing how well Unity performs as an ambitious MMORPG build in alpha.
  • GoofyWarriorGuy
    GoofyWarriorGuy You've talked about in various streams that you would like to have some UI editing ability for the players. Not addons, but the ability to customize the UI. Will this require Unity knowledge or will the UI be in some other script language? I just want to...  more
    Jul 6
  • mrjimorg
    mrjimorg For their networking I wonder if they've considered using RDMA acceleration. There is potential for huge acceleration using Mellonox on the server end and RDMA code on the client.
    Jul 9