ShellEngine 기반 C++17 멀티플레이 메이플스토리 모작 프로젝트입니다.
클라이언트-서버 분리 구조에서 플레이어/몹/아이템/월드 상태를 동기화하고, 예측-재조정 기반 이동을 적용합니다.
해당 레포에 이미지 에셋은 포함 돼 있지 않습니다.
- 언어: C++17
- 엔진: ShellEngine
- 네트워크: UDP(실시간 상태) + TCP(세션/신뢰 전송)
- DB: SQLite, 비동기 DB 작업 스레드
- 플랫폼: Windows, Linux
- 멀티 월드 서버 시뮬레이션
- TCP/UDP 기반 통신 상세
- EventBus + Router 기반 패킷 라우팅(낮은 결합도) 상세
- 플레이어 입력 예측/재조정(Prediction/Reconciliation) 상세
- 확장이 쉬운 데이터 기반 스킬 시스템 상세
- FSM 기반 몹 AI, 스킬/히트박스 처리, 아이템 드롭/획득
- 인벤토리 변경 슬롯 기반 동기화 + DB 반영 상세
| 경로 | 역할 |
|---|---|
Source/client |
클라이언트 전용 로직 |
Source/server |
서버 전용 로직 |
Source/common |
클라/서버 공통 로직 |
Source/include |
공유 헤더(도메인/패킷 정의) |
Assets |
월드/프리팹/리소스(저장소 기준 일부만 포함) |
- 루트
CMakeLists.txt에서Source,EditorSource,External/SQLite를 함께 구성합니다. CMakePresets.json기준 주요 프리셋:x64-debug,x64-releaselinux-debug,linux-release
- 프로젝트 설명 영상: https://youtu.be/s7-2ZrSjIuo
- 초기 테스트 영상: https://youtu.be/-ZEik9VYwIc