No description
Find a file
Coldin04 9ef571eaaf Merge branch 'level-08-09-time-io'
关卡8(有时间感)+ 关卡9(不会丢),两关交叉着做:
  阶段A 时间字段进场 -> 阶段B 整个存档 -> 阶段C 衰减/闹脾气/年龄

宠物现在能活过重启,而且在你不看着它的时候也在变化。
2026-08-14 19:55:11 +08:00
.idea 关卡9 模块B4:换成 Jackson,背包和成就终于存下来了 2026-08-13 19:17:21 +08:00
docs 关卡8 模块C3:age 从存着的死字段变成算出来的年龄 2026-08-14 19:54:54 +08:00
src/main 关卡8 模块C3:age 从存着的死字段变成算出来的年龄 2026-08-14 19:54:54 +08:00
.gitignore 关卡9 模块B5:五种坏存档,一个都不许崩 2026-08-13 22:53:09 +08:00
AGENT.md 关卡8 模块C3:age 从存着的死字段变成算出来的年龄 2026-08-14 19:54:54 +08:00
LICENSE Add README and MIT license 2026-08-02 16:30:38 +08:00
pom.xml 关卡9 模块B4:换成 Jackson,背包和成就终于存下来了 2026-08-13 19:17:21 +08:00
README.md Rename project mochi -> cabbi to avoid open-source name collision 2026-08-04 17:42:00 +08:00

Cabbi —— 一只养在命令行里的小家伙

一个 CLI 养成游戏,同时也是一个 Java 学习项目:从一只没有身体的小家伙开始,一关一关给它加上感官、脾气、记忆、时间感,最后它能在你关掉终端之后继续饿、继续等你。

每一关对应一批 Java 知识点封装、继承与多态、枚举、异常、集合、反射、泛型、函数式、多线程……代码全部亲手写AGENT.md 里记录了具体的关卡规划和协作方式。

项目架构

com.cold04.cabbi
├── Pet.java          抽象宠物基类:名字、饥饿度、心情值、体力、年龄
├── Feedable.java      喂食行为接口
├── Playable.java      玩耍行为接口
├── Main.java          程序入口
└── scratch/           讲解用的临时示例代码,不属于正式实现

工程用 Maven 管理,随着关卡推进逐步引入 Logback、Jackson 等依赖,具体见 pom.xml

运行

mvn compile exec:java

进度

详见 AGENT.md 中的关卡表和当前进度。

License

MIT