¿Qué es GDScript?
GDScript es el lenguaje de scripting integrado en el motor de juegos Godot. Se parece mucho a Python (sangría para los bloques, sin punto y coma, sintaxis legible), pero no es Python, y se diseñó específicamente para engancharse a los nodos y señales de Godot.
Qué es
GDScript es un lenguaje de scripting que solo existe dentro de Godot. Lo escribes en el propio editor del motor, lo asocias a un nodo y controla lo que hace ese nodo. No hay paso de compilación aparte ni cadena de herramientas externa.
Tiene tipado dinámico por defecto, con tipado estático opcional que puedes activar por variable y por función. Añadir tipos hace que el editor detecte mejor los errores y que el código sea más rápido, y es el consejo habitual para todo lo que vaya a durar más de una tarde.
No es Python, y el parecido le cuesta tiempo a quien empieza. No hay pip, ni biblioteca estándar de Python, ni forma de importar paquetes de Python cualesquiera. Tomó prestada la sintaxis porque es legible, y ahí se quedó.
Lo que le da forma de Godot
Un script extiende un tipo de nodo, lo que significa que el script pasa a ser el comportamiento de ese nodo. Un script que extiende CharacterBody3D es el código de un personaje que se mueve y colisiona, y tiene acceso directo a todo lo que ofrece ese tipo de nodo.
Dos funciones hacen la mayor parte del trabajo en la mayoría de scripts. Una se ejecuta una vez cuando el nodo entra en la escena, para preparar. Otra se ejecuta cada fotograma, para todo lo que tenga que pasar de forma continua. Casi todos los tutoriales de Godot que leerás giran en torno a esas dos.
Las señales son la otra mitad. Un nodo emite una señal cuando pasa algo (se pulsó un botón, un cuerpo entró en un área, un temporizador terminó) y otros scripts se conectan a ella. GDScript tiene las señales como característica del lenguaje y no como biblioteca, un detalle pequeño que da forma a cómo se escribe el código de Godot.
GDScript frente a C# en Godot
C# tiene soporte oficial y es la principal alternativa. Es un lenguaje más grande y maduro, con mejores herramientas externas, tipado más fuerte y un ecosistema grande, y quienes vienen de Unity suelen preferirlo justo por eso.
GDScript gana en integración e iteración. Está integrado en el editor, no necesita configuración aparte, sus mensajes de error hablan de Godot y no de un entorno de ejecución, y el ciclo de recarga es más rápido. Y lo crucial: casi toda la documentación y las respuestas de la comunidad están escritas en él, lo que importa más que el diseño del lenguaje cuando te atascas.
En rendimiento puro, ninguno de los dos es la respuesta en el extremo. El código que de verdad necesita ser rápido suele acabar en C++ mediante GDExtension, y eso suele ser una ruta crítica concreta y no un proyecto.
¿Merece la pena aprender GDScript?
Si piensas hacer juegos en Godot y escribes código, sí, y la curva de aprendizaje es corta. Quien tiene cualquier base de programación suele ser productivo en días, y la sintaxis no es la parte difícil para nadie.
La parte difícil es el propio Godot: el árbol de nodos, qué va en qué nodo, cuándo usar una señal en lugar de una referencia directa, cómo se componen las escenas. Ese conocimiento se transfiere entre GDScript y C# porque es conocimiento del motor y no del lenguaje.
Si no escribes código y no quieres, GDScript ya no es un requisito para hacer un juego en Godot. Y ahí es donde entra el producto de esta web.
Dónde está Flockbay
Flockbay es una app de escritorio para Mac y Windows con Godot incluido. Escribe GDScript en tu proyecto cuando describes lo que debería pasar, y no se te exige leerlo.
Esa última parte es todo el diseño, y el código sigue siendo GDScript normal en un proyecto de Godot normal en tu disco. Nada se compila a un formato que solo entienda esta app, y si aprendes GDScript más adelante, o le pasas el proyecto a alguien que lo sabe, es un proyecto normal.
El mundo no está escrito en GDScript ni en nada: lo construyes a mano en un editor, esculpiendo terreno y fijando el clima en un juego 3D, pintando suelo y colocando sprites en uno 2D. El juego corre en local sobre el Godot incluido. Construir necesita conexión a internet; jugar lo que construiste, no.
Preguntas frecuentes
- ¿GDScript es lo mismo que Python?
- No. Toma prestada la sintaxis legible basada en sangría y nada más. No hay pip, ni biblioteca estándar de Python, ni forma de importar paquetes de Python.
- ¿Es difícil aprender GDScript?
- El lenguaje no. Aprender el modelo de nodos y escenas de Godot es el trabajo de verdad, y ese conocimiento también se aplica a C# en Godot.
- ¿Debería usar GDScript o C#?
- GDScript por una integración más estrecha, una iteración más rápida y la cobertura de la documentación. C# por mejores herramientas externas y familiaridad si vienes de Unity.
- ¿GDScript es lo bastante rápido?
- Para la mayor parte de la lógica de un juego, sí. El código que de verdad necesita más suele pasar a C++ mediante GDExtension, y eso suele ser una ruta crítica concreta.
- ¿Qué escribe Flockbay?
- GDScript, en tu proyecto de Godot, donde puedes leerlo. Nada te obliga a hacerlo.
Descarga Flockbay
Descarga gratuita para Mac y Windows. Flockbay escribe el GDScript.
