2 minute read

Hi everyone, here is the 6th devlog of Rakugo Project 3.3. To day we have some new features in Rakugo, new version of Advanced Text Editor, new team member, small bug fixes, and new/old website.

New / Old Website

Like you see we changed our website again. Some of you may find this look of the site reminiscent of its older version, and correctly so, because after thinking things through, we’ve gone back to the previous technology called jekyll. For several reasons, it’s easier to run such a site with a devlog section, the site looks nicer this way, and what’s the most important, it allowed us to create addons and kits categories in such a way, that now anyone can add their own addon or kit - proper instructions in those sections, the showcase category also work similarly.

New Team Member and new versions of Emojis-For-Godot and Godot-Material-Icons

Last month, our team was joined by Matteo Piovanelli, he wants to create a SCUMM Kit based on Rakugo. So far he is helping us with testing and bug fixes. He found what was causing a bug name == "" in both Emojis-For-Godot and Godot-Material-Icons addons. Now it is fixed, and this 2 addons have new releases ready.

New version of Advanced Text Editor

As Rakugo will now use RakuScript, user will need tool to edit it, so last monts I started total rewrite of the Advanced Text Editor. So it can become base for RakuEdit, that our Kits will use.

This rewrite golas:

  • modular code and scenes - make it easier to update and modify the code
  • simpler construction of UI scenes

New features of the editor:

  • bottom and right preview panels (done)
  • support for Godot-Material-Icons (done)
  • added Color Picker (done)
  • added snippets (todo)

Also AdvancedTextLabel now supports Godot-Material-Icons.

This mostly done here you can see progress.

Project Settings Helper is no longer used by our addons

As some of you may know most of our addons used a helper addon called Project Settings Helper, which was supposed to make working with ProjectSettings easier, but recently we discovered that it was doing us more harm than good and we removed it from all our addons as well as the project itself from github.

New features in Rakugo

theLudovyc has been working on the new features in RakuScript parser:

  • He changed how parser works from parse and execute given line at the same to first parse whole file then execute, so it works better with code block and branches.
  • Fixed way how parser handles so called escape characters.
  • Fixed bug: Do not find Say in history.gd:86; Rakugo.Say.get_narrator() is now Rakugo.get_narrator()
  • Remove project-settings-helpers dependence
  • Move visual part of SettingList to NVKit
  • Fixed bug: Invalid get index ‘current_dialogue’ (on base: ‘Node (Rakugo.gd)’).
  • Remove "" when string as returned by parser
  • Add new regex in parser at runtime

Now you can extend RakuScript

The biggest new feature in Rakugo is possibility to adding new regex to parser at runtime. This allows to add new regex to parser without any changes to the code. So every one can extend the RakuScript with their own custom keywords, and adapt RakuScript to the needs of their project.

This is a example:

func ready():
  Rakugo.parser_add_regex_at_runtime("HW", "^hello_world$")
	
  Rakugo.connect("parser_unhandled_regex", self, "_on_parser_unhandled_regex")

func _on_parser_unhandled_regex(key:String, result:RegExMatch):
  match(key):
    "HW":
      prints(name, "regex hello, world !")

We want to know your opinion

We have few ideas of our own for this scripting language, but we need your opinion, as we are not sure if we should implement them or not. Go here to talk with us about them