🎉 新年快乐!送你一只开源桌面宠物机器人

  • King
  • 发布于 3小时前
  • 阅读 19

看完前面的理论,你一定在关心——这个项目开源吗?答案是肯定的!今天是新年第一天,我把这份源码作为新年礼物送给大家,希望它能为你的新年增添一份乐趣!🤖认识PixelPalPixelPal是一款用Rust和Bevy游戏引擎开发的桌面宠物伴侣应用。它不像传统宠物游戏那样需要

看完前面的理论,你一定在关心 —— 这个项目开源吗?答案是肯定的!

今天是新年第一天,我把这份源码作为新年礼物送给大家,希望它能为你的新年增添一份乐趣!

🤖 认识 PixelPal

PixelPal 是一款用 Rust 和 Bevy 游戏引擎开发的桌面宠物伴侣应用。

它不像传统宠物游戏那样需要你打开一个窗口才能互动 —— 它就住在你的桌面上,透明、始终置顶,像一个真正的小伙伴一样陪伴着你。

✨ 核心特性

🖥️ 桌面伴侣体验

  • 透明窗口:宠物悬浮在桌面上,背景完全透明
  • 始终置顶:无论你在做什么,它都在那里陪伴你
  • 自由拖动:想把它放哪儿就放哪儿
  • 轻量设计:极小的窗口尺寸(140×180像素),不打扰你的工作

💖 养成系统

你的像素宠物有三个核心属性,它们会随时间流逝而变化:

属性 图标 说明
饥饿度 🍎 满足宠物的胃口 随时间下降,需要喂食恢复
快乐度 💕 让宠物开心 需要通过抚摸来提升
精力值 宠物的活力 让宠物休息来恢复

宠物的心情会根据属性状态动态变化:

  • 😊 开心 - 所有属性都很健康
  • 🍖 饥饿 - 肚子饿了
  • 😴 困倦 - 需要休息
  • 😢 难过 - 需要关爱

🎮 互动玩法

点击宠物或按 Space 键,打开互动菜单:

按钮 功能
🍎 Feed 喂食恢复饥饿度
💕 Pet 抚摸增加快乐度
💃 Dance 来一段欢快的舞蹈
😴 Sleep 休息恢复精力
💬 Talk 和宠物聊聊天

🎯 小游戏

反应速度测试

R 键启动反应游戏:

  1. 等待屏幕显示 "GO!"
  2. 看到 "GO!" 后尽快按 Space
  3. 查看你的反应时间!

隐藏连招彩蛋 🥚

在 0.65 秒内连续点击宠物 3 次,触发隐藏的舞蹈连招!

🏆 成就系统

通过游戏解锁各种成就:

成就 解锁条件
First Feed 第一次喂食
Pet Lover 抚摸宠物 10 次
Combo Starter 触发连招
Reflex Ace 反应时间 ≤ 350ms

🛠️ 技术亮点

PixelPal 是一个展示现代 Rust 游戏开发最佳实践的项目:

技术栈

  • 语言: Rust (Edition 2024)
  • 引擎: Bevy 0.18 - 数据驱动的游戏引擎
  • 渲染: 支持透明窗口的跨平台渲染

架构设计

src/
├── main.rs          # 应用入口和系统调度
├── pet.rs           # 宠物状态和属性衰减逻辑
├── window.rs        # 窗口配置(透明、置顶等)
├── animation/       # 精灵动画系统
│   ├── mod.rs
│   ├── systems.rs   # 动画帧更新
│   └── types.rs     # 动作状态机
├── fun/             # 小游戏和成就系统
│   ├── events.rs    # 游戏事件定义
│   ├── state.rs     # 连招追踪、反应游戏、成就进度
│   └── systems.rs   # 游戏逻辑处理
└── ui/              # 用户界面
    ├── components.rs # UI组件标记
    ├── menu.rs      # 菜单交互逻辑
    ├── resources.rs # 菜单状态资源
    ├── setup.rs     # UI初始化
    └── status.rs    # 状态显示更新

设计亮点

  1. ECS 架构:充分利用 Bevy 的 Entity-Component-System 模式
  2. 状态机设计:优雅的动作状态切换(Idle → Acting → Idle)
  3. 事件驱动:使用 Bevy 的消息系统解耦游戏逻辑
  4. 资源管理:清晰的 Resource 抽象管理全局状态

🚀 快速开始

环境要求

  • Rust 1.85+ (Edition 2024)
  • macOS / Linux / Windows

构建运行

# 克隆仓库
git clone https://github.com/lispking/pixel-pal.git
cd pixel-pal

# 构建发布版本
cargo build --release

# 运行
cargo run --release

操作说明

按键 功能
鼠标左键 (宠物) 切换菜单 / 触发连招
鼠标左键 (空白) 关闭菜单
Space 切换菜单 / 反应游戏响应
R 启动反应游戏

🎊 新年祝福

新年新气象,愿这只小小的像素宠物能给你带来欢乐!

如果你喜欢这个项目,欢迎 Star ⭐、Fork 🍴 或贡献代码 💻

Happy Coding & Happy New Year! 🎆


Made with ❤️ and Rust

点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
King
King
0x56af...a0dd
擅长Rust/Solidity/FunC/Move开发