Search Unity

My Unity3D Large-Scale Multiplayer Server, Opinions?

Discussion in 'Multiplayer' started by Christian-Tucker, Oct 31, 2014.

  1. Christian-Tucker

    Christian-Tucker

    Joined:
    Aug 18, 2013
    Posts:
    376
    So, I'll start this thread off by stating it's purpose. I'm trying to reveal my personal 3rd party server software, while getting the community's opinions on things such as marketing it.

    Reason why I started developing this 3rd party server:
    The reason I started working on this server was because when I came over to Unity with the intent of learning more about creating my own games 2 years ago, I had the typical attitude of "I want to create a MMORPG.". I had plenty of programming experience to know how to get game mechanics working perfectly fine, but the moment I looked into networking I started spiraling downwards into a hole. There's the three basics that everyone talks about, Unity Standard Networking, Photon, and SmartFox - I tried them all, and didn't like any of them, and none of them really seemed fit for a large-scale game, and the pricing on the licenses were absolutely outrageous. I wanted to create something that people would be able to use with ease, to the point that even a programming novice could set up their own networked game over the period of a few hours. Finally I'm to that point where it's just "that simple". During my time-attack test today, I managed to write a basic game that had the following features in a total of 2 Hours, 27 Minutes, 49 Seconds. ( I used a stopclock ):
    • Account Login that checks a SQL Database
    • MMO Style character display and selection.
    • Character creation, (Granted basic, only involved the color of the capsule and the name of the character)
    • Loading the character into the game world.
    • Updating characters across the network (Name, Capsule Color, Position)
    • As well as an in-game chat function.
    All of these features are what basically defines the absolute basis of a MMORPG and it was all done in less than 3 hours.
    About the server:
    • Programmed in: Java using Non-Blocking IO
    • Stress tested to hold 2,000 simultaneous connections over the internet (not localhost) in which all connections were constantly streaming packets to and from the server, you couldn't notice a difference in the networked game-play at all. This probably means that the server can handle more, but I don't see any of my projects even reaching the 500 simultaneous mark, so I'm not that worried about it.
    • MySQL Support
    • Dynamically loaded packet system (Loads all custom packets on server start)
      • Declare the Packet's ID
      • Declare the data sent from the Client for this packet.
      • Declare what you want to do with the data.
    • Contains Vector math for validating numerous different scenarios for a semi-authoritative setup
    Current Feature being developed:
    • Server FBX Importing for Character collision using vector math.
    Ideas for licensing and pricing:
    The goal here was to give people a cheap, but effective and efficient solution to networking their games using Unity3D; However I'm gladly taking any recommendations on ways to make a little money from this, not much, just a little. I'm not greedy.

    The Free License: The free version of the software will limit you to 25 concurrent connections, this is large enough for small games and larger development teams to toy around with the server, or even use the server (in smaller games) for free.

    The Paid License: The paid version of the software will allow up to 1,000 concurrent connections.​
    • Marketing Concept 1(Monthly Subscription):
      • Charge people $5 a month for the Paid License
    • Marketing Concept 2(Purchase Outright):
      • A Single cost of $49.99 and it's yours forever.
    I'm not sure which of these I am leaning towards right now, but I feel that a one-time charge of $49.99 or a Monthly charge of $5 rips the head off of the competition regardless of which direction it goes.
    What does the community think about this? What are some features that you believe a server that's driven towards Unity3D and larger-scale games should have? Do you have any recommendations? Post them here!
     
  2. GraphXCreations

    GraphXCreations

    Joined:
    Jul 6, 2014
    Posts:
    121
    Hi there Christian,

    glad you working on another networking alternative,

    features sound good, altho, you may get a more solid and more interest into your networking engine if you provide a demo version out ie: the free 25ccu demo so we all can test and from there we can have an opinion about what we would like to pay for a full version.


    the reason is many try to start a new networking engine , and many fail and never deliver, leaving all their pre or early adopters buyers hanging after purchase.
    people really get tired of this and burnt up, unfortunately it will affect others as yourself who really have a good intention to release one all the way.


    so i really recommend if you already have your networking application working and ready to use , just offer the free 25ccu version first so we all can test and decide from there it is is worth to pay for either a leased or a one time payment option.

    other than that, we just getting very skeptical about new mickey mouse networking that will never flourish and never see light of day leaving hanging all its followers at any given day with a non functional application or never finished.


    so in short, if you got something already working and functional, and before planning how much revenue you want to make by asking the community how much they want to pay, just give a taste of it to the public and you might get more solid and accurate feedback as they will experience the actual tangible product. imo youll get better response.

    i mean it is just a suggestion, so dont take it to heart, at the end you ll be the one deciding what to do.



    Now, features i would like to see:
    -reliable udp
    -RPC system for client and server communication since we all used to that in unity.
    -lobby server so we can connect server to it so users can choose a server to play in, this way we all can expand and escalate the userbase incase required.
    -a simple server side collision check to prevent cheaters walking thru walls.
    -roomed based feature for instantiating mini games on the fly

    maybe you already covered some from the above requests and i missed them, perhaps you want to clarify


    keep up the good work,

    cheers
     
    Last edited: Nov 1, 2014