Conditional Choices Framework for RenPy
IMPORTANT! The framework is in active development. New versions will drop frequently.
WHAT IS IT?
A lightweight Ren’Py system for defining and evaluating conditional dialogue choices. This framework helps you track multiple conditions and show or hide questions based on the current state of your main character.
It provides a reusable function (choice_line) that determines whether a choice is available based on conditions, structured as a Python dictionary (dict), such as player mood, traits, and time-slot occupancy, using a centralized player state.
Condition states are updated through helper functions (in character_conditions.rpy) that modify the central player dictionary:
- change_mood(amount) → updates player["mood"]
- change_trait(amount, trait) → updates player["traits"]
- occupy_time(day, slot, activity) → updates player["schedule"]
All use copy.deepcopy() (from Python copy library module) and reassignment, so they are rollback-safe.
You can add additional traits (in character_conditions.rpy) by editing the player dictionary or add new conditions by changing the dictionary and adding an update function. In the future versions, handling custom conditions would be done in a more dynamic way.
WHAT'S INSIDE?
The package contains:
- choice_core.rpy -> Core function choice_line() that evaluates conditions and returns choice data.
- condition_system/character_conditions.rpy -> Player state (player dictionary) and helper functions for updating mood, traits, and time slots.
- condition_system/condition_demo.rpy -> Example scenes demonstrating mood, trait, and time-based conditions.
- LICENSE.txt
The system is a module with easy integration, and the files and subfolders should be dropped directly in your game folder.
HOW TO USE?
- Extract the content of the archive and drop it into your /game folder.
- Follow the use instructions in this devlog.
HOW TO MODIFY?
Follow the instructions in this devlog.
YOU CAN:
- Use it for commercial and personal projects
- Use it in 18+ projects
- Modify, change and customize in any way
Check the LICENSE.txt for more information.
YOU CAN'T:
- Resell or redistribute it
Check the LICENSE.txt for more information.
Want to use it but you don't work with RenPy?
Comment below the engine or language you need the template for and I will consider making it. Leave some form of communication so I can keep you updated.
You Might Also Like:
| Published | 8 hours ago |
| Status | In development |
| Category | Tool |
| Platforms | HTML5 |
| Release date | 10 hours ago |
| Author | Dangerous Donut Games |
| Genre | Visual Novel |
| Made with | Ren'Py |
| Tags | framework, game-dev-system, Ren'Py, tool |
| Content | No generative AI was used |
Purchase
In order to download this RenPy framework you must purchase it at or above the minimum price of 1.00€ EUR. You will get access to the following files:





Leave a comment
Log in with itch.io to leave a comment.