Skip to content
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

Fork for Global Server? #662

Open
MrICSK opened this issue Aug 2, 2024 · 7 comments
Open

Fork for Global Server? #662

MrICSK opened this issue Aug 2, 2024 · 7 comments

Comments

@MrICSK
Copy link

MrICSK commented Aug 2, 2024

Found out about this repo from BioHazard on Discord. Very cool app! Was hoping to start a discussion on what would be needed to get a fork working for global server. I'm not fluent in Chinese so I'll be translating any messages. Excuse any miscommunications

從 Discord 上的 BioHazard 發現這個 repo。非常酷的應用程式!我希望能開始討論在全球伺服器上執行 fork 所需的條件。我的中文不是很流利,所以我會翻譯任何訊息。請原諒任何誤傳

@ZhaoZuohong
Copy link
Contributor

translating any messages

翻译的时候,选简体中文,不要选繁体。

what would be needed to get a fork working for global server

Mower当前还有很多问题,我们现在处于自顾不暇的状态,而且没有适配外服的经验,所以没法给你提供实质性的帮助。

如果你真的准备做mower外服的适配,我有三点想法:

一是社区建设。基建和其它的日常有本质上的区别。一般的任务,结果是固定的,比如刷1-7,谁刷都一样。基建却完全不同,哪怕是同样的Box、用同样的软件换班,布局不同、排班不同、需求不同,产出还是不一样。如果要真正地发挥出mower的作用,只让软件适配外服是不够的,一定要学习国服的先进理解,建立起基建社区,形成讨论的氛围。用户的基建理解提升了,基建产出才会高。

二是软件开发。Mower的基建逻辑有一段时间没改了,可以认为是比较稳定的,只需要对中文的干员名称进行替换。在识别上,需要重新截取对应的图片素材;对于干员名称的识别,还需要探索出更适合外服的识别方案。

三是沟通交流。Mower的外服适配涉及相当多的细节,在GitHub Issue里讨论这些很不方便。如果你有条件,可以来加我们的QQ频道,或者我去Discord也行。这样交流会更顺畅。


These are translated by Google Translate:

translating any messages

When translating, choose Simplified Chinese, not Traditional Chinese.

what would be needed to get a fork working for global server

Mower currently has many problems. We are currently in a state of being overwhelmed, and we have no experience in adapting to foreign servers, so we cannot provide you with substantial help.

If you really plan to adapt mower to foreign servers, I have three ideas:

The first is community building. Infrastructure is fundamentally different from other daily tasks. For general tasks, the results are fixed, such as brushing 1-7, which is the same for everyone. Infrastructure is completely different. Even if it is the same operator and the same software, the layout, schedule, and requirements are different, the output is still different. If you want to truly play the role of mower, it is not enough to just adapt the software to foreign servers. You must learn the advanced understanding of the domestic server, establish an infrastructure community, and create an atmosphere for discussion. Only when users' understanding of infrastructure is improved can the infrastructure output be high.

The second is software development. Mower's infrastructure logic has not been changed for a while, so it can be considered relatively stable. Only the Chinese operator names need to be replaced. In terms of recognition, the corresponding image materials need to be re-captured; for the recognition of operator names, a more suitable recognition solution for foreign servers needs to be explored.

Third, communication. Mower's foreign server adaptation involves quite a lot of details, and it is not convenient to discuss these in GitHub Issues. If you have the conditions, you can join our QQ channel, or I can go to Discord. This will make communication smoother.

@MrICSK
Copy link
Author

MrICSK commented Aug 4, 2024

Thanks for answering! I've been looking at the code and am very excited to at least try to work on it. A lot of default Python libraries are used so it's much quicker for me to understand. I have a general idea of how some parts of the codebase work after looking at it yesterday. Mower seems to do a lot more than I was initially told so I thought I'd try focusing on the RIIC functionality first since things like farming 1-7 is somewhat easier with the x6 option.
感谢您的回答!我一直在研究代码,很想至少试着做一下。使用了很多默认的 Python 库,所以我理解起来更快。昨天看了代码之后,我对代码库的某些部分的工作原理有了大致的了解。割草机的功能似乎比最初告诉我的要多得多,所以我想我可以先试着专注于 RIIC 功能,因为有了 x6 选项,像耕作 1-7 这样的事情就容易多了。

Mower当前还有很多问题,我们现在处于自顾不暇的状态,而且没有适配外服的经验,所以没法给你提供实质性的帮助。

No problem. I wasn't expecting help on how to exactly implement this. More like where certain parts of code were, architecture, or high level understanding of Mower's functionality. I'll try to fix some of the bugs with everyone! Some of them seem like logic issues like #521 so I'll see if I can create some tests or mock data.
没问题。我并不期望在如何具体实施方面得到帮助。更多的是代码的某些部分在哪里、架构或对 Mower 功能的高层次理解。我会试着和大家一起修复一些错误!有些看起来像是逻辑问题,比如 #521,所以我会看看能否创建一些测试或模拟数据。

基建却完全不同,哪怕是同样的Box、用同样的软件换班,布局不同、排班不同、需求不同,产出还是不一样。

I don't understand this part. My understanding is that it uses Android Studio's adb to simulate taps. I didn't see any API interactions
我不明白这部分内容。我的理解是,它使用 Android Studio 的 adb 来模拟点击。我没有看到任何 API 交互

二是软件开发。Mower的基建逻辑有一段时间没改了,可以认为是比较稳定的,只需要对中文的干员名称进行替换。在识别上,需要重新截取对应的图片素材;对于干员名称的识别,还需要探索出更适合外服的识别方案。

Great to hear! I was expecting this to be the minimum amount of work so it's good to know that part of the codebase is stable
很高兴听到这个消息!我本以为这将是最小的工作量,所以很高兴知道代码库的一部分已经稳定。

三是沟通交流。Mower的外服适配涉及相当多的细节,在GitHub Issue里讨论这些很不方便。如果你有条件,可以来加我们的QQ频道,或者我去Discord也行。这样交流会更顺畅。

It sounds like it'd be more beneficial to join the QQ channel as I assume there are other contributors there. As long as it doesn't require something like a Chinese ID I should be able to figure it out.
听起来加入 QQ 频道会更有帮助,因为我认为那里还有其他贡献者。只要不需要中国身份证之类的东西,我应该能搞清楚。

Update: Tried to make a QQ account but got this error message. It doesn't translate well to English
image
更新:尝试创建一个 QQ 帐户,但得到了这样的错误信息。不能很好地翻译成英文

@ZhaoZuohong
Copy link
Contributor

ZhaoZuohong commented Aug 5, 2024

I've been looking at the code

Please note that we are developing on dev_shawn branch and backporting bug fixes to 2024.05 branch. We don't use other branches now.

There is a guide to run mower from source code (in Chinese): 从源码运行 arknights-mower

focusing on the RIIC functionality ... farming 1-7 is somewhat easier with the x6 option

Mower generates shifting tasks first and do other things between these tasks. If you don't want to maintain functionalities other than RIIC, you can call MAA instead of using mower's code.

基建却完全不同,哪怕是同样的Box、用同样的软件换班,布局不同、排班不同、需求不同,产出还是不一样。

I don't understand this part. My understanding is that it uses Android Studio's adb to simulate taps. I didn't see any API interactions

RIIC is very complex and there are many choices. Just take the layouts of facilities as an example. 252 is simple, efficient and balanced, but there are a lot of variants in 252 to choose from. Switching between 243 and 153 is also worth trying, and it is much more complex. How to use Fiammetta? Worldly Plight or Perception Information? With different plan, you get different outputs.

Mower的基建逻辑有一段时间没改了,可以认为是比较稳定的

Code related to RIIC is mostly written by Shawnsdaddy. I have to say that this part of code is very long and hard to understand. I plan to understand and refactor them little by little, but the progress will not be fast.

@ZhaoZuohong
Copy link
Contributor

“防水墙” might be the product name of Tencent's Captcha service, which is deprecated last year. I have actually no idea about QQ account registration outside China.

Since you have trouble registering QQ account, let's use Discord. Maybe we can setup a message bridge later.

@ZhaoZuohong
Copy link
Contributor

There is also a telegram group: https://t.me/ark_mover

@MrICSK
Copy link
Author

MrICSK commented Aug 9, 2024

I tried to join the Telegram group a few days ago but no reply. Are you in charge of accepting new members @ZhaoZuohong ?

@ZhaoZuohong
Copy link
Contributor

Are you in charge of accepting new members

No.

This morning I decided to fork the project and continue here: mower-ng. Two active maintainers (fuyn101 and EightyDollars) also agree with this transition. You can come with us.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants