
필요한 카드가 안 나오면 조건은 장식이 된다
Ice Breaker의 12턴 돌파전에는 벽 충전 3단계와 잔향 1단계를 모으면 9턴부터 오로라로 진화하는 규칙이 있다. 조건문만 맞게 작성해도 카드 후보에서 잔향이 빠지면 플레이어는 그 조합을 만들 수 없다. 이때 문제는 진화 함수보다 그 앞의 선택 경로에 있다.
9월 8일 병합한 구현은 시작 능력을 고른 뒤, 3·5·7·9턴 앞에 강화 선택을 둔다. 첫 선택은 벽 충전 또는 파쇄 씨앗이다. 시작 능력이 정해지면 그 주력과 대응하는 보조를 후보에 유지하고, 남은 자리에 공통 강화를 넣는다. 모든 능력을 매번 같은 확률로 추첨하는 구조라고 설명하면 실제 코드와 다르다.
후보에 남기는 것과 대신 골라 주는 것은 다르다
벽 충전을 택했다면 주력은 벽 충전, 보조는 잔향이다. 파쇄 씨앗을 택했다면 보조는 도화선이다. 주력은 최대 단계에 도달하기 전까지, 보조는 1단계를 얻기 전까지 후보에 남긴다. 이미 상한에 닿은 공통 카드는 다른 유효 카드로 바꾼다.
이 규칙은 진화에 도달할 선택 경로를 제공한다. 플레이어가 공통 강화만 고르거나 판을 끝내면 진화하지 않을 수 있다. “필요한 카드가 등장한다”와 “누구나 진화한다”는 다른 주장이다. 실제 선호도나 재미를 측정한 결과도 아니다.
완성 상태를 주입하지 말고 선택을 따라간다
규칙 클래스 BreakthroughRun은 씬이나 UI를 참조하지 않는다. GameSession이 발사 경계와 카드 선택을 이 클래스에 전달한다. 덕분에 물리를 돌리지 않고도 시작부터 후보와 선택을 차례로 검사할 수 있었다.
기존 WallBuild_OffersAttainableAuroraPairAtVolleyNine 테스트는 완성된 레벨 값을 강제로 넣는 대신 아래 순서를 밟는다.
이것은 기존 테스트 흐름을 요약한 표기다. 테스트는 필요한 시점의 후보와 Choose 결과를 확인하고, 마지막에 오로라 이름·진화 상태·능력 수치를 검사한다. 씨앗 경로에는 파쇄 씨앗과 도화선을 선택해 진화 뒤 발동 타격 수가 달라지는 별도 검사가 있다.
다른 게임에서 옮겨 볼 때는 일찍 진화 시도하기, 보조를 끝까지 고르지 않기, 상한 카드 다시 고르기, 진화 뒤 재호출하기도 반례로 추가할 만하다. 이 목록 전부를 이번 기록의 기존 테스트가 검증했다고 주장하지 않는다.
Begin
Choose WallCharge
PrepareUpgradeChoice(3) → Choose WallCharge
PrepareUpgradeChoice(5) → Choose WallCharge
PrepareUpgradeChoice(7) → Choose Echo
SetVolley(9) → TryEvolve카드에는 이름보다 바뀌는 행동을 적었다
실제 선택 화면에는 아이콘과 함께 “측벽에 튕긴 뒤 다음 직격이 더 세진다”는 행동, 피해 +2 → +3 같은 전후 값, 벽 충전 3 + 잔향 1 · 9턴부터라는 조건을 넣었다. 잔향에는 인접 얼음 피해, 눈덩이 묶음에는 공 개수 증가를 적었다. 같은 강화라는 이름 아래 작동 방식이 다른 점을 읽을 수 있게 한 것이다.
계산과 버튼 연결이 맞아도 배치는 별도 문제였다. 릴리스 기록에는 HUD 겹침, 재시작 글자 줄바꿈, 작은 결과 문구, 이전 카드 선택 색이 남는 문제를 화면 검토에서 고친 과정이 남아 있다. 따라서 규칙 테스트가 통과했다는 이유로 화면까지 합격 처리하지 않았다.
어디까지 확인됐나
보존한 XML은 9월 8일 EditMode 16/16, PlayMode 30/30, 뒤이은 그래픽·버튼 연결 fixture 1/1 통과를 기록한다. 본문 그림은 마지막 fixture의 실제 런타임 화면이다. 640×480 Editor에서 임시 Canvas 설정과 1080×1920 카메라 텍스처를 사용했으므로 이 결과를 세로 Android 화면에서 직접 플레이한 검증으로 확대하지 않는다.
12턴 생명주기 검사도 시험용 설정과 강제 회수를 사용한다. 선택과 턴·결과 경계의 근거는 되지만 정상 조작으로 이길 수 있는 난이도나 한 판의 소요 시간을 증명하지는 않는다. 이 사례에서 가져갈 것은 카드 개수가 아니라, 조건에 도달하는 경로와 그 조건을 설명하는 화면을 각각 확인하는 절차다.
기존 실행기록·소스 대조
검증일
검증 환경Unity 6000.5.3f1 · Windows Editor · September 8 retained EditMode/PlayMode receipts and camera-texture captures; source review on September 21
Ice Breaker PR #40의 병합 소스, 2026년 9월 8일 Unity 6000.5.3f1 시험 XML과 기존 실행 캡처를 대조했다. 글 작성 중 게임을 새로 실행하지 않았다. 캡처는 640×480 Editor 실행에서 임시 ScreenSpaceCamera Canvas와 1080×1920 카메라 텍스처로 얻었다. Android 실기기 조작·소리·난이도 또는 현재 스토어 공개 상태를 검증한 결과가 아니다.