이 게임 해보실 분?
Would you play this?
핵심 요약
웹 개발자가 Babylon.js와 Colyseus를 활용해 만든 브라우저 기반 전략 게임을 소개하고 피드백을 구하는 글입니다.
- 기술 스택 — Babylon.js와 WebGPU를 사용해 수천 개의 유닛을 브라우저에서 구현함
- 게임 특징 — 클랜 단위의 공동 도시 건설과 1인칭 지휘관 조종 모드를 지원함
- 성능 최적화 — 결정론적 시뮬레이션과 델타 스냅샷을 통해 서버 부하를 최소화함
- 접근성 — 별도 설치 없이 브라우저에서 바로 실행 가능하며 모바일도 지원함

안녕 형들,
웹 개발 15년 넘게 해온 사람인데, 요즘 OPUS 5.5가 브라우저 게임 만드는 데 미친 성능 보여준다는 소리가 하도 들려서 한번 직접 써봤거든.
이번 프로젝트는 Three.js 대신 Babylon.js를 썼는데, 솔직히 결과물 개잘 나왔고 벌써 완벽하게 플레이 가능한 수준이야.
Babylon.js (WebGPU), 수천 개의 애니메이션 유닛을 위한 vertex-animation textures,
Colyseus 서버, 결정론적 시뮬레이션, 바이너리 스냅샷, 그리고 모든 게임 데이터는 JSON 기반으로 돌렸어.
게임은 대충 에이지 오브 엠파이어, 에이지 오브 미쏠로지, 토탈 워: 로마를 섞어놓은 느낌이야.
핵심 목표 중 하나가 서버 부하를 극도로 낮추면서 전장에 수천 개의 유닛이랑 적을 동시에 띄우는 거였는데, 지금까지는 아주 성공적인 듯.
친구들이랑 8명이서 같이 테스트해 봤는데, 세션 돌리는 동안 서버 CPU 점유율이 2%를 넘은 적이 없어.
참고로 서버 사양은 이거야:
-
CPU: Intel Core i9-9900K @ 3.60 GHz - 8 cores / 16 threads
-
RAM: 128 GB DDR4 2666 MT/s - 4 × 32 GB Samsung, Non-ECC
-
Storage: 2 × 1 TB Samsung NVMe SSD - RAID 1 (~1 TB usable)
아직 할 일이 산더미긴 한데, 지금 성능 나오는 거 보면 진짜 만족스럽다.
현재 구현된 기능들:
- 18세기 진영 2개 (제국군 vs 군사 경계지대), 진영별 유닛 약 24종, 건물 약 60종, 기술 약 30종
- 팀원들이 클랜 단위로 플레이하면서 도시 하나를 공유해서 건설
- 15가지 진형 (일자진, 방진, 고슴도치진, 쐐기진, 사격진 등), 커스텀 진형 빌더 및 여단 시스템
- 1인칭으로 직접 조종 가능한 지휘관: WASD 이동, 직접 사격, 분대 지휘 가능
- 요새: 성벽, 타워, 엄폐 가능한 참호, 고지대, 공성추, 공성탑, 박격포, 공병
- 해전: 프리깃함, 포함, 화공선, 수송선, 부교
- 낮/밤 주기, 날씨, 사기 시스템
- 중립 월드: 늑대, 곰, 산적 캠프, 상단, 심지어 뱀파이어랑 스켈레톤까지, 현상금 퀘스트도 있음
- 8가지 게임 모드: 클래식, 퀵, 킹 오브 더 힐, 왕 암살, 협동 AI전, 호송, 불가사의 레이스, 순수 전투
- 최대 16인 플레이, 맵 타입 12종, 바이옴 5종, 프리메이드 맵 56개 + 절차적 생성 + 3D 맵 에디터
- 동맹 시스템, 글로벌 시장 및 팀원 간 무역
- 내장 음성 채팅 (팀/동맹/지휘관 근처, 무전기 방식)
- 문장/엠블럼 에디터가 포함된 클랜 시스템, 클랜전, 토너먼트, 랭크 래더, 리플레이 및 관전 기능
- 다양한 AI 성격을 가진 오프라인 AI전, 세이브/로드 지원, 모바일에서도 돌아감
URL을 공개적으로 안 뿌리는 이유는 지금 이 게임이 내 메인 프로덕션 서버에서 돌아가고 있어서 그래. 거기서 다른 서비스 쓰는 클라이언트가 5,000명 정도 되거든.

