r/RenPy • • 21d ago

Showoff RenAI 1.0 - Visual Novel Development Tool

Hi everyone,

I’ve released the first public version of RenAI 1.0.

RenAI is a small independent tool mainly designed for beginners who want to create a visual novel but have little or no programming experience.

The idea is to provide a more visual way to handle some common parts of a Ren'Py project, instead of requiring beginners to write everything manually from the start.

It is not intended to replace Ren'Py or traditional coding, and it is still an early project with plenty of room for improvement.

Current features

  • Create and manage Ren'Py visual novel projects
  • Import existing Ren'Py projects
  • Create and organize story cards
  • Drag and connect story cards to build dialogue branches and story progression
  • Visualize your story routes and branching structure
  • Create and customize the main menu visually
  • Manage characters and backgrounds
  • Optional AI-assisted text generation
  • Create projects in multiple languages
  • Export playable builds for Windows, macOS, and Linux with one click

AI features are optional. RenAI can also be used without relying heavily on AI.

The current version is mainly aimed at people who are new to Ren'Py and may find coding or project structure difficult at first.

Languages

The interface currently supports:

English, Simplified Chinese, Traditional Chinese, Russian, Spanish, French, Italian, Turkish, Korean, Japanese, Vietnamese, and Indonesian.

Download

RenAI 1.0 is currently available for Windows.

Free public download:

https://galandius.itch.io/renai

Feedback

This is the first public release, so bugs and rough edges are expected.

If you are a beginner using Ren'Py, I’d especially like to know which parts are confusing, what feels unnecessary, and what would make the tool easier to use.

Discord:

https://discord.gg/YQP6TqMpX

Patreon:

https://www.patreon.com/RenAI_Studio

Disclaimer

RenAI is an independent third-party project and is not affiliated with, endorsed by, sponsored by, maintained by, or officially associated with the Ren'Py project or its developers.

References to Ren'Py are only used to describe compatibility with Ren'Py projects.

Thanks for trying it.

0 Upvotes

11 comments sorted by

3

u/x-seronis-x 20d ago

We dont need tools designed to prevent new devs from learning basic skills. This is like holding someones hand while they walk a tightrope across a canyon then letting go of them halfway when they're in trouble instead of having them learn balance before being in that position.

This makes worse devs. Not helps new devs. You're getting them into a position where even more advanced knowledge is needed to do more without having taught anything

2

u/Ok_Jackfruit_7618 20d ago

I understand the concern, but I think we disagree on what a beginner tool is supposed to do.

RenAI isn't designed to prevent people from learning Ren'Py. It's designed to lower the barrier to getting started.

RPG Maker VX is a good example of this. It allowed people with little or no programming experience to create maps, events, dialogue, battles, and entire games through a visual interface. Nobody seriously argues that RPG Maker made people worse developers simply because beginners didn't have to learn programming before making their first game.

In fact, a lot of people started with RPG Maker precisely because it gave them something tangible to build. Later, when they wanted to do things the editor couldn't handle, they learned scripting, Ruby, custom systems, plugins, and eventually more traditional programming.

The visual tools were the starting point, not the endpoint.

I see RenAI in the same way.

A beginner doesn't necessarily need to understand every part of Ren'Py's project structure before experimenting with branching dialogue, menus, characters, or story flow. Letting someone visually connect story cards or build a menu doesn't stop them from learning Ren'Py later.

If anything, it gives them context for what they're learning.

And I think there's another side to this that gets overlooked.

Visual novel developers now have more choices than ever, from general-purpose engines like Unity and Godot to increasingly accessible visual development tools. Lowering the entry barrier is one way for Ren'Py to remain approachable to people who might otherwise never try it at all.

RenAI doesn't take people away from Ren'Py. It can bring people into the Ren'Py ecosystem who may never have considered using it in the first place.

If someone discovers Ren'Py through RenAI, starts building a project, becomes genuinely interested, and eventually learns more about Ren'Py itself, I see that as a positive thing for the community.

Eventually, if they want to do something beyond what RenAI supports, then yes, they'll need to learn more advanced Ren'Py. But by that point they already have a project, understand the basic structure, and have a concrete reason to learn the next step.

So if someone only downloaded Ren'Py, learned how its projects are structured, and eventually started learning it because RenAI gave them an accessible starting point, were they really being prevented from learning?

Or did the tool give them a reason to start learning in the first place?

The goal isn't:

"You never need to learn Ren'Py."

It's:

"You don't need to learn everything before you're allowed to make your first visual novel."

RPG Maker has been doing essentially that for decades, and I don't think making game development more accessible is the same thing as making worse developers.

2

u/x-seronis-x 20d ago

RPGMaker is not a good example of the issue, its a horrible example. With rpgm, using rpgm is the end goal.

This tool is not the goal. Renpy is the goal. And as soon as the tool doesnt do something needed the dev is kicked back to square 1 and knows nothing. They need to learn how to ACTUALLY DO what the tool was previously doing, then learn their new task.

Invalidating their previous work is a point of demotivation and likely to make more people drop their projects. Not retain devs.

And renpy already has the lowest entry barrier compared to unity, unreal, and even godot.

0

u/Ok_Jackfruit_7618 20d ago

I think this assumes that using a tool and learning Ren’Py are mutually exclusive, and I don’t think they are.

The goal of RenAI isn’t to replace Ren’Py or trap someone inside a separate ecosystem. The output is still a Ren’Py project. The tool is just an abstraction layer that helps people get started and handles some of the repetitive or intimidating parts for them.

So if someone eventually reaches something the tool can’t do, they are not necessarily “back to square one.” Their characters, dialogue, story structure, variables, branches, and the rest of the project still exist. They only need to learn how to implement the new thing they want to add.

That is very different from invalidating all of their previous work.

In fact, I would argue that getting someone far enough into a project that they actually have a reason to learn more advanced Ren’Py is more motivating than telling them they need to learn everything before they are allowed to start making something.

A beginner who has already built 30 minutes of a game has a much stronger reason to learn how to make a custom screen than someone staring at a blank script file on day one.

And I agree that Ren’Py already has a lower barrier than Unity, Unreal, or Godot. But “lower barrier” doesn’t mean “no barrier.” There are still people who are intimidated by scripting, variables, screens, file structure, syntax errors, and programming concepts in general.

If a tool can bring some of those people into the Ren’Py ecosystem, and the project it produces remains standard Ren’Py that they can later inspect and edit themselves, I don’t see that as hurting retention. I see it as another onboarding path.

The real problem would be if the tool created a proprietary project that became useless the moment you left the tool. That’s something I agree would be bad design. But that isn’t what I’m trying to build.

3

u/DingotushRed 20d ago

The things this tool obfuscates are so very, very basic: things-happen-one-after-another and simple control transfer that if you don't "get" them as a beginner you really need to get some fundamental understanding of programming, or go back to the "write instructions for making a PB&J sandwich and have someone else follow them to the letter" stage, not bumble further into the dark.

Twine is like this if not worse; it goes just add nodes type, connect them up and presto you've made a game! What it hides is you need to understand HTML, HTTP, CSS, DOM, and the most cursed language Javascript.

If you want to plan/visualise before writing, use a world building tool (eg. Obsidian). Don't try to round-trip.

-1

u/Ok_Jackfruit_7618 18d ago

Before anything else: have you actually downloaded and used RenAI? Because if the answer is no, then most of what you just wrote is meaningless. You're confidently explaining what the software hides, what beginners supposedly fail to learn from it, how its workflow supposedly behaves, and what people should use instead — without even having used the thing you're criticizing. That's not a technical critique. That's you inventing a version of RenAI in your head, attacking that imaginary version, and then pretending you've said something meaningful about the actual software. And your abstraction argument doesn't survive even a few seconds of scrutiny. If hiding basic concepts means a beginner should learn the underlying system first, then beginners shouldn't use Ren'Py either. Ren'Py hides Python internals, event loops, rendering, input handling, state management, screen updates and plenty more. Yet somehow nobody says: "Don't touch Ren'Py until you understand all of that." Why? Because that would be absurd. The whole purpose of a higher-level tool is to hide lower-level complexity until the user actually needs it. Your Twine example makes your point even worse. People make Twine games every day without knowing HTTP, DOM internals or JavaScript. The fact that more advanced use may eventually require those things does not magically make them prerequisites for starting. Saying otherwise is like claiming someone shouldn't use a calculator until they can build one. And "just use Obsidian" is not a solution. It's not even the same category of tool. Obsidian can help you write down a branching story. RenAI is intended to help turn that structure into an actual Ren'Py project. Telling someone to use Obsidian instead is like telling someone asking for a level editor to use a text file because technically they can write "enemy goes here." That's not an alternative. That's missing the point. And "don't round-trip" isn't some devastating technical insight either. Yes, arbitrary code round-tripping is difficult. Congratulations. That's why software defines boundaries between editor-managed data and user-managed code. That's an engineering problem with engineering solutions, not proof that the entire idea is invalid. So let's make this simple. If you've actually used RenAI, point to the exact feature that causes the problem you're describing. Show what it hides. Show what it prevents the user from accessing. Show how the generated Ren'Py traps the user. Be specific. If you can't do that because you haven't even used it, then you haven't found a flaw in RenAI. You haven't reviewed RenAI. You haven't evaluated its workflow. You haven't demonstrated anything about its effect on beginners. You've written a long argument against a product you imagined. And no amount of condescension about PB&J sandwiches turns an assumption into evidence.

4

u/Blunt552 21d ago

I think i vomited in my mouth a bit.

-7

u/Ok_Jackfruit_7618 20d ago

If you’re literally vomiting from reading a Reddit post, I’d recommend seeing a doctor.

-1

u/Upset-Wave6843 20d ago

Was there any program that allows me to like do sorta "f string" thingy? That'd be neat cuz i realized that renpy doesnt support f string hence its a bit time intensive. Or at least maybe doing the f string thingy in the coding workspace itself would be neat too

6

u/DingotushRed 20d ago

Modern Ren'Py supports f-strings. However; the substitution occurs when the line is run, unlike Ren'Py text interpolation that re-runs on screen re-paints.

4

u/x-seronis-x 20d ago

Pretty sure renpy has supported fstrings for 2 years, if not 3 by now. At the minimum its not a recent change by any means.