Encryption 无服务器多人RPG保存文件的P2P加密

Encryption 无服务器多人RPG保存文件的P2P加密,encryption,p2p,multiplayer,Encryption,P2p,Multiplayer,有没有可能在没有服务器的情况下制作多人rpg游戏 我考虑过身份验证,这在p2p中似乎还不错 但是,如何存储savefile,以便没有人有理由/可以更改它 我考虑让用户在本地存储他们角色的savefile。。。但是我想不出一种方法来阻止人们改变他们角色的保存文件 如果在没有服务器的情况下确实不可能做到这一点,那么如何最大限度地减少与服务器的通信 我曾想过节约点,但这不公平。因为当坏事情发生时,用户可以选择不保存。 除非游戏的设计是,最糟糕的情况是他们得不到什么(就像故意不存钱一样)。这样就行了 谢

有没有可能在没有服务器的情况下制作多人rpg游戏

我考虑过身份验证,这在p2p中似乎还不错

但是,如何存储savefile,以便没有人有理由/可以更改它

我考虑让用户在本地存储他们角色的savefile。。。但是我想不出一种方法来阻止人们改变他们角色的保存文件

如果在没有服务器的情况下确实不可能做到这一点,那么如何最大限度地减少与服务器的通信

我曾想过节约点,但这不公平。因为当坏事情发生时,用户可以选择不保存。 除非游戏的设计是,最糟糕的情况是他们得不到什么(就像故意不存钱一样)。这样就行了


谢谢您的帮助。

您可以设计类似于git repo的保存文件。不要覆盖所有内容,而是保存整个历史。由于您计划进行合理性检查,因此所有参与的客户端都可以签署单个“提交”

当一个客户机加入网络时,所有其他客户机都会获得保存文件,并根据签名和可能的更深层次的合理性检查来判断其有效性。如果他们有疑问,他们会拒绝用户加入

有一些缺点:

  • 信任关系的管理。如果我控制了几个客户机,我仍然可以伪造一个带有有效签名的保存文件

  • 保存文件可能会变大。但是,您只需要在加入时使用它,之后最后一个状态就足以保存在内存中。还可以在链中有一些服务器签名的“提交”,然后只需将链提交回该提交即可


这是个棘手的问题。如果您没有受信任的实体,那么保存文件不是唯一需要担心的事情。软件本身也可以修改。想象一下aimbots或clickbots之类的东西。如果好人比坏人多,那么如果有足够多的人说这是可以的,那么可能是可以的。我希望如果在坏用户居住的地区有足够多的客户。然后p2p的哈希表会把所有东西都混在一起。那么,在我挑选的10个人中,不太可能所有人都被坏人控制。但是。。。当坏用户登录时,如果这10个人全部注销怎么办?我可以将数据存储在许多人的cookies中。隐马尔可夫模型。