Thanks to visit codestin.com
Credit goes to lib.rs

4 releases

Uses new Rust 2024

0.2.0 Aug 16, 2025
0.1.2 Jul 21, 2025
0.1.1 Apr 19, 2025
0.1.0 Mar 15, 2025

#1269 in Text processing

Codestin Search App Codestin Search App

186 downloads per month

MIT/Apache

50KB
1.5K SLoC

Visual Novel settings

Crates.io

A cross-platform configuration system for visual novels, featuring cascading overrides and real-time state management.

Overrides

This library provides various settings to simulate visual novels in Rust applications. It includes settings for colors, timing, images, objects, layout, and names.

Each parameter can have a default value and you can add temporary overrides to these values, which will only be active during a single continuous dialog.

Most parameters can also have a character specific values, which are only set when a character speaks. These character specific parameters can also have temporary overrides.

The priorities of the values is like this:

  1. General scene value (scene)
  2. General character specific scene value (characters_scene)
  3. General character specific default value (characters_default)
  4. General default value (default)

This should make managing state for visual novels easy.

Features

🎨 Cascading Settings

Override colors, timing, and layouts at multiple levels:

settings.set_character_default(Setter::Color(
    ColorParameter::Dialog(BoxColorParameter::TextFill).named("Alice"),
    Color::RED
));

🔄 State Management

Track defaults, character-specific overrides, and scene changes:

settings.change(&Change::Timing(
    TimingParameter::AutoNext.named("FastMode"),
    1.0
));

📦 Serialization Ready

All types implement serde::Serialize (enable serde feature).

Core Types

Type Description
PlayerSettings Root container for all configuration
Override<T> Hierarchical value management
Parameter Addressable setting path
Change Mutation operation

Documentation

API Reference

Developed with ❤️ for visual novel creators

Dependencies

~1–1.6MB
~30K SLoC