Commando
A custom event command editor for Godot, providing a visual interface to create and manage in-game events without writing code
Install / Use
/learn @Kris0211/CommandoREADME
Commando
Commando is a plugin that helps designers create and manage in-game events using lightweight, visual commands. Inspired by RPG Maker Event Editor, it provides a block-based interface that facilitates designing complex behaviors - including conditions, branching, loops, global/local variables, and more. Use the built-in commands provided by the addon or extend the system by creating your own commands with GDScript.
Features
- Block-based event system - Designers can create event logic using the visual editor - without having to write a single line of code.
- Extendable for programmers - Add your own, reusable commands or define new behavior in GDScript using Custom Commands where needed.
- Built-in commands - Includes flow control (branches/loops), variable manipulation, and actions such as instantiating scenes, moving objects in-game or playing animations.
- Editor integration - Seamlessly integrated with the Godot editor as a dock (or floating window)
- Easily configurable - Adjust your preferences using a config file - no need to follow rigid directory structure or modify source code to integrate the plugin with your existing codebase.
- Drag-and-drop support - Arrange your commands by simply dragging and dropping widgets.
- Cut-copy-paste operations - Duplicate or move commands between events by using keyboard shortcuts or the right-click context menu.
Use Cases
- Interactive dialogues - Animations, sound effects, camera movements...
- Puzzle mechanics - Set conditions and actions for puzzle logic.
- RPG Events - Create in-game cutscenes, define NPC actions, and manage quest triggers.
- And more!
User Guide
Installation
- Download code as ZIP or clone the repository.
- Move the
addons/commandofolder into your Godot project. - Enable the plugin in Project Settings > Plugins.
Creating an Event
- Add a
GameEventnode to the scene. - Open the GameEvent dock in the editor.
- Select your event node and add commands using provided interface.
- Trigger the event in-game with
execute().
Using GameEvent without code
- Select a
GameEventnode from your scene. - Using Inspector, pick whether you want the event to execute on ready or on signal.
- If using signal trigger, select signal source node and signal name.
Creating new Commands
Programmers can define new commands in GDScript that designers can later use without writing a single line of code. This makes event scripting highly reusable and collaborative.
- Inherit from
Command.gd. - Implement
execute()with your custom behavior. - Add it to the project and let designers use it in Commando!
Using "Custom Command"
If a one-time behavior is needed, designers can use the "Custom Command" widget. This works exactly as if you were to create a new command, but it does not clutter the "Add New Command" window. Simply select a script or create a new one!
Currently Custom Commands do not expose their exported properties to Commando, unlike regular Commands.
Example Custom Command:
extends Command
# Let's say your game uses a "Game" singleton that has a "get_player" method.
var player := Game.get_player()
func execute(_event: GameEvent) -> void:
print("Custom behavior of event %s here!" % _event.name)
if not player.has_cookies():
print("You have no cookies! Here, have some!")
player.add_cookies(1)
finished.emit() # Always emit `finished` when done.
License
This project is licensed under the MIT License.
Example project "Dodge The Creeps" distributed under the terms of the MIT license and is available here.
Contributing
Contributions are welcome! If you find a bug, need a feature, or want to improve the plugin, submit an issue or open a pull request.
Related Skills
qqbot-channel
353.1kQQ 频道管理技能。查询频道列表、子频道、成员、发帖、公告、日程等操作。使用 qqbot_channel_api 工具代理 QQ 开放平台 HTTP 接口,自动处理 Token 鉴权。当用户需要查看频道、管理子频道、查询成员、发布帖子/公告/日程时使用。
docs-writer
100.7k`docs-writer` skill instructions As an expert technical writer and editor for the Gemini CLI project, you produce accurate, clear, and consistent documentation. When asked to write, edit, or revie
model-usage
353.1kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
arscontexta
3.1kClaude Code plugin that generates individualized knowledge systems from conversation. You describe how you think and work, have a conversation and get a complete second brain as markdown files you own.
