-
Notifications
You must be signed in to change notification settings - Fork 144
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[RFC] 通用资源包定义 #69
Comments
类似 MAA1999 这种. |
改成了直接在MaaY中配置打包逻辑和控制数据 |
这样以后如果有很多基于 MaaFramework 的项目,岂不是都得给 MaaY 提交 PR?或者说开发者自己想本地测一下,还得先修改 MaaY? |
本地测不用啊,maay那边配置的实际上就是一个hash以及控制的json,最后就是单纯的复制到maay的assets里面,要测试的话直接修改里面的文件然后重新加载一下就行 |
主要还是让用户本地去git clone的话对网络要求太高了,不好搞啊 |
maapkg(bushi |
更新功能要求每个 repo 及其 release 包的 .maay 文件夹中提供一个更新脚本,怎么样( |
那不就是把现在仓库里面的配置文件塞.maay下面呗( |
"entry": [
{
"name": "[入口名称]",
"task": "[入口任务ID]",
"option": [
"[选项ID]"
]
}
] 可以一个 entry 对应多个 task(服务器相关), 一个 entry 替换 task List 的例子 public static List<TaskType> Replace(this List<TaskType> tasks, TaskType type, GameLanguageServer server) // 服务器相关
{
int i = tasks.IndexOf(type); // 获取当前任务是否有 entry
if (i >= 0)
{
tasks.RemoveAt(i); // 当前任务移除 entry
tasks.Replace(type, server); // 递归,不能用循环,防止 entry 和 task 名称相同
tasks.InsertRange(i, type.ToList(server)); // entry 转为服务器相关的 task List 后插入当前任务
}
return tasks;
} |
下次一定( |
看了下 MaaY 是可选服务器的,能不能给 entry 加个字段,指定 entry 某几个 server 才可见(这样可以先糊个资源包()
"server": {
"name": "服务器",
"type": "select_string",
"default": "official",
"case": [
{
"name": "官服",
"value": "official",
},
{
"name": "B服",
"value": "bilibili",
}
]
}
"entry": [
{
"name": "[入口名称]",
"task": "[入口任务ID]",
"server": [
"official" // 仅 official 可见
],
"option": [
"[选项ID]"
]
} |
但是目前这个server是一个通用配置, 专门给"server"开个洞感觉不太对劲 |
@moomiji 想了下可以考虑类似这种(只能引用global配置 "entry": [
{
"name": "[入口名称]",
"task": "[入口任务ID]",
"option": [
"[选项ID]"
],
"validate": "cfg.server == 'official'"
}
] 但是这还是有个问题, 比如我先添加了若干个受限的entry, 然后切换配置导致部分失效了, 这里的界面逻辑会很奇怪, 大概比较合理的只能是视觉上禁用部分task 🤔 |
还可以补充一下新功能 ExecAgent,这样? "action_agent": [
{
"name": "CustomActionName",
"exec": "可执行程序",
"args": [
"custom_arg1",
"custom_arg2",
]
}
],
"recoginzer_agent": [
// ...
] 是放在 custom.json 里吗? |
我感觉是不是可以让maay根据启动参数来加载资源,这样就不一定需要资源文件放在maay的目录下面 这样就是用户启动MAAXXX,然后MAAXXX再去用自己的参数启动MAAY |
主要是考虑做一个通用的GUI而不是一大堆CLI工具
/resource/XXX
加载的资源/resource.json
资源配置文件/custom.json
自定义识别器/动作配置/control.json
控制配置文件resource.json
custom.json
control.json
The text was updated successfully, but these errors were encountered: