2009-07-17 3 views
3

저는 두 명의 플레이어가 다른 인터넷을 함께 사용할 수 있도록 상당히 간단한 card game을 파이썬으로 구현하려고합니다. 나는 GUI를하는 데 아무런 문제가 없지만 네트워킹 부분을 수행하는 방법에 대해 가장 먼저 알지 못합니다. 몇 라이브러리 지금까지 발견했습니다간단한 카드 게임을위한 Python 네트워킹 라이브러리

  • PyRO는 : 좋은 보인다 다양한 상태의 공유 카드 객체를 가진 멋지게 문제 맞는 것 같다.

  • Twistedpyglet-twisted : 이것은 강력 해 보이지만 복잡합니다. 그래도 전에는 Pyglet을 사용 했었지만 너무 나쁘지는 않았습니다.

누구나 내 게임에 가장 적합한 것을 추천 할 수 있습니까? (반드시이 목록에있는 것은 아니며, 좋은 것들을 많이 놓친 것일 수 있습니다)?

답변

8

이러한 라이브러리는 모두 매우 훌륭하며 카드 게임에 완벽하게 작동합니다.

파이로는 배우고 사용하는 것이 더 쉬울 수도 있지만 매우 많은 수의 플레이어로 이동하려는 경우 트위스트가 더 잘 확장됩니다.

뒤틀린 것은 처음에는 힘든 일이지만, 혹서를 극복하는 데 도움이되는 책이 있습니다.

다른 라이브러리를 선택할 수 있지만 발견 한 두 라이브러리는 성숙되어 있으며 Python 커뮤니티에서 널리 사용되므로 질문에 답변 할 사람을 찾을 확률이 높아집니다.

내 개인적인 권장 사항은 Pyro를 사용하는 것입니다. Pyro는 네트워킹으로 놀기를 원하지만 인터넷에서 많은 플레이어를위한 대대적 인 계획이있는 경우 Twisted로 가려는 것입니다.

5

타사 라이브러리를 사용하지 않으려면 표준 라이브러리에서 asynchat module을 사용하는 것이 좋습니다. 간단한 프로토콜을 통해 송수신하기에 적합합니다.

3

Twisted는 두 라이브러리 중 더 좋지만 사용법을 배우는데 시간이 걸리지 만 네트워크 학습은 비슷한 시간 (적어도 나를 위해)이 걸릴 것입니다.

내가 너라면 나는 네트워킹이 미래에 훨씬 유용 할 것이라고 배웠다. 개념은 대부분의 언어에서 동일하므로 더 휴대하기 쉽습니다. 이 접근법을 사용하려면 http://www.amk.ca/python/howto/sockets/을 보시면 모든 것을 처리 할 수 ​​있습니다.

관련 문제