Dialogue System
Branching conversations with speakers, choices, conditions, and effects with visual editing and a readable script format.
Doodle Engine is built for text-driven RPGs and narrative adventure games where dialogue and world state are the core mechanics.
It emphasizes story, choices, and systemic narrative flow rather than movement, combat, or pathfinding.
The engine is written in TypeScript and designed to be ruleset-agnostic, giving writers and programmers a flexible foundation for story-heavy games.
Its scripting model draws inspiration from Infinity Engine titles such as Baldur’s Gate I and II, Icewind Dale, and Planescape: Torment.
Planning a story-driven game? See whether Doodle Engine is a good fit.
Dialogue System
Branching conversations with speakers, choices, conditions, and effects with visual editing and a readable script format.
World Content
Create locations, characters, items, quests, journal entries, and maps as connected game content.
Localization
Add languages, manage translation strings, and test localized content.
Narrative Interludes
Full-screen text sequences for chapter introductions, dreams, flashbacks, and story moments.
Persistent World State
Let choices change flags, variables, relationships, character locations, inventory, quests, journal entries, and the wider world.
Conditions and Dice
Branch on game state, time of day, inventory, quest progress, relationships, character stats, and random rolls.
Quests, Inventory, and Maps
Build multi-stage quests, inventory items, journals, connected locations, and navigable maps.
Audio and Music
Use music, ambience, sound effects, interface sounds, and voiced dialogue throughout the game.
Images and Video
Present location banners, character portraits, item art, interlude imagery, interface screens, and video cutscenes.
Validation and Playtesting
Catch broken references and invalid content, then test individual story paths or preview the complete game.
Complete Game Shell
Start with a full game flow including splash and title screens, settings, save and load, pause menus, credits, and input handling.
Framework-Agnostic Core
Core engine written in TypeScript with no UI dependencies. Integrate with any renderer or frontend framework.
Predictable State Flow
Game actions update the engine state, and the renderer uses that state to update the interface. This keeps game logic separate from presentation and makes changes easier to follow.
React Components
Components for dialogue, choices, inventory, journal, map, and characters that can be used together or replaced individually.
Asset Pipeline
Discover referenced media, preload it before gameplay, validate missing files, and include project assets in production builds.
Development Tools
Console tools for inspecting state, setting flags, teleporting, and triggering dialogues.
CLI
A development server with hot reload, production builds, and content validation for Studio projects.
Web, Desktop, and Mobile
Host production builds on the web or package them for desktop and mobile using standard web application wrappers.
Doodle Studio is the purpose-built desktop editor for creating Doodle Engine games. From one workspace, you can:
Studio works directly with the same project files as the engine and CLI, so you can move between visual editing and source-level customization whenever your game needs it.
Explore Doodle StudioThe Doodle Engine CLI works inside the projects created by Studio. Use it to run the game while editing files directly, automate validation and builds, or develop a custom application and renderer.
Set up the command lineSee how Studio and the CLI fit together
The engine core does not assume a UI or save backend. Renderers, shells, and persistence layers can be replaced or customized.
Combine effects and conditions in dialogue to implement mechanics such as reputation systems, skill checks, crafting, or shops without modifying the engine core.