数据与引擎分离
仓库仅包含游戏数据文件(Lua 脚本、地图、精灵、音效等),引擎由 Solarus 提供,便于独立更新游戏内容。
gamejs · GameJs/gamejs
GameJs 是一个构建在 HTML Canvas 之上的薄封装 JavaScript 库,用于编写 2D 游戏或其他交互式图形应用。除绘图函数外,它还提供图像加载、图形变换与几何绘制、文字渲染、鼠标键盘事件、多声道音频、精灵表动画、加载 Tiled 地图、A* 寻...
本仓库是开源同人游戏《Zelda: Mystery of Solarus DX》(简称 ZSDX)的游戏数据包,并非完整可执行程序。它需要配合开源类塞尔达 2D 游戏引擎 Solarus 才能运行。游戏数据以 Lua 脚本、图像、音频等资源形式组织,遵循 Solarus 引擎的任务(quest)数据结构。
README 明确指出,本仓库已迁移至 GitLab(https://gitlab.com/solarus-games/zsdx),原 GitHub 仓库不再更新。因此,若需获取最新代码或参与贡献,应访问 GitLab 上的新地址。
本数据包本身不包含引擎二进制,玩家需预先安装 Solarus 引擎。游戏内容为免费开源,具体玩法、剧情与关卡设计请以官方文档和实际运行为准。
本仓库为数据包,不直接提供玩法说明。根据 README,运行游戏需以下步骤:
solarus_run 可执行文件)。data 子目录的仓库根目录。solarus_run . 启动游戏;若引擎编译时默认任务路径为 .,也可直接运行 solarus_run。游戏内容为类塞尔达 2D 动作冒险,具体操作、剧情与关卡请以游戏内提示和官方文档为准。
仓库仅包含游戏数据文件(Lua 脚本、地图、精灵、音效等),引擎由 Solarus 提供,便于独立更新游戏内容。
数据目录符合 Solarus 任务规范,包含 `data` 子目录或可打包为 `data.solarus` 压缩包。
可直接指定数据目录运行,也可通过 CMake 构建并安装为系统级任务。
Solarus 引擎支持多平台,但本仓库 README 未明确列出支持的系统,需参考引擎文档。
游戏数据以开源协议发布,允许学习、修改与再分发(具体协议请查阅仓库许可证文件)。
zip 工具生成 data.solarus 归档。/usr/local/share/solarus/zsdx/,并在 /usr/local/bin/ 生成启动脚本 zsdx。solarus_run 接受包含 data 子目录的路径,或包含 data.solarus 压缩包的路径。README 提供了完整的构建与安装指引,适用于希望将游戏安装到系统的用户。
无需构建,在仓库根目录执行:
solarus_run .
或(若引擎默认任务路径为 .):
solarus_run
需要 CMake 和 zip 工具:
cmake .
make
make install
默认安装到 /usr/local,生成:
/usr/local/share/solarus/zsdx/data.solarus(数据归档)/usr/local/bin/zsdx(启动脚本)之后可直接运行 zsdx 启动游戏。
通过 CMake 变量指定前缀,避免需要 root 权限:
cmake -D CMAKE_INSTALL_PREFIX=/home/your_directory .
make
make install
安装后的文件路径将基于指定前缀,启动脚本会自动使用正确的任务路径。
本仓库适合以下方向的学习者:
建议先安装 Solarus 引擎并成功运行本数据包,再逐步阅读 Lua 源码,修改简单参数观察效果。由于仓库已迁移,请以 GitLab 上的最新版本为学习对象。
Endless Sky 是一款 C++ 编写的 2D 沙盒式太空探索游戏,玩法接近 Elite、Esc...
Frogatto & Friends 是一款 2D 横版动作冒险游戏,主角是一只青蛙;开发团队...
DDNet 是 Teeworlds 的一个模组,源自 DDRace,是一款免费的合作型 2D 平台跳...