目录

实战与杂谈本地搭建自己的游戏王卡片生成器

【实战与杂谈】本地搭建自己的游戏王卡片生成器

https://i-blog.csdnimg.cn/blog_migrate/6eed0ddd0d6c336165b029704275536c.jpeg

声明:

1.游戏王卡片制作器本身就是由【kooriookami】开发的,用于DIY卡片因此我只是原有功能再现并不会追加新功能

2.其次数据和卡图均来源于网络,因此我也只提供网络能获取该内容的途径,并不会预先准备好

最近一直没有时间看回复和私信,我重新下载github上的项目发现,分支上的内容确实有问题,进行了重新调整。

这里默认读者已经阅读过前一篇博文:

前端环境配置

1. 准备powershell

因为执行的大多数都是些linux命名,在window环境还是安装一个powershell来执行命令

powershell下载地址为:

根据当前系统选择版本,笔者是windows 10 64位,因此选择Windows (x64)

安装完成后

https://i-blog.csdnimg.cn/blog_migrate/effd2506965e4376b5d0ea58ef674304.png

2. 安装nodejs

https://i-blog.csdnimg.cn/blog_migrate/21649ddb906ad41bd72a94402121544f.png

当出现时,需要安装node.js可以通过https://nodejs.org进行下载安装

随后执行

npm install

如果安装时间慢,是因为使用了国外国外进行,这里改成国内镜像

npm config set registry http://registry.npm.taobao.org

3. 安装is-electron

当出现提示时

https://i-blog.csdnimg.cn/blog_migrate/2e086d827c694f1270b5ecec4ff76637.png

安装is-electron

npm install --save is-electron

4. 最终得到这个界面证明前端内容部分已经启动成功

执行

npm run dev

获得下图即代表正常启动

https://i-blog.csdnimg.cn/blog_migrate/f575d3a5b0ab1f1527d2c1b10d0dbd04.png

访问网址会进入到界面,只会显示默认的青眼白龙,卡面其他内容因为后端没启动不会加载,

https://i-blog.csdnimg.cn/blog_migrate/32964f1246a949a2b09cda24186c41c4.png

目前github项目的前端已经在确保能正常启动后,把调整后的代码上传到项目中,按照上面操作在win10环境下应该得到截图内容。接下来就是准备后端环境

后端环境配置

这次以最新2023.4月份数字包1201为例,本地搭建自己的游戏王卡片生成器就几乎能同步最新的卡。

在上一篇论文中我提供了源码,让读者自行编译执行,在后台和评论来看,我直接提供执行包,安装好运行环境能正常启动即可。

1. 安装JAVA运行环境

因为我后台使用的是java,因此执行环境需要安装jdk,选择能执行jar包的环境即可,在 找到能安装jdk安装包安装 ,得到下面截图内容即可 https://i-blog.csdnimg.cn/blog_migrate/4c204d6dd9fa36e0e9df0c359b9947cf.png

2. 启动后端程序

读者可以自行通过源码编译jar包,也可以下载我的分割好的压缩包(因为完整jar包超过100m)

java -jar YGO-CARD-1.0-SNAPSHOT.jar -image.img=c:\monster\ -spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mytest?characterEncoding=utf-8 -spring.datasource.username=root -spring.datasource.password=123456
配置说明
-image.img卡片插画所在地址
-spring.datasource.url数据库地址
-spring.datasource.username数据库账号
-spring.datasource.password数据库密码

见到下图代表已启动成功 https://i-blog.csdnimg.cn/blog_migrate/78af624b164156fa0aa874a445b7ea74.png

3. 初始化后端数据

后端项目启动后需要对图片和卡片数据进行初始化,程序才能正确获取到对应

3.1 卡片插画

通过游戏王数据库我们可以查询到【革命同调士】的码为97682931

https://i-blog.csdnimg.cn/blog_migrate/a31a949ad078917186ebe7857acf26d5.png

ygoprodeck提供了api可以让我们查询到图片,例如【革命同调士】的码为97682931,我们访问 就可以得到程序需要的插图

https://i-blog.csdnimg.cn/blog_migrate/8cd2533c2d442711de4f642d8579b824.png

3.2 卡片数据

每个版本的ygo,过后对应的卡片数据更新斗发布在开源项目中,读者可以通过查看提交日志来取人卡片信息是否已经更:

如下图我们可以发现在ygo发布4天后,卡片数据也已经更新了

https://i-blog.csdnimg.cn/blog_migrate/f02e8778f600372b62539ad32e7b2273.png

关于数据脚本导入我这里就不再多讲,我这里主要解决在私信说使用脚本导入不进去的情况,我这里提供对应数据表新建脚本。

DROP TABLE IF EXISTS `datas`;
CREATE TABLE `datas` (
  `id` int(11) NOT NULL,
  `id1` blob,
  `id2` blob,
  `id3` blob,
  `type` blob,
  `atk` int(11) DEFAULT NULL,
  `def` int(11) DEFAULT NULL,
  `level` int(11) DEFAULT NULL,
  `race` int(11) DEFAULT NULL,
  `attribute` int(11) DEFAULT NULL,
  `id0` blob,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;


DROP TABLE IF EXISTS `texts`;
CREATE TABLE `texts` (
  `id` int(11) NOT NULL,
  `name` varchar(255) CHARACTER SET utf8 DEFAULT NULL,
  `desc` text CHARACTER SET utf8,
  `dec2` text CHARACTER SET utf8,
  `dec3` text CHARACTER SET utf8,
  `dec4` text CHARACTER SET utf8,
  `dec5` text CHARACTER SET utf8,
  `dec6` text CHARACTER SET utf8,
  `dec7` text CHARACTER SET utf8,
  `dec8` text CHARACTER SET utf8,
  `dec9` text CHARACTER SET utf8,
  `dec10` text CHARACTER SET utf8,
  `dec11` text CHARACTER SET utf8,
  `dec12` text CHARACTER SET utf8,
  `dec13` text CHARACTER SET utf8,
  `dec14` text CHARACTER SET utf8,
  `dec15` text CHARACTER SET utf8,
  `dec16` text CHARACTER SET utf8,
  `dec17` text CHARACTER SET utf8,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;

删去 脚本中的

PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE texts(id integer primary key,name text,desc text,str1 text,str2 text,str3 text,str4 text,str5 text,str6 text,str7 text,str8 text,str9 text,str10 text,str11 text,str12 text,str13 text,str14 text,str15 text,str16 text);

CREATE TABLE datas(id integer primary key,ot integer,alias integer,setcode integer,type integer,atk integer,def integer,level integer,race integer,attribute integer,category integer);

COMMIT;

最终效果

https://i-blog.csdnimg.cn/blog_migrate/8d27494d0bf8d5601484f8b2e9b570c0.gif

本次博文对原有项目追加内容

修复了原有代码无法正常启动的问题

提供源码启动jar包,只需要安装java环境直接启动,指定环境参数即可