目录
新建合约
开启调试模式
合约测试方法
自定义机构(Agency)
不让别的合约蹭你的机构
合约描述自动生成(TextGen)
1. 新建合约
想写合约,第一步就是在你的mod目录下建个.cfg
文件。
比如你在GameData/ContractPacks/MyAwesomePack/
里新建一个文件,叫啥都行,只要是.cfg
结尾就行。
文件内容要有个基础结构:
cpp
复制编辑
CONTRACT_TYPE { // 合约的内容写这里 }
具体语法可以去看官方wiki(也可以抄别人的,后面我会贴几个例子)。一个文件里可以写一个或多个合约节点,看你习惯。
2. 开启调试模式(不看日志等于瞎写)
调试能帮你看到合约有没有正确加载。方法如下:
找到这个文件:
GameData/ContractConfigurator/ContractConfigurator.cfg.default
复制一份,改名成:
ContractConfigurator.cfg
用文本编辑器打开,找到这行:
ini
复制编辑
logLevel = INFO
改成:
ini
复制编辑
logLevel = DEBUG
然后进游戏时控制台会多吐点信息,比如加载了几个合约,哪些成功了哪些没过。
3. 合约怎么测
进游戏主菜单,按 Alt + F10
(Mac上fn+option+F10)会弹出一个调试菜单,里面有所有合约的列表。
如果你写的合约没加载成功,会用红字显示出来。点进去可以看到具体是哪错了。
还可以 Alt + F12
打开KSP的主日志窗口,里面有更详细的报错信息。
调完之后,别每次都重启游戏——在Alt+F10
菜单里有个按钮叫“Reload Contracts”,点一下就能重新加载所有合约。(RP1等大包慎用,容易炸)
4. 加个你自己的机构(Agency)
想让合约带上你自己机构的Logo?很简单,在cfg文件里加个AGENT节点就行:
java
复制编辑
AGENT { name = 我的宇航公司 description = 来搞科研的,不是来玩的。 logoURL = ContractConfigurator/MyLogo logoScaledURL = ContractConfigurator/MyLogo_scaled }
说明:
logoURL
是你256x160尺寸的大图logoScaledURL
是64x40的小图(缩略图)
图片放哪?就放你mod的文件夹里,路径对上就行。
5. 不想让别人乱用你的机构
KSP有些合约会随机分配机构,如果你不想自己写的机构被别的合约乱用,那你得加这一行:
ini
复制编辑
mentality = NoRandomContractMentality
完整写法就是放在上面的 AGENT
节点里。
6. 合约描述怎么自动生成(TextGen)
这部分是写出“像官方那样”的合约描述用的。Contract Configurator支持TextGen系统,配合Coherent Contracts使用效果更好。
在你的合约里加上这几个字段:
ini
复制编辑
topic = Mun subject = Experiment motivation = test
就能自动生成像这样的描述:
“由于某些原因,我们需要在Mun上测试实验设备。”
“对Mun的研究需求日益增长,赶紧上吧。”
可用的关键词有很多,比如:
topic: Mun、Kerbin、Orbit、Parts、Sun 等
subject: Experiment、Kerbal、Duna、Eve 等
motivation: test、rescue、flags 等
来源于:https://github.com/jrossignol/ContractConfigurator/wiki/How-To