On Dec 31, 2004, at 8:29 AM, LMSpam at neuropop dot com wrote:
I'm working under this assumption right now...
Player A shoots Player B and sends a message to the server this has
happened.
The server simply echoes "<cmd>SHOT</cmd><data><who>Player
B</who><by>Player A</by></data>" to all connected machines who then
can either deal with the message or ignore it.
My assumption is that it's better to have the client machines do the
parsing and decision making, and leave the server primarily as
broadcast communications hub...?
I do not know if this matters to you or not...
The more you permit the client to control the game play, the more
likely it can get hacked. This has been a big problem with MORPG
industry, so it is usually best to start out with the server handling
all of the logic.
It is not even about hacking your executable/app, but just the network
protocol. All I need to do is learn how you send your commands to the
server and then send the commands that I want. Looking at your example
above, it would be a piece of cake to write another app.
Then while I am playing your game, and someone makes me mad so I put
their name in my app and send the command to your server -- I could
kill them without even being in close proximity to their character (if
the server let me). I could also send commands like "give me 100000
gold" or "increase strength +3" and so on.
So it is best if you limit the commands to the client (move here, shoot
there, click this) and then return the results (discovered trap,
missed, got lightning gun). It would have a higher server load, but
would be worth it.
_______________________________________________
Unsubscribe or switch delivery mode:
<http://www.realsoftware.com/support/listmanager/>
Search the archives of this list here:
<http://support.realsoftware.com/listarchives/lists.html>
|