Expert patterns for branching dialogue systems including dialogue graphs (Resource-based), character portraits, player choices, conditional dialogue (flags/quests), typewriter effects, localization support, and voice acting integration. Use for narrative games, RPGs, or visual novels. Trigger keywords: DialogueLine, DialogueChoice, DialogueGraph, dialogue_manager, typewriter_effect, branching_dialogue, dialogue_flags, localization, voice_acting.
npx skills add https://github.com/thedivergentai/GD-Agentic-Skills --skill godot-dialogue-system
Data-driven dialogue routing — not beginner typewriter tutorials.
next_node_id soft-lock mid-convo; assert / registry IDs.Timer / OS.delay_msec() — Use visible_ratio / visible_characters + Tween (see typebox_effect.gd).get_node() from NPCs into Dialogue UI — Start via manager signals (start_dialogue(res)).add_image/update_image use width_unit/height_unit (ImageUnit) — update portrait and inline image helpers.| Authoring need | Engine | MANDATORY scripts | Do NOT Load |
|----------------|--------|-------------------|-------------|
| Designer-friendly .tres graphs in-repo | Resource Autoload graph | dialogue_resource.gd → dialogue_manager_singleton.gd → dialogue_ui_controller.gd → typebox_effect.gd | dialogue_engine.gd JSON path |
| External writers / spreadsheet → JSON | JSON graph engine | dialogue_engine.gd (+ optional dialogue_manager.gd) → UI + typebox | Resource Autoload stack |
| Visual node editor in-project | GraphEdit authoring | Keep runtime on Resource or JSON export; GraphEdit is editor-only tooling | Shipping GraphEdit as the runtime walker |
| Conditions / quest gates | Either | branching_condition_validator.gd | Embedding flag checks in UI buttons |
| Portraits / expressions | Either | dialogue_portrait_manager.gd | — |
| Localization keys | Either | localized_dialogue_resource.gd | Hardcoded language if trees |
| Quest / gameplay hooks from lines | Either | dialogue_event_bridge.gd | Side effects inside UI controller |
Default golden path: Resource Autoload → UI controller → typebox_effect. Pick one runtime engine; do not run Resource manager and JSON engine in parallel.
visible_ratio reveal[trigger:] tags@tool GraphEdit auditor (editor-only)Use typebox_effect.gd: set full text, tween visible_ratio (or RichTextLabel visible_characters) from 0→1. On skip input: kill tween and snap visibility to complete. Do not spawn a Timer per character.
@tool) — export to Resource/JSON for runtime.[CHOICE] log prefix; no PII.> MANDATORY for GraphEdit tooling, TTS/lipsync, analytics, and moved inline manager/UI tutorials: elite-dialogue-patterns.md. Do NOT Load for Resource Autoload golden path only.
> Progressive disclosure: open Official Documentation links only when researching a specific API; load Related Skills when routing to a peer domain — do not preload the whole lattice.
Resource / .tres data instead of hardcoded strings in scripts.visible_characters / image helpers and BBCode APIs the dialogue UI should drive for typewriter and portraits.tr() / TranslationServer workflow so line text stays key-based across locales.text_key fields.DialogueManager that survives scene changes and owns traversal state.visible_ratio / character reveal timing without blocking the main thread.DisplayServer TTS callbacks for placeholder VO and lipsync-adjacent timing..tres lists become unwieldy.await, and Callables required before branching engines and UI bridges.DialogueLine / graph Resources, exports, and avoiding duplicated mutable state.DialogueManager that must outlive scene swaps.line_displayed, choice selection, and narrative event bridges.Create AI marketing videos for ads, promos, product launches, and brand content. Models: Veo, Seedance, Wan, FLUX for visuals, Kokoro for voiceover. Types: product demos, testimonials, explainers, social ads, brand videos. Use for: Facebook ads, YouTube ads, product launches, brand awareness. Triggers: marketing video, ad video, promo video, commercial, brand video, product video, explainer video, ad creative, video ad, facebook ad video, youtube ad, instagram ad, tiktok ad, promotional video, launch video
App Store and Google Play screenshot creation with exact platform specs. Covers iOS/Android dimensions, gallery ordering, device mockups, and preview videos. Use for: app store optimization, ASO, app screenshots, app preview, play store listing. Triggers: app store screenshots, aso, app store optimization, play store screenshots, app preview, app listing, ios screenshots, android screenshots, app store images, app mockup, device mockup, app gallery, store listing
Generate images using Nano Banana Pro (Gemini 3 Pro Preview). Use when creating app icons, logos, UI graphics, marketing banners, social media images, illustrations, diagrams, or any visual assets. Supports reference images for style transfer and character consistency. Triggers include phrases like 'generate an image', 'create a graphic', 'make an icon', 'design a logo', 'create a banner', 'same style as', 'keep the style', or any request needing visual content.
Generate and save images using Pollinations.ai's free, open-source API. No signup required. Supports URL-based generation, custom parameters (width, height, model, seed), and automatic file saving. Perfect for quick prototypes, marketing assets, and creative workflows.
| Create AI marketing videos for ads, promos, product launches, and brand content. product video, explainer video, ad creative, video ad, facebook ad video, youtube ad, instagram ad, tiktok ad, promotional video, launch video
Use when building App Store screenshot pages, generating exportable marketing screenshots for iOS apps, or creating programmatic screenshot generators with Next.js. Triggers on app store, screenshots, marketing assets, html-to-image, phone mockup.
Anti-AI-slop design skill for greenfield pages, audits, redesigns, and design extraction from URLs or screenshots. Use when the user asks to build a new app or landing page, wants to redesign something, invokes Hallmark by name, or uses audit/redesign/study.
Launch and supervise OpenShell gator agents. Use when starting gator on issues or PRs, checking gator sandboxes, building the gator sandbox image, restarting stuck gators, inspecting gator logs, or experimenting with gator harness/model overrides. Trigger keywords - launch gator, start gator, run gator, gator sandbox, supervised gator, gator logs, restart gator.
Take thedivergentai/godot-dialogue-system from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.