爱意满满的作品展示区。
liuliangsir

周末发布一个 steam 游戏,灵感来源于经典的 Chrome 离线恐龙小游戏

  •  
  •   liuliangsir · 2 days ago · 957 views

    steam 商店链接

    特性

    • 5 大关卡生态 — 沙漠、雪原、森林、城市、太空,各有独特障碍物与场景氛围
    • 道具系统 — 护盾、冲刺、慢动作、双倍积分、磁铁,5 种增益道具
    • 可解锁皮肤 — 经典、忍者、太空、骑士、机器人、黄金,用游戏内金币购买
    • 幽灵竞速 — 与自己的最佳录像赛跑
    • 本地双人 — 同一台机器上双人游玩
    • 每日挑战 — 每天生成相同种子关卡,全球玩家同台竞技
    • 昼夜循环 — 游戏过程中动态光照切换
    • Steamworks 集成 — 成就、排行榜、统计数据(可选;无 SDK 时自动进入离线模式)
    • 手势模式(实验性) — 通过摄像头手势控制恐龙:竖起大拇指跳跃,向下竖大拇指蹲下
    • 头控模式(实验性) — 解放双手,通过头部姿态控制恐龙:抬头跳跃、低头蹲下、左右转头触发临时速度变化
    • 专业级深色 UI — 动态渐变背景、毛玻璃 HUD 、流畅过渡动画

    技术栈

    层级 技术
    运行时 Electron 28
    游戏引擎 Phaser 3.90
    UI 框架 React 19
    状态管理 Zustand 5
    语言 TypeScript 5.7
    构建工具 Vite 6 + electron-vite 5
    打包发布 electron-builder 24

    项目结构

    src/
    ├── main/                  # Electron 主进程
    │   ├── index.ts
    │   └── steam.ts           # Steamworks SDK 集成
    ├── preload/               # 预加载脚本( Context Bridge )
    │   └── index.ts
    └── renderer/              # 渲染进程
        └── src/
            ├── App.tsx            # 根组件 & 事件绑定
            ├── main.tsx           # React 入口
            ├── phaser-game.tsx    # Phaser ↔ React 桥接
            ├── components/        # React UI 组件
            │   ├── main-menu.tsx
            │   ├── game-overlay.tsx
            │   ├── game-over.tsx
            │   ├── skin-selector.tsx
            │   ├── shop.tsx
            │   ├── settings.tsx
            │   └── daily-challenge.tsx
            ├── stores/            # Zustand 状态仓库
            │   ├── game-store.ts
            │   ├── input-mode-store.ts
            │   └── player-store.ts
            ├── hooks/
            │   └── use-game-events.ts  # Phaser ↔ React 事件钩子
            ├── game/
            │   ├── main.ts        # Phaser 游戏引导
            │   ├── event-bus.ts   # 跨框架事件总线
            │   ├── types/         # 共享 TypeScript 类型 & 枚举
            │   ├── assets/        # Chrome 精灵图资源
            │   ├── scenes/        # Phaser 场景
            │   │   ├── boot.ts
            │   │   ├── preloader.ts
            │   │   └── game-scene.ts
            │   ├── objects/       # 游戏对象
            │   │   └── dino.ts
            │   ├── managers/      # 游戏子系统管理器
            │   │   ├── background-manager.ts
            │   │   ├── camera-source.ts
            │   │   ├── difficulty-manager.ts
            │   │   ├── ghost-manager.ts
            │   │   ├── head-pose-source.ts
            │   │   ├── ground-manager.ts
            │   │   ├── input-manager.ts
            │   │   ├── level-manager.ts
            │   │   ├── obstacle-manager.ts
            │   │   ├── power-up-manager.ts
            │   │   └── score-manager.ts
            │   ├── sprites/       # 程序化精灵生成
            │   └── audio/         # 程序化音频生成
            └── styles/
                ├── global.css     # 设计令牌 & 基础样式
                └── components.css # 组件样式
    
    6 replies    2026-05-25 20:02:13 +08:00
    dawn009
        1
    dawn009  
       2 days ago
    知道这视频是在展示功能,但作为游戏演示,真的看得人血压飙升
    liuliangsir
        2
    liuliangsir  
    OP
       2 days ago
    @dawn009 想问下,这视频有哪些问题呢?我后续再优化一下
    dawn009
        3
    dawn009  
       2 days ago
    @liuliangsir
    两个主要问题

    1. 困惑。目前的观感是,不知道正在演示的是什么。需要突出显示,光靠游戏本身的选单不够突出这一点。

    2. 挫败感。对于游戏来说,用户的第一关注点是这个游戏是否好玩。目前的演示第一关注点是游戏实现了哪些功能,并且为了演示功能忽视了对游戏本身的展示——小恐龙不出 2 秒一头撞死,充满了“窒息操作的挫败感”
    liuliangsir
        4
    liuliangsir  
    OP
       1 day ago
    @dawn009 好的
    kirei
        5
    kirei  
       1 day ago
    首页视频是何意味?因为我平常浏览 steam 也不开视频声音,然后看十几秒无意义的东西,画面没有解说。然后就是失败失败失败,可以试试简短的通关操作(中间可以加速)然后到双人的展示,展现一下通关结算。
    展示页没有啥吸引力,当然感觉游戏本身也,赛跑游戏太小众了。看到这个突然想起来一个 speedrunner ,所以灵感来自于恐龙游戏,有什么玩法上的拓展?
    liuliangsir
        6
    liuliangsir  
    OP
       1 day ago
    @kirei 好的。首页视频就是单纯告诉玩家里面有哪些功能
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3653 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 04:44 · PVG 12:44 · LAX 21:44 · JFK 00:44
    ♥ Do have faith in what you're doing.