大家好!欢迎来到2022年第一篇开发日志。
我们开局起手就丢出一个Steam工坊好了。 O(∩_∩)O
https://steamcommunity.com/app/1519140/workshop/
警告!这篇日志可能包含不可名状的技术描述,可能造成模因伤害。
不感兴趣的同学可以直接向后翻,跳过几段。
根据我的调查,似乎并没有发现别的RPG MAKER开发的游戏接入过STEAM工坊。
真是非常遗憾的情况,毕竟RPG MAKER XP都存在了17年了,怎么就没人做一下呢?
于是,我能发现最接近的一个小玩具来自于UE4的一个项目,于是,我学习了一下那里的代码。
(并且,按照惯例,我把那个项目的开发人员加入了制作名单中,可以具体查看来源。)
最底层的实现上,我用的是C++的代码,用来和古老的RMXP引擎进行互动。
有两种方式,第一种是写一个动态链接库让游戏的RGSS进行调用。
第二种是写一个独立的程序,随时进行召唤。
由于此前经常出现在第一种方式的实践中刺激到杀毒软件和出现权限问题的情况。因此这次采用第二种方案。同时也让这个单独的程序实际上可以服务于别的他人开发的项目。(也许会在之后分享。)
另一个严重的问题是,各种转码的问题,在那个我查阅的UE4项目中并未对非英语字符进行正确的处理。好在我的C++能力还没退步得太严重,通过将一切都变成UTF-8的方式,貌似解决了大部分的问题。(还有可能没发现的问题 囧)
然后,更多的技术细节。
Steam工坊实际上要做的是三件事:
1,让我们上传MOD。
基本上调用STEAM的API就能完成,文件的大小限制取决于游戏的云端空间的配额。我已经将所有人的配额放大到了STEAM允许我设置的最大水平了。在MOD的数量上,没人50个以下应该不会出问题,之后可能会有翻页的问题。已经对其进行了一些预防,如果发生将会进一步处理。同时,我已验证了上传的流程。
2, 下载内容
似乎不用我们插手,STEAM自己搞定了全部的工作
3,提供给游戏有关这些MOD的信息
这里又发生了转码的问题。不过再次在C++层进行了处置。
那么,在NEOLITHIC那边又该干什么呢?
实际上基本并不需要做太多的事情。
本周我们实现的第一步确保了游戏中所有的图像资源均可以被替换。
而具体的实现方法其实只是一个文件查找系统。
首先游戏知晓了MOD的存在以及它们的路径。所以只需要设置让游戏在每次调用图像资源时优先前往那里进行查看即可。实际上就是这么简单的事情。(更复杂的会是功能性的MOD,那些会需要MOD开发者写一些脚本,我们会在之后具体研究。不过我们目前的系统实际上已经达到了能让MOD修改游戏中基本每一段代码的能力了。只是还没和STEAM工坊对接这部分内容。)
但是,我们真的需要如此依赖STEAM吗?
我并不认为。
我从过往的开发经验中所学到的一件重要的事情那就是,所有活物终有一天都会死。
中国最大的三个RPG MAKER社区,RMCHINA, 66RPG, DIYRPG先后死去。
谷歌和雅虎被迫撤离了中国。
MEGA.NZ也再也连不上了。
成千上万的网站在过去的这些年中一个个消失,伴随着他们的资源和关于他们的记忆。
STEAM会是例外吗?
很不幸,就在圣诞节的时候已经出现了点状况了。
所以,我进一步扩展了这套系统,让其实际上可以独立于STEAM之外。
你可以手动收入一个MOD的地址,我不管你怎么取得的,甚至我不管你用的是不是盗版的游戏(STEAM工坊貌似需要STEAM账号,和我的DRM-FREE的理念有一定冲突。),你只需要对着一个文本文件输入那个MOD的路径,接下来游戏将会把任何MOD像是对待来自STEAM的MOD一样处置。
就算哪天我们失去网络,只要你的硬盘上还有那些MOD,它们将依然为你开启。
甚至,你们可以用携带着U盘的鸽子继续传递这些资源。 (我发现,我搜集的瓶盖应该还够用。)
同时,通过编辑这些文本文件,你也能自行决定要使用或关闭那些MOD。
为了更好的展示实际的MOD,游戏,工坊的关系,这里有一段小视频:
https://www.bilibili.com/video/BV1kS4y1T79s?share_source=copy_web
目前,工坊中已有3个MDO存在。
看上去已经被很多人下载使用了。
如果发生任何问题,请告诉我,以便修复。
第一个上传到工坊的MOD实际本身也有个小故事。
这周,我更新了艾丽西亚的角色模型
但是,似乎我们中有一些人更喜欢旧版本的。
所以,我们就两个都要吧。:)
老的版本成为了创意工坊中第一个MOD,可以订阅替换新版本的模型。
这也用来演示我们尊重世界多样性的原则,为一个高度可自定义的游戏体验服务。
我很高兴有机会顺便去实现了这点。
本周其它的更新包括了,一群狼,一些能杀死狼的巧克力,一些香肠,一些新的钓鱼靴,以及一条新的大街。
2022年开场似乎不错,虽然股票目前亏了一些。但是这是一个非常有工作效率的一周。
我还没找到别的之前实现过工坊的RPG MAKER游戏,不知道它们是否存在。
如果没有的话,这种再度成为世界第一的感觉太HIGH了。以后也会成为一段美好的记忆。
就像这个游戏是中国第一个有DLC系统的游戏一样。(就在10多年前。)
暂无关于此日志的评论。