Python实现KRPC与KSP通信

1 坎巴拉太空计划 简介

    坎巴拉太空计划(KSP, Kerbal Space Program)是由Squad开发的一款使用Unity3D引擎,拥有极高自由度的沙盒风格航空航天模拟游戏。正式版于2015年4月27日开始发行。在这里玩家可以在一个“平行世界”里扮演坎巴拉航空航天工作者,设计、建造和发射自己的火箭、航天飞机以及亚轨道飞行器,将航天器送入轨道,并探索整个坎星系。

 

   

    在坎巴拉太空计划中,完成坎巴拉外星人种族的太空计划。您可以使用一系列零件来组装功能齐全的航天器,这些航天器将根据现实的空气动力学和轨道物理学进行飞行(或不飞行)。将坎星人送入轨道并转移其轨道,以探索坎巴拉太阳系中的卫星和行星,建造基地和空间站以扩大探险的范围。

    Kerbal Space Program具有三种游戏模式。在“科学模式”下,执行太空实验以解锁新技术并增进对坎星的了解。在“职业模式”下,监督太空计划的各个方面,包括建设,战略,资金,升级等。在沙盒中,您可以自由构建具有游戏中所有部件和技术的任何太空飞船。

https://www.kerbalspaceprogram.com/game/kerbal-space-program/

    话不多说,让我们来开始吧!

2 准备工作

2.1 KSP软件安装

    卡巴拉太空计划从发行至今已有多款版本,随着每次版本的迭代,都会对相应的部分做以改进。这款大型沙盘类的模拟游戏,由于其具有近似实际环境下的情景模拟,使其更加的真实;另外除了可以手动操作外,该游戏还提供了相应的程序通信接口,这使得我们可以通过程序去控制游戏里面的航天器等设备。
    由于游戏允许您从外界安装可扩展的模块,因此我们可以根据自己的需求去寻找所需的模块,去进行自己的设计;如有需求也可以通过程序通信去实现自己的控制算法,继而去验证和改进算法。

# 卡巴拉太空计划 v1.10.1下载:

链接:https://pan.baidu.com/s/18PCtvPiTmw7ZQ5hA_2Uh9A

提取码:ce3c

Kerbal Space Program v1.10.1

# 游戏更多扩展模块下载,请访问:

https://spacedock.info/kerbal-space-program

    下载,完成之后解压缩即可,运行可执行文件KSP_x64.exe,安装到此结束。

 

 

# 官网正版授权,请您访问:

https://www.kerbalspaceprogram.com/game/kerbal-space-program-2/

2.2 KRPC服务器插件安装

KRPC插件下载,请您访问:

https://github.com/krpc/krpc/releases/download/v0.4.8/krpc-0.4.8.zip

    下载完成,之后解压缩之后会得到如下的文件:

 

    

    复制完成之后,去刚才安装的目录下执行粘贴操作,并选择替换目标中的文件即可,到此KRPC插件安装完成。

 

2.3 Python客户端安装

    KRPC客户端支持C、C++、C#、Java、Lua以Python等程序语言,在这里我仅展示Python语言与其的通信。

    Python有2.7和3.x两种版本,KRPC客户端均支持。如果您的计算机已安装过Python环境,则可跳过本节;若没有则继续:

    在这里您需要注意你的操作系统位数,是64位还是32位,之后再下载对应的版本,以防止无法安装。

Python各windows版本下载地址,请您访问:

https://www.python.org/downloads/windows/

您也可以在您的浏览器直接访问下面的链接,来下载Python3.7.5  64位版本:

https://www.python.org/ftp/python/3.7.5/python-3.7.5-amd64.exe

    由于网络问题,下载时间可能会有些长,您得稍等一会儿。。

    

    等待安装完毕即可。

 

3 建立通信

3.1 运行游戏

    在2.1节中,我们提到了游戏运行文件KSP_x64.exe,来让我们双击它,出现画面后耐心等会吧,它正在加载资源嘛!

 

 

3.2 通信设置

    进入游戏后,我们先选择沙盒模式,并开始。

 

 

   

     进入以后,一般会自动弹出上面红框所示的窗体,如果没有点击右下角所示图标即可。

 

    单击“启动服务器”,…启动服务器!如果一切顺利,则指示灯应变成愉快的绿色。

##  记得一定要打开自动接收新客户端,一定要打开自动接收新客户端。

 

    至此,KRPC端通信设置完毕。

3.3 为Python安装krpc库

    在cmd命令行输入即可:

pip install krpc

3.4 连接(Hello KSP)

运行KSP并使用默认设置启动服务器。然后运行以下python脚本。

import krpc # 加载kRPC python模块
conn = krpc.connect(name='Hello World')  # 打开与服务器的新连接

 

 

若右边窗体出现如图所示状态,则证明通信成功!!!

首先,恭喜您,成功建立了通信!!!

4 结束语

    实现KSP与Python的通信,将对于我们后面在游戏中实现对航天器的控制更加方面,另外在做航天器控制算法层面上也比较易于实现。如果您对控制领域比较感兴趣,该款游戏也是非常实用的,特别是有了通信的建立,可以让您在其中尽情的发挥自己的才智。如果您不熟悉Python语言,你也可以尝试其他语言,例如C、C++、C#、Java或者Lua等程序语言。

您可以参考这篇文章,里面对于其他具体的内容也有详细地描述,欢迎访问:

http://krpc.github.io/krpc/index.html


更多内容可以关注我的微信公众号:我的学习交流小平台     

了解一下我哈:关于我(About Me!)

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sokedev

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值