VgScript

Hecho para guionistas de videojuegos

Write branching dialogue in plain text, catch mistakes as you type, and play it as gameplay in Unreal Engine.

Free to write in your IDE. Ready to play in Unreal.

S1_Room.vgsS2_End.vgsScenes.txt
[P] Gee -> Vee[D1][1] 'We could come back later.' ->(T10)[2] 'I think we've been here before.' ->(T12)[3] 'What about the laptop?' ->(T16)[4] if(CF{second-act}) 'You're going to say the laptop is what we're early for.' ->(T18)[T10][1] We could come back later. ->(T11)[P] Vee -> Gee[T11][1] And miss it? ->(T22)[P] Gee -> Vee[T12][1] I think we've been here before. ->(C2)[C2][1] if(CF{second-act}) T15[2] T13
  • Scene
  • Speaker
  • Talk
  • Decision
  • Condition
  • Action

See it in action

From the first line to the shipped game

Write and check your scenes in the IDE, then import them into Unreal and present them your way.

In your IDE

In Unreal Engine

A .vgs script in the IDE, with scenes, speakers, talks, decisions, conditions and actions each in their own color.

Todo lo que necesitas para crear historias interactivas

Herramientas profesionales diseñadas específicamente para el desarrollo de narrativas interactivas

Ramificando narrativas con tus propias acciones

Write talks, decisions, conditions and facts in plain text, and call your own Blueprint or C++ actions by name. No dialogue graphs to wire by hand.

IDE extensions

Semantic coloring, live checks, go to definition, completion and rename in JetBrains IDEs and VS Code, with more editors on the way. Travel follows every branch and reports dead ends before anyone plays.

Creado para tu motor de juego

A native Unreal Engine 5.8 plugin, live on Fab. Present dialogue with your own Blueprint or C++ classes. Unity and Godot are on the roadmap.

Listo para la localización

Every line gets a stable key and a row in one subtitle table per language. Export CSVs for translators, import them back, and switch language at runtime.

Listo para ejecutarse y eficiente

Scripts are imported into a scenes data asset and per-language DataTables, so the game reads cooked data instead of text files and narrative stays separate from game logic.

Fácil de usar para escritores, extensible para desarrolladores

Writers work entirely in plain text, while developers register new actions and conditions in a data asset and implement them in Blueprint or C++.

Complementos

Write .vgs scripts in your IDE and play them in your game engine, with the same vgs tooling throughout.

Disponible

Unreal Engine

A native plugin for Unreal Engine 5.8 on Windows. Import your scenes and play them as subtitles, choices and game actions, with a subtitle table per language.

v0.3.2 · UE 5.8 · Win64

Free

JetBrains

Free for Rider, IntelliJ IDEA, WebStorm and the other JetBrains IDEs: coloring, live checks, travel and code navigation.

Free

VS Code

Free for VS Code 1.82 or newer, with the same coloring, live checks, travel and navigation as the JetBrains plugin.

In VS Code, press Ctrl+P and paste:

ext install GuillemSerra.vgscript-plugin
Abrir marketplace

Using another editor? VgScript comes to more IDEs as people ask for them. Tell us which one

Proyecto de ejemplo

Prueba VgScript en un pequeño repositorio de contenido

Abre el ejemplo público en GitHub para inspeccionar archivos de escena, metadatos generados, orden de escenas, decisiones, acciones y un enlace resuelto entre escenas.

Abrir vgscript-example
Archivos incluidos
  • Scenes.txt
  • S1_Room.vgs
  • S1_Room.vgs.meta
  • S2_End.vgs
  • S2_End.vgs.meta
  • Localization/*.csv

Get release news

VgScript for Unreal Engine is live on Fab. Leave your email to hear about new versions and Unity and Godot support.

We only use your email to send VgScript release news.