MMX Beta Project Documents 계획, 근거, 댓글이 같은 기록으로 남는 작업 저장소

SCENARIO_ASSET_REVIEW_UI_001 - 시나리오 에셋 검토 UI 개선안

  • 문서 ID: SCENARIO_ASSET_REVIEW_UI_001
  • 작성일: 2026.05.24
  • 작성자: Codex PM
  • 상태: 보류된 개선안. 에셋 파서 정의 후 적용
  • 관련 화면: https://www.playmmx.com/studioPOC/workflows/

저장 목적

Workflow Viewer 개선 논의 중 도출된 에셋 카드 UI 아이디어를 보존한다.

이 개선안은 즉시 구현 대상이 아니라, scenarioReader가 캐릭터, HO, 단서, 장소 등 에셋을 안정적으로 추출할 수 있게 된 뒤 적용한다.

판단

UI 개선안은 수용한다.

다만 흐름도 노드 안에 에셋 정보를 직접 넣지 않는다. 흐름도는 시나리오 진행 오류를 찾는 검토 화면이고, 에셋 카드는 시나리오 구성 요소를 검토하는 별도 화면이다.

적용 원칙

  1. 흐름도 검토 기능을 해치지 않는다.
  2. 노드 내부에 정보를 더 밀어 넣지 않는다.
  3. 캐릭터, HO, 단서, 장소는 별도 패널 또는 탭으로 분리한다.
  4. 먼저 에셋 데이터 구조와 parser를 정의한 뒤 UI를 입힌다.
  5. 카드 UI는 한국어 장문 텍스트를 안정적으로 표시해야 한다.

권장 화면 구조

  • 상단: 시나리오 선택, 요약, 검증 상태
  • 중앙: FLOW
  • 우측: 선택 챕터 상세
  • 우측 패널 전환 또는 별도 탭:
    • 챕터
    • 캐릭터
    • HO
    • 단서
    • 장소

캐릭터 카드 방향

캐릭터 탭에서는 카드형 UI를 사용한다.

카드 기본 항목:

  • 이름
  • 프로필 이미지 또는 아바타
  • 나이
  • 직업
  • 스킬
  • 개요
  • 니즈
  • 결정 또는 Flaw
  • 트리거 또는 트라우마

표시 원칙:

  • 제목과 핵심 메타 정보는 상단에 고정한다.
  • 개요, 니즈, 결정, 트리거는 본문 영역에서 줄바꿈을 보존한다.
  • 카드의 목적은 꾸미기가 아니라 작가가 캐릭터 설계 오류를 찾는 것이다.

에셋 선언 포맷 초안

현재 scenarioFiles 상단 에셋 선언은 자유문장에 가깝다. parser가 안정적으로 추출하려면 아래와 같은 명시 포맷이 필요하다.

/캐릭터
코덱스
나이: 23
직업: 변호사
스킬: 투명 망또
개요: 항상 단정한 정장. 오른쪽 눈 밑의 작은 흉터.
니즈: 사건의 진실을 피해자는 것.
결정: 타인을 불신하며 모든 짐을 혼자 짊어지려 함.
트리거: 비 오는 날의 사이렌 소리

/HO
코덱스HO1
대상: 코덱스
내용: ...

/단서
찢어진사진
유형: 증거
설명: ...

/장소
거실
설명: ...

적용 순서

  1. 에셋 선언 포맷 확정
  2. scenarioReader에 asset parser 추가
  3. workflow JSON에 assets.characters, assets.handouts, assets.clues, assets.locations 추가
  4. Workflow Viewer 우측 패널에 탭 구조 추가
  5. 캐릭터 카드 UI 적용
  6. HO, 단서, 장소 카드 UI 확장
  7. mmxStudio scenarioAssetManager 구현 계획에 반영
  8. Flutter scenarioPlayer asset import 구조에 반영

보류 사유

지금 바로 예쁜 카드부터 만들면 다시 껍데기 작업이 된다.

현재 우선순위는 시나리오 텍스트를 정확히 읽고, JSON을 만들고, 흐름도를 통해 진행 오류를 잡는 것이다. 에셋 카드는 이 기반 위에서 붙인다.

후속 작업 후보

  • SCENARIO_ASSET_FORMAT_001: 에셋 선언 문법 확정
  • scenarioReader: asset parser 추가
  • Workflow Viewer: 에셋 탭 추가
  • mmxStudio: scenarioAssetManager 구현 계획 반영
  • Flutter app: scenarioAsset API/import 구조 반영

댓글