About the Author

Hi! I’m Steffen from Germany.

Click image to view full size ⤢

I’ve been modding and making games since the 1990s. I particularly enjoyed modding with scripting languages (Hexen, Quake). My first paycheck: beta-testing for 3D Realms. Work-Life perfectly balanced: ā€œI’m not playing, mum. I’m working!ā€ :)

Click image to view full size ⤢

Around 2000 I worked as designer on eight GameBoy titles in three years. We used visual statemachines to script entire games. It was super productive and fun.

Click image to view full size ⤢

Then I transferred the statemachines concept to a Lua-based declarative API: command units, script dialogue and cutscenes. Designers loved the power, onboarding was easy. We created three heavily scripted titles with three add-ons (SpellForce, BattleForge).

Click image to view full size ⤢

Then I began freelancing for mobile as it exploded. I had fun writing game engine books (Learn cocos2d, Learn SpriteBuilder).

Click images to view full size ⤢

2015 onwards I stepped into ā€˜digital marketing’. As train buff, I just couldn’t resist creating a realtime 3D Train Configurator in Unity for Siemens. It had a Virtual Reality mode with hand gesture interaction.

Click image to view full size ⤢

What followed was an extreme mixture of serial low-budget projects and innovative high-tech entertainment experiences. Mostly Unity, plenty of Lidars and Projectors.

Click image to view full size ⤢

Since 2022 I’ve done excessive R&D, prototyping, frameworking. Searching for ā€˜the one’ - the project combining self-efficacy with self-sufficiency. It led to interesting discoveries…

Click image to view full size ⤢

Finally, I just went ahead and spent months integrating Lua in Unity as alternative language. With Unity’s full API exposed.

Click image to view full size ⤢

But .. this meant it was no different from removed UnityScript and UnrealScript: a simpler language alright, but with the engine’s full API complexity!

Researching into the history and future of game engines, I came across many beginner tutorials, calls for help, and code snippets - same content, different engines.

Then it struck me.

The Realization

We teach young game engine ā€œdriversā€ Volkswagen here, Chrysler there. We caution: ā€œDon’t learn driving with a Porsche!ā€

This makes no sense!

Between Scratch and Godot/Unity, there’s a lot of learners going back and forth, struggling to make sense of the complexity of game engines.

We call this šŸ”„Tutorial Hell🄵.

The ā€œWhy?ā€ Behind LunyScript - A Personal Story

High-level, text-based programming is efficient and designer-friendly. It eases beginners into complex programming tasks and introduces them to valuable patterns, as I’ve learned myself.

Unfortunately, it’s also a lost art.

Well into the 2000s many game studios had the highly valuable role of the designing-coder and the coding-designer. Both were using the same tool, a scripting language, or parsed data descriptions, or both. It was simple and intuitive, but also very powerful.

Because without code, a design is worthless. And without design, code is ineffective.

spellforce2-dragonstorm.jpg SpellForce 2 - Dragon Storm (2007)

The race towards ā€œhigher efficiencyā€ forced the team I worked with to split up into separate entities with specialized roles: the ones who created the flow of gameplay, and the ones who made the environment look consistently good.

From then on, at the very core of gameplay was a disconnect.

Two factions viewing each other as foreigners. The artists break the logic. The designers messed up the art. We changed creation from an amalgamation of personal creative choices towards building a soulless product on an assembly line.

battleforge.jpg BattleForge (2009)

This is the state of the game industry at large today.

Only small teams and individuals can afford to break out of the role and genre specializations dictated by big game production’s labor-intensive work. In fact, creativity is their most important angle to find success.

But those artists, solopreneurs, visionaries, and beginners all struggle to cope with the immense complexity of powerful tools we have at our disposal - just to create very basic gameplay features.

I know that the amalgamation of ā€œdesign as codeā€ works and provides huge benefits. Even absolute non-programmers were able to implement designs within days.

That’s all I need to know. Of course you want to know more:

-> The Vision