
백엔드
쿠키런: 킹덤의 전투 데이터, JSON Schema로 검증하고 자동완성하기
두줄요약
JSON Schema로 게임 전투 데이터의 수기 입력 오류를 검증하고 자동완성까지 지원하는 방법을 소개했습니다. 스키마 자동 생성, 후처리, VS Code 연동으로 생산성과 정확도를 높였습니다.
문제 상황
- 게임 전투 데이터를 JSON으로 수기 입력할 때 오타와 잘못된 값 발견이 어려운 문제
- 유니티 JSON 역직렬화가 잘못된 필드와 타입을 조용히 무시해 오류 추적이 어려운 문제
- 테이블 형식만으로는 선택적 필드, 스택, 분기 조건이 많은 복잡한 전투 데이터를 다루기 어려운 한계
원인 분석
- 데이터 구조와 입력 방식이 복잡해지면서 스프레드시트 기반 입력만으로는 가독성과 유지보수성 저하
- 기본 JSON Schema 생성 결과가 PascalCase 프로퍼티, 공개 프로퍼티, 숫자형 Enum 등 실제 입력 규칙과 불일치
- 필수값 과다 요구와 additionalProperties 미제어로 검증 결과가 실사용 데이터와 맞지 않는 문제
해결 방법
- 클래스 기반 JSON Schema 자동 생성 후 Contract Resolver로 키 이름과 타입 매핑 보정
- Enum 문자열화, additionalProperties 제어, required 정리 등 JSON Schema 후처리로 입력 규칙에 맞게 수정
- Visual Studio Code의 JSON Schema 연동으로 자동완성과 실시간 검증을 제공해 작성 효율 향상
