V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Livid
203.35D
510.61D
V2EX  ›  Visual Studio Code

最近用 VSCode Agent + Sonnet 4 从零开始做了个小游戏

  •  2
     
  •   Livid ·
    PRO
    · 2025 年 6 月 18 日 · 14614 次点击
    这是一个创建于 211 天前的主题,其中的信息可能已经有所发展或是发生改变。
    游戏用的是 Phaser 3 框架。可以在浏览器里直接玩。如果电脑上有手柄,也做了一些适配。

    https://banny.iweb.eth.sucks/

    目前项目超过 5000 行代码,但是整个过程都是用提示词描述需求,然后 agent 搞定全部。
    第 1 条附言  ·  2025 年 6 月 18 日
    源代码在这里:

    https://github.com/livid/banny

    欢迎折腾。
    第 2 条附言  ·  2025 年 6 月 18 日
    绿色的手上拿了油桶的那个角色有特殊的攻击方式。
    77 条回复    2025-06-23 17:15:53 +08:00
    Jimmyisme
        1
    Jimmyisme  
       2025 年 6 月 18 日
    死的莫名奇妙哈哈
    sparkle2015
        2
    sparkle2015  
       2025 年 6 月 18 日
    请问 OP 可以分享一下提示词吗?或者整理成一个教程。看了这个,第一次有了想尝试自己写个游戏的想法。
    gy0624ww
        3
    gy0624ww  
       2025 年 6 月 18 日
    macbook 浏览器 方向键不好用,按两下就不动了
    wdv2ly
        4
    wdv2ly  
       2025 年 6 月 18 日
    所有的音效和美术素材也是 AI 生成的吗?
    wulili
        5
    wulili  
       2025 年 6 月 18 日
    美术素材是用什么 AI 生成的?
    Livid
        6
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @wdv2ly 人物角色素材是朋友的 NFT 项目 https://retail.banny.eth.sucks/itch.io 上买的地图和怪物图片。

    音乐是 Suno 生成的。

    音效是下载的。
    Livid
        7
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @gy0624ww 可能焦点不在浏览器窗口。也支持手柄或者 WSAD 。

    主要是用 Chrome 浏览器测试的。
    Livid
        8
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @sparkle2015 全程几百句提示词,没有做特意保存和整理。

    基本上就是尽可能详细地用英语描述你想要的。然后代码用 Copilot 的 Agent 模式生成。
    superbai
        9
    superbai  
       2025 年 6 月 18 日
    macos+chrome 应该有 BUG ,同楼上的现象
    vmebeh
        10
    vmebeh  
       2025 年 6 月 18 日   ❤️ 1
    hitbox 比角色大一圈,莫名被卡被攻击
    skyrim61
        11
    skyrim61  
       2025 年 6 月 18 日
    IT 开发已经成为传统行业了.
    Tink
        12
    Tink  
    PRO
       2025 年 6 月 18 日
    好难
    MarkP
        13
    MarkP  
       2025 年 6 月 18 日
    已通关

    linnsh
        14
    linnsh  
       2025 年 6 月 18 日   ❤️ 1
    给敌人 A 两下就 GG ,移动好像有 BUG ,就像卡空气墙一样,动两下就不能再移动了
    Dididadada
        15
    Dididadada  
       2025 年 6 月 18 日
    macbook+edge 没有遇到楼上说的方向键不好用的情况,不过 wasd 操作更顺手。遇到的问题:
    1. 碰撞检测的盒子大了一些,
    2. 怪物可以从水上过,不知道是设计如此还是 bug
    3. 子弹有时候会穿过怪物没有造成伤害
    jiangpranay
        16
    jiangpranay  
       2025 年 6 月 18 日
    想起来 vcd 中文游戏 300 坦克大战。。。
    KongLiu
        17
    KongLiu  
       2025 年 6 月 18 日   ❤️ 1
    碰撞盒最好改成中心的点吧,现在感觉是图片尺寸直接作为碰撞盒大小了,就会死的莫名其妙
    pursuer
        18
    pursuer  
       2025 年 6 月 18 日   ❤️ 1
    通关+1 ,似乎是 500 分通关,第一个角色比其他角色多 50HP 是什么原因不清楚,游戏技巧就是优先升 1 级子弹伤害,后面优先子弹频率或者伤害,毕竟最重要的是清理近身或路径上的怪,其他的 AOE 可以随意点点,子弹体积我不知道有什么用没点过,HP 恢复数值太低可以无视。游戏的碰撞比预想的大需要注意下
    korvin
        19
    korvin  
       2025 年 6 月 18 日   ❤️ 1
    好像打不开了,就黑屏
    Liuman
        20
    Liuman  
       2025 年 6 月 18 日
    Livid
        21
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @KongLiu
    @vmebeh

    收到。hit box 应该优化。
    snitfk
        22
    snitfk  
       2025 年 6 月 18 日
    服务崩了吧?
    Livid
        23
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @Dididadada

    怪物有一个跳跃设定(如果检测到卡碰撞),在跳跃动画过程中会暂时禁用怪物的碰撞检测,也就会在那个时候子弹可以穿过去。
    Livid
        24
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @snitfk 就是一包静态文件,没有后端。

    如果无法访问建议检查一下代理设置或者试一下这些其他地址:

    https://banny.sol.build/

    https://banny.iweb.eth.limo/
    ansonsiva
        25
    ansonsiva  
       2025 年 6 月 18 日
    我用 arc 打开就一直黑屏,换 edge 就好了
    gchxp
        26
    gchxp  
       2025 年 6 月 18 日
    想问下站长最近用 Agent + Sonnet 4 时是否会报 500 错误? 我现在有个项目用 Agent 模式就报错 普通的的 ask 和 edit 就不会
    Livid
        27
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日   ❤️ 1
    @gchxp 前两天是美国的一次大范围网络故障。最近是好的。
    suyuyu
        28
    suyuyu  
       2025 年 6 月 18 日   ❤️ 1
    吸血鬼幸存者,好难
    Livid
        29
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @suyuyu 确实就是受这个启发做的!
    orion1
        30
    orion1  
    PRO
       2025 年 6 月 18 日
    打不开,应该是这个文件不存在
    https://banny.iweb.eth.limo/src/logic/boomerang.js
    Livid
        31
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    在本地运行:

    ```
    git clone https://github.com/livid/banny
    cd banny
    python -m http.server 2025
    ```

    然后 http://localhost:2025/
    lukehuang0710
        32
    lukehuang0710  
       2025 年 6 月 18 日
    kaidong21
        33
    kaidong21  
       2025 年 6 月 18 日
    整个项目大概写了多久?
    Livid
        34
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @kaidong21 加起来大概一周。
    darkjoker
        35
    darkjoker  
       2025 年 6 月 18 日   ❤️ 1
    有点粗糙的幸存者游戏哈哈哈, 还行
    Clannad0708
        36
    Clannad0708  
       2025 年 6 月 18 日
    @Livid #8 用英语描述和用中文描述的提示词效果差别很大吗?
    bindiry
        37
    bindiry  
       2025 年 6 月 18 日   ❤️ 1
    用提油桶的香蕉通关了。

    https://imgur.com/M8AcjOO
    Livid
        38
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @Clannad0708 Claude 家的东西,目前在跨语言方面不太行。
    yvyvyv
        39
    yvyvyv  
       2025 年 6 月 18 日   ❤️ 1
    用油桶一次通关, 就升攻击和经验就 ok , 地图里物品碰撞有点僵硬,应该是图片的关系方方正正的, 就是感觉操作起来不是很流畅
    way2create
        40
    way2create  
       2025 年 6 月 18 日
    我 chrome 打开也黑屏,发现是 uBlock 扩展的原因
    shiroyuri
        41
    shiroyuri  
       2025 年 6 月 18 日
    伤害判定没有动画,音效提示吧。然后也还是物体的碰撞,然后感觉有卡卡的感觉吧。

    棒,小游戏还是挺不错

    浏览器:Midori Browser, 打开正常,方向键和 AWSD 键都能控制(开了 Vimium 插件的话,要按 i 键进入输入模式)

    Livid
        42
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 18 日
    @shiroyuri 伤害判定只有音效
    jtacm
        43
    jtacm  
       2025 年 6 月 18 日
    好上瘾,刚打了 124 分。
    shiroyuri
        44
    shiroyuri  
       2025 年 6 月 18 日
    @Livid 噢噢,那可能前面没戴耳机玩,后面戴耳机玩了之后没有受到伤害。我的我的。
    jtacm
        45
    jtacm  
       2025 年 6 月 18 日
    500 分通关了,到了后面都不用移动了,子弹太强了。
    ooyy
        46
    ooyy  
       2025 年 6 月 18 日
    这个香蕉剑士太厉害了,吃了穿透子弹后就无敌了,站在原地不动通关。
    Lshl56B4vDqdixwK
        47
    Lshl56B4vDqdixwK  
       2025 年 6 月 18 日
    @Liuman 把广告拦截器关掉就能正常玩了
    967182
        48
    967182  
       2025 年 6 月 18 日   ❤️ 1
    能不能设置结束的点数啊,500 刚开始大杀四方就结束了
    kamikaze472
        49
    kamikaze472  
       2025 年 6 月 18 日
    优先把攻速点满就无敌了
    Leon6868
        50
    Leon6868  
       2025 年 6 月 18 日
    优先点满爆炸,然后点射速,然后在沙漠地图右侧的空地上站桩输出即可
    fkdtz
        51
    fkdtz  
       2025 年 6 月 19 日
    家人们,谁懂把大香蕉回旋镖甩到怪物堆里的救赎感
    Ironpan
        52
    Ironpan  
       2025 年 6 月 19 日
    想问下,5000 行代码是都看懂了接受还是直接接受,没有看懂接受万一有 bug 是怎么解决的?因为我在用的过程中项目代码 3000 行如果不过脑子,后面就必须依赖 ai 来继续了。。。遇到 bug 的时候如果自己上手,会和使用 ai 的时候形成鲜明的对比,有一定的负反馈。
    leonlly
        53
    leonlly  
       2025 年 6 月 19 日
    已通关,很好玩。
    https://imgur.com/a/rMq5Ffj
    Livid
        54
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 19 日
    @Ironpan 和项目的组织方式有关。

    做到一定的程度,就需要把一些逻辑拆到单独的文件里。

    比如看 src/logic 这个目录。

    确保没有单一文件太大。

    这个过程我大概花了几十次对话是单独用来拆分这些逻辑。

    这样拆过之后,继续用 AI 的效果会更好,同时自己如果要看代码,也不会费力。
    Livid
        55
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 19 日
    @967182 应该有一个 infinite 模式。
    Kaiv2
        56
    Kaiv2  
       2025 年 6 月 19 日
    挺有意思的,来个无尽模式
    Kaiv2
        57
    Kaiv2  
       2025 年 6 月 19 日
    有 bug 切换到其他页面等一会切回来,子弹会累计
    sleepm
        58
    sleepm  
       2025 年 6 月 19 日
    发现个小 bug
    头像的 z-index 和 #Top 顶部的一样(没设置),然后滚动的时候,顶部粘到最上面,但是头像可以覆盖顶部
    sleepm
        59
    sleepm  
       2025 年 6 月 19 日
    #Top 顶部 fixed 我自己写的脚本。。无视吧
    asing
        60
    asing  
       2025 年 6 月 19 日
    pxiphx891
        61
    pxiphx891  
       2025 年 6 月 19 日
    如果在有怪物的同时,让 10 个 V2EX 网友在一张图里互相杀,感觉不错,有点大逃杀的感觉
    loryyang
        62
    loryyang  
       2025 年 6 月 19 日
    别说挺好玩
    HuskyHao
        63
    HuskyHao  
       2025 年 6 月 19 日   ❤️ 1
    code is cheap, show me your prompt
    laowu2012
        64
    laowu2012  
       2025 年 6 月 19 日
    vibe coding 的项目开源代码不如开源 prompt 。😁😁
    GooogIe
        65
    GooogIe  
       2025 年 6 月 19 日
    code is cheap, show me your prompt
    vmebeh
        66
    vmebeh  
       2025 年 6 月 20 日   ❤️ 1
    在 src/scenes/Start.js#L524 行的 initializeGame 函数中的 const map = this.make.tilemap 处设置断点(初始化默认数值后),选人后在控制台输入完后继续
    this.selectedMap.victory=500000 //设置通关条件为 500000 分,默认 500 分
    this.score=5000 //从 5000 分开始玩,省得一开始太慢浪费时间

    这是天龙人模式
    this.maxHealth=999999;this.regenerationRate=9999;this.bigBoomCooldown=200
    Livid
        67
    Livid  
    MOD
    OP
    PRO
       2025 年 6 月 20 日
    @vmebeh 👍
    realpg
        68
    realpg  
    PRO
       2025 年 6 月 20 日
    我更好奇这个 PRO 认证怎么拿到.jpg
    guxin0123
        69
    guxin0123  
       2025 年 6 月 20 日
    打开黑屏的可以检查一下广告拦截插件

    我这里的 ublock origin lite 把其中一个 js 拦截了
    moonlord
        70
    moonlord  
       2025 年 6 月 20 日
    按照这个技术找来说!
    开源提示词才是真的开源 hhh !
    SkyOfWood
        71
    SkyOfWood  
       2025 年 6 月 20 日
    站长大佬,能不能用 V2 的余额来买复活币啊,比如一铜币玩一次,有点小时候街机厅那味道了
    CC11001100
        72
    CC11001100  
       2025 年 6 月 20 日
    人麻了,游戏下线了吗,我在给这个游戏写一个有意思的外挂,然后发现网站挂了。。。已经写一个通宵了,白干了吐血
    const
        73
    const  
       2025 年 6 月 20 日
    @realpg 你猜这个网站是谁的
    avenger
        74
    avenger  
       2025 年 6 月 20 日   ❤️ 1
    和儿子一起玩了一个小时,很有意思
    好奇这种小游戏开发,也需要 unit test 吗?如何控制代码质量?
    chinni
        75
    chinni  
       2025 年 6 月 20 日
    碰撞太离谱了 地形和人 根本不知道什么时候能碰到。莫名就死角了哈哈哈
    b1ackjack
        76
    b1ackjack  
       2025 年 6 月 20 日
    这个游戏蛮有趣的,好像土豆兄弟/刀刀兄弟/荆棘之巢
    nathandoge
        77
    nathandoge  
       2025 年 6 月 23 日
    colider 也太大了吧
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3655 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 10:43 · PVG 18:43 · LAX 02:43 · JFK 05:43
    ♥ Do have faith in what you're doing.