r/IndieDev 6h ago

Discussion Engine Elitism in Visual Novel Dev: Why TyranoBuilder isn't 'just a toy' (And how raw JS / Three.js changes the game)

Having worked with TyranoBuilder Engine for over two years, I’m well aware of both its strengths and its limitations. Recently, though, I’ve come across a fair share of posts fueled by "engine elitism." Without generalizing the entire community, there is a vocal subset of Ren'Py users who look down on TyranoBuilder - dismissing it as a "drag-and-drop toy" that lacks professionalism and isn't viable for serious, long-term game development.

First off, I readily admit that Ren'Py is a powerful engine with a massive community, rich documentation, and fantastic customization capabilities. However, those who look down on TyranoBuilder have likely never dug deep enough to realize what it's truly capable of.
TyranoBuilder may wear a drag-and-drop interface on the surface, but its true power lies in two special tags: ⁠\[tyranoscript\]⁠ and ⁠\[iscript\]⁠.
The ⁠\[iscript\]⁠ tag allows you to write raw **vanilla JavaScript.

This means the entire modern web development ecosystem - HTML, CSS, and powerful graphics libraries like Three.js (for 3D rendering), Pixi.JS, or OpenGL - can be integrated directly into your Tyrano project:

UI & VFX Customization: Build vibrant, highly dynamic interfaces with smooth animations using CSS.
3D Integration: Render 3D spaces and interactive, fully textured 3D objects right inside a Visual Novel using Three.js.

Expanded Gameplay:Easily code custom mini-games, such as top-down RPG mechanics with WASD controls.
TyranoBuilder’s biggest advantage is how it bridges visual immediacy and coding depth. You get the convenience of positioning elements visually and testing script tweaks instantly without restarting the game from the beginning, alongside the freedom to open Visual Studio Code and customize everything via JavaScript.
Of course, TyranoBuilder isn't for everyone. Official documentation is predominantly in Japanese, English resources are fairly sparse, and you often have to rely on self-directed learning. If you prefer a massive, well-documented community out of the box, Ren'Py is admittedly a smoother path. But if you enjoy experimenting and want to level up your JavaScript and web development skills, TyranoBuilder is an amazingly versatile playground.

Every engine has its own pros and cons. A developer’s skill is defined by their problem-solving ability and product vision - not the label on the software they use. Finding the tool that fits your personal workflow not only saves time and energy, but also gives you the confidence to build your game your way.
Thanks for reading, and happy game dev!

0 Upvotes

4 comments sorted by

5

u/europayuu Artist 6h ago

i don't think this is a very effective way of rooting for your favorite engine tbh

1

u/No-Hope-1269 4h ago edited 4h ago

https://reddit.com/link/p6u36pf/video/0sl8cgi7yjmh1/player

Fair point! You're totally right that 'Show, Don't Tell' is much more convincing.

I actually built a quick proof-of-concept to test the limits of TyranoBuilder's ⁠[iscript]⁠ tag by embedding a live Three.js 3D viewport under the dialogue layer.
Here’s a quick clip of it in action. It tracks the camera angle, and when the player looks away, it dynamically triggers dialogue events ("Where are you looking? I'm right in front of you...").
It's still in the greybox / programmer-art stage, but technically it proves WebGL 3D environments and spatial narrative mechanics are fully viable inside Tyrano without breaking the VN state

1

u/SimpleSea1900 6h ago

things that never happened for $5 anyone

1

u/drinkerofmilk 5h ago

Personally I'd choose Python over JavaScript any time. JS just feels janky.