Welcome to Project DVN’s documentation!
Project DVN is a powerful, user-friendly and flexible free open-source visual novel engine written in the D programming language. It’s designed to help creators craft immersive, interactive narrative experiences. Whether you’re a solo storyteller, an indie developer, or a studio, Project DVN provides the tools and flexibility needed to bring your stories to life. No advanced technical skills required. Start your journey today!
Note
This project and its documentation is under active development.
Contents
- Getting Started
- Creating Your First Visual Novel
- Data Folders
- Adding Music And Sound Effects
- Changing Fonts
- Scripting
- File Structure
- Comments
- Properties
- background=VALUE (bg=VALUE)
- music=VALUE (m=VALUE)
- sound=VALUE (s=VALUE)
- char=VALUE (c=VALUE)
- charName=VALUE (n=VALUE)
- charNamePos=VALUE (np=VALUE)
- charColor=VALUE (cc=VALUE)
- charPos=VALUE (cp=VALUE)
- charMovement=VALUE (cm=VALUE)
- charMovementSpeed=VALUE (cms=VALUE)
- characterFadeIn (cf)
- text=VALUE (t=VALUE)
- text:SCENE=VALUE (t:SCENE=VALUE)
- animation:X,Y=VALUE (ani:X,Y=VALUE)
- animation:X,Y:REPEAT=VALUE (ani:X,Y:REPEAT=VALUE)
- animation:X,Y:REPEAT:POSITION=VALUE (ani:X,Y:REPEAT:POSITION=VALUE)
- image:X,Y=VALUE (i:X,Y=VALUE)
- image:X,Y:POSITION=VALUE (i:X,Y:POSITION=VALUE)
- option:SCENE=VALUE (o:SCENE=VALUE)
- act:SCENE:CONTINUE_TEXT=VALUE (a:SCENE:CONTINUE_TEXT=VALUE)
- label:FONT_SIZE:X,Y:COLOR=VALUE (l:FONT_SIZE:X,Y:COLOR=VALUE)
- view=VALUE
- hideDialogue
- hideButtons
- Events
- Production Example
- Modules And Functions
- Changing Executable Name And Icon
- Changing Company Name, Version Info, Copyright Etc.
- Custom Views
- Adding Video
- Settings
- Video Intro Screen
- Customizing The Main Menu
- Advanced Development using DVN
- Frame Loop & Loop Overrides
- Multi-Window / Multi-Instance Support
- Custom Rendering Pipelines (OpenGL, 2D/3D, Overlays)
- Networking (Multiplayer / Streaming)
- Script Data Injection (injectGameScript)
- Modifying or Replacing Built-in UI Components
- Full Engine Theming & Reskinning
- Dynamic Character Models (States, Directions, Actions)
- DOM / CSS3 / Markdown Parsing
- Custom Save/Load Logic
- Extended Debugging / Diagnostics (Advanced)
- Internal Engine Architecture Overview
- External Functions