Releases: NOAHSOFTKR/story
Releases · NOAHSOFTKR/story
Release list
v2.2.2-hotfix-4
Full Changelog: v2.2.2-hotfix-3...v2.2.2-hotfix-4
Full Changelog: v2.2.2-hotfix-3...v2.2.2-hotfix-4
v2.2.2-hotfix-3
Full Changelog: v2.2.2-hotfix-2...v2.2.2-hotfix-3
v2.2.2-hotfix-2
Full Changelog: v2.2.2-hotfix-1...v2.2.2-hotfix-2
v2.2.2-hotfix-1
Full Changelog: v2.2.2...v2.2.2-hotfix-1
v2.2.2
v2.2.1-hotfix-3
v2.2.1-hotfix-3 수정 및 개선 사항
- 리소스 로딩 및 실행 안정화
- 리소스 로딩 크래시 방지: 빌드 시 example.yml 등의 리소스 파일이 JAR 내부에 포함되지 않아도 플러그인이 멈추지 않고
정상 실행되도록 Story.kt의 로직을 안전하게 수정했습니다. - 플러그인 재시작 방식 개선: 서버 부하가 큰 기존의 재시작 방식 대신, 내부 데이터와 설정을 안전하게 리로드하는
방식으로 개선하여 안정성을 높였습니다.
- Towny 연동 및 퀘스트 시스템 보완
- Towny 플레이어 인식 로직 강화: 마을 생성 시 플레이어 정보를 찾지 못해 진행도가 올라가지 않던 문제를 해결했습니다.
이제 Mayor 및 Resident 객체를 심층 탐색하여 플레이어 데이터를 정확히 추출합니다. - 패키지 경로 호환성 확대: Towny 버전에 따라 다른 이벤트 패키지 구조(town, nation, economy 등)를 자동으로 탐색하여
모든 환경에서 오류 없이 작동하도록 수정했습니다. - 퀘스트 중복 완료 방지: 이미 완료된 스토리에 대해 중복으로 점수가 올라가거나 완료 이벤트가 발생하는 현상을
차단했습니다.
- 성능 최적화 및 구조 개편
- 메모리 캐싱 기반 저장 시스템: 플레이어의 행동마다 발생하던 파일 IO 작업을 메모리 캐싱 방식으로 전환하여 서버의 TPS
저하 및 랙 발생 원인을 근본적으로 해결했습니다. - 연산 캐싱 적용: 스토리 정렬 및 로딩 시 발생하는 무거운 연산 결과를 캐싱하여 서버 리소스 사용량을 최소화했습니다.
- 명령어 및 시스템 개선
- defendcheck 명령어 동기화: 탭 완성 목록 및 도움말 메뉴에 defendcheck 명령어를 추가하여 관리 편의성을 높였습니다.
- 플레이스홀더 안정화: PlaceholderAPI 연동 시 특정 상황에서 발생할 수 있는 데이터 누락 및 문자열 치환 오류를
방지했습니다.
- 버전 및 관리 정보
- 프로젝트 전체 버전 업데이트: pom.xml과 plugin.yml을 포함한 모든 프로젝트 설정을 v2.2.1-hotfix-3으로 일관성 있게
업데이트했습니다. - 작업 요약 문서 추가: 프로젝트의 주요 수정 사항과 구조를 기록한 project_correction.md 파일을 포함하여 향후
유지보수가 용이하도록 정리했습니다.
Full Changelog: v2.2.1-hotfix-1...v2.2.1-hotfix-3
v2.2.1-hotfix-2
Full Changelog: v2.2.1-hotfix...v2.2.1-hotfix-2
v2.2.1-hotfix-1
- Towny 연동 최적화: 이제 플레이어 정보를 더 깊숙이 탐색하여 마을 생성 시 퀘스트가 안 깨지던 문제를 완벽히
해결했습니다. - 명령어 도움말 동기화: /story help(또는 잘못된 명령 입력) 시 출력되는 목록에 defendcheck가 추가되어 사용자가 쉽게
알 수 있습니다. - 기타 안정성: StoryRuntime과 StoryAction의 예외 처리 로직을 보강하여 예상치 못한 데이터 입력 시에도 서버가 멈추지
않도록 조치했습니다.
Full Changelog: v2.2.1-hotfix...v2.2.1-hotfix-1
v2.2.1-hotfix
v2.2.1-hotfix 수정 및 개선 사항
- 주요 버그 수정 (Bugs Fixed)
- 블록 파괴 트리거 필터링 오류 수정: 모든 블록 파괴 시 트리거가 작동하던 문제를 해결했습니다. 이제 설정 파일에 지정된
특정 블록(namespace:id)만 정확히 감지합니다. - ItemsAdder 아이템 장착 트리거 오작동 수정: 인벤토리에서 아이템을 클릭하거나 드래그할 때 트리거가 무분별하게
발동하던 문제를 수정했습니다. 실제 유효한 클릭 동작이 발생할 때만 작동하도록 로직을 보강했습니다. - 메시지 출력 로직 및 공지 시스템 안정화: 보스 처치 등 전체 공지 메시지가 나갈 때 발생하던 논리적 오류와 콘솔 메시지
출력 방식을 정리했습니다.
- 성능 최적화 (Performance)
- 데이터 저장 방식 개선: 플레이어의 행동마다 발생하던 실시간 파일 읽기/쓰기 작업을 메모리 캐싱 방식으로 변경했습니다.
이를 통해 서버의 TPS 저하 및 랙 발생 원인을 제거했습니다. - 스토리 로딩 알고리즘 최적화: 스토리 정렬 및 로딩 시 발생하는 연산 결과에 캐싱을 적용하여 CPU 사용률을 낮추고 처리
속도를 개선했습니다.
- 시스템 및 명령어 개선 (Improvements)
- 플러그인 재시작 로직 변경: 플러그인 전체를 비활성화 후 활성화하던 불안정한 방식에서 내부 데이터만 안전하게 다시
로드하는 방식으로 개선했습니다. - defendcheck 명령어 보완: 탭 완성 목록에서 누락되었던 문제를 해결하고, 관련 데이터 출력 로직을 보완했습니다.
- 코드 안정성 확보: 불필요한 형변환과 사용되지 않는 코드를 정리하여 잠재적인 런타임 오류를 방지했습니다.
v2.2.0
Full Changelog: v1.1.4...v2.2.0
Full Changelog: v1.1.4...v2.2.0