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

Third Party SmartFox vs. Photon?

Discussion in 'Multiplayer' started by sciguy77, May 9, 2010.

  1. sciguy77

    sciguy77

    Joined:
    Nov 1, 2009
    Posts:
    191
    Most of the Unity networking tutorials I've seen have all used SmartFox. However, relative to photon's pricing (http://www.exitgames.com/Photon/Pricing usually about $1 / player) SmartFox is crazy expensive (http://www.smartfoxserver.com/products/pro.php upwards of $6.40 / player). Is Photon as easy to use as SmartFox? Why is SF so much more popular?

    I realize that these may be dumb questions, however I'd much rather buy Photon due to costs, I just want to make sure it can do everything SF can do as easily.
     
  2. AzraelKans

    AzraelKans

    Joined:
    Oct 29, 2009
    Posts:
    135
    Well I'm merely beginning to investigate on this, so please correct me if Im wrong, but heres my take:

    Smartfox is more suited for casual web games, chat or small "mmo"s and is a lot simpler to use than other options. However it requires to have a centralized server on all the time. (hence the name) and the user cant set its own servers using the client, so it will always require internet access (like a webpage) or setup its own smartfox server

    Photon is a pretty different beast, it allows users to set their own servers on a lan or internet. However is a lot more complex than smartfox since it is basically a wrapper/library for UDP/Socket services. It also requires a master server to find games online (neutron or other). However due to its features is a lot more suited for stand alone win/mac games (which currently are not that popular in unity3d) or it could also be used on iPhone apps.
     
  3. tobiass

    tobiass

    Joined:
    Apr 7, 2009
    Posts:
    3,062
    It seems Photon gives a wrong impression:

    Photon is designed as server for online games, not lan multiplayer games. It might be possible to use it in a lan but it shines at handling hundreds and thousands of players at the same time.
    It takes away most hurdles of using UDP without taking over control. Send your events in order, reliable or unreliable. It also offers TCP. You don't have to care about the details but should know how much data your games produce and consume.

    The framework for your games is written in C#, which might be one of the key differences to other products. Currently we offer "rooms" to join or leave and send events in those. You can also attach "properties" to rooms or players easily. With the "lobby" sample you can create any number of lobbies and list games without having to code anything yet.

    Or you use the sample code as basis and expand it as needed. Use anything that DotNet and Unity3D has to offer.
     
  4. smithdwsn

    smithdwsn

    Joined:
    May 10, 2010
    Posts:
    4
    Photon supports HTTP and UDP while SmartFox does not support. Photon uses Server API as C# while SmartFox uses Java,Python,JavaScript and ActionScript.Photon supports all the data type while SmartFox supports only String.
     
  5. sciguy77

    sciguy77

    Joined:
    Nov 1, 2009
    Posts:
    191
    Thanks Tobias for clearing that up. What Unity/Photon tutorials/samples are out there?
     
  6. tobiass

    tobiass

    Joined:
    Apr 7, 2009
    Posts:
    3,062
    I hope you already jumped in by downloading the server and Unity client SDKs, so you probably found the samples and code.

    Currently we have the Realtime Demo to show the basics: Each client is a player, moving on a fixed grid. It shows how to get into games, raise and handle events and leave the game. This should enable you to get any data across, as the events can be defined as you like. This demo shows that you can do a lot without modifying Photon on the server side.

    A completely different demo is the MMO Sample. This is more server centric and shows how flexible the logic can be setup on the server.

    Features like "Properties" and our Lobby solution are not yet in the Unity SDKs but you find them in the DotNet SDK.

    We're open for questions here or in our forum. Let us know which features you want to see in more detail, so we can priorize that accordingly.
     
  7. dacloo

    dacloo

    Joined:
    Jun 30, 2005
    Posts:
    469
    Note that SmartFoxServer 2 will be more suitable for real-time games as now can send compressed binary packages, as well as UDP.
    You can also prioritize messages (e.g sending transform stuff in UDP, compressed and important messages in another larger format).

    The whole 'engine' has been re-written to make it more suitable for both real-time and MMO use.

    We feel the engine is more user-friendly, while Photon allows more changes 'under the hood'.
     
  8. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    But at the cost of cutting all but Java, which will likely also cost customers again that never learnt any reasonable coding and thus can't use it anymore.

    But will be interesting to see how it works out, also licensing wise as it always looked interesting but there seem to be licensing experiments when I look at how OpenSpace went along over the time
     
  9. zumwalt

    zumwalt

    Joined:
    Apr 18, 2007
    Posts:
    2,287
    Keeping this post simple, SmartFox good for small or turn based games, Photon, well blamo, mega games, huge, like say, I got a way to explain this... yea, I know how...

    http://www.cinnabon.com/goodies/baked-goods.aspx
    Look at the minibon, this is like SmartFox

    Now...
    http://www.yelp.com/biz_photos/o_CD0oEGm-GN1ifgzRBKUQ?select=ZgXgqR0dw54vAlUX1w9jzg

    That photo of that cinnamon roll from LuLu's cafe would be the equal to say Photon, now, you put the two side by side, that should help you understand the scope between the two in comparison.

    SmartFox = tiny/tiny 1 inch tall, by 1 inch wide minibon

    Photon = 3 pound foot wide, foot tall megabon

    Danka
     
  10. cadamson

    cadamson

    Joined:
    Oct 11, 2009
    Posts:
    27
    This forum seems a little biased towards Photon.

    SmartFox = Spend more time writing functions (extensions) to make your game or social networking app do something spectacular all boxed up in a tiny Java Virtual Machine. http://adobe.com

    Photon = You can spend all the time you want tinkering with it to see how it works under the hood. If you are broke and complain about not having the source code for the Unity Engine then this is probably the right product for you. http://microsoft.com
     
  11. cadamson

    cadamson

    Joined:
    Oct 11, 2009
    Posts:
    27
    Some companies don't mind spending the extra capital that it takes to do something the right way. Tell me how you can make money if you don't invest it in technology and people? :wink:
     
  12. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    I don't mind it as I never liked the fact that they sacrificed performance for the sake of non-programmers :)

    But tell that the flash kiddos who are barely able to work in their realm, not to consider Java that starts where AS ends complexity wise ;)
     
  13. Kaiserludi

    Kaiserludi

    Joined:
    Jan 21, 2009
    Posts:
    94
    I never liked the fact that Java and .NET sacrificed performance for the sake of non-programmers :)

    But tell that the Java/.NET kiddos who are barely able to work in their realm, not to consider C/C++/ASM that start where Java/.NET end complexity wise ;)
    :D
     
  14. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    hehe

    Yeah but the difference in performance there ( .net vs c++) is small compared to flash vs rest of the world.

    also .net and java compensate for the slower execution performance by a 5-10 times higher productivity over C++. AS doesn't gain anything on that end vs C# 3+

    but actually it was more about the fact that AS often is really used by non programmers (with a pretty regular missunderstanding that they think that they are good coders ...) and the fact that it is a script language not a native compiled one.
    But thats personal opinion.
    I can programm in AS too and it has its uses but not as a server side programming language if one asks me.
     
  15. zumwalt

    zumwalt

    Joined:
    Apr 18, 2007
    Posts:
    2,287
    Nah, the forums aren't biased and prefer Photon over SmartFox, I preffer Photon over SmartFox but honestly you seriously can not compare the two, no matter how many threads are created. If you used and knew all the plugins that Photon has for all the different engines out on market (including Flash btw), you would see the core difference.

    They are targets for two completely different markets. Comparing them is like comparing Unity to Blitz, you can create games in both, there is networking for both, Blitz can use both OpenGL and DirectX, there are many other similarities, but that doesn't mean they compare.
     
  16. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    agreed :mrgreen:

    If I have a realtime networking project I would use Photon.

    If I would do a facebook game in the style of farmvile and alike that require scaleability and relatively little direct interaction I would favor SFS Pro due to terracotta
     
  17. Thomas-Lund

    Thomas-Lund

    Joined:
    Jan 18, 2008
    Posts:
    465
    Dont know where you get this from?!!? But you surely spam it all over the forum.

    (Remember I'm not an employee of GotoAndPlay - the guys behind SFS - so not just randomly spam this to defend "my" product).

    Take a look at the showcase list and tell me why some of the huge companies like Disney and Cartoon Networks use the "small bonbon" to make huge MMOs as well as real time online twitch games. Flash sure, but that doesnt mean that you can say its not comparable.

    SFS is *not* made for small games. Its simply not true, and I dare you to prove the points made. It really offends me that you spam this as truth without even having tried it yourself based on hear say. Sorry.

    Does it have issues with an FPS MMO? Sure - it runs a (for these days) not efficient string based protocol. You can compress things yourself, but thats the main issue. What does it mean? Means primarily that you will eat more bandwidth than for a binary protocol. But in a real life situation you would still have to have interpolation/extrapolation and similar in place as your network latency will be your biggest issue - not what protocol it runs.

    SFS2X is the next version of smartfox which has been totally rewritten engine wise, and offers all the things you would ever think you need + some more. If you are into high end MMOs, you should get on the beta and compare that to photons offerings.

    As usual I dont have anything against Photon. Its good to have options. Biggest difference is obviously that Photon uses C# and SFS has Java on the server side. Next up is that SFS has a lot of "extras" on top of core transport of data.
     
    Last edited: Sep 26, 2010
  18. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    As Photon has with its addons you can download freely like the spatial world update management etc offered by the MMO addon and alike.

    both techs have their pro and cons and anyone interested in doing an online game at the time has 3 basic options to choose from and should invest the appropriate time evaluating them as they can make differences in the 5 figure dollar range and later scaling if you go the lazy way :)

    Options are:
    - Photon
    - Smart Fox Server (Pro likely as we talk in Unity context here)
    - Badumna


    I personally don't favor any, as each of them in the past has shown me inidividual benefits that make it shine over the others.


    Clear benefit of Photon and Badumna is that they both support Unity on the technology level, they don't rely on someone external thats not part of their team to do their work as SFS. But to what degree thats negative depends to what degree you are involved with the inner stuff and can influence problems they cause on a lower level which impacts the layer above (Unity).
    Just to answer that on the other end: ExitGames has indeed a team member dedicated at handling client technology, not just at offering a server backend technology as GoToPlay (thats at least the impression I get from the page and your postings here)
     
    Last edited: Sep 26, 2010
  19. DWORD

    DWORD

    Joined:
    Jun 22, 2010
    Posts:
    38
    Why don't you just create network framework using .NET Sockets(no DLL import needed), RakNet(indie license), Java Sockets, ......, there are so many options. Within a few months you can create a framework with no costs and all features that you want.
     
  20. zumwalt

    zumwalt

    Joined:
    Apr 18, 2007
    Posts:
    2,287
    @Thomas

    No offense bro, but as I stated and you quoted of my "spam" heh everything I said is factual and real lets break it down shall we?

    Yup, true statement, I prefer Photon over Smartfox, I had downloaded the smartfox software like a year ago and used it for a bit before throwing it out as an option for online gaming for realtime networking.

    Again, another true statement, they are different products with different audiences, hands down

    Another factual statement, nothing to point out here, I mean Photon is designed to scale for 10's of 1000's of players, so is their pricing model.

    Another factual statement, they are designed for different purposes with different target audiences in mind. So not sure why you hammered down on my post and telling me what you stated and asking me to prove it, just go to photon website and look at the client list, speaks for itself.

    Individuals need to test out each product and simply choose for them self and I have also pointed out. *shrugs*
    Doesn't matter to me one way or the other which product they use, you just can't sit down and flat compare the two, they really are for different markets. All the testing I did with Smartfox products showed me that it was great for facebook games and the like, but not real time networking games, like a racing game or such, at least not in its current form, maybe in the next major release it will be. But smartfox is really good at handling transaction level games, not real time with heavy packet use. PLUS Smartfox runs at around 300 megs on my server just for 10 players, and the same game with 10 players in Photon runs at 50 megs of ram on my server, that is 6 times smaller.

    I have tried it, so throwing that at me isn't worth anything because I spent a lot of time with it, but obviously it is not with the latest version, it was a year ago when I last worked with the pro trial.

    People should just download each, work with the API's and see what fits their game needs.
    If they are hard core looking at an MMO though, there are other technologies that are far more advanced than both of those and out of scope for the indy market. Quazal is just one such product. http://www.quazal.com/ with their Net-Z product, you can support many players well above and beyond some of the discussions here in the threads and yes, I tried their product out long before I knew Unity existed along with a few other networking technologies, they are just WAY out of the scope of any income I would have, they are a full blown professional solution for massive scale mmo's.
     
  21. Lapo

    Lapo

    Joined:
    Apr 11, 2008
    Posts:
    7
    Since I think I know SmartFoxServer a little I would like to join the discussion, just because I read stuff that is quite perplexing.

    You are saying that SmartFox runs 300megs on your server for only 10 users to somehow demonstrate its weakeness? This is quite ridiculous.
    1) That simply depends on the JVM obtaining all that memory from the OS, because there's aplenty! If your system was short on resources it would probably start with 64MB. SmartFoxServer can run with less than that and run in the thousands of users if your server side is not too complex.
    With much less than that (300MB) we stress-tested the server with 20 thousands users for your information.
    http://www.smartfoxserver.com/whitepapers/benchmarks/

    The other thing I find baffling is that you said you tried SmartFoxServer a while and dismissed quickly, yet you talk like you've been working with it for years.
    So you can confidently brag about the fact that it's okay for small stuff and simple turn based games.

    Well, it turns out you are providing very ineffective help here, and people willing to understand more will just get misleading info. SmartFoxServer PRO today runs some of the largest and most successful virtual worlds ... just recently Neopets and Ubisoft launched two massive projects and the list goes on with Zynga, Disney, Sony, Cartoon Network...
    Only turned based games? Maybe you tested SmartFoxServer BASIC :D That's the entry level product for chats and turned based games. The PRO edition is done for every kind of games and in fact we have customers using it for all kind of action and realtime games, MMOs, casinos, simulations, educational projects and the list goes on...
    This is just a small fraction of the hundreds of works that have been created:
    http://smartfoxserver.com/showcase/

    As regards the cost per users, that seems to be another very confusing idea.
    An unlimited SFS PRO license costs 2000 euros.
    You claim that the cost per user is 6.40 buck... on what basis?
    According to your math 2000/6.40 = 312 users? Well... maybe if you run SmartFoxServer on your iPhone you will get such a lame number of concurrent users. :eek:
    On a 3-year old quad-core machine with 2GB of RAM you could run at least 10K to 20K concurrent users! Now that's between $0.1 and $0.2 and we're talking about commodity hardware :)

    Finally as regards UDP support and other realtime-related topics you might be interested in learning that we've already announced a new major release of the product called SmartFoxServer 2X.
    This is not just an update but really a new product that brings the platform to a new level under countless aspects. In regards to pure network performance the new engine provides an highly efficient binary protocol with dynamic compression and full UDP support. SFS2X was announced a few months ago: http://www.smartfoxserver.com/2X

    It's now in private beta and it will be publicly available by the end of October 2010 for anyone to try. It will include Unity 3D support out of the box, including UDP protocol, game API and tons more...

    Hope this helps.
     
    zevonbiebelbrott likes this.
  22. zumwalt

    zumwalt

    Joined:
    Apr 18, 2007
    Posts:
    2,287
    @Lapo

    I claim zero with regards to cost per user that was someone else :)

    As I had stated, maybe the brand new 2.x has some cool features in it, don't know, haven't received it nor tested it, and as I mentioned, I used smartfox a year ago and dismissed it because yes, at the time I tested it with the limitations it had, the packet size was simply unbearable for how it was designed. I am glad the company has brought in a newer, more enhanced version and as I stated, people need to simply download each product and test for themselves. I had a bad experience with the product and I will speak based on my experience and my opinion of the product and how it ran in memory from the stats I saw, again, this is personal experience with the product regardless of the list in the white paper. As far as I could see, at the time I tried it, it really was a great product for transaction based games like Zynga has on Facebook and MySpace games. The packet sizes were just way to bloated for real time networking games. When the 2.x comes out, I will be more than happy to see what the packet sizes are like in comparison to other products :)

    Personal experience is what it is, personal through personal efforts using the engine verbatim from the download link and the demo's provided along with flash examples and reviewing memory use on the server :) Granted the server only has 2 gig of ram and 2x4way processers available so it is not a Cray by any means :)

    I will stick to what I have said because it is based on personal experience with the product, not here say or estimations or bad data or invalid information, it is all factual based on personal experience with the product, sorry that it is not what you expect and sorry it is not a 100% positive review of the product.
     
  23. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    In a few months?
    Your math sucks man if a few months of work to you means "no cost" cause even at worst hourly rate a few months >> than either of the two ;)
     
  24. Lapo

    Lapo

    Joined:
    Apr 11, 2008
    Posts:
    7
    @zumwalt
    I know, in fact the comment wasn't specifically directed to you ;)

    I have no problems with personal preferences, anyone has his own preferences. I am not going to argue with that.

    I still maintain that you are not providing useful information and in fact some of your comments are definitely inaccurate to say the least. The memory argument indicates you didn't even read the first 3 lines of the installation documentation where it's cleary stated that a minimum of 64MB is required. With the default settings you're already able to handle thousands of concurrent players.

    If it was just for that I wouldn't even bother posting.
    The silly part is your claim about the alleged impossibility to create realtime games. This is simply not true, there's no basis for such claim and the fact that dozens of action games were created with SmartFox proves you wrong. If you at least took the time to test the provided examples you should have realized it by yourself.

    By the same token you also seem to have not noticed that SmartFoxServer provides what we call the "raw protocol", specifically targeted at realtime games where small packets are sent at a high rate. We provide a complete tutorial on how to use it, including an implementation in Unity based on the Island Demo, which works just great.

    You can already do it, since it's well over three months since we published the 2X announcement including a series of technical articles one of which is entirely dedicated to the protocol format. :)
    The link is the same I already posted before:
    http://www.smartfoxserver.com/2X

    Cheers
     
    zevonbiebelbrott likes this.
  25. zumwalt

    zumwalt

    Joined:
    Apr 18, 2007
    Posts:
    2,287
    :) Well, I never said that it was "impossible" to create real time networking with smartfox, only that it was not made for it and the packets were too bloated for it, because in smartfox pro software, you are passing strings around instead of compressed binary information. 64 megs to begin with can't compare to the 300 megs in memory it showed when I had 10 users connected of the 20 limit, sure, I could have something mis-configured but again, my information is not inaccurate by any stretch. However, the downloads to the smartfox latest pro release still point to the 1.6x version, reading about 2.x and playing with 2.x is two different things :) That would be like reading all the really cool stuff about 3.0 Unity and having 2.x to play with, white papers and articles along with informational blurbs don't install well on machines and show what it can and can not do, but they make for great pictures! Articles I have read, and it all looks great in theory and on paper, so just have to wait until it officially hits the download sections to play with :) so nope, "You can already do it" is inaccurate. You can "read" about it but you can't "do it".
     
  26. cadamson

    cadamson

    Joined:
    Oct 11, 2009
    Posts:
    27
    Sometimes you have to pay to play. We could only read about Unity 3 until we upgraded and also purchased additional licenses. When I finally I got to play with it, it still had many bugs and I spent many precious hours getting things back into working condition. I'm still battling new bugs every time there is a new release candidate. Unity 3 is still the best engine out there for our applications. SFS2X Beta is only available right now for existing customers. I am playing with it as I have time. So far it works and performs great. Thomas was even kind enough to send me the beta API for C# / Unity. We look forward to purchasing many licenses for 2X.
     
    Last edited: Sep 29, 2010
  27. Dreamora

    Dreamora

    Joined:
    Apr 5, 2008
    Posts:
    26,601
    the difference though on that is that you knew that you use unity and likely continue to use it.

    with a technology you have no use for at the time its hard to justify hundreds of dollars just to get the beta, in such a case you do what any reasonable person does: offer his insight basing on the now state and reevaluate that once the new thing is around.
    developers should never give a damn about unhatched eggs, you can only lose with that but never win
     
  28. thx2013

    thx2013

    Joined:
    Dec 25, 2012
    Posts:
    8
    Why nobody mentioned in this thread that smartfox also runs on Linux?
     
    Last edited: Dec 25, 2012
  29. Ashkan_gc

    Ashkan_gc

    Joined:
    Aug 12, 2009
    Posts:
    1,117
    With the current features, it seems that smartfox has more built in features but the server side platform uses java virtual machine and you have python/java/action script as options but in photon you have C# and .NET on the server. It depends on your programmer skills that what is better for them.
    Implemented features of smartfox are not that hard to implement by yourself but would take about a month of a man if u need all of them but guys there is another option called UnityPark suite as well
    www.muchdifferent.com
     
  30. thx2013

    thx2013

    Joined:
    Dec 25, 2012
    Posts:
    8
    Cool, but I meant that Linux is standard for hosting servers. So being windows-only is big disadvantage
     
  31. Ashkan_gc

    Ashkan_gc

    Joined:
    Aug 12, 2009
    Posts:
    1,117
    Well photon can run on Linux and Smartfox can do it as well. Now in unity 4 the unity park suite can run on Linux as well. their database solution Riak is Linux only. The uZone and uStream and uPikko/Pikko Server are all written inErlang and can run on Linux and the only missing part was unity based servers which now can run on Linux.
    Actually they've posted about it much sooner than unity announces public availability of the Linux version.
     
  32. thx2013

    thx2013

    Joined:
    Dec 25, 2012
    Posts:
    8
    No, photon can`t run on Linux
     
    Last edited: Dec 26, 2012
  33. Ashkan_gc

    Ashkan_gc

    Joined:
    Aug 12, 2009
    Posts:
    1,117
    Not sure on that but you might be right because i'm not a user of it however i'm sure that unityPark suite runs well there
     
  34. Charles-Van-Norman

    Charles-Van-Norman

    Joined:
    Aug 10, 2010
    Posts:
    86
    Noob question from a first-time Multiplayer dev:

    I have a realtime 4-player multiplayer shooter. I want to use Photon. After paying for Photon from Asset Store, will I have to set up my own servers or anything outside of Unity to make it work? Or, do I just configure my client in Unity correctly for my players, and Photon handles all server // off Unity stuff? (I assume Photon will charge for per player which I'm fine with)
     
  35. tobiass

    tobiass

    Joined:
    Apr 7, 2009
    Posts:
    3,062
    You can use the PUN Free package, if you like. You don't have to pay to try out things.
    Included is a free subscription (or better "subscription", because it doesn't cost anything) for up to 20 concurrent players (CCU).
    The paid asset in the Asset Store is PUN+ and you get a 100 CCU subscription with it. Aside from that, for Unity 5 the content is the same as in the Free package.

    You can use the Photon Cloud, if you don't want to host yourself. Prices are available here (use the "Monthly Actives" slider):
    https://www.photonengine.com/en/pun/Pricing