Frequently Asked Questions
Sales and Pricing
- When will uMMORPG be on sale again? The Unity Asset Store team decides when and for how long an asset goes on sale. A publishers can only fill out a sales application and hope for the best. In other words, uMMORPG is usually on a sale at least once a year, but we can’t directly influence when.
- Is there a special price for students? There is no discount option in the Asset Store publisher panel, so there is nothing that we can do, sorry. You would have to wait for a sale.
- Does uMMORPG require one license per seat? Unity makes that decisions for every asset. As of now, only Editor Extension Assets are one license per seat, not Complete Projects like uMMORPG. If you are running a successful business with lots developers, we would still greatly appreciate if you purchase more than one licenses to support uMMORPG development.
- Since uMMORPG uses UNET, do I have to pay for the Unity Multiplayer services? The multiplayer services are for relaying and matchmaking, those features aren’t needed for MMORPGs, so you don’t need the Unity Multiplayer services at all.
- How many players can uMMORPG handle? It depends on your server hardware, your game world, the amount of entities, the density of entities, the amount of features that you add to uMMORPG and so on. For example, if 1000 players all stand directly next to each other then that will require 1000 x 1000 = 1 million broadcasts per event – not even World of Warcraft can handle that much. If however 1000 players are spread across a huge world then it’s way easier for the server. Some CCU(concurrent users) scaling recommendations:
- Start with a cheap VPS or dedicated server that can handle about 50 players for testing and development.
- When you launch, get a really fast dedicated server to support as many players as possible. If you get to 100-500 with your game world / features / complexity, then that’s a good thing!
- If more players want to play, open another server. For example, Venus, Mars, etc. where a player always plays in the same world and never interacts with the other worlds. If you open 5 new servers, then you can now support (for example) 500-2500 CCU. At this point, your game will generate a lot of revenue.
- If you still want more CCU per server, then it’s now time to look into load balancing. We released a ‘Network Zones’ addon that allows you to split the game world into different scenes, where each scene runs in a separate server process, connected by portals. This way your world could have (for example) 5 scenes, with 100-500 CCU each, hence a total of 500-2500 CCU (again, just an example).
- The Network Zones addon is pinned in our our Discord server’s verified channels. Note that it is still experimental. It runs fine, but it does not support complex features like guild invites across zones yet.
- Further Notes:
- If you get to the point where you have to worry about CCU, you will be able to hire people to deal with load balancing for you. The hard is finding that many people to play your game (and pay you).
- Unity recently acquired Multiplay for $20 millon. Multiplay is a game server hosting company, so we should see some really useful announcements there soon.
- Unity is getting faster all the time. We are currently looking forward to HLAPI and LLAPI improvements, the new Job system and hopefully multithreaded Navigation and more. This will greatly improve CCU.
- I planned some HLAPI improvements that should greatly improve CCU, for example [SyncVar]s that only broadcast to the owner, not to all surrounding players. This will save a lot of bandwidth and probably double CCU already.
- Hardware is getting faster and faster every year. If your MMO can handle 500 CCU today, then it’ll probably be 600-700 when you launch.
- The whole point of uMMORPG is to make my own MMORPG. I will (hopefully) run into CCU issues some day. This will be an ongoing battle to support more and more users. Maybe I’ll figure out the perfect solution before you even launch your game 🙂
- What are UNET, the LLAPI, the HLAPI and the HLAPI Pro? UNET is Unity’s new networking system. It has two parts: a high level and a low level API.
- The low level API (LLAPI) is a lightweight UDP networking library that takes care of connections and packet sending. The LLAPI works really well and is an excellent choice for game development.
- The high level API (HLAPI) sits on top of the LLAPI and provides useful tools like the NetworkManager, NetworkBehaviours, SyncVars, Commands and RPCs.
- HLAPI Pro is our HLAPI drop-in replacement. It’s fully compatible with the HLAPI and offers more stability, a lot of bug fixes and code improvements over the original HLAPI. We highly recommend using it for your uMMORPG project.
- Does uMMORPG support multiple zones/server instances? We are mainly waiting for UNET Phase 3 to support that, watch the Unite 2015 video to learn all about it. In the meantime I developed my own Zones addon. It’s still experimental and can be found in our discord channel.
- How can I use more than UNET’s 32 allowed SyncVars per Script? Check out my HLAPI Pro library on the Unity forum!
- Does uMMORPG run on iOS / Android? Absolutely! It’s probably a good idea to host the server on a dedicated machine on the internet and only let the client run on mobile. Also note that the Canvas has a CanvasScaler component that could be useful if the UI is too big or too small on your mobile device.
Why SQLITE? There are two reasons why uMMORPG uses SQLite. First of all, it works out of the box, there is no need for any sql server setup and configurations. Secondly, it’s very easy to convert the database to MYSQL in case we need it later.
- If Server & Client are one project, how can we hide server code on the client? First of all, it’s important to understand that having server code available on the client doesn’t make it insecure. One of the best examples is the Linux operating system – it’s fully open source and safely used for the majority of servers around the world. If you still want to hide those 5% code that are server-only, you could use C#’s macros to wrap all [Command]s like #if !HIDE_SERVER … #endif.
- Does uMMORPG work with UMA? Yes, but not out of the box. Several community members posted their UMA integrations before, so it’s definitely possible.
- Does uMMORPG work with PlayMaker? PlayMaker is for very simple games, you probably won’t get around learning UNET and C# if you want to add more features to uMMORPG.
- Does uMMORPG work with [Asset Name]? uMMORPG sits on top of UNET, so any asset that you want to use will have to work with UNET as well, unless it’s a client sided effect like sounds or a new UI.
- Is there a Roadmap to see what’s planned for the future? There is no roadmap, I love MMORPG development and simply work on whatever feature interests me the most.
- Is Unity suitable for an MMORPG? Absolutely. We have to keep in mind that just the rendering part would be a full time job for a single developer. The only way to make an Indie MMORPG in a reasonable amount of time is to use a game engine. Unity has the biggest game engine market share, and that is for a reason.
- Can I make an MMORPG with uMMORPG without writing any code? Yes, uMMORPG focuses on the core features. You can make an interesting game by adding great art for your specific idea. There are a lot more features to come in the future and you can use all of them without writing any code. If you want a custom feature, then you will need to write code or hire someone that does it for you.