Search Unity

Master Server Framework

Discussion in 'Assets and Asset Store' started by alvyxaz, Sep 11, 2016.

  1. gamevanilla

    gamevanilla

    Joined:
    Dec 28, 2015
    Posts:
    968
    I have been pointed to this post by a customer and, if I may say so, I find its contents a bit offensive as the author of Master Server Kit. My kit was initially developed as an extension to CCG Kit, another asset of mine focused on helping create multiplayer collectible card games, because support for dedicated server setups was a highly requested feature. I later realized it could be useful for any kind of multiplayer game and it made sense to release it independently.

    I have been an Asset Store publisher for more than a year now. It is something I do because I love it and find it a bit sad to read how another fellow publisher is trying to imply I am somehow copying his work (which I am obviously not, and that is something that is easy enough to verify) when I simply happen to have released a kit in the same domain. I could as well say you have copied Photon´s LoadBalancing or this Reddit user showcasing a similar concept a few months ago, but I would never do that because it would be immature from me. Using Unity as a server is not a novel idea and certainly not one you own.

    By the way, Master Server Kit has never used Node.js; it has always used C# and Unity. Node.js is strictly being used together with MongoDB as an option for database storage (among several others).

    The user you are answering to asked the same exact question to me yesterday. This was my reply. As you can see, you can defend your own product without being disrespectful to developers working on similar assets. You seem to be doing a good job on your own; why do not just let your work speak for itself instead of resorting to false claims about others? There is space for everyone on the store and the more options users have, all the better.

    Good luck, and sorry for the noise! I just felt I needed to clarify this point. :)
     
  2. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey! Woah, you're fast!

    First of all, sorry for all the negative implications. As you were writing the reply, I was editing my post to make it less harsh, but you wrote the reply faster, haha

    In the past few months, I have received a number of e-mails with warnings about my asset being copied, and they linked to your Kit. The question about differences in our assets got my blood pumping in the context of those e-mails, which is why my reply contained offensive implications.

    My post was written in a hot-headed state, and I apologize for it.

    Cheers! ;)

    EDIT: You seem like a great guy, sorry for causing all this drama :)
     
    Last edited: Feb 22, 2017
  3. gamevanilla

    gamevanilla

    Joined:
    Dec 28, 2015
    Posts:
    968
    Thank you very much for clarifying this, alvyxaz! And apologies accepted. :)

    Accusations should always be accompanied by facts and it is only natural that similar ideas arise in the same field of work. But having a similar idea or concept is a completely different thing than copying (as in literally copying source code), which is obviously reprehensible. I can comfortably assert that my work is original and created exclusively by me, and just by looking at the description of your framework I am pretty sure yours is legitimate too, as there seem to be quite a few notable differences between both assets once you dig a bit further in their description and documentation.

    Let's just do the best work we can do and respect each other; the world is a better place when we all do that.
     
    recon0303 likes this.
  4. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Well, I never thought you we're copying the source code - it would be silly. The thing I was concerned about was, indeed, the general concept, and there's no way to have facts on something like that.

    Either way, after reading your documentation, it's fair to say that we're doing things rather differently. I should have read it earlier ;).

    Lesson learned!
     
  5. gamevanilla

    gamevanilla

    Joined:
    Dec 28, 2015
    Posts:
    968
    No worries and thank you for having a positive conversation! :)
     
  6. fieldrequired

    fieldrequired

    Joined:
    Feb 26, 2014
    Posts:
    108
    I own both and have studied both, I feel I must point out they are similar only in name - in my opinion there is zero chance that one is copying, or is even influenced by, the other.

    Nice to see you can discuss amicably like nice gentlemen :)
     
    recon0303 and gamevanilla like this.
  7. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Thanks for your input! I guess you've cleared the issue once and for all ;)
     
  8. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey, guys!

    Sorry for taking so long with V2.0!

    I have underestimated the amount of work it would take to rewrite the framework. I've managed to finish most of the modules, except for lobby and profiles. After wrapping up the Demo, I'll submit the preview to private GitHub repo without these modules, and finish them in the next few days. I'm hoping the demo will be finished tomorrow. Thank you for your patience!
     
    LostPanda likes this.
  9. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey!

    Due to request of one of the users, I decided to make a Discord server.

    If you're interested, feel free to join:
    https://discord.gg/ZqGummZ
     
  10. Zymes

    Zymes

    Joined:
    Feb 8, 2017
    Posts:
    118
    Does this run as a headless executable? Can you run it on Linux?
     
  11. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey!

    Yeah, it runs as a headless process and runs on linux - these are the most common use cases :).
     
  12. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    It's sale time :) So some Noob questions regarding your asset:

    We are searching something like a Photon alternative to being able creating multiplayer games on our own Unix Server machines. Since we are concentrating on creating a (M)ORPG it's important for us to being able host servers where all gamers can play together. So nothing with matchmaking, own hosted stuff...

    So to the questions:
    - It seems version 2.0 will be more user friendly? Does this mean it's easier to integrate multiplayer / networking to your project without coding? Like wizard / drag & drop stuff? I am not a C# expert thats why I am interested in the most easiest way to integrate multiplayer to our game, also if I see that you wrote for 1.4 that's more suitable for coders / developers and not a plug and play solution. So just wanna know if and how this changes with 2.0. This does not mean I am not able to learn from your demos or documentation ;) I just need to know how time consuming it will be to add your Asset to our game.
    - Does your Asset also works for MMOs? Like being able to host big servers make them instanced etc? Not only something like 32 or 64 Gamer which are known like from CS, L4D etc.
    - What is the User and Password for the Web-Demo to test it? ;)

    Cheers
    Ronny
     
    Last edited: Mar 8, 2017
  13. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey!

    Woah! I didn't expect to get on a sale, at least not for the next few months :eek:

    * Core concepts between V1.03 and V2 will be the same. V1.03 version is difficult to use, mainly because there's a lot of things that happen "automatically", which people often found confusing. Overall, V1.03 feels a bit like a pile of semi-connected modules/plugins, and it's a bit hard to understand how everything works. On V2, I'm focusing on rewriting and redesigning some of the "stranger" parts of the framework. My main objective is to make a very clean, easy to use and understand API for programmers. So in essence, V2.0 will be more user-friendly mainly for programmers.

    To answer how hard it would be to integrate the framework into your game - it depends on what you need the framework to do for you. For example, if you only need the functionality that comes out of the box - everything should be quite simple (at least in V2.0) - drag a prefab which starts master server to the scene, build the project, and run it .

    It would be a bit easier to answer, if you wrote a list of things that you need the framework for. ;)

    * My framework focuses on developing the centralized / authoritative server (master server, for things like authentication, global chat's, or other features that need a centralized solution), and infrastructure for managing multiple servers (game server instances and etc). It doesn't focus on developing game-servers themselves - for that, you'd use unity's internal networking library (Unet), Forge, or something else.

    So in that regard, my asset is not a direct replacement of Photon - it's something a bit different. In fact, if you only need a centralized server, you could use the asset together with Photon. However, if you don't like Photon prices, and if you want to manage your own servers - you can use Unet (which is getting great improvements on Unity 5.6).

    You might be thinking - if I'm using Unet (which is free) for gameplay, why would I need the Master Server Framework? Well, in some cases, if all you need is a single unity game server - you probably don't. However, many people have room-based games, or MMO-like game servers, which they want to "connect together" - for that, you need a central server (master server) to which everything connects - my framework helps you build that server!

    This allows to make all sorts of fancy things, like multi-zone games, room-based games without the usage of Unity Services (which cost money), authentication, global chats and etc.

    I'm rambling too much... So to get to your question about massive game servers:

    If you're leaving Photon, you are most likely to use Unet. It's possible to have hundreds of players on Unet, however - it's quite difficult to do, and requires good networking knowledge. There are many reasons why the games you've mentioned only have up to 64 players. For example, action games tend to update positions of players 10-30 times per second, and it sent to all the players, no matter where they are. MMO's (which are less time-sensitive) do that only 5 - 10 times, and on top of that, they have fancy area-of-interest management, which you'd have to do yourself (Unet's default one is not optimal in most cases). I'm working on a game which supports 500 players on a single scene, on android, but I'm using Unet's low level API (not the HLAPI) for maximum optimization.

    * Regarding the WebGL demo - you can create an account right there, or play as a guest. There are no admin panel, if that's what you were looking for ;)

    P.S. Thank you guys for buying the framework! It really means a lot to me! I've been struggling with money for my Wedding, and this helps a lot ;)!
     
    wahyuway likes this.
  14. RonnyDance

    RonnyDance

    Joined:
    Aug 17, 2015
    Posts:
    557
    Thanks so much for your detailed answer.

    Well to give you a better idea about what I am trying to achieve:
    Think of the typical MMO like World of Warcraft. Remember for example the main cities like Stormwind or Orgrimmar.
    This cities would be player hubs in our game. So if you start the game or your journey you will start in one of those cities. This cities as player hubs can handly lot of online players lets say 500 like your android game. (If they are too much you should be able to instance the playerhub but thats another story).

    Good we have playerhubs where all gamers can see each other can get quests, can sell stuff can chat etc.
    If you go out to explore the real world so if you are leaving this player hub, you will find yourself in a instanced world alone.
    It's similar like in your World / Zone Demo. By switching the scene you will find yourself in an intanced solo world, except if you have created a group / party before. When you create a group of 5 people in the playerhub you will be in a group with those guys if you switch the scene and having the journey with those guys ofc.

    Thats the main idea, its preatty similar to Guild Wars 1 where the main cities hold a lot of players but the rest of the world was instaced or you had the feeling doing everything alone. So having player hubs of XXX gamers at the same time and instanced world / dungeons / raids if you leave those playerhubs which you can visit alone or with a group you created before.

    Beside that the game of course should offer the typical multiplayer stuff like chat, battle, guilds, groups etc.
    So as you can see I am trying to find something which can handle that by hosting a main server on our Unix vhost where players connect through their game client, without having game lobbies etc. It's like the typical MMO login to MainServer Scenario. In the future Playerhubs could be own servers of course to handle loads of gamers but for the beginning it's important to have an example which is running on one server only.

    Hope this explains the idea a little bit better. I did not work with Photon or other solutions before, but as you can see we want to host the server and want to be able to handly CCU dynamically without a limitation thats why I did not look closer to Photon.

    Thanks again for your time.
    Cheers
    Ronny
     
  15. GameDevDustin

    GameDevDustin

    Joined:
    Jul 17, 2015
    Posts:
    16
    I've been keeping an eye on multiple authoritative server implementations on the asset store, including this one.

    Could you highlight some of the V2.0 Features that are coming?

    I see things like the Shop, Admin interface, Clans / Leaderboards / etc that I would really need (shop specifically) as the game I'm developing is mainly focused on some competitive multiplayer matches.

    Any chance you'd be willing to tell us what V2.0 actually has in it other than the API re-write (which I'm happy to see as it shows your commitment to the project and your customers, but I'd be happier with new functionality as well).
     
  16. PartyBoat

    PartyBoat

    Joined:
    Oct 21, 2012
    Posts:
    97
    Hello alvyxaz!

    I've been looking at purchasing the Master Server Framework but I've got a couple of questions before I do so.
    1. I'm mainly looking at using this asset to create a traditional server browser for a list of dedicated servers on separate machines from the master sever. Can you speak to the Master Server Framework's abilities in this scenario? From what I can gather this seems to be one of the primary use cases.
      • On a side note, I have been messing around with the demo and no matter what I do I can only get the Games List to say "couldn't retrieve game rooms list". This doesn't inspire a lot of confidence in someone like me who is looking at this asset mostly for that feature.
    2. Next, I'm wondering if the Master Server Framework is capable of being distributed/scalable, or is it stuck to running on a single server in a single location?
    3. Lastly, this is related to the previous question but does the Master Server Framework deal with DDoS-like attacks or a simple surge in activity in any way? I'm primarily concerned that I will be stuck with the entire backbone of my multiplayer game on a single server which could easily be taken down by a couple of crafty assholes or something that unexpectedly drives a ton of traffic to the game. Additionally, if a bug or other software issue takes down the server then all of my customers are again unable to play the game.
    Thank you for your time!
     
    Last edited: Mar 9, 2017
  17. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Sorry for guys for replying so late!

    It seems like you could, indeed, use my framework. The main problem you're going to have - having a bunch of instanced worlds. It's not really related to the framework, but it's a rather conceptual problem - If you have 500 players, and all of them are solo'ing in separate game instances, you'd need to run 500 Unity instances, which requires a large amount of resources. The solution for this would be to, instead of running each instance on a separate unity process, you'd need something like "virtual rooms" - where one game server acts as multiple rooms. This is not really a problem, but it would require you to make your own gameplay synchronization (Most of the unity networking solutions force you to work with a single scene only, making it difficult to have multiple game instances in a single scene). :)

    Hey!

    V2.0 will not include any new functionality. I'm rewriting the framework to allow users to do some fancy stuff easier, like creating virtual rooms (multiple game rooms on a single unity instance (for example, if games don't need physics and are not resource intensive)), separating parts of the master server into other servers and etc. It's all about making a better base, on which people can extend the framework.

    Admin interface will probably come in the near future, as more and more people start to need it. Some of the features you've listed (Shop, clans and etc) are very game-specific, so it's very hard to make a universal solution. For example, if I make a shop, how many currencies do I include? What kind of inventory should I make (for owned items), or do I just check items as bought? What should represent the items? Making a solution that would be so universal requires a lot of time, and at the moment - top priority is finishing the V2.0, because many people want to jump right into it, rather than start working with V1.03 which will soon be replaced :)

    By the way, you shouldn't expect the framework to do everything - after all, it's a framework to help you make things yourself. When you, as a developer, know exactly what kind of things you need for shops and clans, it should be quite easy to make a solution that fits your game perfectly :).

    Hey!

    1. Yeah, this is a very common use case, and there are a few games already in production that use this functionality of the framework - so far, they experienced no problems :).

    Regarding the demo issues - thanks for notifying me! I haven't restarted the server in about a month, and on top of that, it's running on a relatively old build - I hate updating the WebGL demo, as it takes a long time to build, and 70% of the time I build it, some of the textures are missing. I'll need to look into what might have caused this issue, as I've never seen this behavior before.

    2. It depends on which functionality you want to scale. Master Server itself is designed to run as a single server. This decision was made specifically to make the framework easier to use. It's highly unlikely that master server would be the bottle-neck, because it doesn't do much work. If a situation arises, that master server can't handle the load - you can run multiple master servers, and allow users to choose to which one they want to connect. If even more optimization is necessary, you would need to focus on which functionality requires the most resources (for every game it's different) and offload that to a different server.

    3. Nope, there's nothing to protect against DDoS-like attacks. That should most likely be done on the OS / hardware level. On the software level, the most that I can do is to disconnect a user, if his' number of packets per time period exceeds some limit :)
     
  18. PartyBoat

    PartyBoat

    Joined:
    Oct 21, 2012
    Posts:
    97
    Thanks for getting back to me so quick! Looks like the answers to my questions were in line with what I was thinking. Also, I dug into DDoS prevention a bit more and it seems like something that would require way too much effort for a small indie game with a low risk of attack.

    Anyways, I'm very impressed by the support for this asset and it seems to fit my use case quite well. Just wanted to let you know that I'm going to buy it. Thanks again for the help!
     
  19. parth3333

    parth3333

    Joined:
    Oct 3, 2016
    Posts:
    5
    i cannot enter to the login screen in any device or even in window. Here is the screenshot. please tell me what ti left?
     

    Attached Files:

  20. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    I'll send you a PM :)

    I'd like to keep this thread clean from technical discussions (other than questions and answers before buying) ;)
     
  21. parth3333

    parth3333

    Joined:
    Oct 3, 2016
    Posts:
    5
    so what to do now, please tell me soon as possible, i am in trouble
     
  22. blockimperium

    blockimperium

    Joined:
    Jan 21, 2008
    Posts:
    452
    I'm trying to get clarification on something to make sure I understand the role of this product. If you've build a game on the Unity networking technology (NetworkAnimator, SyncVar, etc.) would you have to make a modification to the way the product currently works and manages data in order to use this system? It just isn't clear since the product is an abstraction over uNet but not really uNet.
     
  23. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey!

    If you're not using unity services (for example, the matchmaker), everything should work pretty much the same.

    For example, imagine you've created a game server using uNet, wihout my framework and without unity services.

    If you were to host it on a VPS, players could come and play, by connecting to it direcly. When you have multiple game servers, or when you need other things that centralized server does (authentication, managing multiple games, global chats and etc), you will need to create that centralized server - this is where Master Server Framework comes in.

    Some people use it to automate game server creation in their dedicated servers (or VPS'es)
    Others use it to connect multiple game server, to make a mmo-like game.
    Others - user the framework as the basis for regular servers (for example, when making non-realtime games, when they don't need to use uNet).

    Framework itself is not an an abstraction over uNet, but the communication layer (a part of it) is. Framework can use unet for communicating between multiple servers and clients, created with the framework :)

    I hope it makes things a bit more clear ;)
     
  24. blockimperium

    blockimperium

    Joined:
    Jan 21, 2008
    Posts:
    452
    So if I know where I want the users to connect via a DNS name (foo.bar.com => xx.xx.xx.xx) and not using match making or similar I can use this product and everything will just work 'as is'. Very curious about that statement because we use a lot of the NetworkXXXX classes from uNet and we don't have a particular desire to redo that work.

    So if what you're saying is that we can use our application 'as-is' outside of using the masterserver and connecting to that, then I'm probably in the market for your product as we have other more advanced things that we want to do later that we know Unity's Networking will not support any time soon. The big question we have, however, is how far afield we're getting away from uNet because as Unity makes improvements to their technology we want to benefit from those improvements. If we can use uNet the way it is today without having to change anything (today), then we're good. Is there any way that we can test this other than purchasing the product?
     
  25. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    You won't have to redo the standard Unet functionality - NetworkAnimators, NetworkTransforms, SyncVars, Commands, Rpc's and etc. - they will work as they do.

    In essence, you're not going away from Unet at all, and MSF helps you to setup the "infrastructure". For example, here's a quick overview of how client, master server and game server communicate to allow player into the game.

    1. You start the master server
    2. Start the game server (NetworkManager.StartServer(), kind of like clicking the "Start Server" button on NetworkManagerHUD). This server is a regular Unet server
    3. Game server connects to master server and identifies itself
    4. Player connects to Master Server
    5. Player says to Master - give me a list of available games
    6. Player selects one of the games, and requests "an access" (this is to guarantee that game server doesn't become full while player is loading a level)
    7. Access contains a secret token, IP address of the game server, a scene, and a dictionary of custom properties (it can be instructions on how to load a game and etc.)
    8. Player switches to the scene of the game, connects to game server, and sends it a token to verify players identity
    9. Game server spawns a player (For example, with NetworkServer.AddPlayerForConnection, or any other unet method).
     
  26. Kobaltic1

    Kobaltic1

    Joined:
    Jan 22, 2015
    Posts:
    183
    Do you know how long until 2.0 is available on the asset store? I am excited to get started with 2.0 and have held off on using this kit while waiting for 2.0. Thanks.
     
  27. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Hey!

    Well, most of the time, it takes about 4-7 days ;)
     
  28. Rowell

    Rowell

    Joined:
    Sep 22, 2014
    Posts:
    27
    Congrats on version 2.0 being posted to the Asset Store!
     
  29. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Woah, didn't expect it to get there so fast!
     
  30. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    I've just purchased my license for MSF and so far I'm very impressed with its potential to help me avoid CCU charges once I write my own master server and matchmaking logic. :)

    I'm using version 2.0.1 (2.0.2 isn't available yet from the asset store as of this morning), and I'm having a small problem when running the MiniGame demo. Whether I run it in the editor or as a separate process after building it, I am seeing the following recurring timeout errors in my output logs:

    Code (CSharp):
    1. 3/27/2017 9:13:17 AM|Fatal|WebSocket.connect:0|System.Net.Sockets.SocketException: No connection could be made because the target machine actively refused it.
    2.                          
    3.                              at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP, Boolean requireSocketPolicy) [0x00000] in <filename unknown>:0
    4.                              at System.Net.Sockets.Socket.Connect (System.Net.EndPoint remoteEP) [0x00000] in <filename unknown>:0
    5.                              at System.Net.Sockets.TcpClient.Connect (System.Net.IPEndPoint remote_end_point) [0x00000] in <filename unknown>:0
    6.                              at System.Net.Sockets.TcpClient.Connect (System.Net.IPAddress[] ipAddresses, Int32 port) [0x00000] in <filename unknown>:0
    7.  
    8.  
    Is this some sort of config issue on my firewall maybe? Or do I need to modify some value in the Mini Network Manager script?

    Thanks in advance. :)
     
  31. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    Also, a meta-question... would you prefer these sorts of reports to come here to the unity forums, or would it be better if I used your github issue tracker instead?
     
  32. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    We've resolved the issue - apparently, `MiniDemo` scene contains `ConnectionToMaster` game object, which should not be there.

    I'd prefer the github, as it's a bit easier to keep track, and it doesn't clutter the forum with too many technical things - I like to keep it for announcements and questions before purchase ;)
     
  33. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    Thanks again for your prompt and kind assistance. Top notch support!

    Understood, and will do. :)
     
  34. ZoneOfTanks

    ZoneOfTanks

    Joined:
    Aug 10, 2014
    Posts:
    128
    Hi! Since Unity 5.6 shall have Unet Nat traversal - will it be in MSF? Or I miss something? o_O
     
  35. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Sorry for the late reply - I've been on vacation for a week ;)

    I'm not yet sure in which "form" unet's Nat traversal will come. If it's not tied too deeply with their services - then of course! If it is, I'll disassemble Unity and tinker a bit with ILSpy to see what can be salvaged :D.
     
  36. angusmf

    angusmf

    Joined:
    Jan 19, 2015
    Posts:
    261
    In case anyone hasn't noticed already, there's some pretty big news on the wiki.

    After only using this asset for about a week, I'm pretty committed to it. I'll be sharing my experiences and tips and hope to help other people do the same so this project continues to thrive. In that time, I got my existing UNET game integrated with it and hosted on linode in test form. What makes this asset so great for me are the thorough examples and extendable code, so I'll be contributing everything I learn/create as I go. This library fills a gaping need for those of us who want/need to run our own back end.

    Thanks again @alvyxaz!
     
  37. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    happy mariage @alvyxaz and for people who want to join and get feedback since this asset is open source, you can join the discord server
     
  38. alvyxaz

    alvyxaz

    Joined:
    Mar 21, 2013
    Posts:
    103
    Woah, I was expecting posts filled with anger, haha. Thanks a lot for expressing your thoughts!

    Thanks a lot!

    By the way, If anyone's wondering - I will be away from discord for about a month - need to reduce the number of "time sinks" until the wedding ;)
     
  39. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    Like @angusmf, I am also committed to MSF (which is now FREE from the asset store!), and think it's a fantastic kick-start to a client-server game project framework. The examples provided default to using LiteDB2 as the server database, along with UNet for client connectivity and gameplay. They work pretty much out of the box!

    The creator @alvyxaz provided us relatively recently with a new basic database implementation for the very popular MySQL, which works well as a drop-in replacement for the previously provided LiteDB2 implementation when tested with the sample AuthModule and ProfileModule that come with MSF.

    I'm writing today to mention that I've just finished a port of that MySQL implementation over to PostgreSQL, and I'm happy to share it with the community.

    I've posted my PostgreSQL implementation in the group's Discord channel, where I can be found at odd hours, and would welcome any feedback from developers interested in testing it out.

    Have a nice day. :)
     
    ZoneOfTanks and Tiny-Tree like this.
  40. ZoneOfTanks

    ZoneOfTanks

    Joined:
    Aug 10, 2014
    Posts:
    128
    Wow! Mega cool! :)
    When new version will be available?
    I need MySql :)
     
    Last edited: Apr 17, 2017
  41. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    New version will be available whenever you create it. The package is open source now. So, what will you include in your upcoming revisions? :)

    Also, did you notice that MySql is already included...
     
    ZoneOfTanks likes this.
  42. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
    @alvyxaz has pulled my PostgreSQL implementation into the main repo on github, so hopefully it'll be part of the next official release. If you need it before then, ping me in the group's Discord channel and I can send it to you there.

    In a somewhat-related note, I've created a small wiki page that discusses some of the major differences between popular database choices for multi-user game applications. The article is targeted at MSF users. If anyone here is interested to look it over, here's a link:
    https://github.com/arcanor/barebone...r-Indie-Game-Developers:-PostgreSQL-vs.-MySQL
     
    ZoneOfTanks likes this.
  43. yumianhuli1

    yumianhuli1

    Joined:
    Mar 14, 2015
    Posts:
    92
    Hi!Where is the a simple demo that you can learn from the package? Thank U!
     
  44. Arcanor

    Arcanor

    Joined:
    Nov 4, 2009
    Posts:
    283
  45. yumianhuli1

    yumianhuli1

    Joined:
    Mar 14, 2015
    Posts:
    92
  46. Zapgun

    Zapgun

    Joined:
    Jun 3, 2011
    Posts:
    50
    Very excited to see this available and open source! I've been looking everything over, but I'm curious if anyone's been able to get the World Demo working. It doesn't seem to function for me.
     
  47. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    yes it worked, which part didnt worked for you ? like if you do not build the master server and the 2 zone server but only run the game in editor then you should look at the wiki first
     
  48. Zapgun

    Zapgun

    Joined:
    Jun 3, 2011
    Posts:
    50
    Thanks for the reply Damien. Yeah I read through the entire Wiki. The page for setting up the World Example is not written yet (unless I somehow missed it). I went through and got the earlier examples working, but the brief instructions for the world example that are written on its Canvas UI don't work. Just wanted to make sure it was in fact implemented in the released - I'll play with it some more.

    Cheers and thanks!
     
  49. MrGky93

    MrGky93

    Joined:
    Feb 27, 2014
    Posts:
    281
    have someone testing it on a server ?
    I testing it on my server master and game server but it not working.
    The master server works but my game server dont connect to the my master server , its not list on my server menu.
    i use this command for game server
    ./gameserver.x86 -msfMasterIp xxxx -msfMachineIp xxx -msfMasterPort 5000 -msfLoadScene MiniGame

    but this dont create a game server its not list on the start menu.
    Have someone a solution ?
     
  50. Tiny-Tree

    Tiny-Tree

    Joined:
    Dec 26, 2012
    Posts:
    1,315
    check the firewall and port, then it should just works