《舰队收藏 肝帝模拟 改》已知问题与FAQ

新用户请先阅读《使用说明》,不要先看这个。

请善用搜索功能(按Ctrl+F),但可能会因为用词不同而搜索不到。


已知问题(仅最新版本)

简述

这里的已知问题可能是bug,也可能不属于bug。但都是最新版本中无法用通常手段解决的问题。

最新版本中修复了的问题不会在这里写出来,所以遇到问题,请先检查更新。

这些问题可能是最新版本新引入的,也可能是过去版本就存在了的。内容会随用户报告,随时更新。

正文

  • Luigi Torelli改(路易吉改)无法正常换鱼雷

    参见本文换错装备条目。是因为外部数据出现问题。在修正数据前目前的解决方法是练级再改造一次。

  • 1.4.2.1版本闪退

    怀疑是当时用的加壳软件有bug,我更新了一下重新加壳,发布了v2版压缩包(以_v2结尾)。请下载试一试。不过目前原因还是猜的,我也一直没遇到,所以也不确定这样能解决问题。因为我目前还没有遇到闪退,所以无法定位问题。1.4.2版本改动较大,可能是旧版本的配置在新版本里出现了什么问题,可以尝试把导致闪退的配置(或全部配置)重新配一下。

  • “基础解体”的跳过指定名称舰船功能没有适配新增的舰船别名系统。

    下个版本适配,目前请按原规则填写日文原名。

  • 部分用户更新poi 10.6.0 版本后无法正常执行功能。比如放远征时卡住不动;发完远征后报错“无法定位当前页面”;接任务时报错“无法找到从XXX到页面XXX的任何潜在路径”。

    这个版本poi的锅,上一个版本没有这个问题。poi“游戏分辨率”上面还有个“缩放”条,是用于调整poi UI缩放的,左右拖动调一调,找一个能正常使用的大小,100%肯定是能正常用的。经检查,原因是此版本poi的此功能计算图像区域高度时偏小,导致图像最下方的像素被裁减,然后再被拉伸到应有的大小。仔细看你甚至可以看到图像变模糊了。因为越往下形变越大,进而导致KCPS偏下方的判断图像用的模板失效。

  • “雷达伏击点”无法判断大破

    判断大破依赖poi的算血能力,需要后续再确认当前版本api(而非“未卜先知”插件)是否适配了雷达伏击点。


FAQ(常见问题解答)

简述

此处的问题是不属于软件Bug的问题。

正文

使用前

  • 会不会被Ban / 什么使用频率合适

    首先,有一丁点怕被Ban的人一概不许用本程序。手动都有Ban的更何况自动,我不想再背黑锅。最安全的就是立刻弃坑,绝对不会被Ban。其次,做好经常大量氪金的准备,练级多了肯定是要买戒指的,二号机养多了肯定要买船位的……在此基础上,目前每天挂约20小时远征,24小时内出击数百次以内,再多会猫。禁止用脚本冲战果,这会破坏游戏公平,非常危险。

  • 会不会开发KC3/KCV/…的插件

    因为这些浏览器的用户数量很少,开发的必要性很低,建议对照poi上的实现自行开发。

  • 可以在Mac上运行吗?会不会有Mac版

    仅Windows系统可用。我没有Mac,也不会Mac开发,也不打算学。程序本身设计的时候是考虑了跨平台的。顶多以后闲得没事了开发Linux(Ubuntu)版。

  • 有安卓版吗/安卓可以用吗

    现在没有安卓版,但我准备之后做一个简单的安卓远征脚本练练手。不过你最好考虑一下,手机一直开着挂脚本,手机的寿命是个问题。

  • 游戏分辨率要设置多少

    本程序使用模糊匹配,原则上不限制分辨率。但过低的分辨率无法识别。分辨率虽然可变,但画面长宽比必须为准确的5:3。测试时使用了1200×720(100%)和800×480(67%)两种分辨率。如果无法识别,请调节分辨率后再试。有些用户那里67%部分功能会卡住,得100%,所以建议刚开始尝试时先试100%。

  • 可否开启浏览器的“硬件加速”功能

    配合poi插件,在poi浏览器上可以开启。(其他浏览器插件待开发以后再分别补充)

  • 能否使用魔改

    游戏内自带的UI主题可随意使用,但UI魔改不会支持,其他的魔改可能不会影响本程序运行。使用了UI魔改会不能识别画面,需自行制作并替换模板图片。

运行

  • 双击程序后没有反应

    《使用说明》里写了,要装最新的.net core运行环境。遇到这个问题的都是不看说明就用的。

  • 错误提示:与浏览器插件通信失败:由于目标计算机积极拒绝……

    下方友情提示都告诉你要装浏览器插件了。说到这份上还不明白就回去看《使用说明》去,第一部分没几行字都不愿意看吗。

  • 错误提示:没有查找到游戏API“/kcsapi/api_start2/getData”的数据

    插件的说明里写过了,安装、更新、重新启用插件后要刷新游戏。这个API是启动游戏时才会发送的常量数据,经常用到。数据已经做了缓存,所以这个错误只有在第一次使用时没有缓存数据才会报。出这个报错的人,很可能是刚看过安装说明却没重视。

  • 错误提示:“获取数据失败:×××××××”

    插件报错了。如果写的是“浏览器插件内部错误”的话,属于插件内部运行时发现错误。对于poi插件,打开poi的“开发者工具”,选择“Console”选项卡,可以看到报了啥错。

  • 错误提示:“Pointer xxxx failed (status code InternalServerError)”

    插件报错,无法完成鼠标操作。常见的原因是poi插件选中了“使用基于Windows操作系统API的鼠标模拟机制”功能,然后poi正好在近期更新过而插件没来得及更新,此时这个功能会失效,导致报错。关掉这个选项接着用就行了,或者换回之前版本的poi。如果你没更新过poi,更新完插件报错了,说明你该更新poi了。poi插件的这个功能在每次poi换electron版本时都要重新编译,我会在认定poi最新正式版稳定后让插件切换到仅支持最新版。另外还有可能的原因是,你系统的网络设置有问题。如果你无法用“关于”里的“远程控制”窗口看到游戏图像,那请检查你的网络设置,尤其是系统的代理设置里有没有可疑的PAC文件。

  • 新版太复杂了,用不明白,要是像旧版那么简单就好了

    新版功能比旧版强,强在更灵活,要灵活就必然更复杂。但实际上,弄懂了“关联出击”的框架,之后就信手拈来了,根本没难度。实在头疼,我不是发了范例配置吗,下载下来,用一用再照葫芦画瓢还不会吗。要我说,那些说新版用不明白的人都是懒。看着眼花的功能是挺多的,但那些用不上的功能,前期根本没必要去碰,给自己找麻烦干啥。

  • 软件提示我改端口,如何改端口

    问出这个问题的人一概不建议改端口,就用默认的5277(来源于”KCPS”在九宫格键盘上的按键)。要选一个没被占用的端口。很多这类人改了已经占用的端口,比如岛风Go的8099,后果就是直接没法用了。改的时候要同时改程序里的和浏览器插件里的端口。至于怎么知道端口被没被占用……改完了不好使的就是被占用了的。好几万个端口可以选,怎么就那么容易改到被占用的?

  • CPU占用率过高/运行速度慢

    利用Nvidia CUDA可以极大地降低CPU占用和加快执行速度。对于没有N卡的用户,启用“设置”中的“限制多核加速并行度”,并设置合适的值。数值越小(但要≥1)线程数越少,可以占用的CPU资源越少。因为计算量一定,CPU越差、越老执行越迟钝。另外每次启动软件时间越久运行速度越快。软件会根据本次启动以来的使用模式,优化页面查找逻辑。本程序全程使用模糊图像匹配,必然需要大量计算资源。尤其是出击过程,接下来会显示的画面不确定需要不停地查询比对(查询间隔可设置)。不限制并行度时,会使用全部CPU资源,所以可能把CPU全占掉。现在这套方案游戏缩放后仍可正常运行,不会再采用旧版(KCPS)那种限制极多的方案,即使它要求的计算量很少。

  • 内存占用过高(GB级别)

    “设置”中限制多核加速并行度到合适的值可以降低峰值内存占用。.net的内存由GC自动控制,如果你的电脑内存很大,GC可能不会那么勤快地去清理内存,结果就导致内存占用看起来很大。内存装在电脑上就是拿来用的,不用太在意。

  • 运行过程中卡住,不继续操作游戏

    打开“设置”中的“等待超时或发现出猫时尝试重新执行”选项。模拟鼠标事件偶尔可能会因为外部影响而失败,所以才会有这个功能。

  • 开始运行时总是报错”无法定位当前页面,导航失败” / 如何让程序在执行过程中等待用户操作完毕

    大部分执行单元的“高级设置”中有“开始动作前先等待返回母港”这一选项,选中即可。但要注意此时如果选中了等待超时尝试重新执行&允许刷新游戏页面,那可能会在你出击过程中刷新游戏,建议手动时关掉这俩选项之一。

  • 在哪看运行日志(log)

    “关于”中的“打开控制台输出窗口”可以看到本次运行程序的日志。过往的日志保存在日志文件里,默认路径是data/logs/。log.xml是log4net的配置文件,修改它可以改变日志的设置。

  • 母港的“补给”按钮总是激活的状态

    不影响使用。你要是看着难受,就把“返回母港后移开指针”设置项打开。

  • 如何多开

    本软件可以多开,但需要用多份程序,每一份程序独立放到一个文件夹里。注册时需要多个注册码。端口分别设定。另外浏览器需要支持多开。至于poi怎么多开,我不清楚。局域网上的多个终端可能是一种解决方法。

  • 游戏停机维护后出现之前没有的报错

    维护之前好好的,维护之后出问题,那显然是因为游戏改了呗,请等待本程序发布新版本。

  • 游戏热更新/hotfix/不停机更新/维护后报错

    刷新游戏/重启浏览器后再试。

  • 不想用CUDA

    把“设置”-“更多设置”-“模板匹配”从“自动”改为“OpenCV”即可。

  • 浏览器不能最小化,影响正常使用计算机 / 容易不小心最小化浏览器 / 可否使用虚拟桌面功能

    因为根据画面判断的前提是需要浏览器渲染游戏画面,所以若浏览器最小化时停止渲染,则不支持最小化浏览器。这确实会一定程度影响使用计算机。这可以使用Win10系统的虚拟桌面功能(正式名称为Task View)轻松解决,把游戏浏览器单独放到一个虚拟桌面中即可。

  • poi无法安装插件,报错“安装失败”

    使用poi的“扩展程序”-“高级设置”-“自动修复”后再试。

  • 报错“没有查找到游戏API‘/kcsapi/api_get_member/mapinfo’的数据” / “Get data /kcsapi/api_get_member/mapinfo failed (status code NotFound)”

    手动点进出击选海域的页面后再用脚本即可解决。

配置

  • 如何将多个配置保存到一个配置文件中

    多选(按住Ctrl或Shift后点选)选中要一同保存的配置后“另存”。

注册

  • 会不会出买断模式

    不会。在线验证需要服务器。注册服务是我月租的,我不可能为了“买断”这种承诺“永远”月月付月租。至于不卖更长时间的注册码,是因为我担心会有不可抗力影响脚本将来的维护,卖的码时间太长的话,遇到这种情况处理起来非常棘手。90天是权衡利弊后的时长。每次买嫌麻烦倒是可以一次多买几个备着。

  • 更新后变成了“试用”

    更新时没有保留配置文件。详见《使用说明》“注册”这一部分。

  • 注册后正常运行一段时间后发现注册状态变成了“试用”

    软件运行过程中会隔一段时间检查一次注册状态,如果多次无法完成检查则会变回试用状态。

  • 注册失败,提示“您已在另一机器上注册,请解绑”、“注册码绑定错误”

    注册码可以换电脑登录。但需要关闭其他电脑上的实例。点击关闭按钮关闭软件时,软件会在后台解绑,非正常关闭软件却不会解绑。可等待3小时后自动解绑,或者在原电脑上重新打开并正常关闭软件解绑。更换个别硬件也可能会被识别为另一台电脑,遇到此问题时操作相同。如果你没换电脑登录却遇到此类错误,请检查后台是否有残留的KCPS进程,有的话强制结束后再试。

  • 注册失败,提示“该注册码已在本机注册,请勿重复注册”

    一个注册码同时只允许在一台电脑上登录一个实例。旧的实例没有关闭会出现这个错误。

  • 注册失败,提示“其他错误:由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败”

    这是连不上服务器了。我租的注册服务还挺稳定的,如果遇到这个问题一般来说是你的网络出现了问题。可以尝试①关闭系统级代理②换一个注册服务器线路(在“更多设置”里修改)③重启电脑④换台电脑。

通用

  • 舰船、装备、装备类型名称匹配规则

    首先,如果文本框中输入的内容能够原样匹配到游戏中的某个装备的名称时(不管你有没有获得过),则该设置项被解释为匹配这个装备,否则会按照正则表达式规则匹配装备。设置项中使用的简体中文名称为默认提供的别名,作用等同于游戏中的日文原名称,可以等价替换使用。使用正则表达式可以灵活设置匹配规则。

  • 舰船、装备、装备类别的别名该去哪里找?如何设置?

    程序的别名数据保存在data/extra/*_alias.json这些文件中,打开文件即可查询有哪些别名可用。修改这些文件可以修改对应项的别名,一个项目可以有多个别名,你可以(在符合Json语法的基础上)自由修改,比如给“まるゆ”加个“马路油”的别名,“三式弹”加个“340”的别名啥的都是可以的。改别名时并不需要关闭KCPS,KCPS可以自动检测更改。

基础远征

  • 只能收发一个舰队的远征

    需要添加多个“基础远征”执行单元,每个执行单元对应一个舰队。

  • 报错“舰队非空闲,不可以发出远征”

    两种可能:①你忘了改执行单元的舰队设置,导致几个执行单元都准备发出同一个舰队的远征。②你系统时间不准确,导致高级设置中默认的提前随机最多60秒收远征对你来说提早太多了。

基础变更装备(改装装备)

  • 范例配置中的“大发动艇$”、“^瑞云”是什么意思

    这是正则表达式,参见FAQ中“名称匹配规则”项目。“^”和“$”都是正则表达式的控制字符,范例配置中的“大发动艇$”就是为了匹配“大发动艇”和“特大发动艇”但不匹配“特大发动艇+战车第11连队”。而“^瑞云”则是因为游戏中存在就叫“瑞云”的装备,为了还匹配到“瑞云12型”、“瑞云(六三四空)”等高端型号,所以需要让匹配用的字符串不完全等于“瑞云”,所以才在开头加入控制字符“^”。

  • 装备换错 / 能装的装备换不上

    换装备功能依赖ExtraData.json里的外部数据。如果数据有误或者舰船、装备较新在数据里没有则可能换错。该数据会自动从《是谁呼叫舰队》数据库更新。极端情况下如果基地航空队编成数据没有刷新也有可能换错,可以尝试进入“海域选择”页面后再试。如果仍然有问题,请用关于页面的运行Python脚本功能运行”配套资料”里的排查用python脚本。然后在Github Issue里报告给我错误信息,如果其他人报告了相同的错误,请不要新建Issue,而是在原有issue下方评论“+1”。

  • 报错”[×××]的××装备槽中没能选定任何装备,请检查设置”

    根据设置无法找到能装备在指定装备槽的装备,可能是设置有问题也可能是这艘船相关的外部数据还没来得及更新。请参阅该功能其他相关条目了解更多信息。

单次出击

  • 无法出击活动海域

    请参阅《使用说明》中“期间限定海域”部分。

  • 没有找到设置“支援舰队”/“基地航空队”/“路线分歧”的选项

    选了需要设置这些的海域才会显示这些设置项。

  • 没有找到“战斗粮食”/“洋上补给”/“紧急泊地修理”/“损管”/“退避”等选项

    “出击中”选项卡中选中“显示所有设置项”后就可以看到这些项目,因为这些功能一般只在活动图才偶尔用得上,所以默认不显示出来。

  • “条件类型”的“地图点”的“条件值”如何填写

    应填写数字。值在出击过程中见poi浏览器右下角,也可以在poi的“航海日志”插件里查看。注意,数值并非一一对应字母顺序(如A点对应1、B点对应2)。一个字母的点从不同路线进入,数字编号也会不同。

  • “战斗场数”如何计算

    当前战斗场数,初始为1,每次选择“进击”后加1。不需要选择进击撤退的步骤都不会导致当前战斗场数变化,如敌方空袭基地航空队。实际战斗之前的操作,如选择路线等,在“条件类型”为“战斗场数”时,设置时也依照此规则。

  • 出击过程中因等待超时报错停止(或刷新游戏页面)

    网络不畅,或者途中某个战斗点的战斗动画过长且期间画面变化不大,会造成等待超时。请稍微增加“设置”-“执行”-“等待超时”中的时间长度后再试。

关联远征

  • 满足了“自动停止条件”,远征还是被发出去了

    “⑥循环”排在“⑤发出远征”之后。按照“每循环按顺序执行各个步骤”的规则,“自动停止条件”的判定发生在发出远征之后。每循环的结尾是发出远征之后,不是接收远征之后。所以执行逻辑没问题,是你理解错了。

关联出击

  • “根据出击结果”里的条件达成却没有自动停止

    记录战斗结果的阶段发生在每场战斗结束显示评级的时候。如果这时用户手动点击游戏,会干扰程序运行,跳过了记录战斗结果的阶段,所以该功能会失效。

执行单元

  • 优先级的数字越大优先级越高还是越小越高?

    数字越大优先级越高。

  • 优先级如何调整?

    一般使用没必要调整,默认的优先级就行。但也确实有需要调整的个别情况,当真的遇到预期以外的行为时再根据后面的描述改就行。首先这里明确一下,各执行单元设置中的优先级设置的是其子任务的优先级,等待返回母港和返回提督室这两个子任务优先级默认最低且不可修改。当任务队列中同时有多个待执行的任务时,程序会选取优先级最高的任务执行。当有多个同优先级的任务时,程序会随机(实际上不是随机的)选取任务执行。因为程序执行的参数包装在提交了的任务中(写明了“以上设置的修改对执行中的任务也有效”的除外),任务在等待执行的过程中,可能会因为前面执行了其他任务导致该任务包含的参数不再有意义。所以在同时提交多个任务的场景下(如同时触发多个不同功能的执行单元),有可能因为执行顺序导致最终的效果与预期不符合,这时就要按照预期修改优先级避免冲突。

  • “启用”、“触发”、“禁用”有什么区别?

    “触发”一个执行单元时,如果这个执行单元没有被启用则会先启用再触发(也就是说触发附带了启用)。而“启用”只启用,不触发。启用与禁用的区别是该执行单元能否接收到内部广播的事件,进而做出反应。禁用不仅能够阻止执行单元接收消息,若执行单元正在执行或等待执行某个任务,则禁用的同时还会立即取消这些任务。触发则是直接运行执行单元的默认逻辑,但仅执行单元没有在工作(即内部状态机为默认状态)时才可以触发。

  • 为什么设置了“触发条件”却没有触发?

    检查①检查代码(包括“使用模板”自动生成的代码)有没有错误②执行单元是否“启用”③执行单元是否“启用附加触发条件”④触发时执行单元是否正在工作(“带默认触发条件”的执行单元运行时会屏蔽“附加触发条件”)。