RoboCup智能机器人足球教程(二)
运行方式
RoboCup2D仿真平台通过一个服务端,若干客户端联系而成,同时通过监视器进行画面播放。当启动服务端后,客户端通过改写程序内部的client.cpp文件来实现球员逻辑,编译后即可与服务端进行连接,从而进行比赛。
因此我们要做的主要工作就是改写client.cpp,以实现球员逻辑。该文件位于Robocup/rcssserver-15.2.2/src/client.cpp,当改动完毕后,进入rcssserver-15.2.2文件夹,打开终端,执行
make
即可把客户端修改编译成功,从而进行比赛。
函数介绍
在client.cpp中,我们需要修改的,是以下几个函数,其他函数均不用修改。
main()
该函数为主函数,主要功能是接收参数和初始化client类,下面着重讲一些重要的代码片段,其他代码均不需要过多修改。
std::string server = "localhost";
int port = 6000;
这两条语句是设定服务器在本机上,端口号为6000,在测试阶段,可以不做修改,如果比赛中服务器不在本机上,那么就需要修改为相应的IP地址了。
for (int i = 0; i < argc; ++i) { // 进行id分配
if (std::strcmp(argv[i],