A modular Unity dialogue system that can be easily integrated into any Unity project as a git submodule.
Assets/DialogueSystem/
├── Scripts/ # Runtime scripts
│ ├── Canvas/ # UI-related scripts
│ ├── Data/ # Data structures and containers
│ ├── ScriptableObjects/ # ScriptableObject definitions
│ ├── DSDialogue.cs # Main dialogue controller
│ └── DSDialogueActionHandler.cs # Action handling system
├── Editor/ # Editor-only scripts (not included in builds)
│ ├── Data/ # Editor data management
│ ├── Elements/ # Graph view elements
│ ├── Graphs/ # Dialogue graph assets
│ ├── Inspectors/ # Custom inspectors
│ ├── Resources/ # UI stylesheets and editor resources
│ ├── Utilities/ # Editor utilities
│ └── Windows/ # Editor windows
├── Enums/ # Shared enums and constants
├── Utilities/ # Runtime utility classes
├── Prefabs/ # Prefabs for dialogue UI
└── Dialogues/ # Dialogue data and assets
- Add this as a submodule to your Unity project:
git submodule add <repository-url> Assets/DialogueSystem- Initialize and update the submodule:
git submodule init
git submodule update- Copy the entire
Assets/DialogueSystem/folder to your Unity project's Assets folder - Unity will automatically compile the scripts and recognize the Editor folder
- All required resources are included in the module - no additional setup needed
- Import the DialogueSystem prefab from
Assets/DialogueSystem/Prefabs/DialogueSystem.prefab - Create dialogue graphs using the Dialogue Graph window (Window > Dialogue System > Dialogue Graph)
- Set up dialogue data in the Dialogues folder
- DSDialogue: Main controller for dialogue flow
- DSDialogueActionHandler: Handles custom actions during dialogue
- Dialogue Graph: Visual editor for creating dialogue trees
- Dialogue Graph Window: Visual dialogue tree editor
- Custom Inspectors: Enhanced property drawers for dialogue data
- Graph Utilities: Tools for managing dialogue graphs
- Visual dialogue graph editor
- Support for dialogue groups and global dialogues
- Custom action system
- Modular architecture for easy integration
- Editor-only scripts automatically excluded from builds
This system uses Unity's built-in features and doesn't require additional packages beyond what's included in Unity.
[Add your license information here]
[Add contribution guidelines if applicable]