三天搭出能玩的 3D 小游戏,我一个零代码学生怎么做到的

游戏工具 ·约 8 分钟 ·記筆記的貓:團子

struckd 是什么

struckd 是一款 Android 上的 3D 游戏创作软件——或者说,它是个"不用写代码就能搭游戏"的拖拽工具。你点开之后看到的是 Studio Web 在线编辑器,靠拖资产、点按钮、连节点就能把场景、角色、道具、互动规则一件一件拼起来。做完之后可以直接在手机 App 里玩,也能分享给朋友。软件由 Struckd AG 开发,最新版本 2.134.0,安装包 183M 左右。

安装

struckd官网 的安装其实分两块:手机 App 和 Studio Web 编辑器,建议都弄上。

手机这边走 Google Play 或第三方市场搜 com.struckd.game,装完首次启动需要登录 Unity Player Account——没有的话直接注册一个,邮箱就行,免费。Studio Web 不用装,浏览器打开 studio.struckd.com 直接用同一个账号登,草稿自动云端同步,电脑上搭、手机上玩是它的标准工作流。

有个版本门槛要注意:手机 App 必须 ≥ 2.112 才能用"移动端镜像"功能(把 Studio Web 的草稿推到手机上真机测试)。低于这个版本的话应用内不会出现镜像按钮,建议装完先在应用市场检查更新。另外 Studio Web 和手机 App 必须用同一个 Unity Player Account登录,不然云端识别不到你自己的草稿,镜像也就推不过去。

mobile-mirror

宿舍文化节:三天要出一个能玩的东西

事情的起因很简单——宿舍文化节每个寝室要出一个"集体节目",我们 4 个人商量来商量去,最后决定:搭个小游戏当奖品。具体玩法是这样的:走廊尽头放一台笔记本连着投影,路过的同学扫二维码就能在手机上玩,通关的拿零食大礼包。

听起来很酷对吧?但问题是——我们寝室 4 个全是文科生,一行代码都不会。室友说要做 Unity,我搜了一下 Unity 教程,第一条就是"先学 C#",当场劝退。

然后我一个朋友甩给我一个链接,说"试试 struckd下载,不用写代码"。我当时半信半疑,但三天时间摆在那儿,总不能让同学到时候扫了二维码看个黑屏。

第一天:把场景搭出来

打开 Studio Web,拖拽式的界面比我想象的友好很多。左边是资产库,选草地、天空盒、几个 Q 版小人往场景里一放,再拖几个箱子当障碍物——第一版原型半小时就出来了。

真正卡壳的是"逻辑"。我想让小人走到箱子那里能触发对话,或者碰到陷阱就掉血。struckd 内置了一些基础行为模式(Guard 站岗、Follow 跟随、Roam 闲逛),但我想要的那个"走到 A 点触发 B 事件"就没那么直观了。

翻了一下文档,原来 struckd 有个叫 Muse Behavior 的工具——它用可视化的行为树(Behavior Tree)来编排逻辑,节点从上到下、从左到右依次执行,最顶层放一个 Execute 根节点就行。说白了就是"搭乐高":每个节点有自己的作用,把它们按逻辑连起来,不用写任何代码。

muse-behavior

我花了大半天研究行为树的节点——检测范围、条件分支、动作触发——把我想的那个"走到箱子前触发对话"用节点串起来:Detection Range 节点检测玩家靠近,条件分支判断"距离小于 X"为真时触发对话气泡。第一次跑的时候对话根本没出来,原来是 Detection Range 设得太小了,调大到 5 米就对了。这就是 struckd 的好处——改完立刻在 Studio Web 里 playtest,按 ESC 退出改,再按箭头按钮跑一遍,快的时候 20 秒一个循环。

第二天:多人模式踩坑

文化节上肯定不是一个人玩,得让大家能组队或者互相对战。struckd 支持两种多人模式:Cooperative(合作)和 Competitive(竞技)。我们选的是合作模式——两个玩家组队打一波 NPC,难度随波次递增。

这里踩了一个文档里明确写但我还是忽略了的坑:多人模式下不能用 Muse Behavior。前一天我用 Muse 给 NPC 写了自定义的追击逻辑,一进多人房间就发现 NPC 行为混乱,有的不动,有的同时追所有人。查了一下才知道 Muse 和多人模式不兼容,会导致同步问题。只能把所有 Muse 逻辑删掉,改用内置行为模式——虽然灵活度差了点,但多人房间恢复正常了。

另一个细节是 Detection Range。之前单人玩没问题的 NPC,在多人模式下检测范围 20 米就够,结果改成 50 米后"所有玩家都能被所有 NPC 同时发现",体验很糟。调回 25 米就舒服多了。

多人房间的创建和加入只能在手机 App 上进行——Studio Web 不支持。流程是:手机 App 打开你想玩的游戏(草稿或已发布),选"Play with Friends",创建房间,把邀请链接发给朋友就行。

第三天:移动端镜像 + 收尾

前两天的开发全在 Studio Web 桌面端 playtest 完成。但 struckd 是移动端优先的产品——桌面端模拟的是键鼠操作,触屏上的手感、帧率、UI 位置可能完全不一样。

Studio Web 右上角有个手机图标按钮(Play on Mobile),点一下,当前草稿快照就会推到云端。手机 App 登录同一个 Unity Player Account,会收到一条通知,确认后草稿就下载到手机上了,直接进入 playtest 模式。

镜像不是实时流——它是"推送快照"机制。如果我在 Studio Web 里改了东西,需要再次点 Play on Mobile 推送新快照。文化节当天我在现场调了三次:一次把某段对话的字体改大(手机上看不清),一次精简了场景里的装饰性资产(手机加载太慢),一次把第三人称默认视角固定下来(多玩家同时出现时第三人称更容易定位队友)。

下午三点,我们把投影接上笔记本,扫了一下自己手机上的房间链接——两个人能同时进房间,NPC 按波次刷新,通关条件是合力击败第 5 波的 Boss,全部正常。

收尾

文化节结束后我算了一下时间:总共花了两个通宵加一个下午,其中大头在第一天研究 Muse Behavior 的节点逻辑,第二天踩多人模式的坑浪费了不少时间。如果再重来一次,直接跳过 Muse 用内置行为模式,应该能提前半天收工。

说 struckd 是"零代码就能搭游戏",这句话对一半——操作上确实不用写代码,但你得有一点点"逻辑思维":知道"如果 A 发生则 B 触发"这种条件分支怎么搭。Muse Behavior 的行为树本质上还是在"编程",只不过编程语言变成了可视化节点。

三天前我觉得搭一个能玩的 3D 小游戏是不可能完成的事。现在再看,它只是一个"花时间学工具 → 把想法翻译成场景 → 改测试循环"的过程。struckd 做的事情,就是把"学编程"这个最大的门槛给拿掉了。

本文為個人基於網路公開資料整理編寫,非官方內容,僅供學習交流參考;軟體版權歸原作者所有,請支持正版;使用過程中遇到問題請查閱官方管道,本文不承擔任何責任。

團子還試過這些