Search Unity

Unity3D for server side and client side MMORPG development.

Discussion in 'Getting Started' started by M_Shrews, Aug 31, 2015.

  1. M_Shrews

    M_Shrews

    Joined:
    Jan 14, 2015
    Posts:
    1
    Hello everyone,

    This is my first time posting on this forum and I am sorry if this question has already been asked before but I was not able to find a thread that addressed the question I have about unity3D. I will place my question in bullet format to make them easier to read and pick out of my post.

    • Can Unity3D be used to support MMORPG games? I have seen that there is support for networking / multiplayer within the engine. I am looking for something that could support at least 3000 simultaneous connections to a server.

    • Does Unity3D support server side coding using a database like MySQL or does it have its own internal database structure?

    • Does this game engine support collaboration development or do I need to have third party software like svn / git?

    • For anyone that has had developed an MMORPG game using unity I would love to hear any comments about this. Please feel free to share your experiences, pitfalls, success stories with me.
    Once again sorry if this topic has already been asked in the forums and I missed it. I am looking for the most affordable and user friendly game engine to use for this project without having to build my own engine using direct X or openGL. This is one of the few engines I am considering using and would love some input before I start building the game.
     
  2. jhocking

    jhocking

    Joined:
    Nov 21, 2009
    Posts:
    814
    For question 1, sure you can make an MMO using Unity. As for the simultaneous connections comment, that brings us to...

    For question 2, no Unity doesn't have anything to do with the server side. Unity is totally a client-side technology; everything about the server (including how many simultaneous connections are supported) is outside the scope of what Unity is for.

    For question 3, you do need some other tool if you want version control. I'm not aware of any game development tools that have version control built-in, and frankly it would be a bad idea if they did.
     
    Last edited: Sep 2, 2015
  3. LaneFox

    LaneFox

    Joined:
    Jun 29, 2011
    Posts:
    7,536
    • Yes
    • Either
    • svn/git
    There are a lot of threads available on the topic via search.
     
  4. JoeStrout

    JoeStrout

    Joined:
    Jan 14, 2011
    Posts:
    9,859
    Hang on, Unity does have version control (so-called Asset Server) built in, right? It's just that it rather sucks, so nobody I know uses it.

    Looks like it also integrates with Perforce and Plastic SCM, which I'm sure delights all three users of those. ;)

    But yeah, it doesn't really integrate well with any major version control system, but that doesn't mean you can't use it; here are some guidelines for turning your project into a bunch of easily-diffed files, and what to ignore. I use svn this way, and it works great.

    (Though it'd be even better if they would just store all their temp data in a different directory, like every other development tool I've ever seen... on a Mac, somewhere in ~/Library/Application Support would be fine. Hint, hint, Unity!)
     
  5. Kiwasi

    Kiwasi

    Joined:
    Dec 5, 2013
    Posts:
    16,860
    Unity has its own networking solution, UNet. Out of the box this supports up to 8 (or 16?) players in a single game. It does have a low level network API you can use as well to interface with your own server.

    But for 3000 active connections you will probably be better off with your own server. Unity will work fine to run on the clients. But you'll want to run something custom on the server side. Unity has access to the .Net framework. From there you can build and interface with pretty much anything.

    Talk to your network engineer. For a game this big you should probably have three or four of them. And a couple hundred million dollars in funding.
     
    Ryiah, JoeStrout and jhocking like this.
  6. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    Can Unity3D be used for the client? Yes. Can Unity3D be used for the server? No.

    If you want to support large scale persistent worlds then you will need to either build your own solution or purchase one from a company specializing in them. Last time I made a list of possible solutions to evaluate I came across SmartFoxServer. I didn't get around to evaluating it but their 2X feature list has mention of MMOs.

    http://www.smartfoxserver.com/products/sfs2x

    There is an official solution but I don't know of anyone that actually uses it. Most of us use third party solutions.
     
    jhocking likes this.
  7. jhocking

    jhocking

    Joined:
    Nov 21, 2009
    Posts:
    814
    oh right I forgot about that. Mostly proves my point that it was a bad idea :p
     
    Kiwasi likes this.
  8. xzores

    xzores

    Joined:
    Dec 26, 2015
    Posts:
    1
    For the server you can use NodeJs, it is great for many requests, it supports UDP and TCP (and HTTP if your into that sort of stuff), it supports clustering. If you need to simulate player movement and stuff like that, you kinda out of luck, you need to make your own physics engine (if you use the Unity physics engine a lot this can be quiet complicated). If you need a server interface (I don't believe NodeJs has an interface) you can use java and make a local TCP connection. Hopes this helps.
     
  9. Teila

    Teila

    Joined:
    Jan 13, 2013
    Posts:
    6,932
    This is a very old and out of date thread. Not sure why it still exists but it is going to give folks the wrong information.
     
  10. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    The original poster hasn't logged onto these forums since August 31st, 2015 the day he created the thread.
     
    Last edited: Dec 14, 2017
  11. verybinary

    verybinary

    Joined:
    Sep 23, 2015
    Posts:
    373
    It doesn't have to help only OP, some people know how to use google, some google searches bring you to the unity forum. what pisses me off, is following a link, and the only answer is "use google to search for an answer"
    I just did, you turd muffin...
     
  12. Ryiah

    Ryiah

    Joined:
    Oct 11, 2012
    Posts:
    21,203
    Yes, but someone who is new won't necessarily understand that the older answers are not the correct ones any longer and may very well assume that the person who was wildly different (the person who necro'd in this case) is the one who is off.
     
    Last edited: Dec 18, 2017