Jump to content
  • Advertisement
JordanL

Experience with Photon Engine?

Recommended Posts

Hi everyone,

I'm part of a small team in the early stages of developing a multiplayer game, and I came across Photon Engine (https://www.photonengine.com).

Our initial plan was to write custom server logic with Node and socket.io, hosted on AWS or something similar -- and I still think that's a pretty solid option. But I can't deny that Photon's offering sounds attractive, especially considering we're not networking experts. So, I'm hoping to get some input to help make a decision.

If anyone around here has had experience using their platform, I would love to hear about it. General comments would be much appreciated :). As well, here are some specific questions off the top of my head:

  • How good is their reliability/performance? Any issues there?
  • Are there any areas in particular where it shines, or where it's not so great?
  • What's the dev experience like? How does it compare to the process of writing your own networking logic?
  • Is there enough flexibility to make the exact game you wanted to?
  • How good is their customer support?
  • Did you find their pricing reasonable?
  • Are there any competing platforms to consider?
  • Any tripping points/"gotchas" to be aware of?

Bottom line...would you recommend it?

Thanks in advance!

Share this post


Link to post
Share on other sites
Advertisement

There are successful games running on Photon, so clearly it's a "good enough" solution. I know people who used it for real-time multi-player, with Unity, and it worked for them. If you're not using Unity, I don't think that's a good option, though.

However, if what you need is turn-based, batch-oriented, web services, then by all means use Node.js. Photon starts showing value when you actually need interactive real-time games. Farmville or Hearthstone? Node, not Photon. Overwatch or World of Warcraft? Photon might work better than Node.

And, in the end, if you build an entire infrastructure around your game, you'll probably want a web application server anyway, so typically you'll end up having both anyway.

 

Share this post


Link to post
Share on other sites

I've never used Photon personally, but I watched a couple of other teams use it in a 48-hour game jam they sponsored a year or two ago. Multiple teams were able to get characters running around in a shared world on the first day, so it definitely can get the job done.

Share this post


Link to post
Share on other sites

I've used Photon in a couple of projects. It is really good when it comes to networking and multiplayer. It is easy to get going and send data across players. There are a few shortcomings however, and I was forced to either use a third party backend or build my own. The shortcomings are:

- No way to enforce authentication, and therefore no notion of user accounts with Photons. You'll have to manage your users in some other fashion. This also includes no social login either.

- No data storage for users to keep information, progress, leaderboards etc

- You can't enforce your own data validation on the server, since Photon only does message relaying.

I'm working on Nakama server - an opensource (and free) implementation of all the above that is intended to replace but can also complement Photon. It has first class support for Unity and Unreal

Hope this helps,

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Advertisement
  • Advertisement
  • Popular Tags

  • Similar Content

    • By JoAndRoPo
      While going through a Game Design Document Template, I came across this heading - Core Game Loop & Core Mechanics Loop. 
      What's the difference? Can you provide some examples of an existing game?  Suppose if I am including these topics in a Game Design Document, how should I explain it so that my team can understand? 
    • By HomeBrewArcana
      Hey All,
      I'm looking to get into the gaming industry. I've skirted around the idea for a long time, always thinking that I couldn't do it. I've finally decided to take the plunge.
       
      My question is whether it's worth going to school for game design/coding etc. I've been writing content for paper games for a while, and have a good idea of story and some basic design. But I have next to no technical know how. 
       
      My instinct is that such things can be learned with a lot of practice, video tutorials, and more practice. I've also heard that a degree is not really that important, since you get hired based on your portfolio/prototypes. Why not just make the games?
      But won't a degree help with contacts and mentoring--I'm not a great networker.
       
      Of course, it'll plunge me into more debt, but...
      If anyone has advice, let me know. Also any idea of a program to start with: Game Maker, Unity, Godot, Construct, Stencyl--I've heard good things about them all, so much so that I don't know which would be best to start with!
       
      Thanks
    • By Liquifire
      I'm making an small 2D engine using Kha and I have a timer class, which basically simply either waits a certain amount of time to call a function, or repeatedly calls a certain function after every x seconds. I simply want to know if I should have timers run on different threads. I'm aware that makes sense, but I might use many timers in a game for example, would that still be okay? Also I'm currently writing an animation components, which waits every x seconds to draw another image using the timer class. And in a normal 2D games, I would have many objects with animations on them, other than the other timers. So I just wanted to ask people who have more experience and knowledge than I have what I should do for timers: Either leave them on the same main thread, or make them run on different threads. Thanks in advance.
    • By Developer Dre Reid
      Hello fellow game devs I am seeking some answers to a somewhat simple question. Now I always thought that when a dev was going to work on a new game to publish he/she should keep some aspects secret infill time to release then he/she can give out needed information pertaining to the game to the public as a marketing tactic. However I had a discussion with other game devs who stated that my way was somewhat not right and the only reason I had such thoughts was due to me being a smaller indie dev who was afraid of having my idea stolen. 
      Therefore I would honestly like to know if my way was right or were the other devs correct. If I were to start working on a new game and give out information about it online via social media would I be risking my idea being stolen and it being made faster and better by another developer or team of developers. Am...Am I paranoid??? 
    • By Aaron Marsden
      Hey everyone! 
      My name is Aaron and I’m a writer, gamer, and marketer/campaign manager for PowerSpike, a startup in the Twitch space. For the past two years, I’ve had the opportunity to build and run professional Twitch influencer marketing programs for some great brands (a few clients include Soylent, Camp Mobile, CreativeLabs, and more). 
      I’ve been obsessed with Twitch as both an entertainment and marketing platform since 2014. Before entering the world of marketing, I was a broadcaster and a content creator myself and made YouTube videos in my spare time. 
      Recently many game developers have shown interest in collaborating with Twitch streamers to promote their games -- and I think I can help! 
      I’ve learned so much about entertainment and community development from studying the growth of popular streamers since then, and my current position has allowed me to learn an incredible amount about the process of promoting a product/game/service’s message to a large audience with the help of Twitch streamers. 
      I’d love to share what I’ve learned with anyone who has questions. Ask me anything! 

      If you’d like, you can follow me on Medium at https://medium.com/@aaronmarsden -- that's where I'll be posting both personal and PowerSpike articles on game dev marketing. I also just released my first article, "The Ultimate Guide for Promoting Your Game with Twitch Influencers," here on GameDev.net! You can check it out here:
      Thanks everyone!
    • By shadow_archer
      hello!
      so i had this idea of a game i wanted to make that i had in mind for years and i wanted to try to execute it (at least partiality).
      problem is, i don't really know what kind of game style this game can fall under and i don't really know where to start learning sources and design wise :/ .
      i want to create a management style game and all the controls the user has are through a menu of some sort similar to this (this particular example is from a game called '911 operator' by jutsu games):

      to find more information about how i can create such a game i really want to know what's the name of this style of game, mostly GUI controlled game.
      aside from that i'm looking for a bit of advice,
      which engine would be best for such a game? i'm fluent in C++,C# and python so any game engine you can throw at me is great!
      are there any good sources to learn from before jumping into this kind of game, tutorials of some sort perhaps?
       
      thanks so much to anyone who answers, this really means a lot to me!
    • By callmevivi
      Hi! 
      So, I've recently thought of a nice twist to a hack and slash-type zombie game that I'd love to make (mostly so that no one can steal the idea I'm not gonna elaborate to much on the story, but that should be no issue to help me, I think).
      But my problem here is that I have little to no knowledge of coding. I AM willing to learn, but I'd rather not have to develop 50 games before I've learned how to develop the game I actually wanna make. I'm just a hobbyist. I don't have that kind of endurance for this.
      The game I'm looking to develop is basically just your typical Player having to fight their way through masses of zombies in a city towards a certain safe place, going from location (check-point) to location.
      The only controls I really want for the player to have are:
      -to interact with objects (like talk to people aka trigger a dialogue or cutscene, pick up objects like weapons, have commentary appear when interacting with something (like the player clicking on a corpse and triggering the player thinking "Please, don't attack me to. ... Thank you very much, Sir.". All of this could be established with simply triggering a cutscene though.),
      -move with the arrow keys or ASWD,
      -have a health bar (not necessarily displayed, I just want the player to actually be able to die if they get gnawed by too many zombies)
      -and hack away at zombies coming towards the player. Just let out all your frustration by bashing in their faces, maybe have a satisfyingly-bloody animation when they die. 
      -Hopefully have companion characters fight zombie hordes with you. (Although I could get creative and find excuses not to have the side-characters fight with you)
      -No jumping required.
      -Inventory would be nice but not necessary either. 
      -Saving your current game progression manually would be great, but could be done with check-points, too.

      Primary focus of the game would be just having fun hacking away at zombies and getting to know the characters, who I hope to make worth getting to know. 
      I've been researching the internet for game engines for weeks now but I haven't really found one that seemed helpful to me, mostly because the reviews are full of vocabulary that as an absolute newbie I understand none of. So, whenever I read the cons for an engine in the review I understand very little of it.
      Although an engine that requires absolutely no coding and still be able to perform all of this would be an absolute dream come true, I believe that's quite impossible to find. The only non-coding engines I've come across so far are absolute garbage due to limits, buggy, underdeveloped, or abandoned by their creators. I'm willing to learn coding, I'm not afraid of it as long as there are tutorials and templates out there, too. 
      As I'm a hobbyist I'd rather not pay for an engine or to export my game. I'm most-likely not going to sell my game for money and if I do it won't be expensive at all no matter how much time I'd invest in it. 
      Obviously the game would need to either be open source or let me publish and distribute the game freely.
      The only game engine I've found so far that I believe I'd understand is Adventure Game Studio, but I haven't used it much yet, just watched a couple tutorials on youtube. But it's a point-and-click only engine as it seems so it won't be of much help for this type of game, unless I get really creative with my controls (I'll keep this engine in mind for other possible projects in the future, though).
      I've tried Godot as well, which seems to be really hard to learn for a beginner of my level, especially as the coding language is completely unique to the engine from what I've read (and noticed myself).
      I did come across Unity and UE (Unreal Engine) and from what I've read it seems that Unity is better, but, again, I understand very little of any reviews I've read. What's mostly scaring me away is that services that have Premium possibilities you pay for are usually really limited in a stupid way. But if this is not the case, hey, let me know!
      Pixel-art-ish animation would work well, too, so an alternative to RPG Maker would be fine (or at the very least a cheap alternative where I don't have to pay monthly for).
      The art for the game I can provide and create completely by myself if it's 2D. I'm an artist mostly and I have experience with making comics and digital drawings (fanart mostly hahaha) and I've gotten into animation which I'm fairly decent at (I'd be willing to learn 3D animation, though!).
      So, that's about all the info I think might be of importance, but if there's anything more you need to know to help me, I'll answer as quick as I can!! And if you tell me I gotta give up on some of the features I want the game to have, I'd be willing to listen to suggestions. 
      Thanks in advance to everyone who is willing to help me!
    • By Hashbrown
      I'm wondering what is the right way to create level collision for a very basic level like the following image (click on it for a larger version):

      I'm not  what to search, so I'm a little confused. What I'm thinking is AABB collision tests for the cubes and walls, maybe keeping them all in arrays, and checking the array for collisions every frame. Again, not sure if that's the correct way of doing this.  
      I'm also not sure about the platform in the middle since the character would have to go up a slope like this one: 

      ...and stand on the platform. The floor is set at y:0 at the moment, but it might be higher or lower in different parts of the map. If anybody has links I can read to learn, or even just keywords I can use to search. I'd really appreciate it. I just don't know where to start in terms of searching. Thanks!  
      Edit: I don't plan on using collider shapes outside of cubes and that slope in green. Making sure to keep the collision very simple. I don't think any of these level colliders are going to rotate either, so it's going to be axis aligned. 
      Edit 2:  I just found this old post from 2002 and from what I understand in one of the answers:  divide the world in different cubes and each one holds a list of all the aabb colliders within that particular cube. I'm guessing in order to avoid having to walk and test so many colliders. Not sure if I'm on the right track though. Also need to figure out how to go up the slope, obb perhaps?
    • By vvvvv
      oh boy howdy howdy
      i know little to nothing about game design and programming but i am a seasoned artist and am a huge gamer always have been
      i recently got a very small taste of the industry if you can even call it that from the last UE4 game jam i helped with voice acting concept art writing and vector art
      i absolutely loved it and am already itching to learn and do more but??? i have no idea how to go about it
      the person i was working with during the game jam is years ahead of me and is already looking into getting me into some contract work and teaching me 3d modeling/painting/sculpting but at the moment hes currently busy with making a game for RTX!
      while hes busy i thought id delve into some forums and get my feet wet 
      any info or tips on how or where to get started would be amazing thanks!
    • By CocoaColetto
      I am basically brand new to the gaming industry business wise although I have been a gamer for years. I officially started my game publishing company, and being as though I am only 20, I have no connects to the gaming industry. Of course, I'm still going to do more internet research, but I thought why not ask folks who may have business hands in the gaming community? If anyone is questioning, my game prototype is basically done (I designed it myself) and its very detailed and I am going to start searching for a team to help me build it. Thank you. 
  • Advertisement
  • Popular Now

  • Forum Statistics

    • Total Topics
      631352
    • Total Posts
      2999484
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!