---
id: wiki-2026-0508-mixed-platoons
title: Mixed Platoons (혼합 편대)
category: 10_Wiki/Topics
status: verified
canonical_id: self
aliases: [Mixed Platoon, Combined Arms, 혼합 편대, 복합 부대]
duplicate_of: none
source_trust_level: A
confidence_score: 0.85
verification_status: applied
tags: [game-design, rts, combined-arms, military-doctrine, balance]
raw_sources: []
last_reinforced: 2026-05-10
github_commit: pending
tech_stack: { language: design, framework: rts-strategy }
---

# Mixed Platoons (혼합 편대)

## 매 한 줄
> **"매 단일 병종은 매 카운터를 만나면 무력하다"**. Mixed Platoon 은 보병·기갑·포병·지원 등 상호 보완 병종을 한 단위로 묶어 single-counter exploit 을 막고, 게임/전장에서 견고한 frontline 을 만드는 패턴이다.

## 매 핵심
### 매 군사 원형
- **Combined Arms Doctrine**: 보병 + 기갑 + 포병 + 항공 결합. WW2 Wehrmacht/Soviet 의 deep battle, 현대 BCT (Brigade Combat Team).
- 각 병종이 서로의 약점을 가린다: 보병 = 도시·근접, 기갑 = 돌파, 포병 = 화력 투사, 방공 = 항공 대응.

### 매 RTS / 전략게임에서
1. **카운터 삼각형 (RPS)**: pikemen > cavalry > archer > pikemen … 단일 종이면 자동 패배.
2. **Mixed army**: 위 삼각형의 각 꼭짓점을 일정 비율로 보유 → 적이 무엇을 가져와도 대응.
3. **Death-ball vs Mixed**: 단일 highest-tier 유닛 100기 spam 은 잘 짜인 mixed army 한테 카운터 당함.

### 매 핵심 설계 원리
1. **Hard counter**: 명확한 우위 (대전차 vs 전차 = 2x dmg).
2. **Soft counter**: 살짝 유리 (사거리, 속도, 비용).
3. **No-mirror penalty**: 대칭으로 풀면 mixed 가 항상 이기도록 비용/효율 설계.
4. **Composition incentive**: 같은 인구수 안에서 병종 다양성에 보너스 (예: 한국 SC2 mod, Total War general).

## 💻 패턴
### 1. Counter table
```python
COUNTER = {
    "pike":   {"cav": 2.0, "inf": 1.0, "arch": 0.6},
    "cav":    {"arch": 2.0, "inf": 1.2, "pike": 0.5},
    "arch":   {"inf": 1.5, "pike": 1.5, "cav": 0.5},
    "inf":    {"arch": 1.0, "pike": 1.0, "cav": 0.8},
}
def dmg(att, dfn, base): return base * COUNTER[att][dfn]
```

### 2. Composition score (다양성 보상)
```python
from math import log
def diversity_bonus(units):
    n = sum(units.values())
    H = -sum((v/n)*log(v/n) for v in units.values() if v)
    return 1.0 + 0.1 * H              # 엔트로피 기반
```

### 3. AI auto-recruit balanced
```python
TARGET_RATIO = {"inf":0.4, "arch":0.2, "cav":0.2, "pike":0.2}
def next_unit(current):
    n = sum(current.values()) or 1
    deficits = {k: TARGET_RATIO[k] - current.get(k,0)/n for k in TARGET_RATIO}
    return max(deficits, key=deficits.get)
```

### 4. Squad / Platoon as unit
```text
1 platoon = 6 inf + 2 AT + 1 medic + 1 radio
upgrade 는 platoon 단위, 손실 시 reinforce
```
COH/WiC 류 squad 시스템 — micro 단순화 + combined arms 강제.

### 5. Formation buff
```python
if has({"melee","ranged","support"} <= squad.classes):
    squad.morale += 10
    squad.range_atk += 0.05
```

### 6. Real-world doctrine 모방 (war game)
- US BCT: 1 mech inf + 1 armor + 1 cav recon + 1 fires + 1 BSB.
- 디지털 보드게임에서 동일 구조로 wargame token 구성.

### 7. PvP meta-stabilizer
- patch 마다 단일 spam 메타 발생 → 해당 유닛에 mixed-only buff 추가하거나 spam 코스트 ↑.

## 매 결정 기준
| 상황 | 설계 |
|---|---|
| 1v1 micro RTS | RPS + soft counter, mixed 강제 |
| 대규모 4X | platoon/army stack, comp bonus |
| Auto-battler | hard counter + 다양성 bonus |
| 협동 PvE | 역할 (탱·딜·힐) = mixed |
| 시뮬레이션 wargame | 실제 doctrine 모방 |

**기본값**: hard + soft counter 조합 + 다양성 인센티브, 단일종 spam 의 expected win rate 를 mixed 보다 낮게.

## 🔗 Graph
- 부모: [[게임 밸런싱|Game-Balance]]
- 변형: [[Combined Arms (제병협동) 전술|Combined-Arms]]
- Adjacent: [[Rock-Paper-Scissors]]

## 🤖 LLM 활용
**언제**: counter table brainstorm, 비율/다양성 보너스 수식, doctrine 사례 설명.
**언제 X**: 실제 군사 작전 평가 (전문 도메인).

## ❌ 안티패턴
- Counter 만 강하고 base stat 차이가 너무 작음 → 아무거나 섞어도 결과 같음.
- 다양성 bonus 너무 크면 → 단순 분산 spam 만 etc 필승.
- Hard counter ×3 이상 → 메타 가위바위보, 첫 턴 정찰만 유리.
- Mixed 유도하는데 생산 빌딩 분리 비용이 비대칭 → 한 종족만 유리.

## 🧪 검증 / 중복
- Verified. 신뢰도 A-.

## 🕓 Changelog
| 날짜 | 변경 |
|---|---|
| 2026-05-08 | Phase 1 |
| 2026-05-10 | Manual cleanup |
