방문자

오늘
—
어제
—
누적
—

불러오는 중

게임 개발 · 기술 동향 · 팀 블로그MIRO
헤드라인

로컬 전투 프로토타입

장비 데이터를 로컬 봇 전투에 연결하기

장비 데이터에서 선택 목록과 전투 구성을 거쳐 명중 검증으로 이어지는 흐름도
본문에서 설명한 데이터 연결과 검증 순서를 정리한 설명용 도식입니다. 실제 게임 화면은 아닙니다.

프로젝트 개요

참고한 게임의 공개 자료와 배포 자산을 대조해, 장비를 선택하고 봇과 싸울 수 있는 Unity 로컬 프로토타입을 만들었습니다. 이번 검토본은 전투와 장비 선택에 집중하며 계정·상점·서버 서비스까지 복원한 버전은 아닙니다.

장비 데이터와 전투 검증의 연결 흐름

주요 구현

  • 원작 표에서 확인한 무기38종과 방어구81종을 DDT 바이너리로 연결했습니다. 머리·몸통·망토와 남녀 외형을 선택할 수 있습니다.
  • 장비 브랜드 6종의 명칭·아이콘·3부위 세트 효과를 연결했습니다.
  • 원작 메시·텍스처·뼈·애니메이션과 별도로 이동·공격·가드·패링·회피·고유 스킬·봇 판단을 C#으로 재구현했습니다.
  • 실제 Blender에서 메시·UV·리그를 편집 가능한 파일로 저장하고 재열었습니다. 장비ID119개와 이미지198개의 파일 내장을 확인했습니다.
  • 실제 Affinity에서 워드마크 원본을 저장했습니다. 초기 임시 브랜드 디자인은 원작 아이콘을 확보한 뒤 교체했습니다.

개발 포인트

원작 장비 표와 한국어·영어 문자열을 함께 대조했습니다. 장비 이름만 맞추는 대신 공격력·체력의 기본값과 단계별 성장값을 연결했습니다. 공개 장비 화면에 표시된 한 무기의 11레벨 공격력 203과 한 방어구의 6레벨 체력 420을 같은 표에서 계산해 확인했습니다.

GearCatalog.Load는 장비 바이너리를 실제 DDT로 읽은 뒤 ID 순서로 정렬합니다. 장비 선택은 이 목록을 사용하고, 전투 구성 시 원작 SkillSet·HitReference·ConditionEffect를 조회합니다.

private static List<GearRow> Load(TextAsset binary)
{
    if (binary == null) { throw new InvalidOperationException("DDT 장비 바이너리가 연결되지 않았습니다."); }
    var rows = new List<GearRow>(DataLoader.ReadBinaryDictionary<GearRow>(binary.bytes, BINARY_KEY).Values);
    rows.Sort((a, b) => a.id.CompareTo(b.id));
    return rows;
}
flowchart TD
    A[장비 TextAsset] --> B{바이너리 연결 여부}
    B -->|없음| C[예외로 누락 알림]
    B -->|있음| D[DDT Dictionary 읽기]
    D --> E[장비 ID 정렬]
    E --> F[장비 선택과 Fighter 구성]
    F --> G[스킬·타격·상태 표 조회]

원작의 최적화된 스킨은 뼈 목록이 비어 있었고, 일부 클립은 단순 복제만으로 자세가 재생되지 않았습니다. Avatar의 뼈 경로·포즈와 메시의 bone hash를 대조해 리그를 만들고, 파생 legacy 클립에 애니메이션 커브와 이벤트를 옮겼습니다. 원본 파일은 그대로 보존했습니다.

실행 검증에서는 장비 선택 성공과 실제 명중을 따로 확인했습니다. 고정 빌드에서 무기38종을 네 거리의 정지 표적에 공격시켜38종 모두 피격 콜백과 피해가 발생했습니다. 스킬도 전부 실행했지만, 피해가 없는 유틸리티 스킬은 충전 소비만으로 효과의 정확성까지 통과 처리하지 않았습니다.

수동 검토 중에는 체력 숫자가0이 되어도 막대가 가득 차 있는 오류를 발견했습니다. uGUI의 Filled 이미지는 Sprite가 없으면 전체 사각형을 그리는 경로를 사용했습니다. 씬에 Sprite를 저장하고, 체력이0일 때 막대가 실제로 비는 화면과 씬 재열기 검사를 확인했습니다. 최신 회귀 검사는35개가 통과했습니다.

초기 구현부터 시각 자산 연결, DDT 성장값 대조, Blender 저장과 재열기, 편집 원본 확인, 전투와 UI 검증까지 단계별로 확인했습니다.

검토본의 제한

이 글은2026년11월13일 검토본 기준입니다. 실제10시간 자동 전투 검증은 글 작성 시점에 진행 중이며, 완료했다고 보고하지 않습니다. 최신 변경 빌드의 짧은 실행 검사와 이전 고정 빌드의 장시간 검증은 서로 다른 증거입니다.

일부 스킬 효과와 변신 외형, 드론 능력, 몬스터·지역 상점·보급품은 남아 있습니다. 가드 피해 비율·기본 회피 거리·일부 감전 계산 등 서버에서 확인하지 못한 값은 프로토타입 가정입니다. Affinity의 초기 임시 atlas는 저장 대화상자 처리가 남아 있으며, 이를 완성된 네이티브 원본으로 포함하지 않습니다.

장비 표는 선택과 성장 계산에, 원작 시각 자산은 표현에, 프로젝트 전투 코드는 입력과 봇 경기에 연결했습니다. 다음 검토에서는 이 연결이 실제 플레이에서 원작과 얼마나 일치하는지 확인할 수 있습니다.

댓글

이 글에 대한 생각을 남겨 주세요.

댓글 삭제

헤드라인

같은 카테고리의 글

프로젝트 개발일지 전체 보기 ↗