Skip to content

Releases: moraguma/GDrama

v1.1.0 - Cutscene logs on Godot 4.2!

01 Dec 16:45
0b94df9
Compare
Choose a tag to compare

Hey! GDrama has received a few updates along with the Godot 4.2 update... Here's what's changed!

GDrama

What's new

  • The project has been updated to Godot 4.2
  • The DramaReader class will now store a log of the drama that's currently being played! This is meant to be displayed to the player so they can remember what happened previously in a scene. This log can be gotten whole from a method in the DramaReader or line by line by connecting to its new added_to_log signal
  • The example scene now includes a log, you can play it online here! You can press L in the middle of a conversation to display what was said before. Take a look at the code to see how it works!
  • There's a new method in DramaInterface that can be overridden to use a different implementation of DramaPlayer. You can use this to easily use a custom DramaPlayer within a DramaInterface!

Bug fixes

  • Fixed a bug in the example scene where the player could get stuck on some geometry when attempting to talk to Sniffles from the wrong side

Known issues

  • GDrama files may need to be reimported manually in Godot's import menu before they update in-game

Projects

I want to highlight a little project made by @squk. Here, you can find Vim syntax highlighting for GDrama. I think this is a really nice tool if you want to edit GDrama files using Vim!

That's it! If you have any trouble using GDrama or want to ask any questions, please feel free to open an issue in this repo so we can talk about it. Also, if you use GDrama for anything, feel free to share it here! Hope you enjoy :)
@moraguma

Full Changelog: Release...1.1

v1.0.0 - GDrama for Godot 4

26 Nov 14:53
Compare
Choose a tag to compare

Hey! This is the first public release of GDrama - a framework for writing cutscenes in Godot 4. This version includes...

GDrama

Language

GDrama has a custom language for writing cutscenes in a screenplay-like format. It supports dialogues, actor names, choices, animation calls, and allows the creation of custom commands depending on the needs of the project. In terms of integration with Godot, it includes a syntax highlighter so GDrama files can be edited in Godot's built-in editor as well as a custom importer so they can be used by Godot as resources

Classes

This release includes a couple of classes that can be used to read and display cutscenes written in GDrama

  • DramaReader: Reads a drama line by line, handling branching logic. Can be extended to add custom branching logic and get information mid-cutscene, useful for stuff like displaying a player's custom name or the number of collectibles they have
  • DramaAnimator: Given a drama line, animates it letter by letter. Can be extended to add custom animation commands.
  • DramaPlayer: Combines a DramaReader with a DramaAnimator, advancing through a drama and animating each line
  • DramaDisplay 2D/3D/Control: This node is meant to be used directly in a game. Can display dialogue and animation calls. In the provided example, is used to build a dialogue bubble and to call animations in the character associated with it
  • DramaInterface 2D/3D: This node is meant to be used directly in a game. Can create an interface between regular gameplay and a specific cutscene. In the provided example, is used to create an area for the player to interact with a character

Example

This release comes with an example that shows a little of what can be done with GDrama. It can be played online here or explored in Godot's editor to understand how to use GDrama in practice

Known issues

  • GDrama files may need to be reimported manually in Godot's import menu before they update in-game
  • The player may get stuck on some geometry if they interact with a character in the example the wrong way

That's it! If you have any trouble using GDrama or want to ask any questions, please feel free to open an issue in this repo so we can talk about it. Also, if you use GDrama for anything, feel free to share it here! Hope you enjoy :)
Moraguma

Full Changelog: https://github.com/moraguma/GDrama/commits/Release