逖靖寒的世界

每天进步一点点

导航

博客园仿真足球竞赛平台基本原理分析

通过 平台的基本使用.wmv相信大家已经了解了整个平台的运行效果,下面我简单分析一下平台的基本运行原理,为大家编写属于自己的球队做好铺垫。

订阅本系列文章


简单地说,整个应用程序就是一个C/S的架构。在实习的运行中,包含1个Server(博客园仿真足球竞赛平台)和2个Client(大家编写的球队)。博客园仿真足球竞赛平台与大家编写的球队是通过TCP/IP来进行通信的。这也是为什么大家可以用任意自己擅长的语言来编写球队的核心原理。

启动博客园仿真足球竞赛平台的时候,他会以本机的IP地址作为自己的IP地址,然后将2个监听端口绑定到本机,用于监听将要上传的球队连接请求。然后我们启动球队,这个时候球队就会按照在配置文件中设置好的IP地址去连接我们的博客园仿真足球竞赛平台。当2个队伍都连接上以后,比赛就可以正式进行了。

当比赛开始运行的时候,平台会将整个比赛离散化,就好比咱们看动画片,都是由一帧一帧组成的。只不过咱们把这一帧叫做一个仿真周期,也就是一个周期。

仿真周期的执行过程如下:

Drawing1

通过这个图片大家可以看到一个仿真周期可以划分为以下几个步骤:

  1. 2个球队对分别从平台接收到本周期球场上的信息(比如我方的5个球员在什么位置,对方的5个球员在什么位置,足球的位置和速度)
  2. 球队根据得到的场上信息作出分析和判断(这就是我们要编写代码的部分),为本队的所有球员指定一个命令。
  3. 球队将每个球员的命令发送给服务器。
  4. 服务器接收到球员的命令以后,更新场上的信息(比如1号球员执行奔跑的命令,那么他的位置将会发生改变)。

 

通过上面的分析可以看出,我们编写球队的工作就是,在得到了球场上的信息以后,如果对这些信息进行处理,并为每个队员计算出合适的命令。

大体流程也可以这样表示:

Drawing2

 

我们每个周期做的决策(为所有球队下达的命令)将逐步影响比赛的最终结果。所以说,计算好每一个周期的决策,将让我们赢得最后的比赛

 

在下一篇文章中,我将与大家一起分享如何使用c#球队的球队模板 来编写自己的足球队。

 

博客园仿真足球交流小组

相关资源下载

相关文章

posted on 2008-08-21 11:13  逖靖寒  阅读(3295)  评论(26编辑  收藏  举报