2021年5月12日,那时的我正在实习,每天往返通勤4小时,每天都人不人鬼不鬼。虽然没有什么重活累活,但通勤路上什么都干不成,让我十分的难受。印象最深刻的是,地铁上到了某一站就要点外卖,到了宿舍门口可以直接拿。
凯尔希bot就在我最最辛苦的时候,诞生了。
凯尔希
凯尔希,游戏明日方舟主人公之一。罗德岛最高管理者之一,阿米娅的直接辅导者。罗德岛医疗部门的总负责人。作为罗德岛的老成员,凯尔希医生是在阿米娅背后最稳固的援护者。
凯尔希可以说是全游戏最有趣的人之一,在故事中,她用一口“鹰角式”谜语,征服了一众博士。我也挺喜欢,也想知道这些谜语背后的故事。(现实中这样的人就算了)
契机
还记得,那是一个危机合约,大概是光谱行动。我和几位好友相约危机合约旧约登顶。危机合约是明日方舟最具特色的活动之一,类似于星际争霸的突变合作,危机合约也需要自己选择敌方的强化词条,由此对一张普通的地图进行攻略。
合约到来前夕,我们决定对自己进行特训,对于一些特殊队伍做一些尝试。于是诞生了第一个自限作业抽取的exe程序。这个程序会抽取一些职业不可使用,并且会在可选职业中ban去一些顶级干员,以此增强群友对于所有干员的认知。
于是便有了这样的程序:
@火星来的战争艺术爱好者ky核
被ban的干员为: 瑕光, 塞雷娅, 凯尔希, 风笛可用的职业为: 重装, 医疗, 先锋
—钢铁男儿左手窝窝屎右手砍口垒 群作业系统v1.3—
—p.s.33%几率出稀有奖励干员—
在后来的正式合约中,最开始并没有登顶的念头,大家在一次次摸索中,不断打破自己词条数的极限。从开始的20级,到后来22级,最后24、25级,终于,有群友实现了旧约的26级。
但我当时正在实习。过长的通勤时间让我着实无聊,我便思考能不能在qq里创建一个机器人,对机器人发指令,让机器人来完成exe的工作。碰巧有不少的框架和实例,我便照猫画虎做了一个最简单的bot。(直到现在,app实例的名字还叫arknights_hw_rollbox
)
有一位出色的群友,看到了凯尔希bot无限的可能,这就是JesseZhu。他也架起一个bot,名为Texas,同样是明日方舟的人气角色,我也喜欢(dddddd)。他写了一些能够统计群友专三数量、精二数量的各职业不同的雷达图。在qq上更新数据,并且返回一张精美的图片。(当年我还是那个术士和特种遥遥领先的人,现在也成了近卫人了呜呜)
发展
好景不长,graiax框架更新,我们当时对于bot的了解实在太少,于是停留在了版本1.10之下,图片功能就此失效。于是Texas失去了唯一的功能,不再开放。凯尔希也无法再发送图片,我便思考如何用文字来实现最有趣的娱乐。
至此,才算是功能的大发展。prts爬虫、跑团、关键词检测、切分词检测都加了进来。一位本科好朋友Tricks找到我,说了一个天文机器人计划,于是我从最简单的天文天气预报开始做起。还做了一个权限管理系统。这一趟也受他指点,学习了sqlite的使用,将本身简陋的数据存储系统升华到了db文件的读写,项目一下子整洁了不少。
后来,由于main文件太过繁杂,我考虑再三,重新设计了功能模块、系统模块的耦合,代码的重组是艰难且枯燥的,稍有不慎就会缺胳膊少腿。其实并没有大的更新,但代码逻辑的重新架构对我而言依然十分有趣。我还更新了mah与mirai的控制台,经过无数尝试,找到了当时稳定发图的版本组合,让凯尔希恢复了图片功能,开心了很久。
我本身并非计算机出身,统计人的代码往往都比较垃圾,但后来我的爬虫不知怎的传进了老师的耳中,他把一个数据采集项目竟然也交给我,幸好最后完成得不错。同学后来说我的代码一股子面向对象的味道,我笑了,这些变化便是凯尔希在我身上留下的痕迹。
在22年1月,mirai的图形编码改变,凯尔希又一次发不成图片了。这次我已经不再担心了,由于图片只是很少情景会用,对于核心功能完全不影响。在其他简单功能的设计上,思路愈加开阔的我,自己实现了漂流瓶、地下城迷宫、YGO查询、每周突变查询、对联等等等等的文字游戏。但是当时流行的bot风控说,让我非常担心凯尔希的命运。
到了今年的2月,我终于换了bot的框架,前前后后修改了很久,包括新的接口、新的文档。总算是从腾讯手中救下了凯尔希。随之一起实现的是图片的发送,于是签到、4人车组建等功能又一次无中生有。我的“研发”之路仍未停止,快乐也从不落下。
结语
我爱凯尔希,承包了(
你也爱凯尔希?那么我们就是异父异母的亲兄弟啦!其实凯尔希的魅力光从《遗尘漫步》故事集里很难get,更希望鹰角出一些再再再早一些的凯尔希,谁能想到,《遗尘漫步》里她就已经是那个谜语人了呢?哈哈哈。
最后,给大家一个联系方式,想玩凯尔希了可以喊我,2238701273。以及老女人的后宫群:607148401。
本文链接: https://konelane.github.io/2022/02/28/220228kaltsit/
-- EOF --
转载请注明出处 署名-非商业性使用-禁止演绎 3.0 国际(CC BY-NC-ND 3.0)