Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Resolved I don't understand Unity's multiplayer pricing model.Please Help!

Discussion in 'Multiplayer' started by Red_Kay, Jun 9, 2016.

Thread Status:
Not open for further replies.
  1. Red_Kay

    Red_Kay

    Joined:
    Aug 14, 2015
    Posts:
    94
    So I am new to games networking, in fact, this will be my first time and that's why I didn't want to use any other networking solutions. So I have made my game fully in offline currently and chose to go with UNET for multiplayer. It's a CS:GO inspired game with all that matchmaking and S***. So I went on to https://unity3d.com/services/multiplayer to check out their pricing model but I can't understand it properly so here's the questions.

    1) What is that $119.93 for 100 CCU for? Is it for something like photon cloud?
    2) What is that $0.49 / GB for? Is it if I only use their matchmaking service?

    I want to host my own server anyway and don't want to use anything like photon cloud. But would like to use their matchmaking service if there's any. So, in this case, I will only have to pay for using their matchmaking service right i.e. $0.49/gb that too will be calculated for the time the matchmaking service is being used, right?

    Thanks for your time! :)
     
    Last edited: Jun 9, 2016
    hickna likes this.
  2. voltage

    voltage

    Joined:
    Nov 11, 2011
    Posts:
    515
    100 CCU is 100 active users at all times during the month. For instance, a game I play called 'Reign of Kings' averages 700 concurrent users. 700 online typically at all times on average a month. (If I'm inaccurate in any angle, please correct me.)

    $0.49/gb is the amount of bandwidth taken up by messages being sent from Clients to the Server. Every gb of bandwidth used by Unity's Relay Service will cost you 49 cents USD. That could get very expensive at a large user base.

    You don't want to use the cloud, but you want matchmaking. You can't have one without the other, unless you host your own Master Server and pass IP's with your own code. That will take the most research going in. It would be easier, but more expensive to use Unity's Relay. A lot of people find Photon useful, but I don't like it personally.

    You could use Evolvehq.com. It's like gameranger and hamachi combined. You will need your players to manually type in External IP's provided to them free by the service, but it's the easiest/cheapest way to do matchmaking. Depending how big your game is, it's probably not the best idea. But it's one I intend on trying a few times. (Don't confuse this with a Peer to Peer connection, it's not. It's fairly similar, but everyone has access to a genuine MatchMaking Service and doesn't require manual portforwarding.)
     
    Last edited: Jun 9, 2016
    hickna likes this.
  3. Red_Kay

    Red_Kay

    Joined:
    Aug 14, 2015
    Posts:
    94
    Lemme make myself clear here once again. I will use service such as Amazon EC2 to host my server and would like to use networking components inside unity to network my game. I would also like to have matchmaking in my game I.e. find a lobby for a player n join it. Now I assumed that that CCU plan is for those who will be using unity servers to host by since I am hosting myself will I have to pay for it?


    Can you explain difference between unity relay server and matchmaking server? Also still didnt understand difference between $119 for 100CCU and $0.49/GB.


    Thanks for being with my noob questions ! I appreciate that
     
  4. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    Yes, the plans are for using UT's services. Hosting at Amazon would only involve their costs.

    The relay server is a component in the chain to get people through heavy NAT so they can reach other players. You pay for traffic through those, so if you have 500 players at once using the typical matchmaking and needing NAT punch-through you're paying nearly $2400 per month. So you're always paying the $119, but variable amounts depending on how many go through the services at once.

    I guess the real use depends on how long matches are. You're not using UT's services while players are playing on your servers, only when trying to find each other. If you have 500 players who only play 3 matches a day you're only paying about $215 per month, going by their calculator.

    I recommend making your own more efficient matchmaker and hosting that too at Amazon :)
     
  5. moco2k

    moco2k

    Joined:
    Apr 29, 2015
    Posts:
    294
    I think it does not only count in messages from clients to server but also messages from server to the clients (which can easily be the most significant share).
     
  6. Red_Kay

    Red_Kay

    Joined:
    Aug 14, 2015
    Posts:
    94
    Oh okay you explained it clearly! So ill make my own matchmaker or atleast try to. One last thing, now because i'll be making my own matchmaker and not use Unity's can I still use their all networking components and classes?
     
  7. orb

    orb

    Joined:
    Nov 24, 2010
    Posts:
    3,037
    Yep, the networking classes are not locked behind an extra paywall. UT's services are there as a convenience. For a lengthy strategy game I think they might be a great fit, but for an FPS with short rounds it could get expensive for an indie.
     
  8. nbg_yalta

    nbg_yalta

    Joined:
    Oct 3, 2012
    Posts:
    378
    I didnt find ccu tariffs for uNet, just this: free - 20ccu, plus 35$/50ccu, pro 125$/200ccu and 0.49$/GB for traffic.
    And for Photon: 95$/500CCU, 2.5/1.5TB free traffic based on region; 185$/1000CCU, 5/3TB free traffic based on region and 0.05/0.1$ per additional GB for both.
    Some math
    Photon - 185$ for 1000CCU and 5TB traffic.
    Unity - 125$ for 200CCU and 2450$ for 5TB traffic.
    Thanks, unity but if I'm right here, I will better using photon.
     
    dikar771 likes this.
  9. richard-lee

    richard-lee

    Unity Technologies

    Joined:
    Jul 14, 2015
    Posts:
    50
    Hi. Here's an detailed breakdown of the reasoning and more direct answers to some questions brought up in this thread:

    General philosophy: You only pay for Unity's servers when you use it. Pro: It's super fair to you because you're only charged for what you use. Con: It's not easy to understand or predict because 1) you have to actually accrue the usage before being charged for it 2) you have to understand what bytes you're sending/recieving.

    It's not fair to charge for what you use during development. You haven't optimized your code yet. That's why we give users (CCU) regardless of bandwidth. Once your game goes live and you to support a big player population, we start charging for based on you use. Is your game super optimized and can support 1,000 users with a single GB of bandwidth? Fine, that's what you pay for; in this scenario, effectively 10,000 users for 1 GB @ $0.49 (this can happen for "slower" games like those that are turn-based). Is it unoptimized and you're using 1GB per user? Again, you pay for what you use; $.49/user in this example .

    Only using Matchmaker? That's fine. It's mostly CPU cyclces (which aren't part of the pricing) and very little in bandwidth compared to Relay Server. I need to check with the team to determine exactly how a matchmaker-only implementation can expect to charge for.

    If you want to use EC2 to host your server, that's fine. If traffic doesn't hit Unity's servers (Matchmaker, Relay Server), you don't pay for it. If your game is really competitive or requires very predictable network performance, a server you own may be best for you. If not, you should try out Unity's implementation (peer to peer, assisted with relay server). Standing up and managing your own fleet of servers is cheaper but you are spending a lot of time creating and maintaining it.

    To confirm, you can make your own matchmaker service and infrastructure, and still use Unity APIs. You will need to write the middle layer between the API and your infrastructure.
     
    hickna likes this.
  10. DHARMAKAYA

    DHARMAKAYA

    Joined:
    Dec 1, 2014
    Posts:
    59
    Update on only using the matchmaking services?
     
  11. msantore22

    msantore22

    Joined:
    Nov 19, 2015
    Posts:
    24

    i know this is an old thread, but couldn't you offer better pricing than 0.49$ a GB? bandwidth is unlimited with with larger hosting providers. just look at ovh.com (one of the largest hosting providers in the world) you pay $89 a month for 1 server and UNLIMITED bandwidth. they even guarantee the speed. im literally holding out for a solution that's similar to Unity's Matchmaking service that isn't difficult to implement, i'm a 1 man developer, but using templates i created a whole game that requires unity matchmaking. but so far every third party solution i tried fails in comparison, in some way or another to unity's relay server, and being on an extremely limited budget, i really need a relay server that works with websockets. its hard for me to pay $0.49/GB for a relay server when i know bandwidth is 100% unlimited with certain providers. so i ask, are you planning to release the server anytime soon, or possibly offer better pricing, like you guys could resell dedicated servers that host your relay program?
     
  12. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Even if flat rate, they still have to pay for a large pipe, and the more data being used the larger the pipe they need, plus CPU usage either is metered or periodically requires new hardware purchases as usage increases.

    I suspect the price of $0.49 per GB is that high specifically because Unity offers free bandwidth for games during development, and we all know that the vast majority of games in development never get completed. Many of the hobby games under development may never have any intention of setting it live at all. The paying customers then subsidize all the projects that never reach completion, including the hobbyists. I'd be very surprised if their ratio of live games to freeloading under development games was anything less than 1 to 100. Contrary to the official line from Unity that the system is designed as a fair system where you pay for what you use, in fact you pay for what you use then pay for what 100 other people use who don't pay anything.

    I'd much prefer a system where games under development get a small amount of data for free as they try out the system, say the first 1GB, but then it is all charged at full price after that. Unity could then implement optional daily usage caps or similar system for games under development, to prevent runaway bandwidth usage due to bugs, etc, causing cost spikes.

    I bet if Unity did that they could drop the price down to $0.10 per GB and still come out ahead compared to now, due to live games no longer having to subsidize the development bandwidth of other people. If games under development can't afford to pay for a GB of data here and there, at just pennies each, then they aren't ever going to click the Go Live button anyways, so the pricing structure shouldn't be built to cater specifically to them.

    Dropping the price would encourage more people to consider using the service, far more than offering unlimited free development bandwidth. People like me are afraid to use the service because I'm thinking about how I'll sell the game for $10 a head today, but in 4 years when the game is old and I have few new sales I'm still locked in to paying either $0.49 per GB for my existing customers that love the game, or screwing them over by ending multiplayer support in order to end high costs for a game no longer making new sales. $0.10 per GB would change my mind.
     
    Last edited: May 12, 2017
    Vyndicta likes this.
  13. msantore22

    msantore22

    Joined:
    Nov 19, 2015
    Posts:
    24
    ah its all good. im happy now lol, i just discovered this nice fellow on github: https://github.com/fredfishgames/MatchmakerForUnity

    just finished integrating it into the umoba asset, from my testing so far. it works, now i've got my own matchmaking server :D
     
    hickna likes this.
  14. richard-lee

    richard-lee

    Unity Technologies

    Joined:
    Jul 14, 2015
    Posts:
    50
  15. Kombiice

    Kombiice

    Joined:
    Jan 20, 2015
    Posts:
    64


    I would rather use another server hoster with unlimited bandwith.
     
  16. funfair

    funfair

    Joined:
    Dec 4, 2012
    Posts:
    1
  17. Red_Kay

    Red_Kay

    Joined:
    Aug 14, 2015
    Posts:
    94
  18. Red_Kay

    Red_Kay

    Joined:
    Aug 14, 2015
    Posts:
    94
    Can you guys make a detailed tutorial or maybe a blog about all the technical stuff related to Unity Networking, like what is relay servers and master servers and in which scenario we use them, how much you'll be cost if you use our relay and/or master servers, how to host your own relay/master servers ?

    I am finding it really difficult to trust and understand this system..
     
  19. Technopip

    Technopip

    Joined:
    Feb 13, 2018
    Posts:
    1
    I just don't get the whole thing. Personally, I think the person/people playing online should actually pay for their usage, Microsoft charge their users an annual fee. The way I see it, is if I sold someone a car, and every time they put fuel into it, I get the bill!!!! I know some will say, well, that's the way it is, but that does not particularly make it right. The current system must put off many potential game makers, just saying
     
  20. TwoTen

    TwoTen

    Joined:
    May 25, 2016
    Posts:
    1,168
    Running matchmaking servers are not very expensive. What is expensive is the relay. Unity cannot just give that for free, why would they? If you want the players of your game to pay for the relays, then make that your bussiness plan. But Unity can not send a bill to the players of your game. There are many games where you pay a monthly fee to play.
     
  21. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    You're free to charge your own customers of your game for their usage. See how well your game sells like that though....
     
  22. msantore22

    msantore22

    Joined:
    Nov 19, 2015
    Posts:
    24
    the problem is not that they are charging us. its that they charge so much for bandwidth. 0.49/GB is kinda outrageous. i can pay 60$ for a dedicated server from Vultr hosting, that has a 1GB port, and 20,000GB of usable bandwidth. or i can pay 100$ish for a 500mbps port with unlimited bandwidth from ovh hosting.

    if you calculate UNet pricing. 0.49/GB of bandwidth is $490/1000gb of bandwidth. its a steep price to pay for Unity independent developers
     
    Last edited: May 5, 2018
  23. TwoTen

    TwoTen

    Joined:
    May 25, 2016
    Posts:
    1,168
    I doubt you are going to get away with running relays on a single Vultr or OVH server. Latency my friend. And if you want to, you could just route the traffic yourself through your own relay solution.

    And also, try to see Relaying as your last resort. Try to use other techniques like UPnP, STUN, UDP hole punching etc first.
     
  24. msantore22

    msantore22

    Joined:
    Nov 19, 2015
    Posts:
    24
    well actually, for example if it costs 490$ for Unet relay for 1000gb of bandwidth
    .
    and if i had access to the relay software, then i would rather spend 490$ on my own servers, in different states and countries. vultr offers their servers in many parts of the world. so 490$ divided by 60$ a server means i can have 8 servers, in a load balance setup, one in each part of the world that vultr offers servers. each giving me 20,000GB of bandwidth for a total of 160,000GB, and each having a 1GB download/upload speed port. that would be more than enough for any fast paced game, dont you think? plus then with 8 servers, i could host in different parts of the world to reduce latency.


    and the reason this would be better, is that what if the game i design becomes a big hit , you never know but just for example if it really did and, so if i had hundreds of thousands of players, the price would become way too steep for unet's pricing. and because i chose unet over a custom server for simply ease of use, i would be forced to pay a lot of money every month. when hosting myself would be cheaper.


    and what if someone else who has an awesome idea for game, that he can build no problem aslong as the networking is easy to integrate like unet decides not to build the game based on unet pricing alone, with no relay options for selfhosting? its a limiting factor for a lot of indy developers.
     
    Last edited: May 6, 2018
  25. PreviousTimes

    PreviousTimes

    Joined:
    Jan 29, 2020
    Posts:
    2
    Wait does localhost cost money or only matchmaking
     
  26. Joe-Censored

    Joe-Censored

    Joined:
    Mar 26, 2013
    Posts:
    11,847
    Unet is free. The Unity Multiplayer Service costs money. The Unity Multiplayer Service consists of a Unity maintained matchmaker service and packet relay service. Your question though doesn't actually give enough information though, since you could certainly build your game with matchmaking without using the Unity Multiplayer Service for free, or design a game with no matchmaking but still used the Unity Multiplayer Service.
     
  27. Brother_77

    Brother_77

    Joined:
    Feb 8, 2019
    Posts:
    233
    Trying my first attempt on a multiplayer :

    Game is a simple UI turn based, 1 vs 1 mobile for Android and iOS, can you please recommend the right set up ? Any guidance would be much appreciated.

    I have read about polling only when a player has made a move ? Still lost on how to host it or what system to choose to perform this:
    "turn based game can be hosted without socket connections entirely so you just make a request to the server whenever something has changed and use long polling to get new info when another player has moved. Still some kind of server, but can easily be serverless (eg: AWS Lambda + AWS API Gateway) so you only pay per request and computation time rather than paying flat costs 24/7." ?
     
    Last edited: Aug 8, 2023
  28. RikuTheFuffs-U

    RikuTheFuffs-U

    Unity Technologies

    Joined:
    Feb 20, 2020
    Posts:
    440
    @Brother_77 You can definitely use Multiplay (Dedicated Game server) for this, or even a combination of Lobby + Relay services if the game is not going to be competitive / cheating is not a big deal.
     
    Brother_77 likes this.
  29. Brother_77

    Brother_77

    Joined:
    Feb 8, 2019
    Posts:
    233
    Does Multiplay offer cheaper solution from its main offer? Similar to polling ? Because Relay enables cheating
     
  30. RikuTheFuffs-U

    RikuTheFuffs-U

    Unity Technologies

    Joined:
    Feb 20, 2020
    Posts:
    440
    Not that I know. Multiplay is a dedicated (game) server service. maybe you could have a look at Cloud Code too if you're looking for something more similar to a web API.
     
    Brother_77 likes this.
  31. CodeNinja-

    CodeNinja-

    Unity Technologies

    Joined:
    Feb 22, 2023
    Posts:
    27
    Brother_77 likes this.
Thread Status:
Not open for further replies.