《谁杀死了比尔?》:使用Trae完成的一个推理游戏项目!!

82 阅读3分钟

点击《谁杀死了比尔?》来一把烧脑的推理游戏!

第一次使用Trae来开发这么一个游戏,话不多说,直接开造!

提示词部分

  • 你是一个推理游戏开发者,请创建一个基于HTML和原生JavaScript的项目,名字叫做《谁杀死了比尔?》。这个项目的核心玩法是:用户作为探案者,用户通过输入自然语言的询问,如:“比尔是兄弟罗伯特杀的吗?”等,系统只能根据游戏主线,回答是或不是。每10回合公布其中的一个小细节为用户探案,直到用户找到杀死比尔的真相才游戏结束。用户只有20分钟的时间进行探案,否则游戏失败并公布真相。设置一个悬疑的BGM。
  • 请搭建一个基础网页结构,主界面为一个对话框,有上下文回答的历史,初始系统对话为介绍故事的背景
  • 生成游戏开始界面,点击开始进入游戏主界面,若用户输入正确则游戏结束 -根据故事情节生成和设计游戏背景、细节等等
  • 设计背景图、背景音乐
  • 内容与答案通过关键字的匹配来分配权重算法实现
  • ....(然后就是不断的修修修修修

开始界面

image.png

游戏主界面

image.png

为了让回答问题面板更能够稍微显示背景人物比尔,于是我让Trae给我设置了0.7的透明度,为了让界面更加漂亮好看,让Trae美化了一下界面。但是,我发现了一个问题---聊天气泡长度和文字长度不协调。

再次,发问Trae,修改了一番。变成了如下的样式:

image.png

但是,测试了一番,又发现了一个bug,无论发什么与主线有无关联要么要么不是,我查看了js代码发现原来代码是根据随机数来,随机数大于0.5就回复是,否则不是。 :( 我思考了一番,这种类型的游戏该如何去验证是否无关?我想到了机器学习里面用概率来估计关联性,于是我让Trae根据用户所给关键词分配权重来实现关联性,把数据输入进去,检验用户输入内容来判断是还是不是。

接着,为了验证数据的准确性,我让Trae生成一组测试数据,将测试数据从用户输入进去,观察控制台的输出,大部分都对了(其实测试了好几轮,和修修修

自己体验了一下,输入了正确答案,它给我回复了一个(虽然这是我要的结果,但为什么没有出现游戏结束界面?????

于是,我告诉Trae生成一个用户输入老板并加上相关词(我不会告诉你这是细节的 才准许通过游戏的界面。

修修修修修得到了如下的游戏结束界面

结束界面

image.png

终于结束了!!!通关了(上帝视角就是快

后续准备将系统回复变成Agent.....