我创造了一个简单的游戏,其中2个玩家在每一轮中同时做出选择,并且该回合的获胜者由一组特定于游戏的规则决定。有点像Rock Paper Scissors的工作原理。
我希望能够在线提供这个游戏,其中2个玩家可以找到并互相玩耍。将有一些中央服务器来仲裁游戏,然后每个玩家将使用他们选择的一些游戏客户端(即基于网络,基于移动设备,Flash等)与游戏进行交互。
显然,玩家也可以与我们可以提供的计算机对手对战。我还希望能够允许程序员提交他们编写的计算机程序作为玩家并在某种类型的锦标赛中与其他程序对战。
我意识到我的游戏细节当然需要从头开始编写,但似乎服务器必须做的所有与客户沟通并维持游戏状态的工作可能都是以前完成了很多次。这可能是大部分工作。
有没有人对如何快速轻松地完成这项工作有任何想法?是否有服务器可以使用某种标准界面来放弃新游戏?是否有某种开源游戏服务器?你会怎么做呢?
答案 0 :(得分:1)
看到客户偶尔只与游戏服务器通信(而不是连续), Web框架应该能够作为您的“基本游戏服务器”。虽然Web框架可以用于提供“网页”,但它们当然可以(ab)用作请求处理程序。
这当然不会迫使你将游戏变成浏览器游戏;独立游戏客户端可以轻松制作,并且可以使用基本http与您的游戏服务器通信。我也听说这个叫做Ajax的东西对于这类东西来说非常好玩。
您不仅可以找到大量现成的基于http的服务器,作为额外的奖励,还有更多关于如何使用Web2.0®©™而不是“游戏服务器”的文档。您只需要知道您需要一个允许您轻松管理会话和接收/响应请求的Web框架以及同样执行此操作的客户端库。
另外,正如你所说的那样,“保持游戏状态”在实际游戏逻辑的范围内下降100%。但是许多Web框架都提供了良好的数据库支持,并且肯定会对这种事情有用。