2009-07-17 42 views
3

我想在Python中实现一个相当简单的card game,这样两个玩家可以一起玩其他互联网。我在做GUI时没有问题,但我不知道如何执行网络部分的第一件事。一对夫妇图书馆,我发现迄今:一个简单的纸牌游戏的Python网络库

  • PyRO:看上去不错,似乎通过在各种状态共享卡对象很好地适应问题。

  • Twistedpyglet-twisted:这看起来很强大但很复杂;我之前使用过Pyglet,所以也许它不会太糟糕。

任何人都可以推荐最适合我的游戏(不一定在这个列表中,我可能错过了很多好的)?

回答

8

这两个库都非常好,可以完美适用于您的纸牌游戏。

Pyro可能更容易学习和使用,但如果您想要进入大量玩家,Twisted会更好地扩展。

起初扭曲可以让人望而生畏,但有些书籍可以帮助你克服驼峰。

这些是其他一些库可供选择的,但您发现的两个库已经很成熟并且在Python社区中广泛使用,因此您将有更多机会找到人们回答任何问题。

我个人的建议是使用Pyro,如果你只是想玩网络游戏,但是如果你有很多互联网玩家的宏伟计划,那就去Twisted。

5

如果您决定不想使用第三方库,我建议在标准库中使用asynchat module。它非常适合通过简单的协议进行发送/接收。

3

扭曲是两个图书馆中较好的,但花时间学习使用它,但学习网络会花费你类似的时间(至少对我而言)。

如果我是你,我宁愿学习网络,它将在未来对你更有用。这些概念对于大多数语言都是一样的,因此它的便携性也更好。如果你打算采取这种方法看看http://www.amk.ca/python/howto/sockets/它会带你通过一切。