Runtime Console (.NET)
F

Publisher

fangchu

Runtime Console (.NET)

Tools
C# Command Console Debug Development Inspection Logging Runtime

A simple runtime console for in-game debugging and command execution. (C#/.NET version)

一个简单的运行时游戏内控制台,支持查看对象属性、日志以及执行调试命令

https://www.bilibili.com/video/BV1vXjHz5EyE

RuntimeConsole 插件(Godot 游戏内控制台)

简体中文 | English

概述

RuntimeConsole 是一个适用于 Godot .NET 4.4+ 的运行时控制台插件,允许开发者在游戏运行中执行命令、查看日志,并通过对象检查器实时调试场景中的节点和数据结构,为开发与测试带来极大便利

功能

运行时查看日志

运行时查看对象属性

运行时执行命令

自由扩展控制台功能窗口

路线图

  • 自由拓展控制台功能窗口,支持用户添加自定义功能窗口

  • 更改日志窗口,支持日志类别筛选

  • 更改日志窗口命令功能自定义方式

  • 更改对象检查器窗口UI,支持运行时编辑属性,调用方法

  • 添加运行时脚本编辑器,支持运行时添加或更改对象的脚本(仅限GDScript)

环境要求

安装

  1. 下载Release版本并解压到项目中。

  2. Project Settings > Plugins 中启用插件。

自定义命令

添加自定义命令

你可以通过 C# 或 GDScript 添加自定义控制台命令。所有命令需实现 IConsoleCommand 接口(C#)或对应的 GDScript 接口结构。

GDScript 脚本 需实现以下方法,方法签名必须与接口一致,必须使用类型提示

  • get_keyword() -> String 或 只读属性keyword(匿名 getter)

  • get_parameter_types() -> Array[Variant.Type] 或 只读属性 parameter_types(匿名 getter)

  • execute(Array) -> void

你可以使用插件提供的命令模板来快速创建一个命令:

# Implement IConsoleCommand 
extends Resource

var keyword: String:
	get:
		return "" # Replace with your command keyword

var parameter_types: Array[Variant.Type]:
	get:
		return [] # Replace with the expected parameter types (in order)

func execute(args: Array) -> void:
	pass # Replace with your command logic

C# 脚本 需继承自任意 Godot 类型,并实现 IConsoleCommand 接口。

💡 注意:所有命令脚本文件需放置在插件配置的CommandPath对应目录下(默认为LogAndCommandWindow/CommandComponent/Commands)保存后命令会自动加载,无需手动注册。
你可以编辑插件配置文件(Config/config.tres)来更改默认目录


添加自定义参数解析器

你也可以通过 C# 或 GDScript 添加自定义命令参数解析器。所有解析器需实现 IParameterParser 接口(C#)或对应的 GDScript 接口结构。

⚠️ 注意:一个 Variant.Type 只能绑定一个解析器。多个解析器解析相同类型会导致冲突。

GDScript 脚本需要实现以下方法,方法签名必须与接口一致,必须要使用类型提示:

  • get_supported_types() -> Array[Variant.Type] 或 只读属性supported_types(匿名getter)

  • get_result() -> Variant 或 只读属性result(匿名getter)

  • parse(String) -> Error

你可以使用插件提供的解析器模板来快速创建一个解析器:

# Implement IParameterParser
extends Resource

var supported_types : Array[Variant.Type]:
    get:
        return [] # Replace with the types supported by this parser

var result : Variant:
    get:
        return _result

var _result : Variant

func parse(token: String) -> Error:
    # Replace with your parsing logic
    return OK

C# 脚本需继承自任意的Godot类型,并实现IParameterParser接口。

💡 注意:所有参数解析器脚本文件需放置在插件配置的ParameterParserPath目录下(默认为LogAndCommandWindow/CommandComponent/ParameterParser)。保存后解析器会自动加载,无需手动注册。
你可以编辑插件配置文件(Config/config.tres)来更改默认目录

添加自定义控制台窗口

  1. 新建一个场景并附加脚本,场景根节点必须为 Window,脚本也必须继承 Window(可使用 GDScript 编写)

  2. 按需添加功能与 UI 元素

  3. 打开插件配置文件 Config/config.tres,在 Window Settings 属性中新增一个元素:

    • Key:窗口按钮显示的文本

    • Window:绑定刚刚创建的场景

    • 勾选 Enabled 启用该窗口

  4. 保存配置,插件会自动加载并显示该窗口

许可证

MIT License