40分钟一口气开发15个小游戏(DeepSeek经验分享)
DeepSeek-R1在40分钟内成功开发了15款H5小游戏,其中10款一次对话无BUG完成,3款经调整后运行,2款存在未修复BUG。测试包括贪吃蛇、扫雷、俄罗斯方块等经典游戏,以及国际象棋、围棋等复杂项目。DeepSeek展现了强大的代码生成能力,如一次输出548行贪吃蛇代码,并能按要求修改风格(如762行水墨风版本)。虽然部分游戏(如俄罗斯方块、数独)需要多次调试,但整体表现令人惊艳,特别是9
DeepSeek有着惊人的网页游戏开发能力,在没有工程管理智能体配合的情况下,仅凭一次对话就可以做到500行左右的代码无BUG运行。
那么这篇文章我们来试试DeepSeek-R1的编程能力。
汇总
我们计划让DeeSeek尝试开发了15个小游戏,共耗时大约40分钟,就完成了这15款游戏的开发,其中:10个1次对话无BUG运行、3个通过调整几次可无BUG运行、2个可运行但是有BUG通过几次对话未完全修复,详见下表:
小游戏 |
一次通过 |
调整后通过 |
仍存在BUG |
贪吃蛇游戏 |
● |
||
贪吃蛇改(水墨风) |
● |
||
扫雷 |
● |
||
俄罗斯方块 |
● |
||
井子游戏(人人) |
● |
||
井子游戏(人机) |
● |
||
数独游戏 |
● |
||
打砖块 |
● |
||
小蜜蜂 |
● |
||
简单版马里奥 |
● |
||
极简版雷电 |
● |
||
国际象棋 |
● |
||
围棋 |
● |
||
五子棋 |
● |
||
城市建造者 |
● |
(注:全部样例详细代码可至资源页下载:15款简易经典H5小游戏源代码资源-CSDN下载)
1.贪吃蛇游戏
提示词:生成一个经典的H5贪吃蛇小游戏,所有UI操作都要在游戏中
DeepSeek-R1深度思考了24秒然后给出了很详细的方案,然后用了一段时间输出了548行的经典贪吃蛇H5小游戏。
对话链接(在浏览器地址栏复制粘贴地址浏览,直接跳转无法显示):https://yb.tencent.com/s/8CG0qwxO9c5b
游戏界面如下:
并贴心的给出了游戏说明:
作者试玩了一会儿,没有发现明显BUG。然后惊叹于DeepSeek-R1的强大。
2.贪吃蛇改(水墨风)
我们在第一个样例的基础上,希望改变一下游戏的风格,那么我们将html文件作为附件,并给DeepSeek-R1提示词
附件是一个简单的贪吃蛇小游戏的源代码,将附件游戏的整体风格改成水墨风格
然后DeepSeek-R1深度思考了足足50秒然后给出了很详细的方案:
输出了762行的HTML文件,对话链接:https://yb.tencent.com/s/6wMjGwoBRw1x
个人感觉输出的水墨风不要太赞!!
3.扫雷
扫雷游戏应该比贪吃蛇还简单,给出提示词:
生成一个经典的H5扫雷小游戏,所有UI都在游戏内实现
确实比贪吃蛇简单,DeepSeek只思考了12秒。
对话链接(在浏览器地址栏复制粘贴地址浏览,直接跳转无法显示):https://yb.tencent.com/s/xcHVBc1bmCvC
源代码仅529行^_^。
4.俄罗斯方块
此时我已经有点膨胀,连续一次对话无BUG成功生成3次,于是我让其开始开发一款及其经典耐玩儿的游戏!俄罗斯方块!
生成一个经典的H5俄罗7斯方块小游戏,所有UI都在游戏内实现
只思考了13秒,生成了672行的代码,但是这次的结果不但界面错乱,而且点击开始游戏也一点反应都没有!
于是我尝试让DeepSeek修复源代码中存在的问题:
代码存在问题:1 )分数、最高分、等级这几个UI和canvas画布重合;2)点击开始游戏没有反应
这次DeepSeek思考了整整1分16秒!
此时,页面布局的问题基本解决了,但是点击“开始游戏”依然没有反应。
点击开始游戏依然没有正确开始游戏,也许不是事件绑定的问题,可能是其它问题!
这次又思考了1分43秒。
这次终于可以正常游戏了!对话链接:https://yb.tencent.com/s/d4NXB6uRbHfR
最终源代码725行,通过两次修复过程完成最终简单的俄罗斯方块作品。
5井子游戏(人人)
开发一个风格简约但美观的H5井字游戏
源代码412行一次成功, 对话链接(记得一定是在浏览器地址栏复制粘贴地址浏览,直接跳转无法显示):https://yb.tencent.com/s/nH7nKDsNlyss
6.井子游戏(人机)
上一个样例生成的井子游戏是人人对战版本的,可是如果找不到对手怎么办,总不能老是自己和自己下吧^_^。那么我们把上一个样例的源代码给DeepSeek让其在此基础之上将井子游戏改写成人机对战。
附件是人人对战版本的井子游戏,在此基础上改写为人机对战的H5井子游戏
非常惊艳的也是一次成功,675行代码实现了简单的三种难度的井子游戏对战。
7.数独游戏
数独游戏是非常益智的数学思维小游戏,编写数独谜题基本就是枚举算法。我们来让DeepSeek实施吧!
开发一款H5数独游戏
看来数独的难度很大,DeepSeek思考了6分28秒(对话地址:https://yb.tencent.com/s/d3Ci50adIpu6)。
虽然看起来还可以,但是无法输入数字,我们只能让DeepSeek继续完善。
通过键盘和选择数字都无法填入数字
DeepSeek通过54秒分析了原因并给出了修正思路。
此时数独游戏已经可以正常运行了,但是并不是很人性化,因为其不会自动判定输入的内容是否不符合要求,并且通过尝试几轮游戏发现生成的谜题有的不是唯一解,这就是出题算法有问题了。
优化数独生成算法,确保简单、中等和困难的难度对应关系和确保每个谜题有唯一解
点击检查答案没有反应,改写两点:1)填写数字后检查有无冲突,如果有数字颜色为红色提示;2)所有空都填全之后自动检测是否完成数独填写,如果完成烟花清楚,如果不对提示失败
在DeepSeek又经过这两轮的修复之后,我认为可以算是一个成品的状态了,累计源代码949行。
8.打砖块
生成一个经典的打砖块网页小游戏
DeepSeek思考了12秒就完事了,然后编写了代码。但是运行游戏后发现非常卡顿,我又让DeepSeek优化。
整个游戏的运行非常卡顿,检查一下是什么原因
这次DeepSeek思考了1分3秒。
但是仍然有问题,画面一片漆黑,我们加持让DeepSeek自己解决问题:
打开网页后游戏界面是一片黑
这次DeepSeek思考了2分20秒,看来确实是比较严重的问题,但这次终于解决了问题!
对话链接(源代码550行):https://yb.tencent.com/s/zQtma3Vxa8Av
DeepSeek做的这个打砖块有一点难度,每局有3点生命,但是想清掉全部的砖块还是很需要反应速度的。
9.小蜜蜂
生成一个经典小蜜蜂游戏: 固定轨道射击,敌机波次生成,H5实现经典。
DeepSeek只花了19秒思考,就轻松设计出了经典的小蜜蜂游戏(对话链接:https://yb.tencent.com/s/zzxlh6oDzYhF)。
成品550行代码,一次通过:
10.简单版马里奥
马里奥可以说是我们的童年,谁不想自己做个马里奥游戏呢?
由于马里奥还是有一些复杂的,目前还没有把他调整到完美状态,只是一个简单的DEMO,我后续会专门出几期文章,编写横版冒险游戏。
这里浅浅的尝试一下(对话地址:https://yb.tencent.com/s/vHJZ9Z4fkn2i)。
生成的简单版马里奥游戏909行,虽然有很多BUG,但是DeepSeek全部使用矢量绘图的形式生成了全部的素材,这让我非常震惊,也就是说我们其实可以完全依托AI的矢量绘图能力做一些矢量动画,甚至省去了用即梦绘制素材的时间。我们只需要搭建一套矢量动画框架就可以无限根据需求生成需要的角色动画了。
当我们需要做对素材要求比较高的时候再实用AIGC绘画功能来大量生成素材。
11.极简版雷电
极简版本的雷电DeepSeek思考仅用了7秒,遍一次生成了合格的代码(对话地址:https://yb.tencent.com/s/7AqyWI7HOW89)。
生成一个经典的横版卷轴射击网页小游戏: 如雷电的简化版,控制飞机移动射击,生成敌人弹幕,H5 WebGL可以处理较好效果。
简单的几何图形,也可以让人玩儿的不亦乐乎^_^。
12.国际象棋
开发一款经典的国际象棋网页游戏。
DeepSeek思考1分46秒完成了游戏的设计,右经过一段吐代码的时间完成了国际象棋的开发。这款游戏是可以玩儿的,但是黑白棋的旗子样式过于接近,并且没有游戏胜负判定。
我尝试了几次给提示词想让国际象棋的游戏体验更好一些,但是每次都会让它更加糟糕。
也许这么简单粗暴的方式,可能无法完成国际象棋的这个游戏的开发吧!
对于一次对话输出,设计出这样多内容的游戏,还是很不容易的。毕竟是需要一次2分钟的对话而已,如果要人从零来做,是需要很长时间的。
对话地址:https://yb.tencent.com/s/KB9bQC5fG2cD
13.围棋
生成一个经典的围棋网页游戏
13秒的思考,一次生成了454行完美的代码(对话链接:https://yb.tencent.com/s/DK5PzjxRqrpb)。
14.五子棋
生成一个经典的五子棋网页游戏
15秒的思考,一次生成了507行完美的代码(对话链接:https://yb.tencent.com/s/hORGG8coAlnT)。
15.城市建造者
这个游戏是一个非常有意思的项目,DeepSeek的创造力非同一般!
开发模拟城市网页游戏
DeepSeek思考了1分43秒,以下节选一段对游戏的设计。
设计:
游戏状态(State):
当前金钱(money)
当前人口(population)
满意度(satisfaction)
当前日期(date,例如从第1天开始)
地图数据(map):一个二维数组,每个元素表示一个格子,包含格子的类型(例如:'empty', 'residential', 'commercial', 'industrial')和状态(例如:等级、是否在工作等)
地图:
假设地图大小为20x20(400个格子)
每个格子初始为'empty'
建筑建造后,格子类型变为建筑类型
建筑物:
住宅(residential):增加人口容量(从而吸引人口),需要维护费
商业(commercial):提供金钱(税收),需要人口工作
工业(industrial):提供工作机会,但可能降低满意度(污染)
每种建筑都有建造费用和每维护费用(每天从玩家金钱中扣除)
游戏循环(随时间变化):
使用一个计时器(setInterval)来模拟每天的变化(现实时间每1秒代表游戏里1天?或者玩家可以手动推进时间?)
每天,系统会自动计算:
更新人口(根据住宅容量和当前人口,人口会增长或减少)
更新金钱:收入(来自商业和工业的税收)减去维护费用(所有建筑的维护费之和)
更新满意度:受到各种因素影响(如工业建筑会降低满意度,公园等提高满意度)
事件系统:
随机事件,如火灾会毁掉一个建筑,犯罪率上升导致满意度下降等。每天有一定概率触发事件。
界面:
显示当前资源(金钱、人口、满意度)和日期
地图网格:用div或canvas绘制,每个格子可以点击。当选择建筑类型时,点击空地就会建造。
建筑选择面板(UI按钮)
游戏速度控制(可选)
一次成功,源代码988行(对话链接:https://yb.tencent.com/s/MPidTRU7SBsK)
附件:
更多推荐
所有评论(0)