RPG MMO Server System for UE4

@eolet

Yep, modular is the way to go! If you are interested in testing this product or in guiding its development (most of the features have come from user requests), you can join us here:

I have an exciting update. I have a large portion of the Gameplay Abilities system working in my starter project. For those that don’t know what the Gameplay Abilities system is, it is the system that Epic used for Fortnite and Paragon and it is awesome! Unfortunately the code is not finished and a lot of it is not exposed to blueprints. But I have been adding missing code and making it work completely in blueprints. You might be thinking, I have my own ability system, I don’t need another one. But does your ability system have network prediction? If it doesn’t, don’t expect for your multiplayer game to work over the internet. Here is a good read on what network prediction is and the problems it solves:

https://docs.unrealengine.com/latest/INT/API/Runtime/GameplayAbilities/FPredictionKey/index.html

The good news is that the Gameplay Ability system has network prediction built in. Another plus is that you don’t have to add your own RPC calls with the Gameplay Ability system, it replicates everything for you. And I am connecting the Gamplay Ability system to my server software so that it will keep track of which abilities your character has and persistently store ability menu setups and spell slots:

The problem with most frameworks is they aren’t flexible enough, but this system is extremely flexible. To use it you create Abilities, Effects, Cues, Tags and Tasks and you can mix and match them however you want to create an endless number of abilities and spells for your game. You get ability cost and cooldown functionality built-in. You can use fixed value formulas, attribute based formulas, or use my custom calculation BP that lets you calculate your complex formulas using a blueprint graph. I am working on setting up patterns for popular ability types and targeting modes to show how it works. Right now, I have the following patterns configured:

  1. Swing a melee weapon and then apply a gameplay effect to the target when the collision sphere on the weapon hits.
  2. Self Heal or Buff
  3. Cast a spell on a slected target
  4. Use the mouse cursor to place an AOE target and hurl a projectile at the target area
  5. Use the camera to aim an AOE target and cast a spell

Here are a few examples:

http://rpgwebapi.sabredartstudios.com/Content/Images/Ability1Anim.gif

http://rpgwebapi.sabredartstudios.com/Content/Images/Ability3Anim.gif

If you have any questions about this system, I am usually here:

Space to Planet to Space - Spherical Zone Portals

Want to make a multiplayer game with space combat and ground combat? Now you can. In the following demo I show you how you can use spherical zone portals to transfer between your UE4 space map and your ground map(s). In the demo below each of the two maps is running on a separate UE4 server instance. I would recommend using our world composition multiplayer map solution to build a large 20km zone that spans a large number of servers and then use an additional server for the space combat map. Because the spherical portal transfers you to a unique location on the planet based on where you enter the atmosphere you can do a lot of exciting things, such as flying into one side of the planet to evade an enemy ship and then flying along the planet surface to exit the planet atmosphere on the other side undetected. Tomorrow I will upload a copy of the starter project with this spherical portal feature and these two demo maps so you can test it out.

I am really looking forward to this :smiley:

now that is a feature that would make me want to use this. is this for sale or how would a person use this?

@The_Mec_666

It is not for sale yet, but it will be very soon. Just wrapping up a few things before the first release. If you are interested in trying it out, you can join us here to test it:

Two videos from one of the users of the Open World Server System

Two videos from one of the users of the Open World Server System showing how easy it is to integrate other popular marketplace content:

The Dungeon Architect system could be used to launch an infinite number of dungeons in the Open World Server System and save the generation seed to Custom Data in the Zone table in persistent storage to make sure it regenerates the same one later.

The ARPG Inventory system in this video is integrated with the character’s persistent storage in the Open World Server System.

Character Creation and Selection

Just finishing up the last piece before version 1 release: Character Creation and Selection. The User object is separate from the Character and each User can have zero or more Characters. The User object can be created in advance of opening the game (on a website where you might do payment processing) or from within the game itself. When you login as a User (username/password) in game, you get access to BP nodes to query for all attached Characters, Create a New Character, Delete an Existing Character, Update Cosmetic Character Data, etc. When you select a character, then your client is connected to the appropriate world server based on where that Character is located in the world.

These BP nodes will support a large variety of Character Creation and Selection schemes, but here is one possible use case that is included in the Starter Project to show you how the BP nodes work:

HI Dartanlla,

The Dartanlla Open World Server (DOWS) in looking fantastic! The Space-Planet Zone feature is a Jaw-dropper. No Man’s Sky eat your heart out. I’m going make a use for that feature one way or another. Perhaps it will be ideal for the Large Area Teleportals in which you can see two different worlds merge. Large Area Teleportals are interest in our game dealing with Time-Space Dimensional Rifts. The challenge I need to solve is display and update imagery between the Worlds on the SceneCapture/Render targets on different severs. Video Streaming is one possible solution. For the past week or so, I’ve been developing a Portals Gun System. The integration of DOWS has crossed my mind, more than once. Its a possibility that I’ve been subconsciously influenced by DOWS. So I stopped by to see how you’re doing.

Hey TechLord,

Good to hear from you. Your new game with time-space dimensional rifts looks kewl. It is interesting that you mention streaming scene-capture/render targets from one server instance to another, because I was asked about this recently by a prospective client. There is a communication channel system built into UE4 for communicating between servers, this may be a possible way to do that. The problem I see is that streaming video data in real-time is probably going to be expensive, but would definitely be something interesting to look into more. I was also planning on looking into server to server communication to “show” players locations beyond the zone boundaries of a server instance. That seems like a bit less data to transmit, but the idea is still the same. I will let you know if I come up with anything useful.

Here is a video showing the account and character creation system:

Do you have any news on the general availability of the system?

It is already available. Quite a few game projects are already being developed with it. If you go here, I can get you all setup:

I’m very interested to see if this project would work well with my own current project.
I just jumped into the discord server, and introduced myself. Not entirely sure where to go from there.
There’s like 24 people online, and nobody’s saying anything, lol.

Hey Guys,

I haven’t posted here in awhile, as I have been busy building an exciting new MMO using OWS (more details on that to come soon). Dozens of other UE4 development teams are already using OWS to build their multiplayer games and I hope to show off some of their work soon as well.

But today I have a great new feature to show off in OWS: the ability to see players across zone server boundaries. To do this I created a network of zone servers (UE4 server instances) that all talk directly with each other and sync player location data in real-time. This data is then used to create proxy characters on adjacent zone servers that are controlled by AI to mimic the original players movement. Here is a video showing how it works. Let me know if you have any questions. This feature will be available in the upcoming V31 release.

This looks very interesting.

Did you modify the engine to make this possible?

I did not have to modify the engine to use these communication channels. However, I do have an engine modification to allow World Composition to work in multiplayer games.

Is the source for the World Composition modification included with the Publisher License, which is yet to be put on sale?

The source for the World Composition update is freely available and you can get it here:

https://github.com/EpicGames/UnrealEngine/pull/3313

The publisher license for OWS is on sale, and I have sold quite a few copies, I just have not started promoting it yet.

Excellent! Thanks :slight_smile: