uMMORPG - The lone wolf developer's MMORPG engine.
uMMORPG Classic was released 4 years ago. The new Remastered Edition contains the two most requested features: a Component Based architecture, and Character Controller movement!
The Remastered Edition also comes with a few more minor improvements: a GM Panel, Scriptable AI, Sync2Owner, Durability and a new Addons System!
The MMORPG Dream
20 years ago, MMORPGs used to require millions of dollars of capitalization and large teams of developers.
And then came Unity, with its mission to democratize game development.
uMMORPG's mission is to go one step further to democratize MMO development.
It's time to begin the era of the Indie MMORPG.
uMMORPG is the most simple and easiest to use MMO engine on the planet for one reason: 99% of the MMO projects fail because they are too complex.
Keeping both the code and the architecture incredibly simple is of utmost importance for the lone wolf developer.
uMMORPG uses Mirror for its high level networking and KCP for its low level networking. With Mirror, the server & client are ONE project and share 95% of the code. (hence the name "Mirror"). Thanks to Mirror, uMMORPG requires less than 10k lines of code while still scaling to 500-1000 CCU easily.
uMMORPG's networking is completely vertically integrated. The full networking stack was designed specifically for uMMORPG and is being improved every single day and battle tested by hundreds of other Unity networking projects.
uMMORPG comes with a built in Archer and Warrior class in order to display ranged and melee combat. Additional classes like mages can be created very easily.
Players have levels, experience, gold, skills, inventories, equipment, attributes and animations. They can move both with WASD & click movement. The combat system supports regular attacks, blocks and critical hits. Players can fight each other and get penalized with a murder system.
Monsters can easily be placed in the world and will traverse their surroundings while the server is running. Their stats, aggro radius and movement behaviour can easily be modified in the Unity Inspector. Monsters are lootable after dieing and they can be spawned at runtime, for example with monster scrolls.
uMMORPG comes with Npcs that can sell or buy items to/from the player, manage guilds, revive pets and offer quests.
Feature: Scriptable Items/Skills/Quests
uMMORPG comes with a powerful Scriptable Items/Skills/Quests system. You can add new items based on existing types (e.g. potions), or create new types by inheriting from ScriptableItem. There are no limits, you could create a skill that instantly spawns 1000 monsters or stuns everyone on the server.
Feature: Mounts & Pets
uMMORPG supports spawnable player owned entities, implemented as mounts and pets. Mounts allow the player to move more quickly, while also being attackable by others. Pets can be purchased, summoned and trained. They will fight alongside their owner.
Feature: Portals & Instanced Dungeons
The server can automatically instantiate a dungeon when a party enters a portal. Instanced dungeons were traditionally very difficult to use and required additional server machines. uMMORPG optimized and simplified the process to the point where instanced dungeons are now extremely easy to use.
Feature: Parties, Guilds & Chat
Multiplayer games are all about player interaction. uMMORPG comes with a party system to hunt monsters in a group, a guild system for long term collaboration amongst players and a chat to communicate between all of those systems easily.
uMMORPG provides a simple, yet powerful crafting system. Crafting recipes convert a given set of items to a resulting item with a specified probability of success. Crafting can be used to combine items in all kinds of ways, for example:
* Health Potion + Mana Potion = Vigor Potion
* Blade + Handle + Sword Recipe = Sword.
Feature: Item Mall
Item Malls are the most successful MMO monetization strategy of the last 20 years. uMMORPG comes with an item mall that allows you to sell items in different categories for different coin prices. uMMORPG is not hard coded to any payment provider. You can any payment provider that you want to sell coins for real money, and then simply post the transactions in uMMORPG's orders table.
Feature: Safe Zones
To avoid chaos, uMMORPG comes with safe zones that can be wrapped around towns. In safe zones, no one can attack each other, which is very useful for starter areas to avoid spawn camping by higher level players.
uMMORPG uses SQLite by default, which works out of the box and without any additional setup whatsoever. SQLite was developed for military grade systems and has 100% test coverage while being extremely easy to use, which is just what we need. The database system can be replaced by any other system. For example, there is a free Mysql community addon available.
Feature: Login, Character Selection & Creation
uMMORPG comes with a simple login system that accepts any new account by default. The NetworkManagerMMO.IsValidAccount function can be modified to verify accounts on an external website or database system easily. uMMORPG also provides basic character selection and creation features.
Before working on uMMORPG, I spent several years reverse engineering a few popular MMORPGs to understand their mechanics and develop Bots. As result, uMMORPG is 100% server authoritative and validates any client input very carefully. A lot of care and effort is taken into protecting the server against cheats and exploits. Any security bug will be fixed within 48 hours.
The majority of development time is currently spent on networking improvements in order to scale up CCU as high as possible, while also doing heavy community stress tests to guarantee maximum stability in production.
Back in 2006, I played my first MMO and immediately fell in love with it. Making my own MMORPG is the only thing I ever really cared about since then. Over 12,000 man hours went into uMMORPG, and it's been a long and difficult journey.