# 유틸리티 스크립트 JSON 데이터 탐색 및 정보 조회를 위한 유틸리티 도구 모음 --- ## 📋 스크립트 목록 ### list_asset_types.py **용도**: AnimMontage.json의 모든 Asset 타입 목록 출력 **사용 예시**: ```bash python utils/list_asset_types.py ``` **출력**: ``` 총 743개 Asset 발견 Asset 타입 분포: - AnimMontage: 743개 ``` **활용 사례**: - AnimMontage.json에 어떤 타입의 Asset이 있는지 확인 - 새로운 데이터 소스 추가 시 구조 파악 --- ### list_datatables.py **용도**: DataTable.json의 모든 DataTable Asset 목록 출력 **사용 예시**: ```bash python utils/list_datatables.py ``` **출력**: ``` 총 23개 DataTable 발견: 1. DT_CharacterStat (10 rows) 2. DT_CharacterAbility (10 rows) 3. DT_Skill (91 rows) 4. DT_NPCAbility (15 rows) ... ``` **활용 사례**: - DataTable.json에 어떤 테이블이 있는지 확인 - 새로운 DataTable 추가 시 Row 개수 확인 - 데이터 구조 탐색 --- ## 🔧 개발자 가이드 ### 새로운 유틸리티 추가 방법 1. **파일 생성**: `utils/` 폴더에 새 스크립트 생성 2. **명명 규칙**: `{동사}_{대상}.py` (예: `extract_skill_names.py`) 3. **공통 패턴 준수**: ```python #!/usr/bin/env python3 """ [스크립트 용도 설명] """ import json from pathlib import Path # 프로젝트 루트 PROJECT_ROOT = Path(__file__).parent.parent.parent DATA_DIR = PROJECT_ROOT / "원본데이터" def main(): """메인 실행 함수""" # JSON 로드 with open(DATA_DIR / "DataTable.json", 'r', encoding='utf-8') as f: data = json.load(f) # 로직 구현 # ... # 결과 출력 print(f"결과: ...") if __name__ == "__main__": main() ``` 4. **README 업데이트**: 이 파일에 새 스크립트 설명 추가 --- ## 📚 관련 파일 - **../config.py** - 프로젝트 전역 설정 - **../../원본데이터/** - JSON 데이터 소스 - **../../ARCHITECTURE.md** - 데이터 구조 상세 문서 --- **작성자**: AI-assisted Development Team **최종 업데이트**: 2025-10-27