itank
Member
|
Reason for using RakNet?
Is there a reason for using RakNet with Esenthel engine?
For example, some devs are using it instead of the default network comms...
(This post was last modified: 05-16-2012 04:42 AM by itank.)
|
|
05-16-2012 04:40 AM |
|
Tobbo
Member
|
RE: Reason for using RakNet?
I'm not quite understanding your question. Is there a reason not to use RakNet with Esenthel?
|
|
05-16-2012 05:22 AM |
|
itank
Member
|
RE: Reason for using RakNet?
Ok,
the question is:
I saw some posts about users replacing Essenthel network codes with RakNet. is there a reason for that?
|
|
05-16-2012 05:42 AM |
|
Dynad
Member
|
RE: Reason for using RakNet?
The RakNet tutorial, which you can find on this forum was being made before EE had any mmo networking features.
There is always evil somewhere, you just have to look for it properly.
|
|
05-16-2012 10:13 AM |
|
TBJokers
Member
|
RE: Reason for using RakNet?
I'd say it depends on experience, and what you're looking for, Esenthel networking is and can be really good, though the clean Esenthel MMO isn't built for more than just people running around, sure it is stable, but you will have to craft it abit on your own, and maybe delete the peer 2 peer. However meanwhile the Raknet tutorial isn't built for anything yet, and raknet is really stable seeing as it has been there for a couple of years, and it has been updated. If you have experience with programming and networking i'm sure you can make esenthel networking good.
Man, it's always that semicolon...
(This post was last modified: 05-16-2012 01:42 PM by TBJokers.)
|
|
05-16-2012 01:41 PM |
|
itank
Member
|
RE: Reason for using RakNet?
Why is peer-to-peer being used in an MMO engine? Players can easily get hacked or duplicate equipment, masquerade as others...
|
|
05-16-2012 09:39 PM |
|
PsychoBoy
Member
|
RE: Reason for using RakNet?
Well it's not only MMO engine.
But in MMO game you can't control everything on server, you need to minimalize data controlled by server as possible. Usually only player statistics and items are holded on server (if we are talking about player data) eg. health, attack. But more specific data like player speed, some conditions are on client side.
Reason is only one: performance. Consider running a MMO server which would need to achieve thousands of players. If you want to control everything then you would need to send much data within net, so it will probably result in lags (unless your server and your clients will have good connection speed).
And that's why MMO uses p2p - actions which don't result in any changes on server for example when two players are close and see each other they position can be sent p2p. It's much easier than doing it on server-side, you probably would need to keep position of each player online and send it to clients who see other players. Of course sending some data using p2p might be unsafe but if you write it enough good (for eg. data verification) it should be fine. So it's imposibble in MMO to avoid any client modifications and that's why client-sided anti-cheat is necessary.
I'm not sure if I'm correct but that's how I see it.
(This post was last modified: 05-17-2012 01:39 AM by PsychoBoy.)
|
|
05-17-2012 01:36 AM |
|
TBJokers
Member
|
RE: Reason for using RakNet?
Ofcourse, you're right on some things here, it can get hard for a server to keep track and send right information to everyone in a game, especially if you're aiming for an mmo, i mean then you need atleast 2000 people on one server.
However a server is really powerful, and with a real mmo server you can count with send 2mb/s, it's never going to be easier, and this is why you will have to have a really good host. As for P2P, It can be used carefully, like for sending visuals. As you should know a client should only hold visuals, and there's nothing wrong with you sending those visuals to your neighbors, if they're just *fake data* with no function at all. And that's how you craft p2p hack proof.
Man, it's always that semicolon...
|
|
05-17-2012 09:47 AM |
|
PsychoBoy
Member
|
RE: Reason for using RakNet?
Well, by the way I'll ask here.
What's the proper order of writing multiplayer game?
1. Writing firstly fully working SP (client) and then adding MP (communication+server) functionality?
2. Or writing one by one parts of game and implementing MP functionality at once?
(This post was last modified: 05-19-2012 03:30 PM by PsychoBoy.)
|
|
05-19-2012 03:29 PM |
|
cmontiel
Member
|
RE: Reason for using RakNet?
I see option 2 the easiest way. That's how we are working. All the communications server/client and P2P should be defined in a GDD before start coding.
I think writing firstly an "abstract" client and later add MP isn't a good idea.
IRC: irc.freenode.net
Channel: #Esenthel
(This post was last modified: 05-19-2012 03:49 PM by cmontiel.)
|
|
05-19-2012 03:45 PM |
|
JamesProctor
Member
|
RE: Reason for using RakNet?
Sorry but there aren't ANY MMOs that I know about that uses P2P. The Server handles EVERYTHING that could result in players cheating. Every Feature in a MMO is handled on the server. Physics are handled on both the Server and the Client. That's why most MMOs don't do to much with Physics.
AI, Quests, Inventory, Combat, ect ALL handled on the Server. When we are talking about a MMO "Server" I think some of you are getting confused... It's very common for people to get Realm/Server confused with the actual Physical Servers that handle the game. A single Realm/Instance of the game is hosted on a whole Network of Servers each handling their own Geographic Location in the game. The whole realm must handle thousands of players but each physical Server only handles a small percentage of those players.
|
|
08-02-2012 02:30 AM |
|
Dwight
Member
|
RE: Reason for using RakNet?
To look a bit more into detail about the p2p possibilities: the Second Life architecture was initially structured to support P2P (and still can), but due to actual currencies being traded, it has not YET been implemented, though they are working on it still
So perhaps in some distant future, we might find some p2p possibilities!
|
|
08-02-2012 06:01 PM |
|