第一次写这种教程,请各位批评指正
本文教程根据https://www.reddit.com/r/masterduel/comments/uszzul/guide_to_create_card_art_replacement_file_/pc/修改
PS. 本文所载方法涉及到对MTGA客户端数据文件的修改,不知道WSZ会不会封号(理论有理由封号,但是wsz懒狗大概不会管,我已经用了有段时间了看着没啥问题),请在使用前自行斟酌后果,如果封号后果一切自负。
众所周知,有很多实体有的异画在MTGA上不全,这里给出一种对MTGA的改图方法。(但仅限自己可见,对手看到的还是原图)
目录
一、准备工具
二、源文件相关
三、资源提取及修改
3.1 头像及卡背
3.2 卡图
3.3 客户端显示文本
四、实例展示
正文
一、准备工具
资源包提取工具:AssetStudio
Unity资源包提取与编辑工具:UABEA
数据库管理工具:DBeaver
MTGA
PS. 修改之前请对源文件做好备份,以免操作失误损坏游戏
二、源文件相关
MTGA客户端的相关源文件位置:C:\Program Files\Wizards of the Coast\MTGA\MTGA_Data\Downloads\AssetBundle
卡牌数据库和客户端显示数据在C:\Program Files\Wizards of the Coast\MTGA\MTGA_Data\Downloads\Raw
其中在AssetBundle中,文件前缀为XXXXXX_CardArt_的为卡图数据;文件前缀为Bucket.Avatar.的为头像数据,其中BustPayload为对局内的头像,FullBodyPayload为全身头像,同一个头像所对应的两个文件后缀数字是同一个;文件前缀为Textures_Bucket_Card.Sleeve_的为卡背数据
其中头像和卡背建议分别单独复制到一个文件夹里,以方便后续搜索对应数据
三、资源提取及修改
3.1 头像或卡背
首先,打开AssetStudio文件夹中的AssetStudio.GUI.exe文件
在Options→Specify Unity version中输入Unity版本号(MTGA为0.0.0)
然后点击File→Load folder选择你复制出来的头像/卡背文件夹
稍等片刻,AssetStudio会提取出所有这些文件,在Asset List可以看到
在搜索栏中搜寻你想要修改的图
(搜寻Urza会找到克撒和他的机器人的头像数据,前两个是头,后两个是全身图)
这是都市丽人的梓纱卡背
右键选中文件,点击Show original file,这样就找到了这个数据所对应的源文件
打开UABEA文件夹中的UABEAvalonia.exe文件
点击File→Open打开刚刚所找到的文件
选择Memory
点击Info→Ok
如图所示的Texture2D文件即为卡背文件
点击右侧最下方的Plugins,会有一个弹窗
Export texture就是将图片文件导出,Edit texture就是修改文件
首先我们将图片导出来(这些文件图的大小不尽相同所以要查看之后对应着改),可以看到一个1024x1024像素的png格式图片
接下来将我们想要改的图片也拉伸为1024x1024像素的大小,然后点击Edit texture→Load导入,点击Save保存,然后点击左上角File→Save保存,关闭Info界面,在UABEA主页面再次点击左上角File→Save即可完成修改。
头像的修改方法与卡背无二,不过需要注意的是因为游戏内显示头像是有一个蒙版的所以在修改的时候注意图像大小,尽量选择游戏内头比较大的角色修改
3.2 卡图
打开DBeaver软件,点击数据库→新建数据库连接,选择SQL→SQLite
路径选择C:\Program Files\Wizards of the Coast\MTGA\MTGA_Data\Downloads\Raw文件夹中的Raw_CardDatabase~.mtga文件(这是卡图数据库)与Raw_ClientLocalization~.mtga文件(这是客户端显示文本)
点击搜索→数据库全文本,选择目标数据库,通过目标卡牌的相关数据进行搜索(比如通过画师)
双击下方的搜索结果在搜寻结果中通过其他数据(比如Power力量 Toughness防御力等等)锁定你想要修改的卡图然后在最左侧的ArtId找到对应的数字,这个数字即是目标卡图在AssetBundle文件夹中格式为XXXXXX_CardArt_的卡图文件的前缀
然后修改方法与前面头像、卡背一致,通过UABEA打开然后导出查看Texture2D文件的像素尺寸,然后将自己的卡图调整为该大小并导入保存
3.3 客户端显示文本
打开DBeaver,在ClientLocalization中搜寻想要修改的文本,然后找到对应数据在enUS这一列双击修改即可
四、实例展示