Cataclysm-DDA 安装指南:从零跑通程序生成的终端生存游戏

【免费下载链接】Cataclysm-DDA Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world. 【免费下载链接】Cataclysm-DDA 项目地址: https://gitcode.com/GitHub_Trending/ca/Cataclysm-DDA

Cataclysm: Dark Days Ahead(简称 CDDA,Cataclysm-DDA)是一款开源的回合制终端生存游戏:世界完全由程序生成,你在废墟里搜刮食物、武器和燃料,躲开僵尸与怪虫,可以完全离线地玩上几个月。本文带你走通"克隆 → 装依赖 → 编译 → 启动"全流程。

程序生成末日世界中的游戏运行画面

开工前检查:装哪些、为什么装

工具/库最低版本为什么需要它
C++ 编译器(GCC/Clang)支持 C++17游戏逻辑全部是 C++ 写的,没有编译器无法生成可执行文件
make + build-essential—项目用 make 作为官方构建入口,它负责调度整个编译过程
ncurses 开发库—就是让程序在终端里画出文字界面的库,CDDA 的默认界面靠它渲染
zlib、bzip2 开发库—游戏存档和地图数据用这两种格式压缩,运行时必需
astyle—make 默认会对源码做风格检查,缺了它会在编译前报错
git—用来获取代码,构建时也要用它读取版本号

图形模式(tiles 版)还需要 SDL3 全家桶,依赖明显更多,本文先带你用依赖最少的终端版跑通,最后再给图形模式的升级路线。

第一步:获取源代码

打开终端,执行:

git clone https://gitcode.com/GitHub_Trending/ca/Cataclysm-DDA
cd Cataclysm-DDA

确认目录里能看到 Makefile、src/、data/ 三项,说明代码完整。游戏内容(怪物、物品、地图)都在 data/json/ 下的 JSON 文件里,纯代码部分在 src/,之后遇到问题可以顺藤摸瓜。

第二步:一次装齐所有依赖

Ubuntu / Debian

sudo apt-get update
sudo apt-get install build-essential g++ make git astyle libncurses5-dev libncursesw5-dev zlib1g-dev libbz2-dev

Fedora

sudo dnf install gcc-c++ make git astyle ncurses-devel zlib-devel bzip2-devel

Arch Linux

sudo pacman -S base-devel git astyle ncurses zlib bzip2

💡 libncurses5-dev 这类"开发库"和终端里平时用的 ncurses 不是一回事:开发库带了头文件和链接文件,是给编译器用的。

第三步:编译只需要这一条命令

make -j$(nproc)

-j$(nproc) 表示用满你 CPU 的全部核心并行编译,把编译时间从十几分钟压到几分钟。看到大量 g++ 滚动、最后没有红色 Error 即成功。此时项目根目录下会多出可执行文件 cataclysm。

嫌编译慢可以加 RELEASE=1 开启优化;想装 ccache 加速后续增量编译可以再加 CCACHE=1。

第四步:启动并验证跑通

./cataclysm

看到这样的画面就算成功了:终端中央出现 "Cataclysm Dark Days Ahead" 的 ASCII 艺术字标题,下方是 Custom Character、Random Character、Play Now 选项列表,底部一排 [New Game] [Load] [World] ... [Quit] 快捷键栏。

CDDA 启动成功后的文字主菜单界面

再输一条命令确认版本信息正常输出:

./cataclysm --version

能打印出版本号并退出,说明二进制与数据目录都工作正常。

卡住了怎么办

Q1:make 一上来就报 astyle not found make 默认开启源码风格检查。装一下即可:sudo apt-get install astyle(或对应发行版包名)。赶时间也可以跳过检查:make ASTYLE=0。

Q2:报 fatal error: curses.h: No such file 或 ncurses 相关链接错误 说明 ncurses 开发库没装对,回上一步按你的发行版补装 libncurses5-dev libncursesw5-dev(Fedora 为 ncurses-devel)。

Q3:想看图块画面而不是纯文字,make TILES=1 却报找不到 SDL3 tiles 版依赖 SDL3 ≥ 3.4.0,且 SDL2 已不被支持。Ubuntu 上先装 sudo apt-get install libsdl3-dev libsdl3-ttf-dev libsdl3-image-dev libfreetype6-dev glslang-tools,再执行 make TILES=1 -j$(nproc),产物是 ./cataclysm-tiles。

下一步往哪走

跑通之后,新存档建议先用主菜单的 Random Character 直接开局熟悉操作。想深入定制角色、地图生成或 MOD,可以从编译说明 doc/c++/COMPILING.md 和 JSON 数据规范 doc/JSON/ 入手,游戏内容本体都在 data/json/ 目录里等你翻。

【免费下载链接】Cataclysm-DDA Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world. 【免费下载链接】Cataclysm-DDA 项目地址: https://gitcode.com/GitHub_Trending/ca/Cataclysm-DDA

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐