Galgame 目前制作网页版的难度 (仅个人评价)
游戏引擎 | 实现难度 |
---|---|
RPG Maker MV | 1.2 |
Ren‘py 8 3.x | 1.6 |
Ons | 1.8 |
Tyranoscript | 1.8 |
RPG Maker MZ | 1.9 |
Ren‘py 7 2.x | 2.2 |
Artemis | 2.2 |
KrKr | 5.0 |
其他引擎 | ??? |
常见引擎
其中常见的引擎 有ONS,KrKr,RPG Maker MV 等等,其中以 KrKr 引擎制作的 Galgame 居多。目前 KrKr 制作网页版的难度较大。 所列举到的引擎制作的网页版,都不能直接打开,需要搭建一个本地服务器 下载即用,或者使用 IPFS。
引擎识别
可以用 mtool 识别,下载链接 https://trs.mtool.app/release.php?lang=chs
制作教程
RPG Maker MV
RPG Maker MZ
Tyranoscript
这三个引擎都是很容易制作网页版的,所以把它们放到了一起。
目前获取到这些资源主要途径包括 apk 和 exe。
Apk 只需要将其改为 Zip 然后解压,最后找到当中的 index.html 文件下的目录即可
Exe 可能需要解一下 Electron 封的 asar 包,或者Enigma 封的包
解包教程:https://b23.tv/av899751921
然后将目录导入到 IPFS 中,或者直接使用即可。
总之制作网页版很容易的,可以随便找几个该引擎制作的游戏练练手。
常见问题
无法播放声音
如果游戏想兼容手机,引擎需要格外添加 m4a 文件,或者向游戏中添加这三个插件
AudioStreaming.js
stbvorbis_stream.js
stbvorbis_stream_asm.js
参考教程
2.
文件大小写错误,通常表现为找不到某文件
通常情况下, Windows 操作系统默认是不区分大小写, Linux 操作系统区分大小写。需要修复
修复方法
使用插件后
如果文件有%,( 例%.ogg )或者 (%5Ba%5D%.txt )即 % 前面跟着中文时需要手动修改文件名。出现这种文件名的概率非常小。比如(恢复25%.ogg) 不会报错,而(恢复二十五%.ogg) 就会报错
3.
Tyranoscript 打开黑屏弹窗报错
Tyranoscript 中下 lib.js文件下的 $.setStorage,$.getStorage 可能被注释掉了,或者没有,需要手动添加。
Ren'py
首先需要安装 Python 3.x
然后从官网上下载 Ren‘py 引擎
https://www.renpy.org/latest.html
安装,然后把游戏复制到项目目录下,刷新。
选择要构建的项目,在右下方点击 Web(Beta)
然后点击构建网页项目。可能需要较长的时间
最后点击打开构建目录即可
常见问题
apk 如何解包 参考教程
不需要获取 rpy,只需要 rpyc 。也就是说有些 apk 无法解包时,只需要将 x-?????? 中的 “x-” 删去即可
Ons
这里有详细教程以及使用方法
https://tieba.baidu.com/p/8286186353
https://github.com/YuriSizuku/OnscripterYuri
第一步
Ons 解包:可以使用 Garbro 或者 nsadec 进行游戏解包。其实不解包也可以使用,但是手机运行会闪退。
第二步
python onsyuri_index.py --lazyload 生成 json 文件。
第三步
将 onsyuri.html 改为 index.html
常见问题
最外层目录不能含有大写字母,即生成的 json 文件中的 gamedir 和 savedir 不能含大写字母,但可以含有中文。
总之使用起来较为容易
Artemis
同样的不需要解包就可以玩,但是不解包手机会闪退。
引擎是闭源的
需要和作者联系获得引擎使用授权
官网
教程
https://www.bilibili.com/read/cv13105700/
https://www.bilibili.com/read/cv24837605/
引擎
首先需要解包文件
其次要修改游戏中 system 配置文件,加入 [WASM] 配置,通常下文件里面会有,不需要格外添加,但是如果文件里面没有,需要从其他游戏中复制一份过来
第二步
修改 GeneratePackFile2 配置文件 将 ;CHARSET=UTF-8 的分号删去
第三步
使用 GeneratePackFile2 重新打包生成 root.pfs 文件
第四步
使用 ApplyWasmData 生成相应的 js 文件
常见问题
游戏启动黑屏
首先需要查看 table 下是否有 list_wasm.tbl 文件,如果没有的话
需要修改 init.lua 将 game.os = nm 改为能运行的引擎 比如 windows 或者 android。
2.
加载视频报错
我也不知道如何修复,只能先暂时先替换掉视频文件 3.
无法存档
这个问题在于游戏引擎无法识别文件格式,只能每个格式都尝试一遍,所以需要告诉引擎存档文件不存在。我的解决方法是声明有哪些文件,然后直接返回文件是否存在。 4.
游戏自动退出
检测 first.iet 是否有相应校验代码 5.
图片加载后报错
可能使用了 hlsl,需要将其替换为 glsl ,table 文件夹下的 list_window.tbl 也要修改。 6.
游戏通关之后,浏览器体积增加了 1G 多
可以添加个通关后手动清除浏览器缓存的文件
参考如下
野良与皇女与流浪猫之心2 在线游戏
总之制作网页版较为繁琐。
KRKR
目前 KrKr 制作网页版的难度很大。
目前 只能制作游戏体积小于 300 MB 的游戏,要想运行游戏,需要加载完游戏中的所有资源, 此时不如使用模拟器。
制作可以参考这个教程 https://www.bilibili.com/read/cv26509233/
相信以后肯定会有大佬做出个无需加载整个 data.xp3 就能运行的版本
常见问题
字体无法显示
需要使用 Scripts.execStorage("system_polyfill/PolyfillInitialize.tjs") 加载补丁版本
system_polyfill/PolyfillInitialize.tjs 需要从 kag3-krkrsdl2 那里下载
,如果 tjs 被加密了,那就只能放弃了,应该无法制作网页版了
2.
打开窗口时报错
需要使用 KirikiriEmscriptenInterface 手动修改 tjs 文件
比如打开窗口需要改为 KirikiriEmscriptenInterface.evalJS('window');
js.confirm(message); var res = js.prompt(message); return res;等等
但建议删除打开窗口的代码
3.
编码报错,比如宽字符错误等等
需要将 utf-16 转为 utf-8 4.
无法播放视频
目前没有较好的修复方法 5.
图片出错,声音无法播放
图片要修改为图片原本的格式,声音要转换为能够支持播放的 ogg 文件,同时引擎里加载 xxxx.png 要替换为 xxxx 不需要后缀