smmcat
1
从 smmcat-selfhelp 分支出来的应用实例,是为了它的生态和发展
相关介绍:【qqbot】在QQ群里玩GAL文字游戏_哔哩哔哩_bilibili
相关教程(粗糙):【QQbot】Koishi中GAL制作演示_单机游戏热门视频
梦的开始
分支带来多结局
持有物影响剧情推动
通过 /当前持有 指令,查看当前剧本中你持有的物品
通过 /剧本成就 查看当前从剧情中获得的 成就 和 获取时间
退出 或 会话超时 自动存档
通过 /重置进度 指令,清空当前记录的 持有物、剧情存档
通过创建文件夹生成对应映射关系的多分支简单galgame游戏制作插件
只要上述文件放置在对应文件夹中,就会有对应的效果
通过 %标识符% 去实现 跳转分支、条件跳转、获得道具、失去道具、判断道具是否持有 等功能
%getTime%
→ 获取当前时间
%rollACGimg%
→ 获取随机动漫图片
- 通过设置
%jumpBranch%
并可在 |
右侧传路径值,走到该分支后会后实现跳转分支
%jumpByLostProp%
标识符,通过交出持有物才可跳转分支 举例:参数示例:%jumpByLostProp|金币*4?1-1-1%
%jumpByCheckProp%
标识符,通过查询是否携带持有物才可跳转分支,参数示例:%jumpByCheckProp|金币*4?1-1-1%
%getProp%
标识符,获得道具 参数示例:%getProp|金币*4%
%lostProp%
标识符,失去道具 参数示例:%getProp|金币*4%
%getAchievements%
标识符,通过 %getAchievements|成就名%
立刻赋予玩家对应成就
解决文件夹创建深度问题
由于Windows的文件系统(如NTFS和FAT32)设计时,路径长度被限制在256个字符以内
更多玩法
当启用word-core与word-core-grammar-basic插件后,可以将回复接入词库解析
如果你对 galgame 感兴趣,或者想一起写剧本;欢迎加群
如若对你有莫大的帮助,或者您手有闲钱,感谢给我一瓶维他柠檬茶!
3 个赞
smmcat
3
0.0.6 更多提示
- 增加可选项
tipsProp
可以开关是否提示需要的道具。(考虑解密剧情,该功能可选)
需要提交某物品才可以选择的分支,会做额外提示
需要携带某物品(无需提交)才可以选择的分支,也会做额外提示
2 个赞
smmcat
4
0.1.0 持久化、成就系统
- 在
0.1.0
版本强制增加了 smmcat-localstorage
必须服务,用于保存用户数据至本地
- 增加了 /剧本成就 指令,用于查看被赋予的成就,和赋予时间
- 可以在任何分支的文本中通过
%getAchievements|成就名%
立刻赋予玩家对应成就
现在重启 koishi 后,玩家存档信息依然保留 (没图,随便粘一个吧)
使用 %getAchievements|成就名% 的文本,会在用户显示该分支文本时自动获得
内容撰写
对应效果
通过成就系统 留下永恒的回忆
3 个赞
windows有最大路径长度的限制吧,文件夹层数太深就创建不了了(
2 个赞
smmcat
6
嗯…确实有,大工程还是得考虑在 json 上下功夫,还好文件夹只是生成 json 文件的,实际上还是依赖 json
或者采用跳到别的文件路径下继续(纵向不行那就横向
比如如果放置根文件夹中有个文件名是 __discard
,将不会在列表中显示。然后到达最底部时,使用
%jumpBranch|__discard下的路径%
用来藏扩展的剧情,使之能继续下去
(将部分线藏起来,用来扩展后续剧情)
2 个赞
smmcat
7
0.1.2 解决文件夹深度问题
既然纵向无法发展,那我们就横向发展!
- 当文件夹名字包含
__discard
关键字,不会在菜单中显示;且无法选择
通过名字的关键字对选项隐藏,来阻止剧情的主动进入
文件夹结构
操作效果
例如:当文件夹深度置底后,可使用 %jumpBranch% 跳到 __discard 下的分支继续向后推进演算
3 个赞
XMJ
8
也许可以加入让用户输入自定义内容?
比如让用户输入名字然后存在一个变量里或者在下文引用
2 个赞
smmcat
11
可以暂时使用扩展新的页面去获得,这个本身做一个多选的不难。我新版本加一个
%getMoreProp|物品1*1+物品2*1+物品3*1%
3 个赞
smmcat
12
另外,为什么每个关卡只能得到一个,这是有原因的。
考虑用户会有概率重新回到原来的位置,所以又会再次触发持有物获取的判断。所以为了避免重复获得刷道具,我使用的是路径来判断是否获得道具。
所以你虽然 %getProp%
都可以触发,但是当得到第一个的时候,会记录当前路径已经获得了道具。所以第二个道具的获得就被拦截了
而 %lostProp%
可以多次触发,因为没有拦截它的参数。读到这个标识符就会失去一件指定物品
2 个赞
smmcat
13
这种还是选项式够用了…要加输入方式,这代码增量多,而且降低性能
你们有制作群没,让我进一下
3 个赞
XMJ
14
制作群的话没有,剧本是朋友在写,如果比较困难的话就不用实现了
2 个赞
BSTluo
17
加word-core和grammar-basic的话会有个(wi)允许输入内容
1 个赞
smmcat
20
它是要实现 only 的效果,即只会在剧本不重置进度前只能触发一次获得的判定。
2 个赞