godot-ui-rich-text
SKILL.md
Rich Text & BBCode
BBCode tags, meta clickable links, and RichTextEffect shaders define formatted text systems.
Available Scripts
custom_bbcode_effect.gd
Expert custom RichTextEffect examples (wave, rainbow, shake, typewriter).
rich_text_animator.gd
Typewriter effect for BBCode text with support for custom event tags and pausing.
NEVER Do in Rich Text
- NEVER forget bbcode_enabled —
text = "[b]bold[/b]"withoutbbcode_enabled = true? Literal brackets shown. ALWAYS enable BBCode first. - NEVER use [img] without res:// path —
[img]icon.png[/img]with relative path? Image not found. Use full resource path:[img]res://assets/icon.png[/img]. - NEVER skip newline preservation —
text = "Line1\nLine2"renders as "Line1Line2"? BBCode eats newlines. Use[br]OR\nwith proper escaping. - NEVER use [url] without meta_clicked —
[url=shop]Buy[/url]without signal connection? Click does nothing. MUST connectmeta_clickedsignal. - NEVER nest same tag types —
[b][b]text[/b][/b]? Undefined behavior. Nest different tags:[b][i]text[/i][/b]. - NEVER use [color] with invalid formats —
[color=redd]text[/color]typo? Falls back to white OR black. Use named colors OR hex:[color=#FF0000]for validation.
$RichTextLabel.bbcode_enabled = true
$RichTextLabel.text = "[b]Bold[/b] and [i]italic[/i] text"
Common Tags
[b]Bold[/b]
[i]Italic[/i]
[u]Underline[/u]
[color=red]Red text[/color]
[color=#00FF00]Green hex[/color]
[center]Centered[/center]
[img]res://icon.png[/img]
[url=data]Clickable link[/url]
Handle Link Clicks
func _ready() -> void:
$RichTextLabel.meta_clicked.connect(_on_meta_clicked)
func _on_meta_clicked(meta: Variant) -> void:
print("Clicked: ", meta)
Reference
Related
- Master Skill: godot-master
Weekly Installs
59
Repository
thedivergentai/…c-skillsGitHub Stars
35
First Seen
Feb 10, 2026
Security Audits
Installed on
gemini-cli57
github-copilot57
codex57
opencode57
kimi-cli56
amp56