用于简单纸牌游戏的Python网络库

时间:2009-07-17 01:51:35

标签: python networking

我正在尝试在Python中实现一个相当简单的card game,以便两个玩家可以在其他互联网上一起玩。我没有使用GUI的问题,但我不知道如何做网络部分的第一件事。到目前为止,我找到了几个图书馆:

  • PyRO:看起来不错,似乎通过在各种状态下共享Card对象来很好地解决问题。

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

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

3 个答案:

答案 0 :(得分:8)

这两个图书馆都非常好,可以完美地用于您的纸牌游戏。

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

起初扭曲可能令人生畏,但有一些书可以帮助你克服困境。

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

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

答案 1 :(得分:5)

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

答案 2 :(得分:3)

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

如果我是你,我宁愿学习网络,这对你将来会更有用。对于大多数语言来说,概念是相同的,因此它也更加便携。如果您打算采用这种方法,请查看http://www.amk.ca/python/howto/sockets/,它将引导您完成所有事情。