I decided to create an open world MMO game, it will be small, small enough to just host it by myself or via LAN (thought, i'd prefer to host it with my computer or someone elses..) After digging for a while i found Photon, but i dropped it out because it seemed like it would work only for room-based games, since i'll also need a DB so the world will be saved (levels,items,player positions etc..). After a bit more digging i found uLink that might fit to my needs, but it seems like i'll need a license to use it or it will last for 30 days only, if i read it correct. I would like to get your opinions, how should i approach this kind of game? Would LAN will be enough to host the game constantly (for "24/7", and also with a DB of my own) or i'll need some kind of network, maybe even Unity's one would be enough. What do you guys think?
Unet isn't ready for big numbers of players, but if it's a small number it's fine ie up to 16. Photon has many solutions but they will eventually cost. How about you first manage to network 2 people and move on from there? It does not sound like you have much experience in the process? FYI I would consider it suicide to do more than a 16 player game without some form of paid services like photon + playfab to deal with it in a more serious indie manner.
I was going to reply seriously, then stopped, realising that nothing I say will be of any help to you. Have you managed a 2 player networked game? If you haven't (in any api or even in Unity) then it's utterly pointless even having a conversation about MMOs.
I'm currently a program engineering student, fresh year, so i decided to create a game that i'll learn from the process of programming it. Obviously i would also want to it be playable, on a small scale (close friends, etc..) So yea, it won't have more than 16 players online at once, but i really want it to have the MMO elements, which means we will be able to connect to the game and progress (while everything is still saved). If a day will come when this game will be successful enough to have more than 16 online, i'm pretty sure i'll know how to handle it by than (even if it will cost).
Ah then you should be fine with the Unet lobby system. The code concepts here use the same script for server, host and client. It will take a lot of reading the docs and blog posts about it to get up to speed. What Photon (and optionally Unet) do is mostly relay server stuff. This is to circumvent firewalls and routers. There's a heck of a lot to go over, I'm not sure what a forum post can do. You should go and read up then pop back for specific questions rather than "how do I make the moon". No offence intended.
Yea i know its a big question, hoped to get answers like you that would help me to focus on what i should learn. I would've gone with Photon, but i've read this post: http://forum.photonengine.com/discussion/4815/keeping-the-photon-room-open-when-all-players-leave Which means, Photon always needs to reset the room or it will run out of space, etc :/
That's actually reasonable, when nobody is on a server, it shuts down. You would probably want to have a persistent database in that case. Services like playfab help a lot here, otherwise its a murky road of databases and so on.. Since it's just a local machine you're using as server, you can just have it run all the time, saving the state, so next time someone joins (or it's been rebooted) it seems like it's all been left as it was. It's less black box secrets and more lots of tiring hard work at this point.
It depends on how much time you want to spend learning networking issues vs writing video games. If you use the simple UNet you'll spend 90% (or more) time writing the game.. if you go the real route, that massive-MOs do, you'll likely being a year or two older before you really start writing the fun/game code, at least if you have any other classes/homework/life taking up time.
Thanks for the answes. It won't be Massive, but i think i got an idea on how to implent my logic with Photon that would fit to the game. Like i said, i would like to learn as much as i can and trying to figure the network enviorment and logic is a good start, and Photon seems to cover most of the part for it which would save some time.
@Superl0l - It's also worth noting that you don't pay anything for our service (PlayFab) throughout your development cycle, so combined with Photon Cloud's 20 CCU free tier, you could effectively build and test your game at no cost.