[野生程序员花三天时间用 Cursor 复刻经典游戏「俄罗丝方块」,求各位提点建议]

7 天前
shisanhua  shisanhua
大家好!我就是那个周末爱倒腾键盘的野生程序员,日常沉迷用代码给生活开外挂(虽然 80%的工具写完就吃灰了 hhh )

🔥这次整了个大活!靠着和 Cursor 斗智斗勇三天,从连游戏引擎是啥都不知道的小白,硬生生用 JavaScript 搓出了能跑的「俄罗丝方块」!中途经历了:

▷ 让 AI 画了 14 版碰撞检测代码<br>
▷ 凌晨三点和幽灵方块 bug battle<br>
▷ 把 Cursor 训练成专业方块动画设计师<br>

现在这个「赛博儿子」终于能见人了!支持键鼠/触屏双操作,偷偷加了上班摸鱼专用 [老板键] 🤫

👉试玩地址: https://onlinetetris.org

![]( http://onlinetetris.org/assets/images/tetris-preview.jpg)

原来 AI 不止能当搜索引擎,真能造出会动的快乐!这次搞成了,下次或许敢挑战贪吃蛇元宇宙?🚀
2135 次点击
所在节点   程序员  程序员
27 条回复
laizenan
laizenan
7 天前
动画做的很不错呀,不愧是 Cursor 。
shisanhua
shisanhua
7 天前
@laizenan Cursor 做动画还是挺不错的,不过中间也踩过很多坑。就这个动画和屏幕适配两项我搞了一天多。
rap16
rap16
7 天前
做的不错
honkew
honkew
7 天前
不错 动画在线 用了第三方库吗
shisanhua
shisanhua
7 天前
@honkew 动画是单纯的使用 js 写的,没有使用任何第三方库。
itskingname
itskingname
7 天前
你这个还是远古俄罗斯方块。

现代化的俄罗斯方块,需要加上 7-bag 机制,SRS 超级旋转系统,踢墙系统,你现在全都没有。
MoYi123
MoYi123
7 天前
@itskingname 同意, 我也刚想说做的不够规范.
z327774948
z327774948
7 天前
@itskingname 三天做出来的还要什么自行车
archxm
archxm
7 天前
让 ai 保证,GTA 不要跳票
MangoCloud
MangoCloud
7 天前
中间的过程方便总结下吗,一定也不简单
shisanhua
shisanhua
7 天前
@itskingname
方块生成机制:我现在用的是双池化生成机制,跟 7-bag 机制差不多,都是将 7 个方块编成一组,打乱顺序放入候选池中,每次从候选池中取一个方块,直到池子里方块都取完了,再重新编组入池。
双池化其实就是一次将两组共 14 个方块放入候选池。

SRS 超级旋转系统,踢墙系统这两个目前还没有实现,很感谢你提出的宝贵建议🙏🙏🙏,后续我会继续使用 Cursor 来完善相关功能。
nc4697
nc4697
7 天前
看我用 cursor 几分钟做出来的。动画效果也很好,有全屏震动
shisanhua
7 天前
@MangoCloud 做动画这块确实踩了不少坑,好再最终摸索出来一个比较靠谱的经验。

避坑:
1. 提问时尽量避免“大而空”,一定要想清楚你想要什么。
2. 多给 AI 提供一点上下文,告诉它你的需求场景、应用条件等,已确保代码生成的准确性。
3. 遇到复杂问题,按逻辑分块提问,再把答案串起来,原则由浅到深、由粗到细。

拿动方块小时画来举例:
第一问:按游戏规则,当方块触底时如果拼成一行,需要将方块消除,常见的消除动画有哪些呢?

此时 ai 一般会给你列出一些消除动画,如:逐渐消失、闪烁效果、破碎效果、彩虹色/特效动画等。你可以根据动画名再深入提问。

第二问:请帮我列出「逐渐消失动画」方案具体实现步骤。

第三问:请根据以上方案,生成对应的业务代码。
Felldeadbird
7 天前
cursor 确实好用。我周一写了一个小程序。周二上线。周三新增新功能。 代码我基本没看。我就是一个产品经理,不断和 AI 反复拉扯。
andyskaura
7 天前
能不能把这个 ui 套进去 https://chvin.github.io/react-tetris/
aloxaf
7 天前
AI 稿子看多了,总觉得 LZ 的帖子也是 AI 润色过的(
zh584728
7 天前
@aloxaf 再进一步,可能这个用户也是 AI 创造的(
stdout
7 天前
3 天时间要加上联网才行。
ChristopherWu
7 天前
我还做了 RougeLike 扫雷呢。。
shisanhua
6 天前
@andyskaura 这个是怀旧风格的,可以加,但不知道喜欢这种怀旧风格的人多不多。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1119859

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX