Anime-Game-Servers / Grasscutter-Quests

A server software implementation, ineroperable with a certain anime game client. The code in this repository is fully custom made for edyoucational purposes and future preservation, no copyrighted code is allowed in this repository.
https://grasscutters.xyz/grasscutter
GNU Affero General Public License v3.0
133 stars 31 forks source link

[Feature Request] 关于3.3 #40

Open Adelaide114514 opened 1 year ago

Adelaide114514 commented 1 year ago

我利用GC3.3版本的核心 并利用xuzhong.dong的泄露 结合了res对应任务的Lua脚本 事实上原本GC添加任务后结束任务需要手动添加下一个任务 然而Lua脚本自动添加了下一个任务 大任务与子任务等之间的衔接已经没有了问题 但是任务中关于走到某个地方附近时 Lua脚本报错 (POYC%}BV}7TF0V8`~XE`S 2E9K`Y`QAO)5~N8TN8DQU7I 这似乎是来自\src\main\java\emu\grasscutter\scripts\data\ScriptArgs.java Lua脚本需要userdata而核心规定的这个脚本为int 听说这个仓库修复了剧情 但他停留在了3.1 于是我将3.3的proto替换在了此分支 可依然4206 希望作者能够尝试更新3.3(?)

Xiaorunyu2541 commented 1 year ago

更新3.3还需要添加更多密钥 github.com/Grasscutters/Grasscutter/pull/1923

Adelaide114514 commented 1 year ago

更新3.3还需要添加更多密匙github.com/Grasscutters/pull/1923

我知道 但这并不是补丁问题 因为我已经进入了游戏 不然Lua的脚本错误是哪里来的? 我希望作者更新一下proto 或者是把关于任务的proto修改单独发出来 替换在3.3的gc上 这样就可以适配3.3了

mjolsic commented 1 year ago

你图一里的问题应该已经被解决了 在这里https://github.com/Grasscutters/Grasscutter/commit/7a98865f3e155df57b57961ba75e016e494708dc 从你的console来看还有以我的理解你的问题应该跟proto没什么关系

Hartie95 commented 1 year ago

The main goal for now is to provide a stable enviroment for adding the missing and ficing the broken features of GC, so we need protos and resources with as little errors as possible. Since the protos stayed mostly the same for 2.8 to 3.2, I will keep this branch on 3.1(soon 3.2) for now to allow better progress.

Quests and regions for 3.0+ are missing resources anyway, so besides 2 new characters we don't really gain anything from updating to 3.3. The leaked resources on the other side are not really supported and probably need to be modified in the same way es the extracted Luas for grasscutter, since luaj doesn't suport methods calls without context. So you need to add the context to calls that don't pass it.

Adelaide114514 commented 1 year ago

你图一处的问题应该已经被解决了 在这里Grasscutters@ 7a98865 从你的控制台来看还有以我的理解你的问题应该跟proto没有什么关系

proto是我想从这个仓库手动更新到3.3可是以我的能力似乎并不行

Adelaide114514 commented 1 year ago

你图一处的问题应该已经被解决了 在这里Grasscutters@ 7a98865 从你的控制台来看还有以我的理解你的问题应该跟proto没有什么关系

但如果是图一的报错好像并没有什么特别的 也没有实际的错误 图二是到什么地方附近触发的错误 如果能够修复这个参数任务应该就会有很大的进步

Adelaide114514 commented 1 year ago

你图一处的问题应该已经被解决了 在这里Grasscutters@ 7a98865 从你的控制台来看还有以我的理解你的问题应该跟proto没有什么关系

你给的仓库我找到了文件并修改了但他引起了报错 我根据报错找到了相应文件 将3.3gc与3.1也就是这个分支结合起来看 不停的修改 但是最终他依然报错 image image 八行第十五行我尝试删去但是换来的是更多的报错(?)

Hartie95 commented 1 year ago

I recently moved DungeonPassConditionType so maybe this helps:

import emu.grasscutter.game.dungeons.enums.DungeonPassConditionType;
Adelaide114514 commented 1 year ago

我放弃了:(

CNWK-Team commented 1 year ago

你能生效,我直接使用原版GC1.4.3,然后在Res里面把作者提供的脚本添加了,然后config也设置了(questing没找到,自己手动添加了一个字段,和enableBigWorldScript字段放在一起),可是在游戏中并不能有任何的自动添加的任务。/questing enable指令也没有?怎么回事呢!!

Adelaide114514 commented 1 year ago

我的意思是使用指令添加 流浪者的足迹 也就是/quest add 35104 原神最初的任务 然后后续完成任务后不需要手动添加 它会自动衔接新的任务 还有你说的字段是? 我现在仍然卡在QuestContent和DungeonPassConditionType这个死胡同

你能生效,我直接使用原版GC1.4.3,然后在Res里面把作者提供的脚本添加了,然后config也设置了(questing没找到,自己手动添加了一个字段,和enableBigWorldScript字段放在一起),可是在游戏中并不能有任何的自动添加的任务。/questing enable指令也没有?怎么回事呢!!

mjolsic commented 1 year ago

我的意思是使用指令添加 流浪者的足迹 也就是/quest add 35104 原神最初的任务 然后后续完成任务后不需要手动添加 它会自动衔接新的任务 还有你说的字段是? 我现在仍然卡在QuestContent和DungeonPassConditionType这个死胡同

首先这个repo现阶段就已经能实现自动衔接任务到大概在特瓦林打龙的那个地方,所以你不能确定你用的泄露的lua是否有作用,我建议还不如用正常的res。再来就是这个repo的版本才更新到3.1所以并不建议用其他版本的res和客户端。 一般来说伺服器,res,和客户端的版本必须一致。至于你这里(https://github.com/Hartie95/Grasscutter/issues/40#issuecomment-1368201378)的问题, 基于他给出的问题是乱码,所以我并不能确定具体的问题是什么, 但感觉像是文件缺失了。还有一个问题是你用的是哪个 branch?

mjolsic commented 1 year ago

你能生效,我直接使用原版GC1.4.3,然后在Res里面把作者提供的脚本添加了,然后config也设置了(questing没找到,自己手动添加了一个字段,和enableBigWorldScript字段放在一起),可是在游戏中并不能有任何的自动添加的任务。/questing enable指令也没有?怎么回事呢!!

你用的是哪个branch?

Adelaide114514 commented 1 year ago

你能生效,我直接使用原版GC1.4.3,然后在Res里面把作者提供的脚本添加了,然后config也设置了(questing没找到,自己手动添加了一个字段,和enableBigWorldScript字段放在一起),可是在游戏中并不能有任何的自动添加的任务。/questing enable指令也没有?怎么回事呢!!

你用的是哪个branch? gc官仓3.3的和此仓库[3.1任务]替换了部分的java然后将泄露端的任务lua脚本替换到了res里

mjolsic commented 1 year ago

gc官仓3.3的和此仓库[3.1任务]替换了部分的java然后将泄露端的任务lua脚本替换到了res里

首先呢,这个repo并不是直接运行lua脚本的,而是读取了lua里部分的信息再以类似泄露lua的逻辑写成java,所以你替代了lua也没什么用。其实正常的res里的信息就已经足够让服务器跑起来了,只不过我们不能够照搬,因为mhy会起诉。

Adelaide114514 commented 1 year ago

gc官仓3.3的和此仓库[3.1任务]替换了部分的java然后将泄露端的任务lua脚本替换到了res里

首先呢,这个repo并不是直接运行lua脚本的,而是读取了lua里部分的信息再以类似泄露lua的逻辑写成java,所以你替代了lua也没什么用。其实正常的res里的信息就已经足够让服务器跑起来了,只不过我们不能够照搬,因为mhy会起诉。

我知道 因此我想合并他 不然3.3gc等待的只能报错

Adelaide114514 commented 1 year ago

靠近某个东西完成任务的脚本还是只能手动结束吗?

------------------ 原始邮件 ------------------ 发件人: @.>; 发送时间: 2023年1月6日(星期五) 中午1:12 收件人: @.>; 抄送: @.>; @.>; 主题: Re: [Hartie95/Grasscutter] [Feature Request] 关于3.3 (Issue #40)

我倒是可以给你发一个核心,临时体验一下,我自己修改编译的 基于3.3的GC改的,主线任务衔接只到 特瓦林打龙 部分(似乎打不了龙)

https://t.wss.ink/f/a6vf7ml7u0t

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

mjolsic commented 1 year ago

任务是一个非常复杂的部分,结束任务可以有很多条件,比如得到特定物品,与npc对话,然后该任务结束后衔接的任务是什么。这其中不一定是只接受一个任务。回到你的问题,你得说明靠近的是什么。还有如果你使用的不是单纯的这个仓库,那很有可能问题出现在别的文件里,不妨先单纯体验这个仓库再说。