iNeed创作者文档

引擎接入

本页目录

Godot 接入

适用 Godot 4.3+、GDScript、Compatibility 渲染器、单线程 Web。此 Skill 指导 AI 修改源工程;SDK 只提供桥接,不自动理解游戏玩法。只有成品时见“只有成品”。

先读哪一页

当前任务 阅读资料
判断是否能做 能力与支持边界
首次安装、接线、导出 本页,随后阅读 完整开发流程
查函数、参数、返回值 Godot 接口手册
自绘商店或使用平台页面 界面与交互建议
遇到失败、超时、重复操作 异常与恢复
上传前验收 功能验收及与 iNeed 沟通

SDK 获取:GitHub Godot 插件。可运行的最小工程在同一目录的 example 中。正式交付记录所用 Release 标签、插件版本和哈希,不让游戏启动时从 GitHub 下载浮动版本。

1. 检查工程并确认范围

从已解压的创作者技能包根目录运行:

python3 scripts/project.py inspect "/完整路径/游戏工程"
python3 scripts/project.py install "/完整路径/游戏工程"

AI 应解析包根后使用脚本绝对路径,不能假定用户终端就在技能目录。安装脚本把插件复制到工程 addons/ineed/ineed.gd 并注册 INeed Autoload;不是 EditorPlugin,不需要勾选编辑器插件。重复安装不会重复注册;现有插件内容不同或 Autoload 冲突时先比较,不能覆盖。

先查项目版本、语言、导出预设、现有 SDK、主菜单、开局、结算、商店、存档和暂停逻辑。只询问尚不能从工程/用户指示确定的事项:需要哪些能力、商品/奖励语义、榜单规则、界面分工。问题清单见完整开发流程。

2. 建立一处平台适配层

在项目已有服务节点或新增的适配节点中初始化一次,连接一次 platform_event。逐个检查实际方法名的 supports;不能使用 supports("payments") 这样的分类名称。初始化失败保留原免费玩法,对依赖平台的按钮显示原因,不能伪装成功。

extends Node

func _ready() -> void:
    var result: Dictionary = await INeed.initialize()
    if not result.get("ok", false):
        push_warning(str(result.get("error", {})))
        return
    if INeed.supports("account.get"):
        var account_result: Dictionary = await INeed.request("account.get")
        print(account_result)

统一返回结构是成功 {ok: true, value: ...} 或失败 {ok: false, error: {code, message}}。Dictionary 非空不代表成功;value 的形状随方法变化。详细示例见接口手册。

3. 按实际需求绑定事件

  • 登录与账号:游客入口、登录按钮、账号切换和恢复。
  • 商品购买与消耗:购买增加库存;真实使用才扣减;已有库存不重复购买。
  • 排行榜:真实开局生成 runId,结束冻结成绩,重试复用原数据。
  • 激励广告:确认平台开通、绑定触发动作、按可信 receipt 去重。
  • 存档:绑定现有保存/读取入口,处理版本与冲突。

修改前寻找已有连接,避免 repeated connect、重复开局、重复扣减;不要改原游戏规则。新增方法只能由平台登记并授权,不得通过 request 执行远程 GDScript 或任意 HTTP 接口。

4. 暂停、界面和导出

按界面建议连接 pause/resume,恢复先前状态,不能无条件解除用户主动暂停。适配节点和 INeed Autoload 在暂停期间仍应处理回调。

游戏自绘 UI 要覆盖动态商品名、昵称的字体,不能只保留剧情字集。示例附带的 OFL 字体覆盖常见中文,补充生僻字或 emoji 仍需另行验证。不要把玩家头像 URL 任意转换为可执行内容;头像缺失要有占位。

检查 thread_support=false、extensions_support=false,保留匹配的 JS/WASM/PCK/worklet,按Godot 导出设置生成新目录,再按功能验收逐项测试。Godot 4.0–4.2、C# Web、多线程、Unity 不属于当前接入范围。

只有成品

只做托管兼容检查和平台壳功能。不能声称已绑定内部奖励、真实开局结算、原生存档或暂停;不要盲改 PCK。需要完整接入时列出所缺源工程及事件。

交付给平台

输出修改文件、节点/按钮位置、已绑定标识、插件版本、待配置项、测试证据及配置交接单。标明预览模拟与真实服务的差别。保持旧接口、旧语义及旧存档;不因新增需求绕过兼容性原则。