Disclosure: This website contains affiliate links, which means we may receive a commission if you click a link and purchase something through our website. Purchasing assets through our links won’t cost you any extra money and will help fund the hosting and development of this site.
A Visual Novel / Text game toolkit. ChoiceEngine is designed to work as the foundation of any text based game, making all the necessary features available in just a few clicks.
- Node based architecture that allows for any conversation to be structure and modified at any time with little to no effort.
- Every "node" can be customized in terms of sprites, characters, background, sounds, music, random events and response type.
- Image customization system which allows complete freedom in the creation of any character, background etc.
- Saving and loading system.
- Affection / Amity system.
- Character profiles.
- Custom sprite spawn points.
- Character portraits.
- Export and import of data (text,int,string and bool options) into/from files (XML).
- Import of data from text files (text import only, separated by blank lines).
- Unlock and view CG.
- Conversation log.
- In-editor node visualizer.
- Text animation and timing.
- Auto, skip and auto save/load functions.
- Inventory system supporting categories, item inspection and progression determined by possession of specified items.
- Item notifications system.
- Sprite animation (loop and play once).
- Main Menu.
- Scene loading transitions.
- Level loading on nodes (including passing data across levels).
- Requesting and displaying player's name (both as a label and in any text field by using a "[name]" tag).
- Prefabs models can be used instead of (or alongside with) character sprites. This feature also enables the usage of certain Live2D models.
- Background video playback.
- Choice countdown timer (player can be limited in time when making a choice).
- Custom variables / variable checks, allowing flexible storytelling.
- Custom functions can be invoked on each node.
- Multi-langauge support for nodes, choices, names, and descriptions.
- Detailed documentation.
The toolkit itself is fully expandable and allows easy addition / customization of any features.