Skip to content

anywugn/ArknightsMasterList

Repository files navigation

0 ArknightsMasterList

阿米驴 = AML = Arknights Master List = 明日方舟的专精列表图片生成程序。
原谅我再一次玩了驴梗。

0.1 当前版本

当前的干员数据库版本的更新时间为国服2021年4月23[遗尘漫步Side Story]
当前的程序版本为Beta测试,仍有大量bug以及功能缺失,欢迎大家回报修改意见。

1 使用教程

代码提供了一些选项,让你可以生成不同的效果;
但是这是一个非常简陋的程序,跳过任何一个步骤可能会产生不可预料的结果;
我知道说明有点长,但只需要最基础的编程常识。
所以,请按照以下步骤进行操作。

1.1 前置要求

请提前安装 Python 3 运行环境。

1.2 下载&重命名

你有两种方式下载本程序:
1)点击文件列表右上角绿色的图标“Code”,然后选择“Download ZIP”
2)git clone https://github.com/anywugn/ArknightsMasterList

下载完成后,重命名skills_example.txt为skills.txt, 从此它会成为保留你专精进度的文件,请注意不要随意覆盖它

1.3 编辑技能列表

然后编辑skills.txt, 其中每一行代表一位干员,每个字段的含义如下。在这个阶段,你必须修改点什么

字段 数据类型 说明
'costume' 1~n的整数 代表从初始立绘开始的第几套立绘,1为初始立绘,2为精二立绘,3为按照实装顺序的第一件时装,以此类推。如果所填数值超过当前角色所拥有的立绘总数,程序会崩溃,请谨慎填写
'potential' 1~6的整数 代表潜能
'level' 10~90的整十数 不支持个位数,请不要逼死强迫症
'skill1' 0~3的整数 1技能的专精等级,最低0级,最高3级,如果该干员所有专精皆为0级,那么默认不会在图片中输出该干员
'skill2' 0~3的整数 同上
'skill3' 0~3的整数 同上
'name' 干员的中文名字 这个字段不需要你编辑,只是显示出来作为提示,如果自行篡改会导致程序无法识别该干员

举个例子:这是一只满级满潜穿着铁律皮肤的专9塞妈。也是我家塞妈

{'costume': 4, 'potential': 6, 'level': 90, 'skill1': 3, 'skill2': 3, 'skill3': 3, 'name': '塞雷娅'},

这是一只路过的[术士]阿米娅,她会让程序崩溃,因为[术士]阿米娅根本没有第七件衣服。(她有第六件,因为我提前把设定集送的皮肤放进了程序)

{'costume': 7, 'potential': 6, 'level': 80, 'skill1': 0, 'skill2': 3, 'skill3': 0, 'name': '阿米娅'},

这是一只2潜的异客,但是他不会出现在最终结果的图片中,因为刀客塔根本没有给他专精任何技能。

{'costume': 2, 'potential': 2, 'level': 30, 'skill1': 0, 'skill2': 0, 'skill3': 0, 'name': '异客'},

(注意别把行尾的逗号吞了,它还有用)

按照默认的设置,这个程序只输出专精过的干员。如上面提到过的,如果你的干员没有任何一个技能专精过,或者你不希望这个干员出现在结果图片里,那么你有两个选择
1)将这位干员的那一行代码直接从skills.txt中删除 (不推荐,尤其是在你以后有计划专精她的时候,你还要手动添加回来)
2)什么都不做,保证专精三个技能的等级都是0即可。

1.4 修改程序参数

编辑main.py, 在文件开头你会看到几个有注释的变量,修改它们以自定义你的图片,它们的含义如下。在这个阶段,你可以什么都不修改

变量名 默认值 说明
input_operation_list 'operators.txt' 别改,这个是我维护的干员数据列表的位置,你可以打开看看里面写了什么
input_skill_list 'skills.txt' 也别改,skill_example.txt是我给你准备的所有干员的空模板,你要把它重命名为skills.txt之后变成自己的东西,免得被覆盖
left_indent 0 这个是图片左边空出的像素宽度,如果你跟我一样要把它拿到PS里二次加工做成一个签名档,那么可以适当缩进一些像素比如407;否则设置为0
right_indent 0 距离右边界空出多少个像素
startY 28 距离上边界空出多少个像素
line_diff 70 每一行比上一行向右错开70个像素。如果希望每一行都对齐,可以设置为0
background_png '' 如果你想自定义一个背景图片,可以在这里写下图片文件的相对路径。文件的具体尺寸可以参考一下每一个干员立绘的规格:宽159高341,加上之前设定的边界,如果背景图片太小可能会放不下所有干员
usr_bg_width 5000 如果你想用程序默认的纯色背景,那么可以考虑自定义它的宽度和高度,给个参考:5000x1080的尺寸可以放下80个干员左右。如果你输出的图片太过空旷,请缩小宽度或者高度,反之增大,程序会自动排版
usr_bg_height 1080 见上
master_only True 这个开关牛逼大发了,如果你把它设为False,那么他就会打印skills.txt里面所有的干员,哪怕他没有任何专精。但是话又说回来,这是一个专精列表打印程序,所以默认所有角色是精二 10级起跳的,我根本没有写精0和精1干员的模板,所以他们都会变成精二的模样
display_class_icon True 该选项为True时,会强制干员以职业分组再以等级排序,然后每组前面添加了一个职业图标。我认为这样很cooooool但是如果你不喜欢就把它关了吧。不会有图标了。
list_sorted True 该选项为True时,强制干员以职业分组再以等级排序,无论是否显示职业图标。当display_class_icon为True时,这个选项其实是无效的。如果两者都关闭,则会开启手动排序模式,按照你skills.txt里面的顺序来排序。
scale 1.0 如果你想让图片缩放成一定比例,则在此处输入一个小数(浮点数),例如0.8会让最终图片的长宽都缩放为80%,1.0代表100%代表不缩放
其他变量 都有设置好的值 如果你不知道你在干什么,请不要修改它们

1.5 打印!

命令行输入

python3 main.py

然后就结束了!图片会保存在相同的目录,命令行里会显示干员数量和专精技能的统计。

2 注意注意注意啦

收集一些常见问题。啪嗒啪嗒啪嗒
Q:我不会python怎么办?
A:理论上你不需要写任何一行Python的代码就可以完成图片,需要的只是Python环境。但是我强烈建议你借着这个机会学一下Python.

Q:阿米娅的专精1立绘的序号是多少?
A:没有哦,我没给她装精一立绘。
A:装上了,阿米娅精一立绘序号是2,往后依次顺延。

Q:近卫阿米娅怎么办?
A:她是一个单独的干员,名字是‘阿米娅(近卫)’,你可以在skills.txt里面找到她。

Q:我不想让他自动排序怎么办?
A:在 main.py 中 display_class_icon 设置为 False,list_sorted 设置为 False,这样就会进入手动排序模式,完全按照你的skills.txt的顺序来。

Q:我的三星二星一星干员去哪了?
A:这是专精列表,他们不能专精,所以被排除了。
A:我把他们加回来了,但是他们会强制显示为精二状态。

Q:为什么不能设置位精一或者精0呀?
A:因为这样他们没法专精呀。

Q:新干员出来了,我怎么更新数据呀?
A:给这个repo点个星,然后等我更新干员数据(operators.txt)和立绘文件(/avatar). 到时候直接git pull或者下载release,然后把新干员数据加到你祖传的skills.txt,重新跑一遍即可。

Q:有些我想要的功能没有怎么办?
A:程序目前仍在测试开发中,欢迎踊跃联系作者提供创意和bug反馈。你可以在github中开启issue,或者在nga的发布帖子下面回复,我保证都会看到。但是没法保证都会实现

3 尚未实现

首先是左侧的名片栏功能,我目前还停留在PS的阶段,并没有移植到代码里实现。作为补偿我把我自己用的PSD文档一并附在repo里(namecard-published.psd),有兴趣的小伙伴可以自己研究一下。
然后这是一个纯后端的程序,我希望能有时间写个前端版本然后挂到网页上去。

自从明日方舟突然闯入我的生活,我其实想写一个签名档生成器挺久了,只是拖延到最近才做(之前有小伙伴追着问我签名档怎么做的,我都不好意思说我是怎么做的233).这次的代码非常简陋而且亟需重构,我本人没做过平面设计所以样式既少又丑陋,程序用起来不够简便估计也会劝退不少人,我估计到头来真的用我的生成器的人肯定没几个。

不过用了这个生成器的人请放心,不管我前端版本能不能折腾出来,这个后端版本我会一直维护到最后的。我不想做什么长情的告白,我只想默默地见证点什么。再过几天就是舟游正式运营2周年了,这个签名档生成器又能见证几个周年呢?

About

明日方舟的专精列表图片生成程序

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published