728x90
프로젝트 개요
게임 소개
제작자: 훈이겜터 (유튜브 크리에이터 @hun2game)
플랫폼: 로블록스 (Roblox)
장르: 한국형 타워 디펜스
특징: AI 코딩으로 95% 개발된 한국 전통 음식 테마 게임
개발기간: 3주 (2025년 6월-7월)
초등 유튜버의 유튜브 & 블로그 제작 히스토리 (훈이놀이터)
우리 첫째 아들 훈이놀이터는 3~4살때부터 집에서 그림 그리기와 클레이 만들기를 아주 많이 하고 또래보다 훨씬 잘 했다. 자동차, 공룡을 특히나 많이 그리고 만들었다. 소질이 있어보여 6살에
try.pages.kr
게임 콘셉트
핵심 메커니즘:
• 김치, 깍두기, 파김치 등 한국 전통 음식 타워로 적 방어
• 발효 시스템: 시간이 지날수록 타워가 강해짐 (신김치→적당히 익은 김치→묵은지)
• 김장 보너스: 특정 타워 조합으로 추가 효과 발생
• 매운맛 등급: 안매움 → 살짝매움 → 매움 → 지옥매움 → 신급매움
• 한국 전통 마을 배경과 구불구불한 돌담길 경로
[NEW]김치 타워 디펜스
🇰🇷 김치 타워 디펜스 (Kimchi Tower Defense) 🌶️ 귀여운 김치들이 세계를 지키기 위해 나섰다! 전략적으로 김치 타워를 배치하고 몰려오는 적들을 막아내세요! 그룹에 가입하여 보상을 받으세요
www.roblox.com
1. 핵심 게임 시스템
1.1 타워 시스템
김치 등급별 타워 종류
-- 타워 등급 시스템
local TowerRarities = {
안매움 = {color = Color3.fromRGB(255, 200, 200), damage = 10, cost = 100},
살짝매움 = {color = Color3.fromRGB(255, 150, 150), damage = 25, cost = 250},
매움 = {color = Color3.fromRGB(255, 100, 100), damage = 50, cost = 500},
지옥매움 = {color = Color3.fromRGB(200, 50, 50), damage = 100, cost = 1000},
신급매움 = {color = Color3.fromRGB(150, 0, 0), damage = 200, cost = 2000}
}
발효 시스템 (혁신적 메커니즘)
- 신김치 (0-30초): 기본 성능
- 적당히 익은 김치 (30-90초): 데미지 +20%, 범위 +10%
- 묵은지 (90초+): 데미지 +50%, 범위 +20%, 슬로우 효과 추가
김장 보너스 콤보
- 김장 기본 세트: 배추김치+깍두기+파김치 = 공격속도 +30%
- 매운맛 폭탄: 고추장 타워 3개+ = 스플래시 데미지 +50%
- 발효 마스터: 묵은지 3개+ = 전체 발효 속도 2배
- 전통의 맛: 된장+고추장+간장 = 처치시 추가 김치포인트
- 김치 냉장고: 모든 종류 1개씩 = 발효 단계 유지
1.2 로비 및 유닛 시스템
뽑기 시스템
-- 등급별 확률 (행운 게임패스 보유시 희귀 등급 2배)
local SummonRates = {
안매움 = 60, -- 60%
살짝매움 = 25, -- 25%
매움 = 10, -- 10%
지옥매움 = 4, -- 4%
신급매움 = 1 -- 1% (행운 게임패스시 2%)
}
장착 시스템
- 최대 5개 유닛까지 장착 가능
- 360도 자동 회전 디스플레이
- 드래그 앤 드롭으로 유닛 배치/해제
- 실시간 유닛 프리뷰
1.3 경제 시스템
코인 및 게임패스
- 코인 획득: 적 처치, 웨이브 완료, 코드 입력
- 럭키 게임패스: 뽑기 확률 2배, 코인 보상 1.5배
- 개발자 상품: 코인 직접 구매 가능
- 자동판매: 등급별 중복 유닛 자동 처리
2. AI 활용 개발 프로세스
2.1 개발 환경 구성
AI 도구 스택:
• Claude Opus 4: 복잡한 시스템 설계 및 아키텍처
• Claude Sonnet 4: 실시간 디버깅 및 문제 해결
• Cursor: 코드 작성 보조 및 자동완성
• GitHub: 프롬프트와 코드 버전 관리
2.2 체계적인 프롬프트 작성법
초기 프로토타입 프롬프트 예시
훈이겜터 프롬프트 #1:
"로블록스에서 '김치 타워 디펜스' 게임의 기본 구조를 만들어줘.
요구사항:
1. 한국 전통 마을 배경의 맵 시스템
2. 적들이 따라갈 구불구불한 돌담길 경로 (MAP 폴더 내 1~11 순차 이동)
3. 타워 설치 가능한 논/밭 그리드 시스템
4. 김치 항아리 모양의 기본 타워 (ReplicatedStorage/Units 구조)
5. UI: 김치포인트(화폐), 한옥 체력, 웨이브 정보
기술 요구사항:
- ServerScriptService 메인 게임 로직
- RemoteEvent 보안 검증 포함
- 메모리 효율적인 오브젝트 풀링
- 익스플로잇 방지 코드 적용"
반복 개선 프롬프트 패턴
단계별 개선 패턴:
1단계 → 기본 기능 구현 요청
2단계 → 버그 발견 및 수정 요청
3단계 → 성능 최적화 요청
4단계 → UI/UX 개선 요청
5단계 → 밸런싱 조정 요청
2.3 실제 개발 사례: 발효 시스템
문제 정의 프롬프트
발효 시스템 구현 요청:
"김치가 시간이 지나면서 익어가는 발효 시스템을 만들어줘.
상세 요구사항:
1. 모든 김치 타워는 시간에 따라 '발효 레벨' 상승
2. 발효 단계: 신김치(0-30초) → 적당히 익은 김치(30-90초) → 묵은지(90초+)
3. 발효 레벨별 효과:
- 데미지 증가: 레벨당 +20%
- 공격 범위: 레벨당 +10%
- 묵은지 특수효과: 적 슬로우 추가
4. 시각적 표현: 타워 색상이 점점 진해짐
5. UI에 발효 진행도 표시 바
기존 코드와 호환되게 모듈화해서 구현"
AI 생성 결과
-- ReplicatedStorage/Modules/FermentationSystem.lua
local FermentationSystem = {}
FermentationSystem.Stages = {
{name = "신김치", duration = 30, damageMultiplier = 1.0, rangeMultiplier = 1.0},
{name = "적당히익은김치", duration = 60, damageMultiplier = 1.2, rangeMultiplier = 1.1},
{name = "묵은지", duration = math.huge, damageMultiplier = 1.5, rangeMultiplier = 1.2}
}
function FermentationSystem:Initialize(tower)
tower.FermentationData = {
startTime = tick(),
currentStage = 1,
level = 0
}
-- 발효 진행 코루틴
coroutine.wrap(function()
while tower.Parent do
self:UpdateFermentation(tower)
wait(1)
end
end)()
end
3. 기술적 구현 세부사항
3.1 프로젝트 구조
로블록스 스튜디오 구조:
ServerScriptService/
├── GameManager.lua # 메인 게임 로직
├── TowerSystem.lua # 타워 관리
├── WaveManager.lua # 웨이브 시스템
├── EconomySystem.lua # 경제/코인 관리
└── ComboSystem.lua # 김장 보너스
ReplicatedStorage/
├── Remotes/ # RemoteEvent들
├── Modules/
│ ├── FermentationSystem.lua
│ ├── TargetingSystem.lua
│ └── EffectsSystem.lua
└── Units/ # 유닛 모델들
├── 안매움/
├── 살짝매움/
├── 매움/
├── 지옥매움/
└── 신급매움/
StarterPlayer/StarterPlayerScripts/
├── UIManager.lua # 메인 UI 관리
├── LobbyUI.lua # 로비 시스템
├── GachaUI.lua # 뽑기 시스템
└── EffectsClient.lua # 클라이언트 이펙트
3.2 핵심 코드 예시
타워 설치 시스템 (보안 강화)
local placementCooldowns = {}
local COOLDOWN_TIME = 0.5
function GameManager:PlaceTower(player, position, towerType)
local userId = player.UserId
-- 쿨다운 및 스패밍 방지
if placementCooldowns[userId] and
tick() - placementCooldowns[userId] < COOLDOWN_TIME then
return false, "너무 빠른 설치 시도"
end
-- 원자적 연산으로 포인트 처리
local cost = self:GetTowerCost(towerType)
local currentPoints = self.State.kimchiPoints
if currentPoints >= cost then
self.State.kimchiPoints = currentPoints - cost
placementCooldowns[userId] = tick()
local tower = self:CreateTower(position, towerType)
table.insert(self.State.towers, tower)
return true
end
return false, "김치포인트 부족"
end
공격 애니메이션 시스템
-- 달빛 김치 공격 이펙트 (몽환적 파란/보라색)
elseif towerName == "루나 블루" then
-- 음향 효과
createSound("rbxassetid://122283352809655", workspace, 0.4, 0.8)
-- 화면 블러 & 색상 보정
local blur = Instance.new("BlurEffect")
local colorCorrection = Instance.new("ColorCorrectionEffect")
-- 달빛 분위기 연출
local blurTween = TweenService:Create(blur,
TweenInfo.new(0.4, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut),
{Size = 15}
)
local moonlightTween = TweenService:Create(colorCorrection,
TweenInfo.new(0.3, Enum.EasingStyle.Sine, Enum.EasingDirection.Out),
{
Brightness = 0.15,
Contrast = 0.2,
Saturation = -0.3,
TintColor = Color3.fromRGB(200, 200, 255) -- 은은한 파란 빛
}
)
4. 밸런싱 및 게임플레이
4.1 난이도 시스템
local DifficultyModes = {
쉬움 = {waves = 15, enemyMultiplier = 1.0, rewardMultiplier = 1.0},
보통 = {waves = 25, enemyMultiplier = 1.5, rewardMultiplier = 1.2},
어려움 = {waves = 40, enemyMultiplier = 2.0, rewardMultiplier = 1.5},
지옥 = {waves = 60, enemyMultiplier = 3.0, rewardMultiplier = 2.0}
}
4.2 웨이브 관리
- 웨이브 스킵: 모든 적 스폰 완료시 가능
- 오토 스킵: 토글 버튼으로 자동 진행
- 보스 웨이브: 5의 배수마다 "김치 도둑" 보스 등장
4.3 타겟팅 시스템
-- 타겟팅 옵션
local TargetingModes = {
맨앞 = "First", -- 기본값
맨뒤 = "Last",
강한적 = "Strong",
약한적 = "Weak",
가장가까운 = "Close"
}
5. 문서화 및 컨텐츠 제작
5.1 개발 과정 문서화
프롬프트 기록 시스템
# PROMPTS.md 템플릿
## [기능명] - 날짜
### 목표
구체적인 구현 목표
### 사용한 프롬프트
전체 프롬프트 내용
### AI 응답 핵심
- 주요 제안사항
- 생성된 코드 구조
### 결과
- ✅ 성공사항
- ⚠️ 수정사항
- 📝 배운점
### 관련 커밋
Git 커밋 해시와 설명
### 유튜브 연관성
해당 영상의 타임스탬프
개발 일지 작성
# Day N - 날짜
### 🎯 오늘의 목표
- [x] 완료된 작업
- [ ] 미완료 작업
### 💡 주요 개발 내용
구체적인 구현 과정과 의사결정
### 🐛 버그 및 해결
발견한 문제와 해결 과정
### 📹 유튜브 촬영 내용
촬영한 장면과 편집 포인트
### 🤔 내일 계획
다음 작업 우선순위
5.2 유튜브 컨텐츠 구성
영상 시리즈 구성
- #1 기획편: "AI로 로블록스 게임 만들기 도전!"
- #2-4 개발편: 핵심 시스템 구현 과정
- #5-6 고급편: 발효 시스템, 김장 보너스
- #7 완성편: 최종 테스트 및 출시
영상별 핵심 내용
영상 #3: "김치가 익어간다고? 발효 시스템 구현"
- 타임스탬프 15:30~22:45: 발효 시스템 프롬프트 작성
- 22:45~28:10: AI 코드 검토 및 수정
- 28:10~35:20: 테스트 및 밸런싱
- 35:20~40:00: 시각적 효과 추가
6. 완성된 게임 특징
6.1 플레이어 경험
- 로비 입장: 김치 테마의 따뜻한 UI, 유닛 360도 회전 디스플레이
- 뽑기 시스템: 화려한 애니메이션과 김치 이펙트
- 게임 시작: 한국 전통 마을 배경, 돌담길 경로
- 타워 디펜스: 김치 타워 설치, 발효 시스템 체험
- 콤보 시스템: 김장 보너스로 전략적 타워 배치
- 보상 시스템: 웨이브 클리어시 김치포인트 획득
6.2 한국적 요소 구현
- 비주얼: 김치 항아리, 한옥 배경, 전통 색상 팔레트
- 사운드: 김치 담그는 소리, 한국 전통 음악
- 용어: 신김치, 묵은지, 김장, 매운맛 등급
- 문화: 발효 과정, 김치의 시간에 따른 변화 표현
6.3 AI 개발의 성과
- 전체 코드의 95%가 AI 생성: 인간은 기획과 디렉팅만
- 3주 만에 완성: 기존 개발 속도의 5-10배 향상
- 버그율 현저히 낮음: AI의 체계적 코드 구조
- 문서화 품질 우수: 모든 과정이 프롬프트로 기록됨
300x250
7. AI 게임 개발 노하우
7.1 효과적인 프롬프트 작성법
1단계: 컨텍스트 설정
"로블록스 게임 [게임명]을 개발 중이야.
현재 [현재 상황] 상태이고,
[구체적 목표]를 구현하려고 해."
2단계: 구체적 요구사항
요구사항:
1. 기능적 요구사항 (무엇을)
2. 기술적 요구사항 (어떻게)
3. UI/UX 요구사항 (어떻게 보일지)
4. 성능 요구사항 (얼마나 빨리)
5. 보안 요구사항 (어떻게 안전하게)
3단계: 제약사항 명시
제약사항:
- 로블록스 환경 제한사항
- 기존 코드와의 호환성
- 메모리/성능 고려사항
- 모바일 지원 여부
7.2 AI와의 효과적인 협업 패턴
반복 개선 사이클
1. 초기 프로토타입 요청 → AI 구현
2. 테스트 및 버그 발견 → 수정 요청
3. 기능 확장 요청 → AI 개선
4. 최적화 요청 → 성능 향상
5. 문서화 요청 → 코드 설명
품질 관리 체크포인트
각 단계별 확인사항:
✅ 기능이 의도대로 작동하는가?
✅ 성능 이슈는 없는가?
✅ 보안 취약점은 없는가?
✅ 사용자 경험이 좋은가?
✅ 코드가 이해하기 쉬운가?
8. 프로젝트 성과 및 학습
8.1 정량적 성과
- 개발 기간: 21일 (기존 추정 60-90일)
- 코드 라인: 약 3,000라인 (95% AI 생성)
- 기능 구현: 계획된 모든 핵심 기능 완성
- 버그 발생: 초기 대비 70% 감소
- 문서화: 100% 완료 (모든 프롬프트 기록)
8.2 정성적 학습
- AI는 도구, 기획자는 인간: 명확한 비전과 요구사항이 핵심
- 반복 개선의 힘: 한 번에 완벽한 코드보다는 점진적 개선
- 문서화의 중요성: 모든 프롬프트와 과정 기록이 자산
- 커뮤니케이션 스킬: AI와 대화하는 능력이 새로운 핵심 역량
- 품질 관리: AI 코드도 사람의 검증과 테스트가 필수
8.3 향후 개선 계획
- PvP 시스템: 플레이어 간 대전 모드
- 시즌 시스템: 정기적 컨텐츠 업데이트
- 길드 시스템: 협력 플레이 요소
- 모바일 최적화: 터치 인터페이스 개선
- 소셜 기능: 친구 초대, 순위 경쟁
AI 게임 개발의 미래
성공 요인 분석
- 명확한 비전: "한국적 타워 디펜스"라는 독특한 컨셉
- 체계적 접근: 작은 기능부터 점진적 확장
- 완벽한 문서화: 모든 과정을 투명하게 기록
- 지속적 테스트: 각 단계마다 실제 플레이 테스트
- 커뮤니티 피드백: 유튜브를 통한 실시간 피드백
한계점 인식
- 창의성 한계: AI는 기존 패턴 조합, 혁신적 아이디어는 인간 몫
- 복잡한 로직: 매우 복잡한 시스템은 여전히 인간 개입 필요
- 최종 판단: 재미와 밸런스 조정은 사람의 감각이 중요
- 예술적 요소: 비주얼, 사운드 등 감성적 요소는 별도 작업
미래 전망
AI 게임 개발은 "AI 코딩 + 인간 기획"의 협업 모델이 표준이 될 것입니다. 중요한 것은 AI를 어떻게 활용하느냐가 아니라, 무엇을 만들고 싶은지에 대한 명확한 비전입니다.
훈이겜터의 김치 타워 디펜스 프로젝트는 이러한 미래의 모범 사례로서, 개인 크리에이터도 AI의 도움을 받아 상업적 품질의 게임을 만들 수 있음을 보여주었습니다.
핵심 메시지: "vibe coding"이 아닌 "정밀한 AI 협업"을 통해, 누구나 자신만의 독특한 게임을 세상에 선보일 수 있습니다.
728x90
그리드형(광고전용)
댓글