Marketplace Multiplayer Large Player Scaled Servers

Hi! I’ll jump right in…

“Minor” is up to debate. And existing games would involve a lot more effort than starting one from scratch. With the prototype, there is a bit of work you need to do to get your actors to replicate across the cluster. It’s not difficult, but it does add some complications. In the final product, however, there would be no code changes required, or maybe some minor stuff involving setting up the cluster. I haven’t gotten there yet because UE4 is a behemoth and I’ve been learning it as I go. My tech was designed for XNA, then I ported it to Unity, and then UE4 went open source so I ported again. So it’s not as integrated as it will be, but I think the extra work involved is worth it.

Also, there are some areas where I haven’t gotten to yet, such as sessions. Right now, I don’t handle sessions. A cluster is just running a single game instance. For sessions, you’d want a higher-level system that created and destroyed clusters to service game sessions. That, and probably a few other loose ends, can be tied up if I can get help/funding/etc to take it to the next level.

Yes, the cluster currently does its own replication on the back end. Right now, you do this by deriving your actors/pawns/etc from my shim classes, which sit between the UE4 class and yours so they can get the data where it needs to go.

Players are split across the servers and which are hosting whom is up to the hosting solution, which would be specific to the game and business model. You set up the server configuration as you see fit. There are worker nodes and gateway nodes. The gateways let clients into the cluster (via standard UE4 comms/replication) while the workers run the NPC/physics/etc stuff. You can run as many gateways and workers as you want.

You bring up a good point of clarification. This doesn’t work like Cloudgine does (Crackdown 3). I do not segment the world and assign a server to handle each region. In my system, all servers cover the entire space and the objects in the space are distributed across the servers evenly. No load-balancing yet, but that is a possibility.

This tech is designed to be run across many machines but you can run an entire cluster on a single box if you can/prefer. The back end uses ZeroMQ to handle cluster messaging and it’s set up so multicast will benefit performance. So it’s recommended that you run a cluster on many machines, but it’s not a requirement. This tech is designed to run across dozens, hundreds, maybe even thousands of nodes if I can get help with turning the prototype into a product.

That depends on what you mean. The cluster runs on an internal network. This is important because the nodes need to have a lot more bandwidth and a lot less latency than the Internet allows. But the gateway nodes mean you can host the cluster online just like any other dedicated server. Players connect to the gateways over the Internet but the cluster itself is tightly bound.

I can’t tell you what the scalability curve looks like for certain because I’ve been working alone and I have no budget. I have run the cluster with up to 4 nodes on separate boxes and the scalability looks spectacular. The key is what I’m doing on the back end. The work there is itself distributed across multiple nodes so there’s no telling when the scalability will drop off. I’m sure there are limits but they are already very high, and this is a prototype so I think it could be even better if smarter people than I helped take it to the next level. There’s no minimum cluster size, but if you’re just running one server then the back end is pointless, so I’d say two is the minimum you’d require before this tech was of use to you.

The system should support hundreds or even thousands of players. The cluster back end doesn’t know the difference between players and any other object type, so the max player count should be the same as the max object count.

I’ve stress-tested the **** out of this thing and it’s stable. I don’t have a test server for you to try because I do not have the money to pay for hosting. I did that once or twice as I needed to do testing, but those were just hosted for a month or two and never went above two machines.

The prototype is pretty much ready to use. It might even be sufficient to support a release game. If you wanted to use it the way it works now, then it will be ready very soon. If you want it to be the ideal product that it will eventually be. then that depends on how much help/funding/etc I can get. It’s almost there now, but I still need to utilize UE4’s replication system to support the cluster back end instead of doing it myself.

This prototype has been evolving over 5 years so it’s hardly a good candidate for a code base. It needs to be understood by real experts and built as a proper product. On the bright side, the system isn’t all that complex so it shouldn’t take long to do that.

I’m not sure about pricing. I want this to get into as many hands as possible but I also want to see some payoff for all these years of effort and sacrifice. I was thinking I would charge a small upfront fee for the plugin and then get a piece of any games that did well using it. Like what Epic is doing with UE4. Additionally, I am interested in working with Epic directly. I think this tech would be something they’d want to build into the engine as a default . Then I would deal with them about compensation, I suppose. But the important thing to understand is that I care more about this technology being used than I do about profiting from it. If I have to open source it with a GNU GPL then that’s an acceptable worst-case. I won’t smother it in a struggle for fame and fortune.

So that’s all the questions. Thanks for the interest! If there’s anything else I can answer, let me know. I am working on a tutorial project now and I want to make a video going through it. Then you can see what it looks like inside and out. Unfortunately, I’m the only person working on this and while I may be a creative problem solver, I’m no UE4 guru – or even particularly brilliant for that matter. Then again, that hasn’t stopped me so far. :slight_smile:

Hello,

I am interested in knowing more about your plugin, do you have any idea as to when you would be able to show a demo/become available for use?

If I had any facility with C++, I’d gladly offer my time to your project. As it is, I must simply spectate from the sidelines.

The lack of sessions would not be a problem for our game, as it is designed to be a persistent multiplayer rpg.

How long has it been since you applied for the dev grant?

As a side note, if you making any kind of online, especially persistent game, you probably should learn c++.

I didn’t say that I could not program in C++. A number of things in our game can’t be done in Blueprints and are in C++. We’ll eventually covert everything to C++ but as C++ makes my eyes bleed, BPs will do for now. :slight_smile:

Hi! It’s coming soon. I’m trying to tie up loose ends and make everything as presentable as I can. I have some early test videos up. You can find them on my channel at ](). You can also follow me there for the videos I am working on now.

It’s been about a month. What I have to present isn’t much to go on. I was hoping Epic would recognize the implications of my claims and help me prove them. Once I get to this next milestone, I will have enough to warrant applying again.

One good thing about my tech (it’s called DUET) is that making a top-notch game (almost) entirely in blueprints becomes feasible. Since you are no longer limited by the processing capacity of a single server, you have plenty of room to get a bit inefficient. It’s not license to be lazy, but the wiggle room is there so I think getting everything into C++ will no longer be required. I’m sure some game mechanics will present exceptions, but in most cases, most of the game can be in blueprints. I guess it kind of transfers the cost of coding in C++ over to the cost of additional servers.

Hey @anonymous_user_64f7311b - I would recommend making a thread about DUET in the Work in Progress section for giving your tech more exposure. I am pretty sure that the community would like something like this. :slight_smile:
Let me know when you do that and I will post this in a few places to give you more exposure. :slight_smile:

That said I am curious about a few things.

  1. What Operating system(s) does this support?
  2. Does this support crossing server bounds seamlessly?
  3. Is there a “hard cap” on players that can be in a server?

Has your project evolved or is it postponed?

@ If you mean me then oh yes. There has been a lot of progress. It’s ready to be used in games. Since no one would reasonably risk their resources on an unproven technology, I’ve been working on my own game and it’s coming along very nicely.

Sorry for the delay in response. I didn’t get a notification, I just happened to end up back on this page.

Cheers,

Do you perhaps have something to demo?

I’ve looked at one of your old videos. Do you have anything that isn’t a physics simulation? Somethings along the lines of a MMORPG?

@anonymous_user_64f7311b there are always people willing to invest in unproven technology. I currently did on a different product in the meantime. Don’t get discouraged though. Post updates, show what you have…

Thanks for the encouragement. I can use as much as I can get. :slight_smile:

I’m almost ready to show what I have. The AI system in UE4 leaves a lot to be desired so it hasn’t been easy getting AI to use cover in large groups (efficiently). Once I can get that looking good enough, I’ll start posting my results. It’s just that since much of the power of this tech is in allowing for ultra-smart AI, the sky is the limit. You could practically run IBM Watson in a game if you wanted. Because of this, at the very least, I don’t want my demo AI looking like the Keystone Cops.

I’m close tho. Then I’ll have a game prototype that is ready for the art, better animations (over time), and improved mechanics – especially the AI. Hopefully I can get some people interested in a sweat-equity deal and/or try to get crowdfunded.

Cheers

You’re right, it’s just that despite his contradictory statements it is specifically about profit and he asks for ***A LOT - ***more than you’d expect it to cost were it proven technology.

Is the server technology your main focus or are you primarily interested in producing an MMO?

Hi again!

I’m so incredibly happy to direct you to a series of videos which outline my dedicated cluster technology and how to use it. I am solo and have no funding, so you will need to see past the very humble nature of my presentation, but I doubt that will be hard for you all. Anyone who understands the problems involved should be able to see the power of this tech.

Please watch and let me know what you think. Once I have a forum post set up for the tech, I will come back and post it in this thread. Thanks so much for being patient!

EDIT: The main thread is here.

PS: Rhynedahll, sorry I missed your last question. I’d love to be involved in an MMO project that used my tech but right now, my focus is on providing a tool that others can use rather than using it myself. I’m really not much of a game developer. I’ve just learned what I had to so I could build and demo my tech.