thedragonheir/Zeliard

GitHub: thedragonheir/Zeliard

基于C++23和SDL3对1989年DOS游戏Zeliard进行忠实保真移植与逆向重构,重点在于准确还原原版渲染、数据格式和游戏行为。

Stars: 2 | Forks: 0

# Zeliard C++ 移植版 **Zeliard** 的非官方 C++ 移植/重制版,专注于使用原版游戏资源,忠实重现原版 DOS 的行为、渲染、数据格式和游戏系统。 本项目是一个以保护为目的的 C++23 + SDL3 移植版,移植对象是 1989 年的 DOS 游戏 **Zeliard**。目标不是随意将游戏现代化,而是理解原版的运作方式,并以准确的行为将其干净地重构出来。 ## 状态 开发中。 当前重点: - SDL3 启动和渲染 - 320x200 内部逻辑分辨率 - 960x600 窗口输出 - 原版 GRP 解码 - 调色板处理 - SAR/归档支持 - 城镇渲染和移动行为 - 记录原版数据格式和引擎行为 ## 目标 - 尽可能忠实地重现原版 DOS 游戏行为 - 解码并使用原版 `.SAR` 和 `.GRP` 数据格式 - 保持代码精简、易读且为项目专有 - 仅使用 C++23 和 SDL3,不依赖大型游戏引擎 - 在对原版数据和汇编进行逆向工程的同时记录发现 ## 项目结构 ``` asm/ Original assembly sources and reverse engineering references assets/ Extracted or converted game assets docs/ Project notes and format documentation game/ Original game data and binaries used for analysis src/ C++23 source code tools/ Python tools for inspecting and extracting game data out/ Generated CMake build output ``` ## 构建 配置 debug 构建: ``` cmake --preset x64-debug ``` 构建 debug: ``` cmake --build --preset x64-debug ``` 运行: ``` out\build\x64-debug\Zeliard.exe ``` 配置 release 构建: ``` cmake --preset x64-release ``` ## 环境要求 - 兼容 C++23 的编译器 - CMake - SDL3 - Windows 开发环境 ## 原版资源 出于兼容性、保护、研究以及忠实重制的目的,本移植版使用了原版 Zeliard 游戏资源和数据文件。 原版 Zeliard 资源、数据文件、二进制文件、图形、音乐、声音、`.SAR` 文件、`.GRP` 文件、名称和商标仍归其各自的所有者所有。 ## 许可证 项目专有的源代码、工具和文档均基于 MIT 许可证授权。 详情请参阅 [`LICENSE`](LICENSE)。
标签:Bash脚本, C++23, CMake, DOS游戏, SDL3, 安全报告生成, 数据格式解析, 游戏, 游戏引擎重制, 逆向工具