Announcement

Collapse
No announcement yet.

Distributed UE4: Dedicated Cluster Technology

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Distributed UE4: Dedicated Cluster Technology

    Hi all!

    It has been a very lonely slog-fest for many years, but the toil is over. Now I can stop telling and start showing.

    My tech is called "Distributed Actor Technology" (DAT) and it allows you to distribute actors across multiple dedicated servers and they will all interact as if they were on the same server.

    Distributing a game across multiple servers allows you to build much more robust worlds with many more actors - and with AI as intelligent as you can make them. You don't have to worry about the overhead because you aren't limited to the resources of a single server. Now, DAT isn't magic, so there are still considerations and limitations, but they are mostly on the hardware side and are very well beyond the limitations that you have been stuck with before now.

    The API is provided from within a standard UE4 plugin and using it isn't too different from standard server development. For example, DAT does not get between the client and the server, so all of that work involves standard replication. Using the plugin does not require any changes to the engine source.

    I hope you will watch my presentation videos (https://www.youtube.com/playlist?lis...cpvzEupsK1j_9m) and let me know what you think. I'm open to any comments or questions. It's a playlist so don't stop at the end of the first one or you'll miss the best parts.

    EDIT: Please watch more than just the in-game footage. The videos get into the code and blueprints.

    My primary goal was to unchain AI developers and give them room to build their dream bots, but the tech does a lot more than that (i.e. more players, better physics).

    I hope what I have to show is enough to get the kind of backing I'll need to take it to an even higher level. I think there's enough frustration out there that DAT should get the attention it deserves.

    Fingers crossed,
    Jin
    Last edited by Jin_VE; 07-11-2018, 04:52 PM.

    #2
    For some reason I can't edit my OP. I just want to make it clear that the link I gave is a playlist. Don't stop at the end of the first video or you'll miss the best parts.

    EDIT: I found an editor that would splice my existing videos together so I put up a single clip and got rid of the separate ones.

    EDIT-2: The average view time on my first video (of ~30 minutes) is 5 minutes. Please watch more than just the in-game footage at the beginning. I also cover the code and blueprints.
    Last edited by Jin_VE; 07-11-2018, 10:51 PM.

    Comment


      #3
      So magic then? :P

      I was watching some of your videos earlier before you posted here possibly (they came up in my stream).
      Our game has become very coop focused, so this could be very useful to us.
      We currently limit our basic player vs. AI game mode to 50 AI max.
      Being able to split the load between multiple servers would allow for much more in depth stuff to be achieved on the AI side of things.

      Look forward to checking this out more in future.

      Thank you.

      Rule#21: Be polite, be professional, but have a plan to kill everyone you meet.

      Comment


        #4
        Originally posted by Kris View Post
        So magic then? :P

        ...
        Thank you.
        Thank you! Glad to hear YT is doing its job, hehe. And yes, this tech works so well because running a remote representation of an AI doesn't include the AI logic. All the 'smarts' are handled on the local server. That means you can run lots of AI and make them smarter. I really think AI devs are going to love the freedom they get. And as a player, can you imagine a friendly AI that doesn't run through your line of fire?

        Nice looking game, BTW. I'll save the link.

        -Jin

        Comment


          #5
          Oh, and the same goes for players, by the way. Supporting a player connection is quite a bit more work than running a remote representation so you can fit more players in as well.

          Comment


            #6
            Ok,
            Got a question - Are you making use of the recently added Significance Manager?

            https://docs.unrealengine.com/en-us/...ficanceManager

            I hope what I have to show is enough to get the kind of backing I'll need to take it to an even higher level. I think there's enough frustration out there that DAT should get the attention it deserves.
            Have you applied for a dev grant, tried to do a Kickstarter / Indiegogo or patreon campaign for this?
            Not sure if you mean financial backing here or just people using the tools.

            Also post the link to your discord. I would love to ask you some more questions
            Last edited by HeadClot; 07-06-2018, 02:46 AM.

            Comment


              #7
              Originally posted by HeadClot View Post
              Ok,
              Got a question - Are you making use of the recently added Significance Manager?

              https://docs.unrealengine.com/en-us/...ficanceManager
              No but if I can get a business going and hire help then we should be able to tap into that system and reduce the load on the Gateway servers. I'm pretty excited about this possibility.

              It might be important to point out that the back-end nodes don't know what UE4 is. They are engine-agnostic. We could easily adapt this tech to another (good) engine. In fact, we could run nodes of different engines in a single cluster if we had a good reason to.

              Originally posted by HeadClot View Post
              Ok,
              Have you applied for a dev grant, tried to do a Kickstarter / Indiegogo or patreon campaign for this?
              Not sure if you mean financial backing here or just people using the tools.
              I did apply to DevGrants as well as an indie-focused VC company. And I'm looking for backing in other areas too. I'm open to all possible opportunities but obviously they have to be honorable people who want to do good in the world.

              I was thinking about a Patreon but I felt it was a bit presumptuous to start it before I even got any traction. I'm not seeing too many views and not even one like on the video itself (other than my own). But it's early and a pretty common vacation week -- is what I keep telling myself.

              Anything anyone can do to help spread the word would make you my hero and help get this tech the attention it deserves. Honestly, it's become so much bigger than I am. It deserves smarter people than me working on/with it.

              Originally posted by HeadClot View Post
              Ok,
              Also post the link to your discord. I would love to ask you some more questions
              We are friends on Discord and you are already a member of the channel. I messaged you when I put the videos up. Or maybe you changed your account, cuz I never see you online anymore.

              Everyone else: Right now I'm keeping the Discord channel semi-private but if anyone wants in they can just ask. Send me a PM through this site with your Discord info and a bit of why you're interested in this tech.

              EDIT: If anyone does want to help me get eyeballs then please consider tweeting about it and/or giving this an RT. Thanks!
              Last edited by Jin_VE; 07-06-2018, 12:30 PM.

              Comment


                #8
                The average view time on my first video (of ~30 minutes) is 5 minutes. Please watch more than just the in-game footage at the beginning. I also cover the code and blueprints.

                MODERATORS: I still can't edit my OP. Can you let me know why or fix it?
                Last edited by Jin_VE; 07-11-2018, 10:51 PM.

                Comment


                  #9
                  This technology looks amazing, do you plan on having a Beta or releasing on UE Marketplace. Or since it sounds like you are looking for funding, is your plan to go for the 'enterprise' level? I hope we can see this in the hands of indie developers as big studios already have teams to build server backend.

                  Comment


                    #10
                    Looks really awesome.

                    Comment


                      #11
                      Originally posted by SlavaStronken View Post
                      This technology looks amazing, do you plan on having a Beta or releasing on UE Marketplace. Or since it sounds like you are looking for funding, is your plan to go for the 'enterprise' level? I hope we can see this in the hands of indie developers as big studios already have teams to build server backend.
                      Hi! I definitely want this to get to everyone for a relatively cheap up-front cost (with some % on the back-end). The problem is that I need a financial foundation in order to support my customers. Plus, while it's ready for use and stable, the tech is still a bit of a prototype. Like if you use it wrong, a debug-check will trigger. I should have lots of graceful error messages and robust documentation. Stuff like that.

                      So I'm open to any offers at this point, but I think the best way forward is to partner with some game devs of high caliber (indie or not) and/or get some startup investment. The good news is that there is no more need for R&D. It all works and does it well, but there is room for improvement/optimization throughout. So I just need a little funding for operations, and eventually, to rebuild the tech with a team of people smarter than me.

                      Thanks for contributing! Any help spreading the word is deeply appreciated.

                      Cheers,
                      Jin

                      Comment


                        #12
                        WoW, This is one of the most impressive things I have seen in a long time. And all works with UE4 standard replication. + Feature to cluster Actors, Pawns, separately on different server instances sounded soo good. I wish you the best in finding a financial foundation for this technology so we mortals can get our hands on it in the near future.
                        3d Artisit / Generalist
                        Portfolio : https://positivity.artstation.com/

                        Comment


                          #13
                          Originally posted by Positivity View Post
                          WoW, This is one of the most impressive things I have seen in a long time. And all works with UE4 standard replication. + Feature to cluster Actors, Pawns, separately on different server instances sounded soo good. I wish you the best in finding a financial foundation for this technology so we mortals can get our hands on it in the near future.
                          Thank you for noticing! It says a lot when someone can recognize what this tech means. You need expertise and imagination to look past my dinky graphics and see the potential of the tech.

                          It is indeed very well-integrated into UE4. So much so that (if you build your game right) you can run it as a cluster, a standard dedicated server, or a standalone single-player game. My primary focus was to provide a standard plugin with no changes to the engine source and minimal difference from standard replication. Another benefit there is that you're using the standard UE4 comms -- you don't have to worry that my client/server comms are less robust or less secure because I don't get in the way of standard comms (other than an optional client-side smoothing feature).

                          If you want to get involved in some way, please DM me and we'll get you into the Discord for starters. Anyone who wants to see this tech available could help it succeed with minimal effort. There's no contribution too small -- even posting here helps.

                          Cheers,
                          Jin

                          Comment


                            #14
                            I'm opening the Discord to anyone who wants to join: https://discord.gg/BVRwUtF

                            Please feel free to hop in. I'd still appreciate getting comments/questions in this thread, if you can oblige.

                            Comment

                            Working...
                            X