MMO Project

I’m working on realizing a concept I have for a couple of years now.

It’s an ambitious Project involving the use of Playfab, a dedicated server using Photon to communicate with Clients (no unreal replication), Database management and so on.

I prototyped the base requirements for the features I’m planning successfully that includes :

Photon implementation via Plugin, fully exposed to BP with optional authentication via Playfab

Implemented compression lib for huge Data chunks like Map data on Login

Plugins for json Handling, making heavy use of Struct to json and reverse operations super easy.

Plugins for Grid usage, handling the pathfinding and grid operations that are not BP friendly.

as well as threading and sql in BP

Communication functions for Client Request / Respond and Server Request / Respond calls.

what I did so far for the game itself is a Login system, with email verification and the client request for the Map generation with a response resulting in the generation of the Map that was created in the Database from a template triggered by the first Login.

The idea for the game itself revolves around a production City building aspect in a limited grid environment. Ressources can be generated, crafted, traded or converted into a special currency. Ressources can also be used to recruit Units for military usage or to unlock new Maps to increase overall Production.
Warfare with guilds and parties, and a special vs turn-based game mode to make use of bounty acquired by military operations or due to reaching special conditions.

Monetization for this game is intended in a non-destructive form, integrated into the game’s economy.

Its currently only me on this Project, but in case that stuff sounds interesting to you and you want to be part of it, let me know.

About a week has passed

Ported to 4.20, Implemented Server side Items and Units and made the functions to use them via Photon Requests.

At this moment I’m working on the Server mostly because I feel like this is the hardest part.

But since there is so much to implement on the Server Side alone, its sadly nothing I can present with a video to showcase functionality at this point.

The Client Side has Widgets written for various Uses already, nothing completely finished or implemented with Server code though.

There is a big need for a lot of Playfab Blueprint writing, which is completely separate from any Server / Client communication.

The Workflow of using Playfab is pretty straightforward, the API doc gives examples for every returned JSON struct. The returns that have custom implementable values, need to be serialized though, which is quite a bit of legwork as shown in this example for Just the Roles of a Group returned by for example this JSON string.

{ "code": 200, "status": "OK", "data": { "Groups":  { "GroupName": "Example Group", "Group": { "Id": "ABC1234ABC" }, "ProfileVersion": 17, "Roles":  { "RoleName": "Example Role", "RoleId": "ABC123DEF" } ] } ] } }

I made a Discord Server to get in touch easier join and talk to me there if you want to jump in on the fun.