引导我的问题是概念性的。我想为游戏创造一个竞技场。这个竞技场将是一种网络服务,因为我必须将它暴露出来有两个目的:
在演示网站上,有人可以与电脑对战。在示范网站上,创建人工智能的网站可以看到他们各方的动画。
在人工智能要求一起玩的API上。
事实上,我必须为这些人工智能组织一个编程竞赛。我的问题是我有点受阻,因为我有一大堆技术,有些是我掌握的,有些我只是听到了一些,有些我只是不明白。
我的问题是,当2,3或4个AI一起玩时,我不知道如何应对转弯。
我的第一个想法是关于套接字。
IA打开一个套接字,我的网站有一个特殊的URL,数据在套接字内交换(轮到你了,这是我的命中,哦,亲爱的,这是一个糟糕的打击再试一次......)。我不知道这是否是正确的做法,如果我可以在所有IA之间分享竞技场。
我想到了一个简单的http交换,因为我们可以使用旧的JavaScript API,但是每次请求关闭时都会带来一些困难。
我使用ASP.NET在C#中执行此Web服务/网站。
答案 0 :(得分:1)
如果你不需要实时(轮流转弯)。
你也可以拥有每个竞技场的密钥/ ID,客户可以定期轮询网络服务以获得游戏状态(轮到你了,这是我的热门,哦,亲爱的,这是一个糟糕的打击再试一次...... )
对于Web部件,您可以使用JSON和Ajax有效地与服务器通信。但是客户端始终询问服务器。
-
我不知道套接字(使用HTML5)是什么,或者当你有很多同时用户时,套接字与客户端套接字。