一键导入
godot-organize-files
当 Godot 项目文件分散且没有清晰组织时使用。检测资源、脚本、场景和 资源文件在根目录或不一致的位置。自动创建遵循 Godot 最佳实践的 有组织的目录结构,移动文件并保留引用,更新所有依赖关系。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
当 Godot 项目文件分散且没有清晰组织时使用。检测资源、脚本、场景和 资源文件在根目录或不一致的位置。自动创建遵循 Godot 最佳实践的 有组织的目录结构,移动文件并保留引用,更新所有依赖关系。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
当 Godot 代码中存在通过 get_node()、get_parent() 或直接引用产生的紧耦合依赖时使用。 检测耦合模式并将其转换为基于 Signal 的通信方式。组件变得独立、可测试且可复用。 在改进架构的同时精确保留原有行为。
当 Godot 代码中存在相互冲突的操作导致未定义行为时使用。检测同一属性在多处设置 (_ready、_process、代码+编辑器)、同一 Signal 多次连接、冲突的物理模式、 竞争的动画等问题。自动通过明确的所有权归属解决冲突。
用于创建带有自定义面板、停靠栏和工具的 Godot 编辑器插件。生成 plugin.cfg 配置、 EditorPlugin 脚本模板、自定义编辑器 UI 组件,并集成 ProjectSettings。按照 Godot 4.x 最佳实践创建完整的插件结构。
当 Godot 代码中存在硬编码的游戏数据(如 const 数组、字典或内嵌值)时使用。检测内联数据 如敌人属性、物品定义、关卡配置等。自动提取为 .tres Resource 文件,使数据在编辑器中 可见、易于修改,并支持数据驱动的设计。
当构建 Godot 功能时,代码使用 .new() 创建节点而非使用场景时触发。 检测 Timer.new()、Area2D.new()、Sprite2D.new() 等代码创建的对象。 自动生成 .tscn 场景文件,更新父脚本使用 @onready 引用,并创建可复用的组件库。
当 Godot 项目在编辑器(.tscn)和代码(.gd)之间存在位置冲突、相机跟随背景、 或运行时位置与编辑器预览不匹配时使用。编排所有 3 个位置同步子技能: sync-static-positions、sync-camera-positions 和 sync-parallax。 每个操作针对特定的位置冲突类型。
| name | godot-organize-files |
| version | 3.0.0 |
| displayName | 整理项目文件结构 |
| description | 当 Godot 项目文件分散且没有清晰组织时使用。检测资源、脚本、场景和 资源文件在根目录或不一致的位置。自动创建遵循 Godot 最佳实践的 有组织的目录结构,移动文件并保留引用,更新所有依赖关系。 |
| author | Asreonn |
| license | MIT |
| category | game-development |
| type | tool |
| difficulty | beginner |
| audience | ["developers"] |
| keywords | ["godot","file-organization","directory-structure","project-cleanup","best-practices","asset-management","gdscript","godot-project"] |
| platforms | ["macos","linux","windows"] |
| repository | https://github.com/asreonn/godot-superpowers |
| homepage | https://github.com/asreonn/godot-superpowers#readme |
| permissions | {"filesystem":{"read":["*"],"write":["*"],"move":true,"delete":false},"git":true} |
| behavior | {"auto_rollback":true,"validation":true,"git_commits":true} |
| outputs | 整理后的目录结构、移动的文件并保留引用、git 提交 |
| requirements | Git 仓库、Godot 4.x |
| execution | 全自动,保留引用 |
| integration | godot-organize-project 编排器的一部分,与 organize-assets 和 organize-scripts 协同工作 |
清晰的结构 = 轻松的导航。 文件应该在你期望的位置。
查找类似这样的项目:
my_game/
├── project.godot
├── player.gd
├── enemy.gd
├── sprite1.png
├── sound.wav
├── level1.tscn
├── main_menu.tscn
├── utility.gd
└── ...(50 多个文件在根目录)
转换为:
my_game/
├── project.godot
├── assets/
│ ├── sprites/
│ │ └── sprite1.png
│ └── audio/
│ └── sound.wav
├── scenes/
│ ├── levels/
│ │ └── level1.tscn
│ └── ui/
│ └── main_menu.tscn
└── scripts/
├── player.gd
├── enemy.gd
└── utility.gd
识别:
从一开始就建立结构。
项目在没有结构的情况下自然增长。
团队需要一致的文件位置。
清晰的结构使重构更容易。
project_root/
├── project.godot
├── assets/
│ ├── sprites/
│ │ ├── characters/
│ │ ├── enemies/
│ │ ├── items/
│ │ └── environment/
│ ├── audio/
│ │ ├── music/
│ │ ├── sfx/
│ │ └── voice/
│ ├── fonts/
│ ├── materials/
│ ├── shaders/
│ └── models/ # 用于 3D 项目
├── scenes/
│ ├── characters/
│ ├── enemies/
│ ├── levels/
│ ├── ui/
│ └── components/
├── scripts/
│ ├── characters/
│ ├── enemies/
│ ├── components/
│ ├── managers/
│ └── utility/
├── resources/
│ ├── items/
│ ├── enemies/
│ └── abilities/
├── addons/ # 第三方插件
└── docs/ # 文档(可选)
检测文件类型:
确定分组方式:
协同工作:
不要在以下情况重新整理:
# 之前
var scene = preload("res://player.tscn")
# 之后
var scene = preload("res://scenes/characters/player.tscn")
# 之前
[ext_resource path="res://player.gd" type="Script"]
# 之后
[ext_resource path="res://scripts/characters/player.gd" type="Script"]
# 之前
[autoload]
GameManager="*res://game_manager.gd"
# 之后
[autoload]
GameManager="*res://scripts/managers/game_manager.gd"
将所有精灵图放在一起,所有脚本放在一起。
按游戏概念分组(角色、敌人、关卡)。
按功能分组(战斗系统、背包系统)。
组合策略(资源按类型,脚本按领域)。
| 之前 | 之后 |
|---|---|
根目录中的 player.gd | scripts/characters/player.gd |
根目录中的 sprite.png | assets/sprites/characters/sprite.png |
根目录中的 level.tscn | scenes/levels/level.tscn |
根目录中的 item_data.tres | resources/items/item_data.tres |
可针对以下内容自定义:
默认值遵循 Godot 最佳实践和社区标准。