🏠마을

마을 시스템

🎯 1. 기획 의도

이 플러그인은 마인크래프트에서 플레이어들이 자신만의 ‘마을’을 만들고, 그 안에서 함께 활동하며 커뮤니티를 형성할 수 있도록 설계되었습니다.

  • 단순한 파티나 길드 이상의 구성원, 권한, 성장 구조를 갖춘 시스템

  • 대표 / 부대표 / 마을원으로 역할을 나누어 책임과 권한 분배

  • 초대 또는 요청 방식의 가입

  • 향후 확장을 고려해 등급, 정류장, 외교 시스템 등을 연결할 수 있도록 설계

🧱 2. 마을 시스템 구조

🔹 마을 정보

  • 이름, 생성 시각

  • 대표 UUID, 부대표 UUID

  • 일반 마을원 목록 (UUID → 가입 시각)

  • 마을 등급: 리 → 면 → 읍 → 군 → 시

  • 마을 중심 위치 (Location)

  • 정류장 좌표 목록 및 최대 개수

🔹 직책

직책

설명

대표

마을 창설자, 모든 권한 보유

부대표

대표가 임명, 제한된 권한 수행 가능

마을원

일반 구성원

📦 3. 기능 요약

🔸 마을 생성 및 설정

  • 마을 생성 / 삭제

  • 마을 이름 및 등급 변경

🔸 구성원 관리

  • 플레이어 초대 및 초대 수락

  • 마을 탈퇴 및 마을원 추방

  • 대표 권한 위임

  • 부대표 임명 및 해임

🔸 가입 요청 흐름

  • 플레이어가 마을에 가입 요청 가능

  • 대표 또는 부대표가 요청 승인/거절

🔸 요청 목록 조회

  • 대표/부대표는 마을에 들어온 요청 확인 가능

  • 일반인은 자신이 보낸 요청만 확인 가능

🔸 자동 정리 기능

  • 초대와 요청은 7일간 유효

  • 5분마다 자동 검사 및 만료 처리됨

  • 삭제된 건수는 서버 로그에 기록됨


🔐 4. 직책별 기능 권한 요약표

🏗️ 마을 생성 및 설정

기능
명령어
대표
부대표
마을원
일반인

마을 생성

/hmlvillage create

✔️

마을 삭제

/hmlvillage delete

✔️

마을 이름 변경

/hmlvillage rename

✔️

마을 등급 변경

/hmlvillage setgrade

✔️

👥 구성원 관리

기능
명령어
대표
부대표
마을원
일반인

플레이어 초대

/hmlvillage invite

✔️

✔️

초대 수락

/hmlvillage accept

✔️

마을원 추방

/hmlvillage kick

✔️

✔️

마을 탈퇴

/hmlvillage leave

✔️

✔️

대표 권한 이양

/hmlvillage transfer

✔️

🧭 직책 관리

기능
명령어
대표
부대표
마을원
일반인

부대표 임명

/hmlvillage promote

✔️

부대표 해임

/hmlvillage demote

✔️

✔️

📨 가입 요청 흐름

기능
명령어
대표
부대표
마을원
일반인

마을 가입 요청

/hmlvillage request

✔️

가입 요청 승인

/hmlvillage approve

✔️

✔️

가입 요청 거절

/hmlvillage deny

✔️

✔️

📄 요청 목록 조회

기능
명령어
대표
부대표
마을원
일반인

가입 요청 보기(마을)

/hmlvillage requests

✔️

✔️

가입 요청 보기(유저)

/hmlvillage requests

✔️


💾 5. 데이터 저장 및 유지

  • 마을 정보는 JSON 파일로 저장됨 (villages/ 하위 폴더)

  • 초대/요청 정보는 각각 invites.json, join_requests.json 에 저장됨

  • 서버가 꺼졌다 켜져도 모든 데이터 복구 가능

  • 5분마다 비동기 정리: 유효기간(7일) 초과된 데이터 자동 삭제


🚀 6. 확장 가능성

확장 기능

설명

정류장 시스템

마을 ↔ 스폰 이동, 정류장 위치 지정 및 확장

등급 자동 승급

일정 조건 달성 시 리 → 면 → 읍 등으로 자동 상승

클라이언트 UI 연동

Fabric 기반 전용 인터페이스 (채팅 탭, 마을 정보창 등)

마을 간 외교/전쟁

마을 간 동맹, 적대, 제한적 PvP 설정 등

Last updated