[MUD-Dev] MMORPG/MMOG P2P design
Felix A. Croes
felix at dworkin.nl
Wed Feb 26 19:01:08 New Zealand Daylight Time 2003
"Ben Hoyt" <Ben.Hoyt at SilverPlatterSoftware.com> wrote:
> From: Felix A. Croes
>> 3) a hacker does everything he can to get <your> node evicted
>> from the P2P game.
> The key in a P2P MMOG system is to assume that you can't trust any
> of the peers. It is possible, however, to design a system in
> which you can trust the results of execution that is done by the
> peers as a group, without trusting the individual peers
> Basically, you make sure that no individual player at any given
> time has enough authoritative control that they could arbitrarily
> alter the game world. In other words, the players are constantly
> double-checking each other. Additionally, no player is ever
> responsible for executing game data that is pertinent to his own
> game experience. Thus, in our system, you can trust players you
> don't know and you can allow players that you explicitly don't
> trust, to play the game.
While I don't know the specifics of your game, the system as
described above would be easy to break, because it depends on a
distinction between players which may not exist in reality. If I
can create, through various distinct player identities, a situation
where both the action performed and the double-checking are done by
me, I can do whatever I like.
> This basic paradigm allows you to answer your questions 1 and 2.
> I'm not really sure what you're getting at with #3. Please
#3 may not apply to your game. Crosbie Fitch described a system in
which a cheating player would be evicted. Thus, if I can make it
seem that you are cheating -- for example, by falsifying my
double-check -- I could get you evicted from the game.
> Of course, our system isn't 100% p2p, either. It's a hybrid, with
> a small centralized component, which enables you to do a LOT in
> the way of authentication, login, establishing trust, tracking
> player resources/behavior, auditing/managing the system. In the
> end, establishing trust in a hybrid system is really quite doable.
Would you be willing to describe your trust model in detail? I am
MUD-Dev mailing list
MUD-Dev at kanga.nu
More information about the MUD-Dev