I can’t help but bite on this passive aggressive message. Your structure looks perfectly fine as it is now. Tell me though, what happens when you start having hundreds of players? Thousands? Then thousands of NPCs roaming for the players to grind? How do you handle bigger lands, where you need to zone of areas to separate server clusters? Server transitions? Possible instances? How much of the game logic is handled server side to counter user exploits?
Using the built-in networking system is perfectly fine for a prototype or starter kit, but make sure not to give people false hopes of the capabilities on the server side. There is a reason why MMOs run in dedicated server halls.
Don’t get me wrong. An MMO can run on one server if it is a basic game with proper optimization. I’m just calling out for full transparency on the capacity on your solution. Otherwise people will start to spam you and ask “Why is my MMO lagging so bad?! I only have 200 players active.”.
The starter kit looks really good so far. Good work.
I would also like the full transparency on the capacity of Unreal’s dedicated server, but Epic hasn’t provided us with those numbers yet. As FV Panda has proposed, I’ll just have to organize a stress test event myself and hopefully enough people will log in.
I would address the issues and make sure those hundreds have a good experience. Believe me, I would love having access to hundreds of players to test this with.
I’m taking exploits quite seriously. Some of the things that are handled server-side currently (client-side too, but the server has the final say): NPC AI, a check that this user can attack their target, a check that the attacker is in range, a check that the attacker is looking at their target, death and respawn, damage calculations. All of these provide examples on how server can be authoritative, so that the users can study them and make their own authoritative checks based on those since each game is different.
Hi, if it was me, I would definately not start from scratch, even if I was making a totally unique MMO. Login/registration, character creation, saving and loading of character stats on world enter/exit took quite a while of time to do. Also, chat and combat log. If you’re familiar with Blueprints it shouldn’t be hard to convert the game logic for your game.
jpreyneke, the demo server is live - you can download the client from the link in the first post As for the submission to the Marketplace, first I need to finish the documentation. I’ve basically created this thread the moment I was satisfied with the demo, so no documentation has been written yet.
Too early to say, but I’ve done some testing of the instances and got them to work, so I have good hopes for it. This is on my list, but later down the road.
Out of the scope for now. I have a huge list of important and cool things I have to add/fix. I’m interested though, why are you wondering about it? I mean, WoW added cross-server lfg after several years of running, and I can’t say that it is a great feature (less immersion and same-server friendships/reputation imo). Or do you mean something entirely different? If you mean cross-server chat, this can be done already in like one click since chat server is separate from the game server.
Yes, not the source though, just the packaged server.
You’ll have to do it yourself, the principle would be the same as allowing to modify any other Unreal game. Sorry, I haven’t explored this and so I can’t give advice on it.
Steam login is an interesting idea, I will definitely consider in the future. The project is in blueprints and everything is open, if you have the knowledge how to do a login through Steam/GOG Galaxy, you can do it.
I plan to slowly make the demo project more and more into a WoW clone (with inventory and quests and different NPCs, etc). However, if you are familiar with blueprints, you can do the new game logic yourself. It’s not hard at all, and you can use the existing logic/rpcs as examples. Personally, after a month of challenging work, right now I would totally love to do easy stuff like inventory system, instead of doing the documentation, which I must do
Dialog tools - those are tricky. Compared to a certain other game engine, there is no public knowledge on how to make custom node editors in Unreal and the only good way to do a dialogue system is through a node editor like this one. I haven’t seen one Unreal node editor made by someone not at Epic yet. When there will be info on how to do it, someone will make a dialogue system very fast and sell it on the Marketplace. Most MMO’s have very simple dialogues so I prefer not to worry about it at the moment, it’s RPG kit makers who should be concerned about the lack of a dialogue system.
I’m organizing a stress test event, can’t disclose the details but hopefully we will know the answer to this question this week.
I will update it indefinitely if people are interested. MMO’s are my passion and I do intend to make some money from selling the kit on the Marketplace so why would I not update it? If I decide to drop it for some reason or if I die suddenly, it will be made open-source.
The lowest Softlayer virtual server configuration ( $44.60/month with Windows Server) runs it just fine. It has a single core 2.0 GHz CPU and 1GB RAM
Well is there anywhere we could pre-purchase / buy now and wait for the documentation? I always love to peak my head in and figure things out on my own before looking at documentation anyway (Helps in understanding / teaching myself things) - Just yeah, I’ll Try and be patient Keep us updated!
Only the chat currently if you mean in-game. Overall, player authorization/registration and character creation is done via php scripts on another server. The launcher also connects to it to download the info about the current version.
Windows Server, I want the kit to be available to people who have little or no Linux knowledge. And everybody knows how to work in Windows.
Currently, this can be changed from WoW-like MMO into a different genre just like a Third Person starter project can be changed into some other genre since both the server and the client are fully in blueprints. However, I can’t promise it will be like this forever, it will depend on the stress testing and the capacity of Unreal’s dedicated server.
I did not mean server to server as in 2 WoW type servers talking to each other. What I mean is, if i have a game with 2 zones each on their own map. I run zone 1 on server 1 and zone 2 on server 2. This way I can hypothetically have twice the population logged in at once. But I would still need server to server communication for something like: if someone from zone 1 invites his friend to a party, and the friend is in zone 2.
Its not really something most indy games probably need. I ran the server and DB for a small korean mmo, which had each “server” separated into shards to help the server scale to the population needs, so its just what im used to personally. It went something like this:
Gateway Server - Authentication, Login, version control, downloading patches, ect.
Farm Manager - Holds the “server” persistent information, passes functions between shards.
Shard Server 1 - A zone, collection of zones, or part of a zone, where players do stuff on.
Shard Server 2, 3, ect