Ludoframe

A storytelling tool integrated into Unity

2-year development • Lead Developer • TypeScript, React, Electron - C#, Unity

A tool owned by Ludogram

Ludoframe represents my most significant contribution to development tooling at Ludogram, where I served as the primary developer over a 2-year period. This comprehensive narrative design tool fundamentally transformed how our studio approaches interactive storytelling, becoming an essential part of the production pipeline for Worlds of Aria and other projects.

Project Overview & Impact

What began as a solution to streamline narrative designer workflows evolved into a studio-wide tool that bridges the gap between creative writing and technical implementation. Ludoframe now serves multiple roles across different disciplines:

  • Narrative Designers: Design and write interactive game stories with visual clarity
  • Artists: Test scenes and visual effects triggered by narrative events
  • Programmers: Debug and validate scripted game mechanics in real-time

Technical Architecture

Cross-Platform Desktop Application

Built using TypeScript, React, and Electron, Ludoframe provides a native desktop experience while leveraging modern web technologies for rapid development and cross-platform compatibility. This architecture choice enabled seamless deployment across different development environments within the studio.

Domain-Specific Language Design

At the core of Ludoframe lies a custom domain-specific language tailored for interactive narrative scripting. This language encompasses:

  • Narrative Branching: Complex story path management with conditional logic
  • Level Context Integration: Scene and environment state management
  • Item Management Systems: Inventory and object interaction scripting
  • Character Dialogue Systems: Multi-character conversation flows

Real-Time Unity Integration

One of Ludoframe's most powerful features is its seamless integration with Unity through a custom network protocol. This system enables:

  • Live Script Testing: Instant preview of narrative changes within the Unity editor
  • State Preservation: Maintains current game state during script updates
  • Hot Reloading: Automatic compilation and deployment of script modifications
  • Cross-Team Collaboration: Simultaneous editing and testing by multiple team members

Advanced Development Features

Visual Node Editor

Designed and implemented a comprehensive node-based interface that transforms complex narrative structures into intuitive visual representations. The editor supports:

  • Story branching visualization with conditional pathways
  • Character dialogue trees with speaker assignments
  • Game state modification nodes
  • Visual effect and audio trigger integration

Intelligent Code Analysis & Autocompletion

Developed a sophisticated code analysis system that provides context-aware assistance to content creators:

  • Syntax Highlighting: Real-time visual feedback for script structure
  • Error Detection: Immediate identification of syntax and logical errors
  • Variable Tracking: Automatic detection and suggestion of available game variables
  • Context-Aware Suggestions: Intelligent autocompletion based on current narrative context

Technical Implementation Challenges

Compilation Pipeline Maintenance

Maintained and extended the existing JavaScript/TypeScript compilation pipeline that converts narrative scripts into Unity-compatible XML files. This involved optimizing the parsing process, handling edge cases, and ensuring compatibility with Unity's runtime interpreter.

User Experience Optimization

Addressed complex UX challenges to create an intuitive interface for non-technical users while maintaining the flexibility required by programmers. This included designing context-sensitive menus, streamlining common workflows, and implementing responsive visual feedback systems.

Technical Stack

  • Frontend: React, TypeScript
  • Desktop Framework: Electron
  • Language Processing: JavaScript compiler
  • Integration: Custom Unity protocol through network
  • Output Format: XML for Unity runtime
  • Architecture: Real-time compilation pipeline

Project Impact & Learning

Leading Ludoframe's development over two years provided invaluable experience in tool architecture, user-centered design, and cross-disciplinary collaboration. The project's adoption throughout the studio validated the importance of investing in developer tools that bridge technical and creative workflows.

This project ignited my passion for development tooling and demonstrated how well-designed tools can dramatically improve team productivity and creative expression. The experience of building software used daily by colleagues taught me the critical importance of user feedback, iterative design, and maintainable architecture.

This tool is completely closed source, but here are some screenshots I have permission to share:

Ludoframe Node Editor Interface Ludoframe Script Editor with Autocompletion