本页目录
项目介绍
国内环境适配
技术架构
补充说明
许可证
相似项目
国内开发环境适配
引擎 / 框架:SDL
暂无中文教程标记
未标记站长实测
构建依赖 SDL2、enet、OpenAL-soft、libcurl 等,国内获取依赖与访问 SourceForge 可能较慢,建议使用镜像或本地包管理器;完整 7kfans 联机集成依赖 libcurl 且网站要求 TLS1.2,实际连通性待核验。
中文项目介绍
本仓库是《Seven Kingdoms: Ancient Adversaries》的 GPL 开源版本源码。README 开篇即提示:主源码仓库与构建下载已迁移至 SourceForge 的 skfans 项目,项目官网为 7kfans.com。当前列出的发布版本为 2.15.6。
该 GPL 版本得以存在,源于 Enlight Software 在 2009 年同意以自由与开源许可证授权本游戏;README 特别致谢 Enlight,称其让 7kfans 项目成为可能,并给这款游戏的爱好者社区带来新的机会。许可证细节需参见仓库中的 COPYING 文件。
需要说明的是,本仓库 README 主要承担“链接指引 + 版本变更说明”的角色,构建与玩法等完整信息以 SourceForge 与 7kfans 网站为准。
技术架构分析
技术要点
语言与构建:项目以 C++ 编写,构建流程基于 autotools,便于在 Windows、Linux 及类 Unix 系统上以较少依赖运行。
必需依赖:GCC 4.6+(符合 C++11)的编译器、SDL 2.24.0+、enet 1.3.xx(可靠 UDP 网络库)、OpenAL-soft 或等效驱动。
可选依赖:libcurl 用于完整的 7kfans 多人集成(网站要求 TLS1.2)、gettext 0.19、游戏音乐包 7kaa-music-2.15、用于构建 Windows 安装程序的 NSIS,以及用于生成 PDF 手册的 TeX Live(含 latexmk、fontaxes、accanthis、universalis、yfonts)。
构建脚本:生成 configure 脚本需要 Autoconf 2.65+ 与 autoconf-archive;但构建官方发布版本时无需自行生成,源码归档中已提供。README 明确不建议普通使用场景下编译 git 快照,而应使用最新官方发布版本。
Windows 构建环境:官方使用 Linux 下的 mingw-w64 交叉编译器;MSYS 原生环境也提供同样的 mingw-w64。README 提示不负责帮助配置系统环境。
构建与运行
README 给出的本地运行方式为:从构建目录运行游戏时,需要通过环境变量 SKDATA 指向游戏数据目录。在 bash 中可写作:
$ SKDATA=data src/7kaa
打包者需注意:音乐文件应复制到程序数据目录或 PACKAGE_DATA_DIR,并确保文件名使用大写。
补充说明
版本更新要点(2.15.5 → 2.15.6)
README 以列表形式给出了该版本的变更摘要,可归纳为以下几类:
叛乱相关:修复与叛乱有关的缺陷,改进 AI 对叛乱的处理,并修复 AI 投降相关缺陷。
崩溃与显示:修复若干崩溃缺陷、小型图形更新缺陷、屏幕边缘鼠标处理缺陷,以及贸易船停靠与离开的缺陷。
AI 行为:修复 AI 宣战与进贡缺陷;大幅改进 AI 的海上任务;改进 AI 在训练与招募、建造港口、给城镇拨款与招募等方面的处理;让 AI 在攻击任务中更具攻击性;并允许 AI 侦察地图。
战斗与校验:改进攻击动作的校验;修复间谍查看敌国报告时的漏洞利用。
城镇与经济:改进城镇工人迁移的处理,启用城镇农民迁移;为市场新增控制囤积类型的按钮(致谢 MicroVirus 与 sraboy);降低贸易单位被摧毁的惩罚。
其他:新增 F10 菜单中陆地面积大小的显示;新增对 fryhtan 巢穴的 Phoenix 视野;改进 locale 代码,并在 Windows 上把英语设为默认语言;将原始资源点上限提高到 10;改进距离计算,使任意一侧放置建筑与城镇被同等对待;修复若干寻路问题;清理部分反初始化代码;提高速度等级 9 的速度。
平台与联机
README 列出的支持操作系统为 Windows、Linux、MacOS;多人游戏支持的架构为 x86 兼容处理器。多人集成方面,完整 7kfans 联机功能依赖 libcurl,且网站要求 TLS1.2。
学习建议
若关注经典 RTS 的 AI 设计,可从变更摘要中反复出现的叛乱处理、海上任务、训练招募、攻击校验等条目入手,定位对应模块。
若关注跨平台 C++ 游戏构建,可研究其 autotools + SDL2 + enet + OpenAL 的依赖组合与 mingw-w64 交叉编译流程。
由于主仓库已迁移,实际取码与构建请以 SourceForge 的 skfans 项目及 7kfans 网站为准,避免依据旧链接操作。
开源许可证与版权说明
许可证标识:MIT。源码、资源与依赖许可可能不同,请以官方仓库为准。本站仅做索引,不托管源码。
相似项目
NBlood 是用 EDuke32 引擎技术与开发思路对 Build 引擎游戏所做的逆向工程移...
动作游戏
自研引擎
★ 824
Fork 117
Frogatto & Friends 是一款 2D 横版动作冒险游戏,主角是一只青蛙;开发团队...
动作游戏
自研引擎
★ 711
Fork 127
AssaultCube 是一款基于 CUBE 引擎的免费多人第一人称射击游戏,采用 C 语言...
动作游戏
自研引擎
★ 1,092
Fork 284
id Software 以 GPL 协议公开的《雷神之锤》完整源码,含 winquake、glquake...
动作游戏
自研引擎
★ 6,131
Fork 1,084
Red Eclipse 是一款老派风格的竞技场第一人称射击游戏,使用 SDL 与 OpenGL...
动作游戏
SDL
★ 545
Fork 123
id Software 以 GPL 许可证发布的《雷神之锤3竞技场》(Quake III Arena)源...
射击
自研引擎
★ 8,322
Fork 2,219