Skip to content

Releases: dialogic-godot/dialogic

Dialogic 2.0 Alpha 20

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 21 Jul 00:14
e301e1b

Woooowie. It's been a while and I've barely had any time for Dialogic these past months (again). But this project keeps moving and so does Godot. This release fixes things that broke in Godot 4.7, it introduces a first batch of breaking changes, mostly around the subsystems and brings lots of small fixes and improvements. As always, please make a backup or commit your changes before upgrading!

Here's the stuff you should know:

  • Portrait animations can now infinitely repeat (until a different animation is set)
  • State is implemented differently, meaning custom subsystems will most likely break and old saves won't work anymore. This means custom portrait scenes can now save and load (e.g. Layered Portrait) and textboxes can have identifiers.
  • Picking files now much more cleverly remembers folders for different types of files (e.g. portraits, timelines, backgrounds, etc.)
  • There's better controls for texture filtering for backgrounds, enabling pixelated or high res backgrounds.

📣🙏 Huge thanks to my patreons Tim Krief, Keko Ponte, Jeff Rigot, Brandon Carbaugh and MilkShakeIntake, some of which probably just forgot to cancel :)
And some more thanks to all the new contributors as well as the old ones for keeping this boat afloat while I'm away.

⚠⚠ Breaking Changes 🔥🔥
The main breaks are around subsystems and their save/load logic. Dialogic.custom_state_info is a thing of the past. If you have a custom subsystem, custom portrait or custom background you might have to rewrite it. Many method names and implementations changed. Take a look at the built in subsystems and the PR to find out more.
It also breaks old save states. If you are late into production I recommend sticking with your godot and dialogic version.
Also this release only works on Godot 4.5 and upwards, godot 4.6 or higher is recommended.

What's Changed

New Contributors

Full Changelog: 2.0-alpha-19...2.0-alpha-20

Dialogic 2.0 - Alpha 19

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 12 Jan 00:10
0dd7da2

Another year, another alpha 😅. Hope you're doing well. Hope this alpha won't break anything. It certainly fixes and improves a bunch of things. Thanks for anyone who supports the project, financially, through contributions, reports or by using it for cool things.

Notably I've pushed the minimum required version to Godot 4.4 (and the maximum 4.6.x). It actually worked somewhat alright with 4.3, but showed a bunch of warnings because of UIDs not being properly supported back then. This will give us some flexibility to go all in on UIDs moving forward. Speaking of the future, the next update will likely finally bring some changes to the save state system, which means it will break save-compatibility and might break custom modules. Just as a heads up.

Now here is a list of the cool/important changes from this update:

  • Fix/Improve UI to work with 4.6s new theme
  • Change Play Timeline shortcut to CTRL+F6 on windows/linux
  • Clear event now better calculates waiting time. This fixes an awkward pause after the timeline ends and before the "timeline_ended" signal was emitted
  • Fix that the character scale fields were being limited to 100%
  • you can now more easily add scene or image portraits by dragging them into the portrait list
  • you can now create events by dragging files from the file system dock or the resource sidebar:
    • Timeline files create Jump events
    • Character files create Character events (if the character has a portrait, otherwise text events)
    • Audio files create Audio events
    • Image or scene files create Background events
  • Adds short descriptions to all the events which show when hovering the event buttons
  • Moves the New Timeline, New Character and Resource Manager buttons to the sidebar (based on user test)
  • allow the Variable event to add two strings
  • add "Await Fade" setting to Background event
  • make it easier to select a color as the background
  • now avoids and warns about invalid questions (where all choices are disabled or hidden)
  • adds offset setting to Next Indicator
  • fix style getting broken when using "Make Custom>Full Layout"

What's Changed

New Contributors

Full Changelog: 2.0-alpha-18...2.0-alpha-19

Dialogic 2.0 - Alpha 18

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 29 Sep 16:31

Oops. Something broke. Here is a version where number fields DO allow negative values 🙈.
See the alpha 17 release for the cool new stuff.
Happy creating 😄

What's Changed

Dialogic 2.0 - Alpha 17

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 26 Sep 15:52

Finally... another alpha! 🥂

It's been way to long, but here it is. And this one has it all: features, fixes and breaking changes 🙈.
Some of the highlights are:

  • Play from here: Right click (or CTRL+F6) to test the timeline starting right where you are!
  • Character Prefixes and Suffixes: Make your characters texts unique. Now twice as easily!
  • Fade out timelines: Timelines will now finally gracefully exit without having to add a clear event.
  • Timeline Shortcut CheatSheet: Read about all your favourite shortcuts in this handy new overview.
  • Replace: You can now easily replace in timelines with CTRL+R!
  • Music and Sound become Audio: A single event to rule all your audio layers. Much more flexible!
  • Runtime resources: Characters and timelines now behave better when created at runtime. One neat side-feature is that you can now have one-off characters (without portraits). E.g. Stranger (blue): I'm a one-off character and my name label is blue...
  • Improve Portrait Animation Naming: ⚠️ This one is a breaking change. You will have to replace Slide In/Out Left/Right with their new names Slide From/To Left/Right.
  • Cool Text-Fade-Effects allow you to let the text fade in... in a cool way!
  • Godot 4.4+: And finally, this release makes dialogic work much better with 4.4.x. But that also means that ⚠️ this release drops compatibility with 4.2.

There is dozens of more useful fixes, changes and additions. But it also took so long, because I've been quite busy outside of Dialogic. If you want to encourage me to spent more time on it, share the cool work you are using it for on our discord or join my patreon!

Breaking changes

  • Support for godot 4.2 has been dropped.
  • The Slide in animations have been renamed. If you didn't know, you can use the Broken Reference Manager to quickly replace texts in all of your timelines:
    grafik
  • The speaker in the current_state_info is now stored by it's identifier, not it's resource path. This might break older save files and custom script logic.
  • The new unified audio event has a different syntax. All your old audio and sound events can easily be updated by clicking the Resave all Timelines button in the settings:
    grafik

What's Changed

New Contributors

Full Changelog: 2.0-alpha-16...2.0-alpha-17

Dialogic 2.0 - Alpha 16

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 27 Oct 16:16

Alpha 16 - Fixing those missing animations + some nice new stuff!

This alpha has it all: Important fixes, new features and UX improvements. Most notably character animations should no longer be missing in exports. Hurray! Here are some other noteworthy changes:

  • The sidebar now supports a couple new modes for grouping your recent resources based on type or folders. It can now also be collapsed, in case you'd rather just use the file system!
  • The internal structure of styles has been reworked, finally fixing the behaviour of inherited styles and 🙏 hopefully 🙏 getting rid of a bunch of bugs with duplicate UIDs (resulting in changes weirdly affecting multiple styles at once).
  • You can finally change the Typing Sound audio bus in the settings.

We've also been blessed by an awesome income of small improvements and fixes by @salianifo across all kind of areas. Thanks again to them!
We highly suggest you update, as this version includes some code that will do an internal update to any style previously created. This little update code will probably be removed when going into the beta stages. However this also means this update is NOT BACKWARDS COMPATIBLE, so definitely make a backup or commit your changes before updating (as you always should ;)).

Cheers,
Jowan

What's Changed

New Contributors

Full Changelog: 2.0-alpha-15...2.0-alpha-16

Dialogic 2.0 - Alpha 15

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 09 Sep 10:56

Alpha 15

Following the release of Godot 4.3, we are releasing a new alpha containing a bunch of important changes to core systems, usability improving features and of course tons of bug-fixes.

So what's new?

  • Layered Portraits have never been easier! With the new custom portrait scene workflow and @CakeVR's amazing layered portrait scene preset you can create portraits made of multiple images really easily. These can be manipulated from the timeline via character extra data! Learn more here or watch the video walkthrough.
  • Individual Portrait Containers allow you to move, scale and rotate characters during the timeline with the character event. This new system should allow VN-creators to position and move their characters much more freely. Learn more here.
  • Named Portrait Positions Gone are the days of 0, 1, 2, 3 and 4! Now we welcome leftmost, left, center, right and rightmost into our hearts :). The old numbers still work though, no worries.
  • Portrait Cross-Fades allows you to fade from one portrait to another!
  • A Conditional Text Modifier allows you to switch between texts based on a condition. For example [if {Expression} Text if true./Text if false.]
  • Choice Extra Data allows you to store more info on your choices that you can then interpret outside of dialogic, for example to style your choice buttons!
  • Search in TimelineEditor with CTRL+F you can now search both in the text editor and in the visual editor (only text events will be searched there). This should make it much easier to find where you left of or get to a stupid typo you just noticed :)

And many, many more smaller changes! This release includes some great work from @CakeVR, @juliohq, @firedfromlife and @jrb0001!
If you want to support me and the work I do on dialogic, feel invited to drop a donation on Patreon or Kofi :)

Breaking Changes

A lot has changed and we couldn't get around changing a few things that might need adjusting. If something stopped working check whether it's one of these, otherwise get in touch on our discord!

  • Animation Paths have changed so you might need to re-assign the default animations if you've touched them before.
  • Portrait Containers got changed quite a bit. If you have a custom portrait container layer you will have to setup the new container IDs!
  • The choice syntax now expects a | between choice text and shortcodes if there is no condition. In general this is the new suggested syntax, though the syntax without | still works (may break in certain edge-cases like when using a conditional text modifier IN a choice).
    • e.g. - Option 1 | [color="green"]
  • The position event has been completely removed as all it was able to do can now be done with the Character event. If you need the position event or would like to re-add it for compatibility, you can add it as a custom extension easily.
  • Dialogic.Choices.choices_shown has been renamed to Dialogic.Choices.question_shown

I hope you enjoy this version!

  • Jowan

What's Changed

Read more

Dialogic 2.0 - Alpha 14

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 22 May 09:04
2abb8e0

Alpha 14???

Yep. It's been a while, and development has stagnated quite a bit. But nevertheless, this release improves Dialogic quite a bit, mostly consisting of smaller improvements and many, many bug fixes. This means Dialogic is — once again — better than ever before ;)!

We are still working on a few major feature upgrades, so stay tuned for that!

And, as always, if you make something fun, need help, or just wanna say hi, feel free to join us on Emilio's discord server!

PS: When you first update Dialogic, you might see some errors. This should stop after restarting the editor once (sometimes twice). In some cases, deleting the .godot folder in the project directory (to trigger a re-import) can help as well.

Noteworthy changes

  • The text bubble style has seen a major upgrade, becoming more performant and having more styling options.
  • Input handling and catching have been improved, which can be noticed.
  • Translation & Glossary improvements by @CakeVR
  • You can now access keys in arrays and dictionaries of autoload variables (only works with object[key] syntax not objec.key!)
  • Label events can now have a translatable "Display Name," allowing you to keep track of where in the story you are.

Breaking Changes

  • The DNextIndicator class has been renamed to DialogicNextIndicator. If your custom layout is complaining about something not existing, this might be the cause.
  • The rework of the Input Catcher means its best position is now BEHIND the textbox (to allow better glossary hover and having buttons on the textbox layer). If you have a custom layout/style, this might be something you'd want to update. It does require the textbox to let input through, so Panels, PanelContainers and TextureRects might need to have a mouse_mode of ignore.
  • On the history subsystem, some things have been renamed:
    • Dialogic.History.not_read_event_reached -> Dialogic.History.unvisited_event
    • Dialogic.History.already_read_event_reached -> Dialogic.History.visited_event
  • Manual Advance mode has been reworked into a class, so if you previously accessed those methods (on the Text subsystem) directly, you will have to rework your code.
  • The return dictionaries of Dialogic.VAR.variable_changed and Dialogic.VAR.variable_was_set have been updated. If you were relying on these, you might have to make slight adjustments.
    I think that's all the breaking changes; if I've missed some, please let me know and I will add them here.

What's Changed

Read more

Dialogic 2.0 - Alpha 13

Pre-release

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 30 Jan 12:37
114b781

The final alpha??? 😱

Heads up: This version requires Godot 4.2+

Another month has passed, and Dialogic has seen some exciting development. But even more exciting is, that there is barely any reason left for us to still call this an alpha. So be prepared for the first beta release (hopefully) in February.

But for now, let's enjoy all the new goodies in this version! What have we got?

  • New Variables editor with typed variables!
  • Unit test system introduced!
  • Statically typed subsystems! This is a major step towards giving good auto-completion results for all the cool methods Dialogic provides.
  • Translation improvements, including glossary translations🤯!
  • Choice do not have to be connected to a text event anymore!
  • And tons of smaller features, enhancements, fixes and UX adjustments.

We hope you enjoy this version!

PS: When you first update Dialogic, you might see some errors. This should stop after restarting the editor once (sometimes twice). In some cases deleting the .godot folder in the project directory (to trigger a reimport) can help as well.

Breaking changes!!

Once again, there are some breaking changes.
You will require Godot 4.2+ for this version of Dialogic 2.

1. Autoload script changed

When you first update Dialogic, you might see some errors. This should stop after restarting the editor once (sometimes twice). The reason is that Dialogic has to update the path to its autoload as that has been moved.

If you need to manually fix this path, replace Other with Core.

2. Subsystem renames

For the typed subsystems to work, a few selected subsystems have been renamed. This might result in errors, especially in layout-scripts you have copied from the Dialogic plugin. The renames are:

  • Animation -> Animations
  • Input -> Inputs
  • Expression -> Expressions

3. Method renames

A few selected methods have been renamed:

Subsystem Text

  • hide_text_boxes() -> hide_textbox()
  • show_text_boxes() -> show_textbox()
  • can_skip_text_reveal() -> is_text_reveal_skippable()
  • skip_text_animation() -> skip_text_reveal()

Subsystem Input

  • stop() -> stop_timers()

4. Glossary

If you've been using glossaries already, you will have to open each glossary resource (not each entry, though) in the glossary once to avoid getting a crash in-game.

What's Changed

New Contributors

  • @psy-lilulu made their first contribution in #2011
  • @nlupugla made their first contribution in #1975

Full Changelog: 2.0-alpha-12...2.0-alpha-13

Dialogic 1.5.1 - Still alive!

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 06 Feb 15:55
b4e38a4

Dialogic laboratories is proud to present this small treat of fixes and improvements which is a must have for all dialogic 1 users.
It's a triumph. Note: "Huge success".

And certainly still alive! Now even more with:

  • themes that properly duplicate (#1938)
  • a fix for a bug that broke PCK encrypted games using Dialogic (#1974)
  • another fix for a bug where the creation buttons wouldn't function if a folder wasn't selected first (#1935)

Huge thanks go out to @zaknafean who is the one responsible for this branch still evolving and who would certainly be happy if you (yes YOU dear reader) would want to contribute to dialogic 1! Come by on emilios discord server if you're interested.

Ciao,
Jowan!

What's Changed

New Contributors

Full Changelog: v1.5...v1.5.1

Dialogic 2.0 - alpha 12

Pre-release

Choose a tag to compare

@Jowan-Spooner Jowan-Spooner released this 22 Dec 11:10
c7cc8aa

Style layers, background transitions, translations and more!

This alpha release brings a multitude of cool new features and a big bunch of bug-fixes.

  • New Style Layers: All styles have been broken down into style layers. This makes it easier to customize them for you and for us to improve them. It also means your existing styles will break… So make a backup/commit before updating. Take a look at the breaking changes below for more help!
  • Background Transitions: Dialogic now provides several background transitions. Hopefully, there will be more coming in the future.
  • Translations: Another important missing feature for translations — character names — has been tackled by the wonderful @CakeVR!
  • Floating Window: Dialogic can now be docked off into a separate window. This functionality is WIP, so try it out and give us your feedback.
  • Unique Identifier Changes: Dialogic uses unique identifiers for characters and timelines. Previously, these were fixed (based on the file name), but now you can edit them in the Reference Manager!
  • Documentation: And finally, our documentation has seen many improvements (both in content and presentation).

I wish you all a happy end of the year and fun with this release.

❓ Future plans

With the rework of styles, one of the last big points has been ticked off, and in fact, the other feature rework that was listed on the last release — variables — is already close to being finished.
So what's next? Well, it means that it's not unlikely that we have only one more alpha release before the beta. Personally, I will focus mostly on testing, bug-fixing and minor UI/UX improvements from here on. Once I feel we are ready to go into beta, I will start creating tutorials and working on the documentation.
Our beta will likely not mean a full feature freeze until very close to release. We just do not have a fast enough release cycle to push features off until the next release. So if you have a small feature PR, don't worry. However, the beta will be a time of focus on stability and bug-fixing for the core team.
The next release will increase the required godot version to 4.2 so we can benefit from all the cool new additions in that version.

⚠️ Breaking changes!

This release comes with one major breaking change: Styles. Basically, any style and custom layout scene from previous alphas won't be working as expected anymore.
Therefore, before you update to this version, PLEASE COMMIT ANY CHANGES OR MAKE A BACKUP COPY.

However, don't worry:

  • You can either recreate your things with the new system, which you can find explained in the docs (Styles & Layouts — Dialogic 2 Documentation) or in a small YouTube walkthrough (Dialogic 2 - New Style System - YouTube).
  • Alternatively, you can convert the old layout scenes (or your custom layout scenes) to work with the new system. This mainly means they have to inherit from DialogicLayoutBase. Then you can create a new Custom Style and replace the base scene with your custom layout. Do this only if you really need to. I recommend using the new styles as those will be the ones getting improvements in the future.

Any settings from your previous styles won't be able to be transferred.

Regarding styles, a couple of methods have been renamed/moved:

  • Dialogic.has_active_layout_node() => Dialogic.Styles.has_active_layout_node()
  • Dialogic.get_layout_node() => Dialogic.Styles.get_layout_node()
  • Dialogic.Styles.add_layout_style() => Dialogic.Styles.load_style()
  • Dialogic.find_timeline() => DialogicResourceUtil.get_timeline_resource()

This list is incomplete; it's just a selection I thought might be useful to you. If something breaks, and you're not sure why, just hit us up on Discord.

Unique identifiers

There is a small chance the new unique identifiers' system comes up with a different default name for characters or timelines (this should only happen if you have multiple characters/timelines with the same name). In this case, you can simply adjust the auto-generated identifiers in the Reference Manager. You can learn more about unique identifiers in the documentation: Reference Manager - Dialogic 2 Documentation

Portrait Position Containers (z-index)

The z-index is now affecting the order of portrait containers. This means they can no longer be children of (e.g.) a VBoxContainer.


What's Changed

New Contributors

Full Changelog: coppolaemilio/dialogic@2.0-alpha-11...2.0-alpha-12