TheXTech/cn

TheXTech - 是一个使用 C++ 编写的横版 2D 平台游戏引擎，也是基于使用 VB6 编写的 SMBX 1.3 的移植版，于 SMBX 的源代码发布一个月后，由 Wohlstand 创建，有两个原因：1. 免费、开源、跨平台，以高精度运行使用 SMBX 引擎制作的关卡和地图，是为原游戏创作，参数与原游戏相同的引擎；2. 作为参考资料，以便于月尘引擎开发.

（WIP）

与原版 SMBX 1.3 引擎的差异

 * 代码为 C++ 而非 VB6.
 * 它没有编辑器，取而代之的是使用 PGE（月尘）引擎开发工具包完成制作. 从 1.3.2 起，该引擎与月尘引擎集成，可使用与原版 SMBX 1.3 相同的功能（例如关卡测试等）.
 * 支持 UTF-8 编码（即非 ASCII 字符）.
 * 使用 SDL2 库作为图形和控制，原版 SMBX 1.3 采用的库为 WinAPI 和 GDI.
 * 采用 PGE-FL 以获得更好的支持.
 * 支持 WLDX 格式的大地图，它允许你使用无限行数的制作人员表，以及自定义音乐盒，无需使用 music.ini 进行替换.
 * 支持部分 LVLX 功能，它们分别是：纵向循环场景、双向传送点、自定义需要星星时的提示信息、进入传送点时触发的事件、不显示关卡完成数量以及在进入传送关卡时不显示关卡进入时的信息.
 * 可在地图和关卡中使用 music.ini 和 sounds.ini 文件更换音乐和音效组件

版本历史
The X-Tech 开发于 SMBX 源代码公布之后一周开始. 版本号从 1.3 开始.

编译游戏
要编译游戏，参见下列英文指南：


 * 在 Windows 中编译
 * 在 Linux 或 xBSD 中编译
 * 在 macOS 中编译
 * 在 Haiku 中编译
 * 在 Emscripten 中编译

若您要编译共享版本，先安装 ninja-build 依赖库，再找到以下行：

cmake -G Ninja -DCMAKE_BUILD_TYPE=Debug ..

并替换为：

cmake -G Ninja -DCMAKE_BUILD_TYPE=MinSizeRel -DUSE_SYSTEM_SDL2=OFF -DUSE_SYSTEM_LIBS=OFF -DUSE_STATIC_LIBC=ON -DPGE_SHARED_SDLMIXER=OFF ..

完成上述步骤后，在 TheXTech 主目录中创建  文件，其内容为：

[Main] force-portable = true

并放入相应组件.

自定义皮肤
TheXTech 暂不支持在地图中使用“graphics”目录替换素材（类似于 SMBX2），若要正常游玩使用自定义皮肤的 SMBX 地图（例如“Yoshi's Archipelago” 或 “Super Talking Time Bros.”）, 需要进行以下步骤 ：


 * 从 SMBX 1.3 组件 (或 Adventures of Demo 组件) 中复制  目录.
 * 下载 sounds.ini 和 music.ini 并放入 TheXTech 根目录中.
 * 将 TheXTech 程序和 thextech.ini 复制到根目录中.
 * 使用 PGE 实验室版本的 PGE 管理器将 GIF 格式图像转换为 PNG 格式.

虽然也可以将整个 graphics 子目录复制到地图文件夹，但加载时间更长，故此方法只适用于使用固态硬盘的高配置电脑. 如果选用此方法，则自定义皮肤中的音乐目录、音效目录、music.ini 和 sounds.ini 也要移动至地图目录，同时不必要转换 GIF 格式图像到 PNG.