What’s That Scripting Secret?

Announcements Development Tech-Talk

Hi, builders!

This is Tyster, and I have some really neat technology that I’ve been wanting to share. The content shared in this blog post is actively in development, so things may change between now and the final release. That being said, I’m excited to announce…

In just over 1 month, on December 1st, World to Build will be releasing a visual scripting system that we call Slate!

Our team values putting creative power in the hands of creative people, and writing code has always been a barrier for many that stops them from creating awesome, interactive games. While Lua is a power scripting engine that is beginner-friendly to some, we wanted to up the ante and introduce a way to code your World to Build games without every writing a single line of code. Furthermore, this technology is all embedded right into the World to Build editor!

There are a few popular visual scripting languages out there in the big, wild internet, so we had a lot of well-thought-out systems to pull inspiration from. Ultimately we landed on a visually simple node graph. Slate works by allowing players to connect blocks of code together that we call “nodes.” The red node in the picture below represents an “event” which is called by World to Build when something happens, such as a the game beginning, or a collision happening.

Slate will work alongside Lua and have access to all of the same features, functions, and properties that Lua does. Additionally, you will be able to have both Slate scripts and Lua scripts working together in the same world. We still value the power that Lua gives to more advanced developers, and the development of Slate doesn’t hinder Lua’s capabilities or support in any way – Lua will remain supported.

On the topic of Lua, there’s a little secret that I’ve been hiding from you all.. (Nerd-speak ahead!) About 3 months ago, we upgraded our Lua engine from a C# interpreter to a custom C# bridge that speaks directly to the Lua 5.4 C API. What this means for most people is that World to Build’s Lua has fewer bugs, better error reporting, and actually runs about 500x faster on average (WHOAH). We also have unlocked all of the most modern features of Lua by upgrading from 5.1 to 5.4. Before our secret release we were sure to test all existing World to Build games and features to make sure everything was still functional, but we didn’t want to tempt fate by making a big announcement of it. While this change doesn’t change anything from a player/developer’s perspective, internally this change allows us to have complete knowledge and ownership of how World to Build players interact with Lua. This means we can fix bugs and add features faster and more confidently than ever before. Additionally, we now have the ability to edit our version of Lua 5.4 directly to add new features as we see fit for our game.

I hope everyone who read all the way to the end found the exciting information I promised at the beginning! The team at World to Build has been hard at work on these features and more that will be shared in the future. Personally, I’m super excited to see what you all will make with Slate!

Until next time,

Tyster