업데이트 내역

웹사이트와 서버 모드의 업데이트 내역이에요. 최신 것부터 순서대로 있습니다

CloudRidge 웹사이트와 서버 모드의 모든 업데이트를 최신순으로 정리했어요. 어떤 기능이 언제 추가됐는지, 어떤 문제가 언제 고쳐졌는지 돌아볼 때 확인해 보세요.

버전별 해제

필터 중: 16 / 127개

v1.6.6 모드 2026-09-30

차단 목록을 못 읽을 때 "아무도 차단되지 않았다"고 하지 않습니다

  • 사이트에 빈 차단 목록이 도착하면 저장된 차단 기록을 전부 덮어썼습니다. 모드는 파일을 읽지 못하거나 형식이 틀리면 빈 배열을 반환했고, 그것이 정확히 이 결과를 불렀습니다 —— 이제는 항상 null을 반환하며(파일이 정말 없는 경우는 여전히 "아무도 차단되지 않음"입니다), banned와 banned_ips를 둘 다 읽었을 때만 bans_authoritative=true를 선언합니다. 사이트 쪽에도 대응하는 보호를 넣었고, 제대로 고쳐지려면 양쪽이 함께여야 합니다
v1.6.5 모드 2026-09-26

'오프라인 플레이어의 업적을 못 읽는' 문제 수정

  • 월드의 진행 파일 이름은 하이픈이 있는 형태(077e53e3-c49c-362b-87ee-12457397e38c.json)인데, 모드는 하이픈을 뺀 32자로 경로를 만들어서 파일을 하나도 찾지 못했습니다. 접속 중인 플레이어는 서버 실시간 스냅샷을 거치므로 정상이었지만, 접속을 끊으면 '진행 없음'으로 처리되었습니다. 이 서버의 진행 파일 1,859개와 플레이어 963명이 해당되며, 이것이 '업적 개수가 들쭉날쭉한' 직접 원인입니다(사이트도 빈 목록을 쓰지 않도록 고쳤습니다). 이제 두 표기를 모두 시도하고, 정말 없을 때만 '없음'으로 봅니다
v1.6.4 모드 2026-09-26

자체 지연 플레이스홀더 %cloudridge:ping%

  • TAB 플레이어 행에서 내장 %player:ping%은 모든 플레이어에 0을 돌려줍니다 (같은 설정의 하단에서는 같은 플레이스홀더가 정상이므로, 행 렌더링 컨텍스트에 온라인 플레이어가 없는 것이 원인입니다). 새 플레이스홀더는 두 경로를 모두 시도합니다: 먼저 컨텍스트의 플레이어, 안 되면 GameProfile 이름으로 서버 온라인 목록을 조회. 둘 다 실패하면 거짓 0 대신 비워 둡니다
v1.6.3 모드 2026-09-26

시작·종료 보고

  • 서버가 켜질 때 「시작되었습니다」, 정상 종료 시 「종료되었습니다」를 보고합니다. 종료 보고는 동기로 보냅니다 — 프로세스가 곧 끝나므로 백그라운드 스레드에 맡기면 전송되지 않습니다. 크래시나 정전 시에는 종료 기록을 지어내지 않습니다
v1.6.2 모드 2026-09-25

가짜 플레이어 필터 수정 + 웹 메시지 접두사 구분

  • 전혀 동작하지 않던 가짜 플레이어 필터를 고쳤습니다. 명단 기본값이 bot_이었는데 * 가 없으면 정확히 일치하는 이름만 걸러지므로, 가짜 플레이어가 하나도 필터링되지 않았습니다. 기본값을 bot_* 로 바꾸고, 서버를 열 때 실제로 적용되는 명단을 로그에 남기므로 "적어 두었지만 적용되지 않은" 상태가 다시 조용히 지나갈 일은 없습니다.
  • 웹 메시지 접두사를 메시지마다 내려보내도록 바꿨습니다. 캐릭터를 연동한 사용자는 [웹], 연동하지 않은 사용자는 [웹 · 미연동]이 되므로, 게임 안의 플레이어는 이 발언이 게임 캐릭터의 것인지 한눈에 알 수 있습니다.
  • 1.6.1 추가 기록: 접속, 퇴장, 사망, 발전 과제가 전혀 표시되지 않던 원인은 번역 키로만 분류했기 때문입니다. 일부 모드는 바닐라 메시지를 통째로 바꿔 버려 키를 가져올 수 없습니다. 이제 렌더링된 텍스트로 분류하는 대체 경로를 넣고, 서버를 열고 나서 처음 오는 시스템 메시지 25개에 진단 로그를 남깁니다.
v1.6.0 모드 2026-09-25

채팅 동기화: 게임 공개 채팅과 이벤트 실시간 전송

  • 채팅 동기화를 추가했습니다. 게임 내 전체 채팅 발언, 접속과 퇴장, 사망, 발전 과제를 실시간으로 웹사이트 채팅창에 전송합니다
  • 웹사이트 사용자가 보낸 메시지는 [网页] 접두사가 붙어 시안색으로 게임에 알려집니다. 시스템 메시지 이벤트를 피하려고 한 명씩 보내므로 두 번 알려지는 일이 없습니다
  • 사망과 발전 과제는 렌더링된 텍스트가 아니라 번역 키로 분류하므로, 서버 언어를 중국어로 바꿔도 그대로 동작합니다
  • 가짜 플레이어(Carpet 봇)의 접속, 퇴장, 사망은 전송하지 않습니다. 명단은 cloudridge.json의 chat_bot_names에서 바꿀 수 있고 기본값은 bot_입니다
  • 수집하는 것은 전체 채팅뿐입니다 — 귓속말(/msg, /tell, /w)은 절대 수집되지 않으며, 켤 수 있는 스위치도 없습니다
  • 새 설정 항목 upload_chat / chat_bot_names / chat_poll_ms를 추가했습니다. 기존 설정 파일도 그대로 쓸 수 있고 기본값이 적용됩니다
v1.5.2 모드 2026-09-25

서버 지표를 TAB에 바로 표시

  • %cloudridge:*% 플레이스홀더 18종(TPS, MSPT, 청크, 엔티티, 메모리, CPU, 네트워크 속도, 가동 시간)을 추가해 TAB 목록에 바로 표시할 수 있습니다
  • 모드가 원래 하던 수집을 그대로 씁니다 — 두 번 수집하지 않습니다. 렌더링 시점에는 캐시만 읽습니다. 렌더링은 매우 자주 일어나므로 거기서 파일을 읽거나 하위 프로세스를 띄우면 서버가 멈춥니다
  • TAB 모드를 설치하지 않아도 안전합니다. 등록 로직을 분리했고, 값이 없으면 거짓 0 대신 아무것도 표시하지 않습니다
v1.5.1 모드 2026-09-25

네트워크 카운터 수정 및 로그 조용히

  • 네트워크 전송량이 계속 0이던 문제를 고쳤습니다. 찾던 두 인터페이스는 표준 JDK에 존재하지 않아 그 코드는 절대 동작할 수 없었습니다. OS가 실제로 제공하는 원천으로 바꾸고, 문자열이 아니라 구조로 파싱해 한국어 환경에서도 유효합니다
  • 수집을 백그라운드 스레드로 옮겼습니다. 그 원천은 하위 프로세스가 필요하고, 인라인으로 하면 tick 스파이크가 생깁니다
  • "매 하트비트 스냅샷 기록" 스위치를 추가했습니다(기본 꺼짐). 켜도 값이 실제로 바뀔 때만 기록합니다
v1.5.0 모드 2026-09-24

Minecraft 1.21.11 지원

  • 모드를 Minecraft 1.21.11에 맞췄습니다(Fabric Loader 0.19.5 / Fabric API 0.141.6+1.21.11)
  • 명령 권한 판정을 서버 OP 목록으로 바꿨습니다. 예전 구현이 쓰던接口는 1.21.11에서 제거되었습니다. 콘솔과 명령 블록의 권한은 그대로입니다
  • 로드된 청크 수 집계를 새接口로 바꾸고, 예전·새 버전 모두에서 컴파일되는写法으로 작성했습니다
  • 그 밖에 버전에 따라 바뀐接口도 옮겼고, 공식 매핑과 하나씩 대조한 뒤 컴파일했습니다
v1.1.6 모드 2026-09-16

서버 유형 지원

  • server_type 설정을 추가했어요. 생존, 크리에이티브, 미니게임, 로비, 기타 중에서 고를 수 있고 웹사이트는 유형에 따라 다른 내용을 보여줘요
  • 플레이어 누적 통계 전송을 계속 수정해서 웹사이트의 누적 데이터가 더 정확해졌어요
  • 설정 항목 설명과 게임 내 안내 문구를 보완했어요
v1.1.5 모드 2026-09-13

화이트리스트 동기화와 설정 프록시

  • 화이트리스트 동기화를 추가했어요. 웹사이트에서 승인된 신청이 서버 화이트리스트에 자동으로 기록돼서 관리자가 직접 추가할 필요가 없어요
  • 서버 설정 파일을 웹사이트 관리 화면에서 대신 수정할 수 있어요. 수정 전에 원본 파일을 자동으로 백업해요
  • 대기 작업 큐를 추가해서 웹사이트가 내려보낸 작업을 모드가 가져가 실행하고 결과를 돌려줘요
v1.1.4 모드 2026-09-13

서버 규칙 확대와 중국어·영어 안내

  • 서버 규칙 전송이 더 완전해졌어요. 사망 시 아이템 드롭, 아이템 보존 같은 게임 규칙도 상태와 함께 전송돼서 가이드 페이지 정보가 더 정확해요
  • 게임 내 명령어 안내가 중국어와 영어를 지원하고 플레이어의 클라이언트 언어에 맞춰 자동으로 바뀌어요
v1.1.3 모드 2026-09-13

더 정확해진 플레이어 데이터

  • 플레이어 누적 통계 전송을 수정해서 월드 데이터를 더 정확하게 읽어요. 웹사이트의 누적 데이터가 더 이상 어긋나지 않아요
  • 허수아비와 봇 계정은 집계 단계에서 제외돼서 웹사이트 순위에 나타나지 않아요
v1.1.2 모드 2026-09-13

플레이어 통계와 모드 목록

  • 접속 플레이어를 UUID와 함께 전송하도록 바꿔서 이름을 바꿔도 두 사람으로 늘어나지 않아요
  • 월드 통계를 읽어 개설 이후 데이터를 전송해요. 누적 플레이 시간, 사망, 킬, 채굴, 설치, 이동 거리
  • 서버에 설치된 모드 목록과 사용 가능한 명령어 목록을 자동으로 전송해요 (Fabric API의 수십 개 하위 모듈은 걸러냈어요)
  • 밴된 IP도 함께 전송해서 웹사이트에 별도 항목으로 보여줘요
v1.1.1 모드 2026-09-13

API 주소 리다이렉트 보호

  • API 주소가 301, 302로 리다이렉트되면 바로 오류를 내고 올바른 주소를 알려줘요. 더 이상 조용히 데이터를 잃지 않아요
  • 전송 실패 원인은 게임 내 /cdr status 에서 바로 볼 수 있어요
v1.1.0 모드 2026-09-12

관측 모드 첫 버전

  • 30초마다 서버 상태를 웹사이트로 전송해요. 접속자 수, TPS, MSPT, CPU, 메모리, 디스크, 네트워크
  • 밴 목록과 플레이어 접속·퇴장 이벤트를 전송하고, 웹사이트는 이를 바탕으로 플레이 시간을 집계해요
  • 게임 내 /cdr bind <연동 코드> 로 계정을 연동하고, /cdr status 와 /cdr reload 는 관리자가 상태 확인과 설정 다시 불러오기에 써요
  • 네트워크 요청은 모두 백그라운드 스레드에서 실행돼서 웹사이트에 연결하지 못해도 서버가 느려지지 않아요

날짜는 해당 버전의 공개일이에요. 새로운 문제를 발견하면 게시판에 알려 주시거나 서버 관리자에게 직접 연락해 주세요.