TheXTech/cn

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

（WIP）

与原版 SMBX 1.3 引擎的差异

 * 代码为 C++ 而非 VB6.
 * 它没有编辑器，取而代之的是使用月尘引擎开发工具包完成制作. 从 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 文件更换全局音乐和音效
 * 支持在大地图中使用自定义目录存储素材，以防止根目录混乱.
 * 默认配置文件格式为 INI，不再支持旧版本的 config.dat 格式（键位代码 SDL_Scancode 和 VirtualKeys 似乎不兼容）.
 * 游戏存档使用 SAVX 格式而非 SAV，但是，您可以在新引擎中读取旧版本的存档（下次存档将使用 SAVX 格式）.
 * 支持 PNG 格式图像，带影子元件的 GIF 的支持作为向下兼容，无 SMBX-38A 中未预期的自动转换机制.
 * 一个关卡文件中可放置多个存档点.
 * 使用傻瓜式算法加快游戏读取进度并减少内存占用.
 * 采用 MixerX 库，能够支持多种格式的音乐和音效！
 * 不再嵌入任何素材，所有素材均作为外部文件！
 * 拓宽内置资源限制.
 * 自带 GIF 录制工具（F10 为 macOS，F11 为其他系统）
 * 从 1.3.2 起：
 * 最大场景数为 201.
 * 移除 20 个图层切换限制.
 * 从 1.3.2.4 起：可自定义结局音乐.
 * 从 1.3.3 起：
 * 紫耀西的震地按键可通过  更改为第二奔跑（Alt Run）键.
 * 增加对人物校正文件的支持（用于定义偏差和度量）.
 * 从 1.3.4 起：增加对 compat.ini 的支持，通过调节兼容性切换 BUG 修复的开关.
 * 从 1.3.5 起：可直接从主菜单管理存档.
 * 从 1.3.5.2 起：
 * 新增水管炮.
 * 可使用传送门传送至另一关卡.
 * 骑上耀西之后，开启邦哥节奏.

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

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


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

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


 * 1) 下载转换包并放入 SMBX 1.3 引擎的根目录.
 * 2) 确保原游戏程序文件名为 "smbx.exe"、"asmbxt.exe" 或 "a2mbxt.exe"，否则将无法转换内置资源到兼容格式.
 * 3) 执行转换脚本或命令，每个系统执行的脚本不一样，在 Windows 系统下执行的是 gfx-convert-win.cmd 脚本，在 Linux 系统下执行的是 bash gfx-convert-lin.sh 脚本.
 * 4) 脚本将询问您是否删除原有的 GIF 格式图像，Y 键为是，N 键为否，转换完成后，您将会在终端看到关于转换完成的信息.
 * 5) 在下载页中找到 "plain runtime" 并找到适合您的操作系统的版本，将游戏程序（Linux 为 "thextech"，Windows 为 thextech.exe 及 DLL 文件）放入原游戏的文件夹中.
 * 6) 执行 "thextech" 程序.
 * 7) （可选）打开 "gameinfo.ini" 文件，修改标题和角色名字.

备注

 * TheXTech 不像 SMBX 1.3 那样，没有内置的素材资源，全部归入 graphics/ui 目录.
 * 使用已有的 TheXTech 组件制作的关卡可直接下载相应组件并解压到 TheXTech 根目录即可.