如何构建vaststars的iOS版:文件服务器热重载与Web控制台实战指南
【免费下载链接】vaststarsA game demo for Ant engine项目地址: https://gitcode.com/gh_mirrors/va/vaststars
vaststars(Red Frontier)是基于 Ant 引擎开发的工厂建设手游,专为移动端触控设计。想要获得最佳体验,需要自行构建 vaststars 的 iOS 版本。本指南带你完整走一遍 vaststars iOS 构建流程,并实战 Ant 引擎的文件服务器热重载与本地 Web 控制台(9000 端口调试页面),让你在 iPhone 上改代码、看日志、调分辨率,一次搞定。
构建前准备:为什么推荐 iOS 版
vaststars 是 Ant 引擎 中明确建议:构建 iOS 版本以获得较佳的游戏体验(Windows/Mac 版本仅供开发测试)。
构建前请确保环境如下:
| 环境项 | 说明 |
|---|---|
| macOS 主机 | 编译工具链与 Xcode 工程均在 Mac 上运行 |
| Xcode | 用于打开 iOS 工程、签名并生成 ipa |
| iTunes | PC 开发机上运行,用于通过 USB 连接 iPhone |
| Ant 文件服务器 | 由编译产物ant可执行文件启动 |
vaststars iOS 构建完整步骤(4步)
iOS 构建流程分 4 步:先编译 macOS 版(作为构建工具宿主),再交叉编译 iOS 版,然后打包资源,最后用 Xcode 出包。
第 1 步:编译 macOS 版本(构建工具宿主)
luamake luamake tools -mode release第 2 步:编译 iOS 版本
luamake -os ios第 3 步:打包游戏资源
./bin/macos/debug/ant -p ios第 4 步:Xcode 生成 ipa
用 Xcode 打开 runtime/ios/vaststars 下的 iOS 工程(包含 project.pbxproj 工程文件),配置签名后即可构建、安装并生成 ipa。
💡 小贴士:第 1 步编译的 macOS 版不只是"陪跑"——后面要运行的 Ant 文件服务器正是基于这个可执行文件。
文件服务器热重载:iPhone 上的代码同步玩法
这是 vaststars iOS 开发最爽的部分。构建完 iOS App 后,开发工作流变成这样:
- 将 iPhone 通过 USB 连接到 PC 开发机,在 PC 上运行 iTunes;
- 在 PC 上运行 Ant 文件服务器:
./bin/msvc/debug/ant.exe -s- 在 PC 上修改游戏代码或资源(绝大多数 PC 侧文件改动均可同步);
- 改动会通过 USB 自动同步到 iPhone,下次启动 App 时生效,无需重新打包安装。
对于 Lua 脚本、UI 页面、原型配置等逻辑类修改,这个热重载流程能节省大量重复编译安装的时间。
可选:TCP 方式连接文件服务器
默认使用 USB 连接,但工程内还提供了 TCP 方式。在 iPhone 的「设置」中可以看到 vaststars 注入的设置项(由 file_server.plist 定义):
- CF_CONNECT:连接方式,可选
none/usb(默认)/tcp - CF_TCP_ADDRESS:TCP 模式下填写 PC 文件服务器地址
另外,vfs.plist 中还定义了:
- CF_CLEANUP:下次启动时是否清理文件
- CF_ROOT:选择使用的 VFS 根槽位(1~4)
同一台 iPhone 可以同时挂载多份不同版本的资源,方便对比测试。
Web 控制台实战:9000 端口调试一切
文件服务器开启后,打开浏览器访问本地9000 端口,即可看到 Ant 引擎的 Web 控制台首页(页面源码见 startup/web/index.html)。
该控制台由 startup/pkg/vaststars.webcgi/main.lua 启动,注册了三类路由:
vfs:/—— 浏览虚拟文件系统log:/—— 查看游戏日志目录app:/—— 浏览 App 目录
常用调试功能清单
| 功能 | 页面入口 | 作用 |
|---|---|---|
| 文件浏览 | vfs/log/app链接 | 直接查看游戏运行时的文件与日志 |
| Ping 测试 | debug/command/ping | 检查 Web CGI 通信链路 |
| 错误回溯 | debug/command/traceback | 抓取运行时错误堆栈 |
| Mipmap 调试 | 页面表单提交 | 实时查看各 Mipmap 层级效果 |
| 分辨率调整 | 页面表单提交 | 不重启即可修改游戏渲染分辨率 |
| 文件上传 | 页面底部表单 | 上传文件并返回 SHA1 校验值(见 upload.lua) |
调试命令的执行链路很简洁:页面通过 XHR 发送请求 → debugger.lua 接收 → webcgi.lua 将命令以web_cgi_cmd消息发布到游戏世界,从而实时影响正在运行的游戏画面。
常见问题速查
- 手机上没同步到新代码?热重载是"下次启动生效",请完全退出 App 后重新打开;并确认 PC 上文件服务器仍在运行。
- 浏览器打不开 9000 端口?确认
ant -s已在前台运行,且访问的是运行文件服务器那台机器的本地地址。 - 只想体验游戏?先进入教学模式完成教学关卡,再从冒险模式开始沙盒游玩。
总结
- 构建:
luamake编译 macOS 工具 →luamake -os ios交叉编译 →ant -p ios打包资源 → Xcode 出 ipa - 热重载:iPhone USB 连 PC,运行
ant -s文件服务器,代码改动下次启动即生效 - Web 控制台:浏览器访问 9000 端口,看日志、查堆栈、调分辨率、传文件
掌握这套 vaststars iOS 构建与调试工作流后,你就能在真机上高效迭代这款 Ant 引擎示例游戏了。
【免费下载链接】vaststarsA game demo for Ant engine项目地址: https://gitcode.com/gh_mirrors/va/vaststars
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考