처음에는 단순한 통로처럼 보입니다.
하지만 STOP 표지판 뒤로 한 번 들어간 뒤부터, 같은 갈림길은 이전과 다른 반응을 보이기 시작합니다.
이곳에 도사리고 있는 비밀을 밝혀야 합니다. 과연 이 공간에서 무사히 집으로 돌아갈 수 있을까요?
표지판 뒤 공간, 전등 버튼, 막힌 길이 서로 어떻게 연결되는지 읽어야 합니다.
방은 이전 선택을 기억합니다. 돌아갈 타이밍을 틀리면 출구는 실패 지점으로 바뀝니다.
01 / About This Game
BackRoom Level 0은 좁은 갈림길을 반복해서 통과하는 클릭 공포 어드벤처입니다. 플레이어는 달라진 색, 막힌 길, 재진입 경고를 읽고 진짜 출구가 열리는 순서를 찾아야 합니다.
하지만 STOP 표지판 뒤로 한 번 들어간 뒤부터, 같은 갈림길은 이전과 다른 반응을 보이기 시작합니다.
처음 지나간 갈림길로 돌아오지만, 방은 같은 방식으로 반응하지 않습니다.
탈출, 가짜 출구, 재진입 실패. 같은 공간에서 세 결말로 갈라집니다.
설치 없이 브라우저에서 바로 시작할 수 있습니다.
중앙 STOP 표지판은 단순한 배경이 아니라 첫 진입 지점입니다.
스위치를 누른 뒤 돌아오면 같은 방이 다른 상태로 돌아옵니다.
위험한 재진입은 별도 엔딩으로 이어집니다.
막힌 길의 경고를 우회해야 진짜 출구에 도달할 수 있습니다.
02 / Play Experience
좁은 갈림길 안에서 반복, 단서, 재진입의 압박을 만듭니다. 플레이어는 더 많은 장소가 아니라 달라진 상태를 읽으며 앞으로 나아갑니다.
처음에는 표지판 뒤가 가장 수상합니다. 이후 중앙 클릭은 단순 이동이 아니라 새 진입 조건이 됩니다.
room: fork_stop왼쪽 길에서 전등 버튼을 찾습니다. 버튼을 누르면 STOP 뒤 공간이 붉게 바뀝니다.
flag: light_switch_pressed오른쪽 길은 단서와 경고를 남깁니다. 경고를 무시하고 문을 다시 누르면 가짜 출구 루트로 밀려납니다.
event: right_doorSTOP 뒤 공간에서 나온 뒤 바로 다시 들어가면, 기다리고 있던 존재와 마주칩니다.
flag: stop_back_reentry_armed03 / How It Works
플레이 뒤에는 구조를 확인할 수 있습니다. 방 그래프, 클릭 이벤트, 상태 플래그, 엔딩 루트는 프로젝트 파일에 남아 있고 같은 기준으로 다시 검증됩니다.
8개 방과 이동 경로를 data/rooms.json에서 관리합니다.
전등, 재진입, 단서 확인은 flag로 분리합니다.
A/B/C 엔딩 루트는 실제 클릭 순서로 재검증합니다.
Godot Web export로 브라우저 플레이 빌드를 제공합니다.
04 / Pipeline Case Study
공개 플레이 기준선은 그대로 두고, 리폼 실험은 격리 사본에서만 진행했습니다. 아래 수치는 Before와 After를 같은 QA 기준으로 비교한 결과입니다.
| Axis | Before | After pipeline run |
|---|---|---|
| Rule logic location | src/Game.gd가 상태와 룰을 함께 처리 |
src/GameEngine.gd autoload가 상태와 룰을 소유 |
| Measured LOC | Game.gd 1440 LOC |
Game.gd 1329 LOC + GameEngine.gd 425 LOC |
| Render to rule coupling | 렌더 노드의 직접 룰/상태 변이 15 lines | 렌더 노드 직접 룰 판정 0, 룰 변이는 engine으로 이동 |
| Add one room or event | 코드 분기 수정 필요 | A3 probe에서 리소스 추가만으로 검증, 코드 hash 유지 |
| Testability | 씬과 렌더 상태에 강하게 결합 | 엔진 snapshot과 state_changed 기준으로 headless 검증 가능 |
| Behavior parity | validate_routes 8/8 + A/B/C PASS |
A2a, A2b, A3 모두 8/8 + A/B/C PASS |
05 / Proof
게임 컨셉만 말하지 않습니다. 방 그래프, 상태 문서, route validator, A/B/C QA를 함께 연결해 실제 구현 범위를 확인할 수 있게 했습니다.
data/rooms.jsondocs/CODEGRAPH.mdtools/qa_game_flow.gdtools/validate_routes.pytools/build_portfolio_html.py06 / Play & Notes
첫 방문자는 게임부터 시작하면 됩니다. 구조와 검증 기준이 궁금하면 이 페이지의 개발 노트와 근거 섹션을 확인하면 됩니다.