本页目录

地下城建造即时战略(OpenDungeons)

OpenDungeons · OpenDungeons/OpenDungeons

OpenDungeons 是一款 C++ 编写的开源即时战略游戏,玩法与《地下城守护者》系列相近:玩家在地下建造并经营自己的地牢,间接指挥栖居其中的怪物作战,也能在战斗中直接施放法术、用陷阱引诱敌人。据 README 说明,项目已多年少有活动,仅...

策略 模拟经营 多人对战 自研引擎 C++ 敌人 AI 寻路算法 关卡管理 游戏状态管理 高级
★ Stars 502 Forks 81 License 未明确 更新 2026-11-02

国内开发环境适配

Windows
AI 推断/待核验
Linux
官方声明支持
macOS
未知
引擎 / 框架:自研引擎 暂无中文教程标记 未标记站长实测
依赖 OGRE 1.9.x、CEGUI 0.8.x、SFML 2.x 等较旧版本,国内获取与版本匹配可能较麻烦;README 中的 IRC 为 Freenode,当前可用性待核验;构建前建议查阅 Wiki 编译页。

中文项目介绍

OpenDungeons 是一款开源即时战略游戏,其玩法与《地下城守护者》(Dungeon Keeper)系列以及《Evil Genius》共享若干设计元素。玩家需要在地下建造一座由各类生物栖居的地牢,并通过间接指挥这些生物、在战斗中直接施放法术、以及把敌人引诱进阴险陷阱等方式,与其他玩家争夺地下的控制权。

项目由一群开发者与美术人员组成的社区共同推进,README 提到经过六年多开发,游戏已达到「相当可玩且有趣」的状态。需要说明的是,README 的「State as of October 2025」一节明确指出:多年来项目除少量构建修复外几乎没有实质活动,开发者已转向其他项目,因此基本应视为归档状态;不过由前贡献者维护的分支 OpenDungeonsPlus 仍有一定活动。

玩法指南

README 说明未来版本会加入游戏内教程,当前可通过以下资源了解基础玩法概念:

  • 游戏内帮助界面,按 F1 键切换显示;
  • 0.5.0 版本的视频教程(YouTube 链接见 README);
  • GitHub Wiki 上的 Gameplay 页面。

在模式方面,玩家可以通过 Skirmish 菜单游玩单人关卡,也可以使用对应菜单主持或加入多人对局。核心循环围绕「建造地牢—吸引/安置生物—间接指挥—法术与陷阱」展开,强调经营与战术的结合,而非单纯的正面对拼。

技术架构分析

技术要点与依赖

OpenDungeons 使用 C++ 编写,构建系统为 CMake。README 列出的主要依赖库包括:

  • OGRE SDK(1.9.x)——渲染相关;
  • Boost(需与 OGRE 链接时所用版本一致);
  • CEGUI SDK(0.8.x)——界面;
  • SFML(2.x);
  • OIS——输入。

此外还需要较新的 CMake(2.8 或更高)以及能较好支持 C++11 特性的编译器:Linux 上为 GCC 4.8+,Windows 上为 MSVS 2013 Express 或 MinGW 4.8+。这些版本要求较为陈旧,在现代系统上直接构建可能遇到兼容性问题,README 未给出当前可运行性的结论,需自行核验。

如何构建

README 建议先查阅 Wiki 上按平台划分的编译说明(Compile 页面)。在 UNIX 系统上,基本流程为:

mkdir build && cd build
cmake ..
make -jX    // X 为希望分配的 CPU 核心数

构建完成后运行输出的 opendungeons 可执行文件。由于依赖版本偏旧,实际构建时可能需要额外处理库的获取与版本匹配,README 未展开说明。

补充说明

仓库组织

README 对仓库结构做了较详细的划分,便于新贡献者定位文件。

数据文件部分:

  • config/:若干游戏配置文件;
  • dist/:图标与 Linux 桌面入口文件;
  • gui/:CEGUI 文件及对应界面图片;
  • levels/:游戏关卡;
  • licenses/:游戏数据与代码使用的许可文件;
  • materials/:材质(模型贴图脚本与纹理);
  • models/:模型文件;
  • music/、sounds/:音乐与音效;
  • particles/:粒子效果脚本;
  • scripts/:打包与 CI 脚本;
  • AUTHORS、CREDITS、LICENSE.md、RELEASE-NOTES.md 等说明文件。

代码文件部分:

  • cmake/:CMake 辅助文件,其中 config/ 为变量输入文件,modules/ 为查找依赖的附加脚本;
  • sources/:项目自身的全部 .cpp 与 .h 文件;
  • tools/:开发者使用的 shell 脚本;
  • CMakeLists.txt:生成 Makefile 与 IDE 工程的 CMake 脚本。

学习建议

从工程角度看,本项目适合作为「C++ 大型游戏项目组织方式」的阅读材料:可以观察 CMake 多模块依赖查找、OGRE 与 CEGUI 的集成方式、数据与代码分离的目录设计,以及关卡、材质、粒子等资源如何被组织。由于依赖版本较旧,动手构建前建议先评估环境兼容性,并优先参考 Wiki 的编译说明。

开源许可证与版权说明

许可证标识:未明确。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。

相似项目