dokkaebi_highlight.mp4 · 15초 · 무음 · 자동 반복 배경
도깨비의 세계 전투 디자이너 지원

컴퓨터공학을 전공한 게임 기획자입니다

4년간 상용 프로젝트 4개를 출시하고 운영했습니다.
「도깨비의 세계」에 맞춘 보스를 기획하고 구현해 봤습니다. 

이돈휘 · 기획 4년차 · 게임 2년 7개월 · 전투 디자인
한눈에
4년 기획·PM 경력 · 2021.04 ~ 2025.11
컴퓨터공학 한림대 · 콘텐츠 IT (게임 개발)
4개 출시·운영한 게임
4종 개인 프로젝트 (도깨비 보스전 포함)
보스 1체 「도깨비의 세계」용 · 패턴 21종 · 기믹 6종
01 · 도깨비 보스전

「도깨비의 세계」에 어울리는 보스를 만들었습니다

01-1 · 컨셉

이매(魑魅), 산을 호령하는 도깨비

이매는 산을 지키는 도깨비입니다. 흙을 일으키고, 불을 놓고, 물을 얼립니다.
산에 든 이를 해치지 않습니다. 
도깨비들이 주인공인 세계관 속에서 이 몬스터는 플레이어의 적대 관계가 아닌 시험하는 역할을 합니다. 그래서 이 싸움의 끝은 처치가 아니라 인정입니다.
인정 연출은 아직 기획 단계입니다. 지금 빌드는 격파로 끝납니다.
이매 산도깨비 · 보스 몬스터 컨셉 아트
도깨비 컨셉 아트 · 속성 · 뒷모습 · 주요 동작
신성한 나무 · 아레나 컨셉
보스 아레나 · 산속 석탑 마당
이매 (魑魅) 산도깨비. 산을 호령한다
부리는 것 흙 · 불 · 물
생김새 뿔이 없다. 순한 얼굴에 센 힘
싸우는 이유 적의가 아니라 시험
01-2 · 기획 의도

「도깨비의 세계」에 맞춰 만들었습니다

지원할 게임과 같은 구성으로 맞췄습니다. 보스는 3D에 도트 필터를 씌우고 플레이어는 2D 8방향 스프라이트로 움직입니다.
같은 화면 문법 안에서 전투를 설계할 수 있다는 것을 보이려고 했습니다.
문서에서 끝내지 않았습니다. Behavior Tree까지 옮겨 실제로 돌려 봤습니다.
21종 보스 패턴
6종 전투 기믹
100개 BT 노드 (전부 코드 생성)
230건 자동 검증 통과
4,793 → 86 드로우콜
01-3 · 전투 루프

페이즈마다 속성이 바뀝니다

1페이즈는 흙, 2페이즈는 불, 3페이즈는 물입니다. 무기도 같이 바뀝니다.

개전
loop-p1.mp4
페이즈 1 · 흙 몽둥이
체력 100 → 65% 내려찍기와 낙석 · 돌 던지기 · 크게 휘두르기 예고 장판을 읽는 법을 익히는 구간입니다. 부업이 없습니다.
전환
gim2.mp4
페이즈 2 · 불 맨손
체력 65 → 30% 들배지기 · 도깨비불 · 불덩이 · 신성한 나무 전멸기 나무 넷 중 어느 것을 아낄지 고릅니다. 여기서 아낀 나무가 3페이즈에 남습니다.
전환
gim3.mp4
페이즈 3 · 물 철퇴
체력 30 → 0% 얼음 유도탄 · 얼음 살촉 · 철퇴 대회전 · 도깨비방망이 불붙은 나무 중 어느 것을 끌지 고릅니다. 끈 나무만 피할 곳이 됩니다.
격파
보스 체력
65% 30%
0%
01-4 · 대표 기믹

속성에 따라 다른 패턴을 기획했습니다

페이즈마다 요구하는 것이 달라서 대표 패턴을 하나씩 골랐습니다.
RPG 속 세계관을 관통하는 컨셉과 몬스터는 그 자체로 플레이어에게 콘텐츠라고 생각합니다.

페이즈 1 · 추격 압박 플레이어를 쫓으며 압박합니다.
05_chase_ladder.mp4 · 1280×720 무음 · 자동 반복
단순히 어글자를 쫓아다니는 몬스터가 아닌 주도적인 몬스터를 만들고 싶었습니다.
마지막으로 맞은 뒤 몇 초가 지났는지 세는 값을 하나 뒀습니다.
그 초가 쌓이면 걸음이 빨라집니다.  돌을 던지고 몸으로 밀고 들어오며 저돌적으로 싸웁니다.
설계 의도와 수치

세 단계가 한 값에 걸려 있어서 초만 바꾸면 추격의 압박이 통째로 바뀝니다.

유예 1.5초
가속 3.5초
최고 속도 1.6배
돌진 문턱 4.5초
BT 서브트리 노드에 올리면 코드가 밝아집니다
Selector · 추격 사다리
Condition · 무접촉 시간
Action · 돌진
Action · 돌 던지기
Action · 예측 이동
C# 코드 ChasePressure.cs
1 Status RunChase()
2 {
3 var idle = clock.Now -
4 threat.LastHitTime;
5
6 if (idle > spec.RushGate)
7 return Rush(player);
8
9 if (idle > spec.ThrowGate)
10 return ThrowRock(player);
11
12 var ahead = player.Position +
13 player.Velocity * spec.Lead;
14 agent.MoveTo(ahead,
15 spec.Speedup);
16 return Status.Running;
17 }
페이즈 2 · 신성한 나무 전멸기 2페이즈의 지형이 3페이즈로 자연스럽게 이어집니다.
02_sacred_tree_wipe.mp4 · 1280×720 무음 · 자동 반복
2페이즈 때 생기는 나무는 3페이즈 플레이에 영향을 줍니다.
2페이즈의 불이 3페이즈에서는 지형이 됩니다.
설계 의도와 수치

2페이즈에서 몇 그루를 아꼈는지가 3페이즈 난이도로 그대로 넘어갑니다.

예고 4.9초
나무 4그루
정원 3명
2기
BT 서브트리 노드에 올리면 코드가 밝아집니다
Sequence · 전멸기
Action · 시전 예고
Action · 폭발 판정
Action · 발화 전파
Action · 지형 기록
C# 코드 SacredTreeWipe.cs
1 Status RunWipe()
2 {
3 cue.CastBar(spec.CastTime);
4 yield return Wait(spec.CastTime);
5
6 foreach (var p in party.All)
7 if (!p.InShelter())
8 p.Take(spec.WipeDamage);
9
10 foreach (var t in trees.Alive)
11 t.Ignite(spec.SpreadDelay *
12 t.DistanceRank);
13
14 arena.SetPhase3Shelters(
15 trees.Alive);
16 return Status.Success;
17 }
페이즈 3 · 얼음 유도탄 보스의 공격을 기믹 파훼로 사용합니다.
03_ice_homing.mp4 · 1280×720 무음 · 자동 반복
3페이즈에 불붙은 나무는 얼음 유도탄으로만 끕니다.
보스의 공격을 파훼의 도구로 사용해서 긴장감을 올렸습니다. 
피하거나, 도구로 사용하거나, 맞은 다음 파티원의 협력을 구하는 3가지 선택을 제시합니다.
설계 의도와 수치

탄이 플레이어보다 느려서 그냥 달아나도 떨굽니다. 다 불을 안 끄면 전멸기를 피할 수 없습니다.

예고 1.2초
발수 3발 · 0.55초
탄속 2.31
수명 8초
BT 서브트리 노드에 올리면 코드가 밝아집니다
Sequence · 얼음 유도탄
Action · 발사 예고
Action · 유도탄 생성
Action · 추적 갱신
Action · 명중 분기
C# 코드 IceMissileAction.cs
1 Status RunIceMissile()
2 {
3 spec = table.Get("ice_missile");
4 cue.Telegraph(spec.LeadTime);
5
6 var m = pool.Spawn(spec.Prefab,
7 muzzle.Position);
8 m.SetTarget(player);
9
10 while (m.Alive(spec.ChaseTime))
11 m.Steer(player.Position,
12 spec.TurnRate);
13
14 if (m.Hit is BurningTree tree)
15 tree.Extinguish();
16 else m.Explode(spec.Damage);
17 return Status.Success;
18 }
그 밖의 기믹
무력화 다운
무력화 다운 축적이 차면 5초 넘어집니다. 반격의 창입니다
구출전 QTE 들배지기에 잡히면 동료가 두드려 빼냅니다
예고 장판 모양이 다섯 가지입니다. 모양으로 패턴을 읽습니다
01-5 · BT 구조

이제 수치는 트리에서 고칩니다

보스 하나에 패턴이 21종입니다. 조건문으로 쌓으면 읽을 수가 없습니다. 트리는 위에서 아래로 읽으면 그게 곧 우선순위입니다.

끌어서 옮기고 Ctrl+휠로 확대할 수 있습니다
수치가 트리 위에 있습니다 씬에서 보스를 찾아 애셋을 열 필요가 없습니다
값의 주인은 하나입니다 노드에서 고치면 애셋이, 애셋을 고치면 노드가 따라옵니다
읽으면 우선순위가 보입니다 위 행이 먼저 실행됩니다. 밸런스 볼 때 코드를 안 엽니다
그래프를 코드로 굽습니다 기획서 수치표가 바뀌면 다시 구워 그래프를 새로 냅니다
01-6 · 직접 해보기

직접 잡아 보세요

브라우저에서 바로 플레이할 수 있습니다. 버튼을 누르면 로딩이 시작됩니다. Wi-Fi 환경을 권장합니다.

Unity WebGL 빌드 · 도깨비 보스전
Wi-Fi 권장 · 데스크톱 크롬 기준
조작
W A S D 이동
좌클릭 사격
우클릭 강공격
Space 회피
F2 페이즈 이동
F3 배속
F2를 누르면 페이즈를 바로 넘길 수 있습니다. 3페이즈까지 다 보는 데 배속 기준 2분이면 됩니다.
모바일에서는 하이라이트 영상으로 대신 보여드립니다. PC에서 직접 플레이할 수 있습니다.
보스전 알파 빌드입니다. 3D 모델과 애니메이션은 무료 에셋을 가져다 썼고, 연출도 아직 거칩니다. 혼자 만드는 프로젝트라 겉모습보다 패턴과 기믹이 맞물려 도는 쪽에 시간을 먼저 썼습니다.
01-7 · 만들면서 부딪힌 것

기획서대로 넣고 나서 알게 된 것들

기획자로서 부딪힌 지점 셋
01
기획서대로 넣었더니 보스가 단조로웠습니다
문제 패턴을 다 넣었는데 판이 밋밋했습니다. 예고를 보고 피하는 일만 반복됐습니다.
원인 페이즈가 넘어가도 무기만 바뀌고 플레이어의 판단은 그대로였습니다.
고친 것 페이즈마다 고를 것을 하나씩 얹었습니다. 2페이즈는 나무, 3페이즈는 불입니다.
02
도망치는 동안 보스가 아무것도 안 했습니다
문제 어글자가 달아나면 보스가 뒤를 따라 걷기만 했습니다.
원인 도망치는 상대 앞에서 보스가 할 수 있는 일이 걷기 하나였습니다.
고친 것 무접촉 시간에 가속과 투석과 돌진을 걸었습니다. 던지는 곳은 달려갈 자리로 앞질렀습니다.
03
어글자 말고는 너무 안전했습니다
문제 어글을 안 먹은 사람은 뒤에서 때리기만 하면 됐습니다.
원인 패턴이 전부 어글자 한 명만 보고 있었습니다.
고친 것 어글과 상관없는 판정을 섞었습니다. 잡채기와 낙석과 전멸기입니다.
여기까지가 도깨비 보스전입니다. 아래는 출시하고 운영한 게임입니다.
02 · 개발한 게임

출시하고 운영한 게임입니다

MAGNET FRIENDS

모바일 캐주얼 퍼즐 · Unity · 4인 팀 · 기획 1인 전담 · 2021.10 ~ 2022.05

두 자석을 만나게 하면 클리어하는 캐주얼 퍼즐입니다. 인력과 척력, 중력, 관성, 지렛대 같은 물리 법칙으로 기믹을 풀어 갑니다.

MAGNET FRIENDS
브라우저 플레이 · 게임엔에 서비스 중인 원본을 불러옵니다

누르면 게임엔에 서비스 중인 원본을 덮개로 크게 띄웁니다. 남의 서버라 누르기 전에는 부르지 않습니다. 소리가 납니다 — 닫으면 그 자리에서 멎습니다 (Esc 로도 닫힙니다). 덮개가 뜨지 않으면 오른쪽 위 ↗ 로 새 창에서 열 수 있습니다.

스테이지 1-1
스킨 상점
기믹 24종을 물리값까지 적었습니다 24종
질량·마찰·중력 배율·자력의 거리와 세기를 기획서에
스테이지 170개를 배치했습니다 170개
제작 툴을 요청해 받고 유니티에서 혼자
새 기믹은 10스테이지마다 하나씩
첫 등장 판은 그 작동이 보이게 먼저 놓았습니다
이탈 지점을 재서 배치를 다시 짰습니다 도달률 50%
GA4 이벤트 스키마를 설계해 구간별 이탈률 측정
170개 스테이지
24종 오브젝트
iOS · AOS 출시
50% Stage 20 도달률

UNDERGROUND DMZ

Unreal VR FPS · 4인 멀티 · 11인 팀 · PM/기획 · 2023.01 ~ 2023.05

10m × 10m 공간에서 VR 헤드셋과 백팩 PC를 메고 네 명이 실제로 걸어 다니며 싸우는 VR FPS입니다.

지하 1층 격자 지도
이벤트 기획 문서 · 지하 1층 격자 지도 · 0.5m 격자
인게임 · 지하 실험실
인게임 · 지하 실험실
실제 플레이 · 헤드셋과 백팩 PC
실제 플레이 · 헤드셋 · 백팩 PC
걸어 다닐 공간을 0.5m 격자로 설계 4장
못 감·보임·바닥을 칸마다 나눠 층별로 그렸습니다
이벤트 조건과 결과를 표로 적었습니다
발동 조건 → 벌어지는 일 → 열리는 네비 포인트
동선과 소요 시간을 미리 쟀습니다
두 팀 동선을 겹쳐 보고 이벤트마다 걸리는 초를
프레임 KPI 위기에 1주를 확보했습니다 재협상 0회
재작업안과 기간을 산정해 보고했습니다
4장 층별 격자 지도
0건 일정 붕괴
0회 마일스톤 재협상
계획 범위 내 출시

ALICE IN WONDERLAND

Unreal VR 어트랙션 · 2인 플레이 · 9인 팀 · PM/기획 · 2023.11 ~ 2024.05

2축 시뮬레이터 위에 앉아 이상한 나라의 앨리스 세계를 모험하는 VR 어트랙션입니다. 두 명이 함께 탑니다. 코엑스 체험관에 입점했습니다.

다락방 · 낙하 · 시계방 · 버섯 숲 · 귀환32초 · 무음
네온 버섯 숲
버섯 숲
영상 스틸
장면 순서와 세계의 인상을 정했습니다
낙하 구간과 버섯 숲의 색과 속도를 다르게
갈 곳 대신 볼 곳을 설계했습니다
의자가 움직이는 어트랙션이라 시선을 대신 정합니다
장면마다 나야 할 소리를 목록으로
어떤 소리가 언제 나는지 적어 배치했습니다
협업 보드를 다시 깔았습니다 작업시간 −13%
노션으로 옮기고 컨펌을 정식 단계로 넣었습니다
코엑스 체험관 입점
28주 30주 목표 출시
70fps KPI 달성
13% 감소 태스크 평균 작업시간
HELLO PLANET(2021 · 교육용 게임 앱)은 분량이 작아 06 경력에만 적었습니다.
03 · 일하는 방식

기획할 때 지키는 세 가지

01

문서에서 끝나지 않게 씁니다

기획서에 적은 숫자가 화면에서 그대로 나오는지 보고 싶었습니다. 컴퓨터공학을 전공해서 구현 쪽을 읽을 수 있습니다. 그래서 예고 1.2초, 반경 408 같은 값을 Behavior Tree까지 옮겼습니다. 프로그래머에게 넘길 때도 이 정도 느낌이 아니라 값으로 넘깁니다.

패턴 21종 전부 수치 명세 BT 노드 100개 코드 생성
02

재기 전에는 고치지 않습니다

보스가 밋밋하다는 느낌만으로는 무엇을 고칠지 정할 수 없었습니다. 그래서 보스가 한 판에 몇 번 행동하는지부터 셌습니다. 5회였습니다. 그 숫자를 12회로 올리고 나서야 진짜 문제가 보였습니다. 횟수가 아니라 선택지가 부족했던 것입니다.

보스 행동 5회 → 12회 이탈률 60% 지점 특정
03

완벽한 기획은 없지만 완성도는 계속 올릴 수 있습니다

게임을 네 개 내면서 배운 것은 하나입니다. 첫 기획서가 맞은 적은 한 번도 없습니다. 그래서 고칠 수 있는 상태로 만들어 둡니다. 수치는 표 하나에 모읍니다. 트리에서 바로 바꾸고 바꾼 뒤에 다시 재 봅니다. 디테일은 여기서 갈립니다. 예고를 0.1초 줄이면 무엇이 달라지는지 말할 수 있어야 다음 판단이 섭니다.

출시하고 운영한 게임 4개 자동 검증 230건
04 · 개인 프로젝트

검증하려고 만든 도구들

Python

AI 자동매매 검증

한국투자증권 모의투자 API에 전략을 물려 3개월째 돌리고 있습니다. 검증이 끝나기 전에는 실계좌에 넣지 않는다는 원칙으로 만들었습니다.

C# · .NET

PVP 승률 분석 도구

화면 속 상대 아이디를 인식해 공개 전적을 조회하고 상성을 보여줍니다. 게임 클라이언트와 메모리에는 일절 접근하지 않고 공개 정보만 씁니다.

Claude Code · MCP

LLM 지식베이스

Obsidian과 Claude로 원본 기반 문서를 만들고 검증합니다. 이 포트폴리오도 같은 파이프라인으로 관리하고 있습니다.

05 · 스킬

도구와 숙련도

상이라고 적은 근거를 함께 남깁니다. 상은 구조를 직접 설계하고 운영해 본 도구입니다. 중은 실무에서 사용한 도구이고, 실습은 개인 환경에서 구축하고 검증해 본 도구입니다.

도구등급근거
Unity 에디터에서 170스테이지 전량 제작·출시
Unity Behavior (BT) 보스 BT 그래프를 코드로 생성·운용
Unreal 레벨 작업, 블루프린트 수치 수정
GA4 · Firebase 이벤트 스키마 설계, 이탈 퍼널 개선
Jira 워크플로·자동화 규칙 구축
Notion · Obsidian 협업 보드 설계·지식베이스 4년 운영
git · SVN 브랜치 운용
Perforce 실습 로컬 서버 구축·배타 잠금 검증
Python · C# 실동작 프로그램 3종
Claude Code · MCP 자동화 파이프라인 구축
06 · 경력과 학력

걸어온 길

2025.12 ~ 현재
개인 프로젝트 1인 개발
도깨비 보스전 · 자동화 도구 3종
2024.07 ~ 2025.11
㈜바이오팝코리아 PM/기획 · 9인
Elixir 헬스케어 앱 · 임상 데이터 20,000건+ 수집(목표 대비 +11%)
2023.01 ~ 2024.05
㈜예쉬컴퍼니 VR 게임 PM/기획 · 9~11인
UNDERGROUND DMZ · ALICE IN WONDERLAND
2021.04 ~ 2022.05
㈜알파스튜디오 게임 PM/기획 · 4인
HELLO PLANET · MAGNET FRIENDS
2015.03 ~ 2021.02
한림대학교 컴퓨터공학 (콘텐츠 IT)
전공 C# · Unity · DB
07 · 연락처

여기까지 읽으셨다면

전투 설계 이야기를 더 나누고 싶습니다. 편한 방법으로 연락 주세요.