gpt4 book ai didi

android - 在 Android 开发中使用位掩码自动匹配播放器

转载 作者:行者123 更新时间:2023-11-29 00:27:22 24 4
gpt4 key购买 nike

我正在尝试根据玩家选择的标准自动匹配玩家。为简单起见,玩家可以被评为 1、2 或 3 级。如果玩家是 3 级玩家,只想和其他 3 级对手对战,这是怎么做到的?我一页一页地阅读 Google 的教程和引用资料。它声明位掩码可用于设置标准。在我的试验中,我只能在玩家的位掩码是 2 的补码时匹配玩家,如 Google 文档中所述。

exclusiveBitMask - 自动匹配请求的独占位掩码。每对自动匹配请求的逻辑与必须等于零才能自动匹配。如果游戏没有独占性要求,则该值设置为0即可。

因此,如果两个玩家具有相同的位掩码(即相同的标准),他们将不会被匹配。解决办法是什么?如果它们基于 2 的补码匹配,我该如何实现?谁得到“常规”位掩码,谁得到补码?我不明白。

我可以为用户提供创建游戏的选项:

我的水平----愿意对战的水平

1 1 0 ---- 1 1 0(零表示是,所以我的等级 == 1 并且只愿意玩等级 1)

连同查找游戏的选项:

对战等级----我的等级

0 0 1 ---- 0 0 1(对战1级,我是1级)

这很好,但随后 QuickGame 被击中,因为...

1) 同一级别的两个人不会匹配,如下所示:

0 0 0 ---- 0 0 1 和 0 0 0 ---- 0 0 1(没有匹配,都是 1 级并且愿意和任何人玩)

2) 或者如果 QuickGame 全部为零,它们将匹配只想玩第 3 级的人,如:

0 0 0 ---- 0 0 0 和 0 1 1 ---- 0 1 1(QuickGame 玩任何人,并创建游戏级别 3 与级别 3 只有匹配,这是不对的)

解决方案是什么?

最佳答案

给个机会public RoomConfig.Builder setVariant (int variant)
使用 setVariant,您可以为不同级别的玩家创建房间。

关于android - 在 Android 开发中使用位掩码自动匹配播放器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18419276/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com