PHWinfo banniere

Titres
PORTAIL ANNUAIRE ARTICLES COMPARATEUR HÉBERGEURS DEVIS FORUMS RÉDUCTEUR D'URL
Précédent   PHWinfo > Autres forums > Forum Programmation & Conception > comp.lang.ruby > The Best way to make my game multiplayer
S'inscrire FAQ Membres Recherche Messages du jour Marquer les forums comme lus
The Best way to make my game multiplayer

Réponse
 
LinkBack Outils de la discussion
Vieux 11/03/2008, 21h18   #1
Diego Bernardes
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut The Best way to make my game multiplayer

Hi guys, i have done a game in ruby using gosu, its a side scrolling
game, i want to make it multiplayer, well, i hope make it a mmorpg some
day, so, now im caring about the network, need be something safe but
consume low bandwidth as possible because of the server.

I dont have any exp doing this, can anyone post web with the basics or a
tuto or something to give me a start XD?

What is best to work? UDP? TCP? Can i use DRb?



thxx alot
--
Posted via http://www.ruby-forum.com/.

  Réponse avec citation
Vieux 12/03/2008, 10h25   #2
Eleanor McHugh
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: The Best way to make my game multiplayer

On 11 Mar 2008, at 20:18, Diego Bernardes wrote:
> Hi guys, i have done a game in ruby using gosu, its a side scrolling
> game, i want to make it multiplayer, well, i hope make it a mmorpg
> some
> day, so, now im caring about the network, need be something safe but
> consume low bandwidth as possible because of the server.
>
> I dont have any exp doing this, can anyone post web with the basics
> or a
> tuto or something to give me a start XD?
>
> What is best to work? UDP? TCP? Can i use DRb?


You have two sets of considerations: gameplay and network utilisation.

The gameplay concern is about making sure that one or more players
aren't cheating so you will probably want to encrypt your traffic.
Take a look at the Ruby OpenSSL library.

If you're looking at rolling your own protocol I'd recommend doing it
on top of RUDP as this is more efficient than TCP/IP with lower
latencies, or if you can afford to lose packets go for UDP.

Another attractive option would be to use the Rinda library which is
built on top of DRb as that will make your code very simple to follow,
but if I remember rightly DRb runs over TCP/IP so you may take a
performance hit.

For a very simple example of using OpenSSL encryption as part of a
client-server application in Ruby take a look at the code portions of
my Semantic Networks presentation at http://slides.games-with-brains.net/
  Réponse avec citation
Vieux 12/03/2008, 10h38   #3
Arlen Cuss
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: The Best way to make my game multiplayer

[Note: parts of this message were removed to make it a legal post.]

Hi,

The gameplay concern is about making sure that one or more players
> aren't cheating so you will probably want to encrypt your traffic.
> Take a look at the Ruby OpenSSL library.



If I'm not mistaken, encrypting traffic isn't likely to prevent cheating, is
it? Any player could modify the source.

Arlen

  Réponse avec citation
Vieux 12/03/2008, 18h18   #4
Diego Bernardes
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: The Best way to make my game multiplayer

Arlen Cuss wrote:
> Hi,
>
> The gameplay concern is about making sure that one or more players
>> aren't cheating so you will probably want to encrypt your traffic.
>> Take a look at the Ruby OpenSSL library.

>
>
> If I'm not mistaken, encrypting traffic isn't likely to prevent
> cheating, is
> it? Any player could modify the source.
>
> Arlen


yea, its to prevent hacking.


Ellie, thx alot, you ed alot

Hmm, the last question, there is any RUDP library to ruby? if not, im
gonna try to make one
About the speed, im making it a 2d sidescroller so i think at least in
the client dont gonna have any speed problem, about the server i dont
know, only the time gonna say XD
--
Posted via http://www.ruby-forum.com/.

  Réponse avec citation
Vieux 13/03/2008, 14h17   #5
Eleanor McHugh
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: The Best way to make my game multiplayer

On 12 Mar 2008, at 09:38, Arlen Cuss wrote:
> Hi,
>
> The gameplay concern is about making sure that one or more players
>> aren't cheating so you will probably want to encrypt your traffic.
>> Take a look at the Ruby OpenSSL library.

>
>
> If I'm not mistaken, encrypting traffic isn't likely to prevent
> cheating, is
> it? Any player could modify the source.


By itself no, and arguably with programs in Ruby where the source code
is automatically available to all players then any one of them can
change it. However whatever measures are taken in the game engine to
prevent cheating are likely to involve including data calculated at
runtime in the protocol and as sniffing protocols is trivial it's a
good idea to encrypt the traffic.


Ellie

Eleanor McHugh
Games With Brains
----
raise ArgumentError unless @reality.responds_to? :reason



  Réponse avec citation
Vieux 13/03/2008, 14h23   #6
Eleanor McHugh
Aucun Avatar
 
Messages: n/a
Hébergeur:
Par défaut Re: The Best way to make my game multiplayer

On 12 Mar 2008, at 17:18, Diego Bernardes wrote:
> Arlen Cuss wrote:
>> Hi,
>>
>> The gameplay concern is about making sure that one or more players
>>> aren't cheating so you will probably want to encrypt your traffic.
>>> Take a look at the Ruby OpenSSL library.

>>
>>
>> If I'm not mistaken, encrypting traffic isn't likely to prevent
>> cheating, is
>> it? Any player could modify the source.
>>
>> Arlen

>
> yea, its to prevent hacking.
>
>
> Ellie, thx alot, you ed alot
>
> Hmm, the last question, there is any RUDP library to ruby? if not, im
> gonna try to make one
> About the speed, im making it a 2d sidescroller so i think at least in
> the client dont gonna have any speed problem, about the server i dont
> know, only the time gonna say XD


There isn't an RUDP library as such, but if you look at the bit-struct
library you'll find examples of how to roll your own protocols and
then it's a question of opening a raw packet socket. Details of that
vary from platform to platform. You'll get best performance by
implementing RUDP as a C extension, which should be similar to the
standard library's UDP and TCP/IP libraries.


Ellie

Eleanor McHugh
Games With Brains
----
raise ArgumentError unless @reality.responds_to? :reason



  Réponse avec citation
Réponse


Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Fuseau horaire GMT +1. Il est actuellement 18h31.


Édité par : vBulletin® version 3.7.3
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5 Tous droits réservés.
Version française #16 par l'association vBulletin francophone
PHWinfo est un site Éducation Sans Frontières ©2000-2008
Ad Management by RedTyger
©Tous droits réservés par les parties respectives
Page generated in 1,54024 seconds with 14 queries