RPG Event Generator - v5.0.0
    Preparing search index...

    Configuration

    RPGEventGenerator accepts a GeneratorOptions object.

    const generator = new RPGEventGenerator({
    theme: 'fantasy',
    debug: false,

    // Reproducible generation (optional)
    rng: new (require('rpg-event-generator').SeededRandom)(42),

    // Tier 2 layers (all optional)
    enableTemplates: true,
    templateLibrary: null,
    enableModifiers: true,
    enableRuleEngine: true,
    enableRelationships: true,
    enableDependencies: false,

    // Legacy Markov mode (off by default in v4)
    pureMarkovMode: false,
    trainingData: [], // Markov training strings (pureMarkovMode only)

    // Database (Tier 3)
    enableDatabase: true,

    // Localization
    language: 'en',

    // AI (experimental)
    aiEnhancement: {
    provider: 'openai',
    apiKey: process.env.OPENAI_API_KEY
    }
    });
    Option Default Description
    rng auto Injectable SeededRandom for reproducible generation
    theme null Theme label for generation
    debug false Console logging
    enableTemplates true Try templates before core
    templateLibrary null Genre/library to load
    enableModifiers true Weather/time/season modifiers
    enableRuleEngine true Post-process with rules
    enableRelationships true NPC relationship system
    pureMarkovMode false Use Markov instead of content library
    enableDatabase true Init template DB (memory adapter default)
    language 'en' Localization language
    aiEnhancement off Optional AI rewrite layer
    customRules {} Named rule definitions

    Jam game (Tier 1 only):

    new RPGEventGenerator({ enableTemplates: false });
    // or just generateRPGEvent(context)

    Custom templates:

    new RPGEventGenerator({
    enableTemplates: true,
    templateLibrary: 'my_genre'
    });

    Markov legacy mode:

    new RPGEventGenerator({
    pureMarkovMode: true,
    trainingData: ['sentence one', 'sentence two']
    });
    new RPGEventGenerator({ enableDatabase: false });
    

    Useful when you don't need template persistence and want zero async init.