问题标签 [2048]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
59 浏览

javascript - 2048 Game - 在控制台中触发关键事件?

我正在尝试在 Chrome 控制台中触发关键事件,但似乎没有任何效果。

我想以编程方式触发任何箭头键(用于实验)。

我试过这个(在许多其他事情中)

window.dispatchEvent(new Event('keypress', {keyCode: 39}))

游戏代码很短。

http://2048game.com/

有什么建议么?

0 投票
1 回答
1278 浏览

java - 制作一个 java 2048 游戏,在滑动时它通过循环的次数超过了它应该的次数,并命中了已经改变的测试/更改数字

所以我有一个可靠的幻灯片功能,问题是(这很难解释!)它经历了所有可能性,包括已经添加在一起的二维数组中的空格:假设有这样的设置:4,4 ,8,2 ---向右滑动一次后,结果如下:,_ ,16,2。但是在实际游戏中,向右滑动一次后,它应该是这样的:___,8,2。

基本上,我该如何解决这个问题?你不需要告诉我代码,这是我的期末项目,但我想得到一些关于为什么会发生这种情况的解释。

我试图从右到左循环遍历数组,但这导致数字甚至没有移动。

向右滑动一次后,它应该看起来像这样:“___,8,2”(来自之前的示例)。

0 投票
0 回答
83 浏览

java - 2048 合并方法帮助

我试图弄清楚如何使用右、上、下、左移位方法。我觉得我的解决方案应该很有效,如果我说错了或其他什么。

主要的

我期待董事会在任何所谓的方向上转移,但事实并非如此。

电路板打印并在 0 所在的位置添加 2。除此之外什么都不做。

0 投票
1 回答
586 浏览

algorithm - 分数在 0 和 n 之间时蒙特卡罗树搜索的 UCB 公式

我正在使用蒙特卡罗树搜索实现一个播放 2048 的 AI。根据维基百科https://en.wikipedia.org/wiki/Monte_Carlo_tree_search和我在扩展步骤中检查的所有其他来源,您应该使用 UCB 公式来确定要访问的节点wi/ni + c*sqrt(ln(N)/ni)。当最后的分数是01(赢或输)时,这个公式很有效,但是,这个公式在 2048 年不起作用,因为分数是一个介于0n我们想要最大化的值。

当分数介于两者之间时,有谁知道哪个是 MCTS 中用于 UCB 的最佳公式0n所以我可以在 2048 游戏中使用它?

谢谢你。

0 投票
1 回答
381 浏览

python - Python 中的 2048 游戏

作为初学者,我开始编写 2048 游戏。我制作了矩阵并用0填充它。然后我想写一个循环遍历整个矩阵并找到所有 0 值的函数。然后保存 0 值的坐标,稍后用 2 或 4 值替换它们。我做了一个随机变量来选择 2 或 4。问题是,我真的不知道如何将 0 值的 x 和 y 坐标推送到数组然后读取它们。

0 投票
0 回答
30 浏览

arrays - 嗨,我正在使用 python 和图形库制作 2048,需要一些帮助

我正在使用python,需要使用数组来制作2048。

我试图弄清楚如何制作机制来创建数组中数字的移动以删除零并将两个相同的数字相加。我在网上查过,但找不到任何东西。

请有人可以帮助我,在此先感谢,Max

0 投票
2 回答
546 浏览

java - 用随机列表中的 2 个值填充 2D 数组(2048 游戏)

我正在尝试重新创建 2048 游戏,但我撞到了一堵砖墙并被难住了。我用二维数组制作了我的网格,它似乎工作正常。然后我做了一个方法来在这个网格/数组中存储一个空白/可用空间列表,以便可以将两个起始数字分配给两个随机可用空间。我的问题是我无法让数字显示在实际网格中。我在下面有我的代码,如果有人能告诉我我哪里出错了,我将不胜感激。抱歉,如果我对此进行了可怕的解释,我对 Java 还是很陌生。

0 投票
2 回答
92 浏览

java - 需要帮助理解数学相关的 Java 方法

我目前正在重新制作游戏 2048,但我不知道如何旋转图块。现在我决定看看 GitHub,看看其他人是如何解决这个问题的。

我正在查看的 git 项目:https ://github.com/michaelzherdev/2048/blob/master/src/com/mzherdev/Game.java

我不明白的方法:

我想知道是否有人可以帮助我弄清楚他的思维过程以及他为什么使用弧度。

换句话说,有人可以解释他对 offsetX 和 y 的含义吗?我不是以英语为母语的人。

提前致谢!每个答案都非常感谢!

真诚的,一个有抱负的开发者

0 投票
2 回答
172 浏览

java - 将 java.awt.geom.Rectangle2D 转换为 javafx.geometry.Rectangle2D 时出错

我得到了这个错误我该如何解决它!

0 投票
1 回答
464 浏览

python - 如何根据 2048 游戏合并/移动行/列向上或向下

我需要一些帮助来创建 2 个函数push_up,并且push_down(想想 2048 游戏),我已经设法创建了将值向左和向右推的函数,然后如果它们具有相同的值,则将它们加在一起。例如,[2,2,0,0]将返回为[4,0,0,0]. 我有一个单独的函数来添加随机数。

我需要对 up 和 down 做同样的事情,但我不知道该怎么做。这是我的起始数组:

这是我的功能:

哪个输出:

和:

我有一个可以在网格上打印出来的函数,但是我需要一些帮助来编写可以上下移动和合并的函数。例如,对于数组:

下来将是:

向上将是:

任何帮助将非常感激。先感谢您。