프로젝트 소개

LunarCore는 특정 턴제 애니메이션 게임의 4.2.0 버전을 위한 게임 서버 재구현으로, 교육 목적으로 제작되었습니다. 많은 기본 게임 기능이 구현된 프라이빗 서버 경험을 제공합니다. ### 주요 기능 - 기본 게임 기능: 로그인, 팀 구성, 인벤토리, 기본 장면/엔티티 관리 - 몬스터 전투 작동 - 자연 세계 몬스터/소품/NPC 스폰 - 캐릭터 기술 - 제작/소모품 작동 - NPC 상점 처리 - 가챠 시스템 - 우편 시스템 - 친구 시스템 (지원은 아직 작동하지 않음) - 망각의 정원 - 허구 이야기 - 시뮬레이션 우주 (실행은 완료할 수 있지만 많은 기능이 누락됨) ### 서버 및 클라이언트 실행 #### 사전 요구 사항 - Java 21 JDK (Java 25 JDK 권장) - MongoDB 4.0+ (권장되지만 서버에 내부 MongoDB가 포함되어 있으므로 필수는 아님) #### 서버 컴파일 1. `./gradlew jar`로 컴파일 2. 서버 디렉터리에 `resources` 폴더 생성 3. 제공된 데이터 저장소에서 `Config`, `TextMap`, `ExcelBin` 폴더를 다운로드하여 resources 폴더에 배치 4. `java -jar LunarCore.jar`로 실행 #### 클라이언트 연결 (Fiddler 방법) 1. 공식 서버에 최소 한 번 로그인하여 게임 데이터 다운로드 2. Fiddler Classic 설치 및 실행 3. 제공된 Fiddler 스크립트를 추가하여 요청을 localhost로 리디렉션 4. 서버 콘솔에서 `/account create [name]`을 사용하여 계정 생성 (autoCreateAccount가 false인 경우) 5. 계정 이름으로 로그인 (비밀번호 무시) ### 서버 명령어 명령어는 서버 콘솔에서 실행하거나 게임 내에서 더미 사용자 "Server"에게 메시지를 보내 실행할 수 있습니다. 명령어에는 계정 관리, 아바타 수정, 아이템 지급, 텔레포트, 장면 관리 등이 포함됩니다. 전체 목록은 README에 제공됩니다.