YGGDRASIL WEBPROTO · DECISION GATE
건물 시스템 + 맵 1.5배 확장 — 결정 게이트
결정 축 8개 · 목업 3종 · 작성 gd-techdesigner 2026-07-19 · 입력 synthesis.md (canon·maverick 절충)
답하는 법 — 아래 카드를 눌러 조합을 바꾸면 화면 하단 바가 채팅용 답변 문장을 만들어 준다.
추천 그대로면 "추천대로" 한 마디, 일부만 바꾸면 "5A로, 나머지 추천대로"처럼 한 줄이면 끝.
결정이 필요 없는 합의 전제(P1~P7)는 §0에 접어 두었다.
§0
합의된 전제 — 결정 불필요
정합파·모험파가 독립적으로 일치. 목업·구현 발주의 고정 전제.
P1벽 = 셀-벽 (1셀 점유 풀커버, 세그먼트별 HP). 엣지(얇은 벽) 도입 안 함
P2스테이지1 동결, 스테이지2 신설 — 골든 12항목·오토배틀 앵커 보호
P3적이 건물을 보유하는 공세 시나리오 — 아군 농성이면 95% 승률이 더 오른다
P4문 = 통과 시 자동 개방 + 진입 +1 AP · 닫힘 = LoS 차단 · HP 6 · 닫기 = Bonus
P5결정론·CSV 진실원·UE 이식 가능·프리미티브 렌더 전부 유지
P6다층(2층+) 실내 컷 — 단층 + 옥상까지만
P7붕괴·낙하는 기존 FloorState·applyFall·prone 재사용, 신규 수치는 tuning.csv 경유
축 1
벽 파괴 문법
벽은 HP 총량인가, 원소 매질인가
—
1A✓ 선택
HP-only
전 벽 세그먼트 HP 16. 사격·타격으로만 브리치.
▲ 회귀 반경 최소 · ▼ "벽 깎기 노동"(XCOM의 지루함) 수입
되돌리기 —
1B★ 추천✓ 선택
재질 wood / stone
Obstacle.material 1필드. wood = 인화 flood-fill 그래프 참여 — 인접 fire로 점화, 2턴 연소 후 자괴 → fire 장판 + 실내 쪽 smoke. stone = 1A와 동일. 1B ⊃ 1A (stone만 배치하면 등가 — 하방이 막혀 있음).
▲ 포지셔닝×원소연쇄가 처음 곱해지는 지점 (반나절 급 비용) · ▼ 골든 1항목 + 연소 카운터 추가
되돌리기 낮음 — 데이터(wood 배치 제거 = 즉시 1A)
목업 — 1B 연소 시퀀스 (◀ ▶ 로 턴 진행)
stone 벽 (HP 16)
wood 벽 (인화)
문
fire 장판
smoke
아군
적
축 2
수직 스코프 · 시점
옥상·사다리를 v1에 사는가 — 되돌리기 비용 축 중 최고
—
2A✓ 선택
v1 풀 일괄
2레이어(roof)·사다리·LoS 정수 개정·AoE 레이어 규약·컷어웨이 렌더를 v1에 전부 한 번에.
▲ 발주 충실·스펙 완비 · ▼ 최대 리스크(LoS 개정+레이어 점유) 일괄 부담
되돌리기 높음
2B✓ 선택
중정 먼저 + 관측 게이트
A단계 중정(벽+문만, 지붕 없음) → 실플레이에서 "옥상 욕구" 관측되면 B단계(레이어+사다리) 구매.
▲ 실패가 싼 순서 · ▼ 파트너가 명시 발주한 천장·사다리를 관측 조건부로 지연 — 파트너만 승인 가능
되돌리기 낮음 (안 산 것)
2C★ 추천✓ 선택
하이브리드
스코프는 2A(발주 4요소 전부 v1), 구현 순서만 분할 — 중정 마일스톤 → 옥상 마일스톤 (내부 체크포인트, 파트너 게이트 아님).
▲ 리스크 분할 + 발주 충실 동시 확보 · ▼ 중간 산출물 낭비 가능 (옥상 확정이므로 낭비분 = 순서 비용뿐)
되돌리기 높음 (옥상을 사는 순간 2A와 동일)
종속 스펙옥상을 사는 순간 필수 — LoS 높이 개정(눈높이=유효높이+1 · 정수 교차곱 · 동률=차단 · 골든/오토배틀 재검증 같은 커밋) · AoE 레이어 규약("천장은 천장이다" — 조준 레이어에만) · 점유 키 coordKey+'^' 접미사, unitAt(b,c,layer) 시그니처 강제 · 사다리 등반 2 AP·파괴 불가(고립 데드락 방지 — 파괴 만능의 명시적 예외).
목업 — 지붕·컷어웨이·4A 은닉 화면감 + 옥상 높이
렌더
옥상 높이
축 3
실내 대기 — 밀폐 · 환기
밀폐 셀의 구름 장판 수명 면제 룰을 언제 사는가
—
3A✓ 선택
v1 도입
enclosed(지붕 아래·외기 미연결, flood-fill 판정) 셀은 smoke/poison_cloud 수명 tick 면제. 문 개방 = 환기. 실내 fire는 tick마다 smoke 생성.
▲ 실내가 "공기가 다른 공간"이 됨 — 독가스·caltrops 니치 · ▼ v1 룰 표면적 증가 + bteam 변수 +1
되돌리기 낮음 — tick 스킵 분기 2곳 제거
3B★ 추천✓ 선택
v1.5 보류
룰 자리만 예약 (스펙 문장은 3A와 동일하게 완성돼 있음). 코어 검증 후 착수 — v1.5 착수 비용 0.
▲ v1 검증 대상("건물이 밸런스를 고치는가")에 변수를 얹지 않음 · ▼ 실내 니치는 v1.5까지 없음
되돌리기 낮음
3C✓ 선택
컷
도입하지 않음. 실내는 "벽 달린 실외"로 유지.
▼ hold 수비자를 '가스로 몰아내기' 대응 라인이 영영 안 열림
—
전제밀폐 판정이 지붕을 참조하므로 축 2 확정 후 스펙 고정. enclosed flood-fill은 기존 이웃 순서 규약으로 결정론 유지.
축 4
실내 정보 은닉 (표현층 한정)
LoS 밖 실내 유닛을 화면에서 숨기는가 — 룰·AI·오토배틀은 완전 정보 유지
—
4A★ 추천✓ 선택
도입 (디버그 토글 부착)
아군 LoS 밖 실내 유닛을 플레이어 화면에서만 비표시. 문 여는 순간이 게임 최고 긴장 비트가 된다. 부수 이득: 안 보이는 실내는 지붕 가림 처리도 불필요 → 축 2 렌더 부담 경감. 화면감은 위 목업 ③ 모드에서 확인.
▲ 긴장 비트 + 렌더 경감, 회귀 위험 0 · ▼ 테스트베드의 "판정 전부 보인다" 관성이 화면 한정으로 깨짐
되돌리기 사실상 0 — 토글 오프가 곧 철회
4B✓ 선택
컷
현행 완전 표시 유지.
▲ 계기판 관성 보존 · ▼ 실내 렌더는 컷어웨이가 전담 — 긴장 비트 없음
—
축 5
맵 규격 — "1.5배"의 해석
발주 원문만으로 판정 불가 — 이 해석 자체가 파트너 결정 사항
—
5A✓ 선택
12×12 — 선형 1.5배
한 변 1.5배 = 면적 2.25배 (144셀). 대칭 개활 + 중앙 건물, 건물 footprint ~14%. 스폰 거리 10~11로 첫 접촉 2~3R 지연, 우회·측면 기동 공간 확보.
▼ 늘어난 개활지가 카이팅 공간 → 95% 악화 가능 + the long walk(걷기만 하는 죽은 턴)
되돌리기 낮음 — 시나리오 JSON뿐 (단 bteam 재캠페인)
5B★ 추천✓ 선택
8×12 시즈 — 면적 정확 1.5배
96셀. 기존 8×8 야전(스테이지1 DNA) + 8×4 건물 존 증축. 확장분 전부가 국면 전환 공간 — 접근 → 돌파 → 소탕 3국면.
▼ 폭 8 고정이라 우회 루트 부족 → 문 앞 정체·국면 단조 가능
되돌리기 낮음 — 시나리오 JSON뿐 (단 bteam 재캠페인)
목업 — 두 해석 실배치 비교 (동일 축척)
5A · 12×12 — 144셀 (면적 2.25×)
대칭 개활 · 중앙 건물 · 측면 기동
리스크: 개활 카이팅 · the long walk
5B · 8×12 시즈 — 96셀 (면적 정확 1.5×)
8×8 야전 DNA + 8×4 건물 존 증축
리스크: 폭 8 — 문 앞 정체 가능
| 5A 12×12 | 5B 8×12 시즈 ★ |
| 해석 | 선형 1.5배 → 면적 2.25배 · 144셀 | 면적 정확 1.5배 · 96셀 (발주 문면 보수 해석) |
| 구조 | 대칭 개활 — 건물 우회·측면 기동 공간 | 증축 — 야전 8×8 유지 + 건물 존, 3국면 전개 |
| 접촉 시점 | 스폰 거리 10~11 → 첫 접촉 2~3R 지연 | 야전 구간은 현행과 유사, 건물 존에서 국면 전환 |
| 95% 승률에 | 지연은 되나 개활 카이팅으로 악화 가능성 | 수비 건물이 원거리 아군 우위를 깎는 방향 |
보류 카드5C 10×14 비대칭은 양측 모두 후속 공성 변형 카드로 보류 — 이번 결정 대상 아님. 5A↔5B 교체는 다른 축에 무영향.
축 6
적 구성 · AI
적이 지형을 쓰게 만드는 방법 (P3: 적이 건물을 보유)
—
6A✓ 선택
궁수 데이터만
enemy_archer ×2 — Scout 계열 CSV 행 추가, 기존 플래너 그대로 (코드 0줄). AI의 −height·LoS 선호가 옥상 사수를 공짜로 성립시킴.
▼ 궁수만 있으면 수비자가 건물을 버리고 나올 수 있음
되돌리기 낮음 — CSV 행 삭제
6B✓ 선택
hold 프로파일
aiProfile: hold — 일정 반경 밖 타깃 무시 수비자 휴리스틱. decide() 순수 함수 유지, 몇 줄.
▼ hold만 있으면 원거리 위협이 없어 지형 이득 반쪽
되돌리기 낮음 — 프로파일 미배정
6C★ 추천✓ 선택
조합 (6A + 6B)
궁수가 옥상·실내를 잡고, hold가 수비자를 건물에 묶는다. 궁수 없는 hold는 이빨 없는 농성, hold 없는 궁수는 건물을 버린다.
▼ 신규 요소 2개 동시 투입 — 밸런스 원인 분리는 bteam 캠페인의 6A 대조군으로 해소
되돌리기 낮음
알려진 한계현 AI는 벽을 부수지 않고 문으로만 우회 — 적 그런트 문 앞 정체는 bteam 관찰 포인트로 인계 (v1 코드 수정 없음).
축 7
지붕 붕괴 (v1.5 스트레치)
축 2에서 옥상을 산 경우에만 성립 — 2B 선택 시 관측 게이트 이후로 이월
—
7A★ 추천✓ 선택
지붕 HP 직격
지붕 HP 10 (fireball 2타 or fireball+shoot). 소진 시 해당 셀 붕괴 — 옥상 유닛 실내 낙하(6+prone), 지붕 소실. "붕괴는 계획된 수, 우연이 아니게."
▲ 셀 단위라 결정론 스펙이 짧다 · FloorState 재사용으로 옥상 구매 비용 회수
되돌리기 낮음 — 지붕 HP ∞로 기능 오프
7B✓ 선택
지지벽 팬케이크
지지 벽 일정 수 파괴·연소 시 건물 단위 붕괴 — '건물째 무너뜨리기'가 제3의 승리 동사. 1B 연소가 지지벽을 갉아 트리거되는 시너지.
▲ marquee 순간 · ▼ "지지 벽 일정 수" 판정 스펙 미작성 — 채택 시 별도 스펙 발주 필요
되돌리기 낮음 (7A 위에 상위 호환으로 쌓는 경로 존재)
7C✓ 선택
보류
v2 카드로 미룬다.
▼ 옥상을 산 값의 회수 지연
—
축 8
창문
발주에 없는 요소 — 포함 여부 자체가 미확정 항목
—
8A★ 추천✓ 선택
컷 + 문법 예약
v1 배치 안 함. 단 "하프커버 벽 세그먼트"(이동 불가 + LoS 통과 + half 엄폐)가 현 isWalkable·hasLos·coverAgainst 조합으로 이미 표현 가능 — 스테이지2 튜닝 중 필요 시 데이터 한 줄로 추가.
▲ 발주 준수 · 기회비용 0
되돌리기 0 — 순수 데이터
8B✓ 선택
v1 배치
스테이지2에 소수 배치.
▲ 실내 수비자의 사격각 풍부 · ▼ 발주 외 요소 선반영
되돌리기 0 — 순수 데이터
1B · 2C(h2) · 3B · 4A · 5B · 6C · 7A(v1.5) · 8A
발주 4요소를 v1에 전부 담되(2C), 벽을 원소연쇄에 접붙이고(1B), 가장 싼 실험(시즈 시나리오+오토배틀)이 가장 비싼 미지수(승률 95%)를 먼저 찌르도록 순서를 배열한다.
M1 — 시즈 골격
8×12 스테이지2 + 중정 건물(벽 1B·문 P4) + 6C 적 구성 →
오토배틀 20판으로 승률·라운드 즉시 비교. 최대 미지수를 최소 비용으로 선타격.
M2 — 수직
지붕·layer·사다리·LoS 정수 개정·AoE 규약·4A 렌더 +
골든 13~19 신설. 재검증은 같은 커밋에.
M3 — v1.5
7A 지붕 붕괴 + 3B 실내 대기. 옥상 구매 비용 회수 구간.
이 조합이 의도적으로 버리는 것 — 2층+ 실내(P6) · 창문 배치(8A) · 완전 탄도 LoS · 엣지 벽(P1) · 뛰어내리기 자유낙하(shove·붕괴 낙하로만).
bteam 인계: 공수 승률·라운드 분포(목표 8~15R)
브리치 vs 문 사용률
문 킬존 발생 빈도
옥상 점유율
6A 대조군 비교
| 수치 출발값 (확정은 전부 bteam 몫 — tuning.csv 경유) |
| WALL_HP 16 | DOOR_HP 6 · 통과 +1 | LADDER 등반 2 |
ROOF_H 2 · ROOF_HP 10 | 연소 2턴 | 낙하 6 + prone |
Q1"1.5배" 해석 (면적/선형) → 축 5 답이 곧 확정
Q2창문 포함 여부 → 축 8 답이 곧 확정
Q3천장·사다리 조건부 지연(2B) 허용 여부 → 축 2 답이 곧 확정
Q47B 팬케이크는 "지지 벽 일정 수" 판정 스펙 미작성 — 채택 시 별도 스펙 발주 필요