프로젝트 소개

Viv는 게임과 시뮬레이션에서의 emergent narrative( emergente 내러티브)를 위한 소스 공개 엔진입니다. emergent narrative에서는 스토리가 탑다운 방식으로 작성되는 것이 아니라 시뮬레이션된 스토리월드 내에서 캐릭터가 행동함으로써 발생합니다. Viv는 내러티브 디자이너에게 캐릭터 행동을 지정하고 스토리 시프팅을 위한 구문을 제공하는 커스텀 프로그래밍 언어를 제공합니다. 여기서 스토리 시프팅은 비디오 게임 플레이와 같은 시뮬레이션 인스턴스에서 emergent 스토리라인을 식별하는 것을 의미합니다. 이 프로젝트는 현재 오픈 베타 상태입니다. Python으로 작성된 컴파일러는 .viv 소스 파일을 JSON 콘텐츠 번들로 컴파일합니다. npm에 publiés된 JavaScript 런타임은 JavaScript 및 TypeScript 코드베이스를 대상으로 하며, 액션 선택, 계획, 스토리 시프팅을 처리합니다. Unity용 C# 런타임은 계획 중이지만 아직 제공되지 않습니다. 컴파일러에는 Python 3.11 이상이 필요하며, 런타임에는 Node.js 18 이상이 필요합니다. 공개된 패키지에는 컴파일러, JavaScript 런타임, JetBrains, VS Code, Sublime Text용 .viv 파일 편집기 지원, 그리고 LLM을 활용한 설정 및 저작을 돕는 Claude Code 플러그인이 포함됩니다. 예시 TypeScript 및 JavaScript 프로젝트도 제공됩니다. 모노레포에는 구문 정의, 문서, 예시 프로젝트, 그리고 개발 중인 LLM 기반 저작 마법사도 포함되어 있습니다. 비상업적 사용은 자유롭게 허용되며, 상업적 사용은 Sifty로부터 라이선스를 받아야 합니다. 현재 프로젝트는 풀 리퀘스트를 받지 않지만, 버그 보고, 기능 요청, 피드백은 GitHub 이슈 또는 이메일을 통해 환영합니다.