투표 보상 설정 방법 (Votifier, VotingPlugin 외)
동반 플러그인을 설치하거나, 즉시 지급을 위해 Votifier를 연동하거나, 대신 VotingPlugin, SuperVotes, SuperbVote를 이 사이트에 연결하세요 - 이 사이트가 실제로 요구하는 값 그대로 설명합니다.

모든 보상 플러그인은 여러분에게서 두 가지가 필요합니다: 투표가 일어났음을 알 방법, 그리고 그때 실행할 무언가입니다. 이 글에서는 두 가지를 모두 다룹니다 - 이 사이트가 제공하는 동반 플러그인, 즉시 지급을 위한 Votifier, 그리고 이미 VotingPlugin, SuperVotes, 또는 다른 보상 플러그인을 사용 중이라면 어떻게 해야 하는지입니다.
옵션 A: VoxelRank 플러그인 (권장)
동반 플러그인은 이 사이트의 API와 직접 통신합니다. Votifier는 필요 없습니다 - 일정 간격으로 아직 받지 않은 투표를 폴링하는 방식으로 동작하므로 NAT 뒤에서도 작동하며, 서버가 꺼져 있는 동안 놓친 것도 나중에 모두 따라잡습니다. Votifier도 즉시 지급을 위한 선택적 추가 기능으로 사용할 수 있습니다 (옵션 B 참고).
- 대시보드에서 jar 파일을 다운로드하세요 (빌드가 존재하면 서버 카드에 다운로드 버튼이 나타납니다), 또는 /download/plugin에서 직접 받을 수 있습니다.
plugins/에 넣고 서버를 한 번 시작하세요. 그러면plugins/VotingSite/config.yml이 생성됩니다.- 서버의 편집 페이지 → 보상 및 투표 탭을 열고 거기 표시된 API 키를 복사하세요.
config.yml의site.api-key에 붙여넣고 (site.url이 이 사이트를 가리키는지도 확인하세요),/votingsite reload를 실행하세요.config.yml의mode를 설정해 투표가 어떻게 전달될지 결정하세요:poll(기본값) - 플러그인이 스스로 받지 않은 투표를 가져옵니다. 더 설치할 것이 없습니다.votifier- 투표가 이뤄지는 순간 사이트가 각 투표를 전송합니다. NuVotifier나 다른 Votifier 리스너가 필요합니다 (아래 옵션 B).both- Votifier 푸시와 함께 폴링을 안전장치로 사용하며, 투표 id 덕분에 중복되지 않습니다.
- 투표 시 실행할 콘솔 명령어로
rewards.commands(원한다면milestones와vote-party도)를 채우세요. - 테스트해 보세요:
/votingsite testvote <player>는 실제 투표를 기다리지 않고 투표를 시뮬레이션합니다./votingsite status는 모드, API 키가 승인되는지, 지금까지 몇 표가 전달되었는지 보여줍니다.
플레이어는 /voxelrank vote로 투표 링크와 투표 수를 확인합니다 - /vote가 아닙니다. 이 플러그인은 의도적으로 이 명령어를 절대 점유하지 않습니다 (두 플러그인이 같은 명령어를 두고 다투는 것이야말로 보상이 조용히 망가지는 전형적인 방식입니다 - config.yml에 있는 관련 설명도 참고하세요).
옵션 B: NuVotifier로 즉시 지급하기
poll 모드가 이미 충분히 잘 작동한다면 이 부분은 건너뛰어도 됩니다 - 필수는 아닙니다. 폴링으로 인한 몇 분의 지연이 중요할 때, 또는 이 사이트 자체 플러그인 대신 전용 보상 플러그인을 운영하고 싶을 때 추가하세요.
NuVotifier는 원조 Votifier의 활발히 유지보수되는 포크입니다 - 원조 프로젝트는 오늘날 사실상 관리되지 않고 있어서, 실질적으로 "Votifier를 설치한다"는 것은 NuVotifier(또는 VotifierPlus 같은 호환 포크)를 설치한다는 뜻입니다.
- NuVotifier의 jar 파일을
plugins/에 넣고 서버를 재시작하세요. Bukkit/Spigot/Paper 서버에서는 하위 호환성을 위해 기존의plugins/Votifier/폴더 이름을 그대로 사용합니다 - 이건 NuVotifier 자신의 폴더이지 예전 플러그인의 잔재가 아닙니다 - 처음 시작할 때 그 안에config.yml과rsa/폴더 안의 키 쌍을 생성합니다. plugins/Votifier/config.yml에서 인증 정보를 확인하세요: v2 토큰(권장)은tokens:섹션의default키 아래에 자동으로 생성됩니다 - 그대로 복사하세요. 예전 방식을 선호한다면 v1 공개 키는plugins/Votifier/rsa/public.key에 있습니다. 짝이 되는private.key는 서버의 같은 폴더에 두고 절대 공유하지 마세요.- NuVotifier가 대기하는
port(기본값8192)를 확인하고 방화벽이나 호스팅 패널에서 열려 있는지 확인하세요 - 일반적인 마인크래프트 포트와는 별개의 포트이며, 대부분의 호스팅은 이를 자동으로 열어주지 않습니다. - 서버의 편집 페이지 → 보상 및 투표 탭에서 Votifier 호스트(서버 주소)와 그 포트를 입력한 다음, 2단계에서 얻은 v2 토큰 또는 v1 키를 붙여넣으세요. 둘 다 입력하면 하나만 사용됩니다 - v2가 우선합니다.
- 그 탭에서 바로 테스트 투표 보내기를 클릭하세요. 이는 폼에 현재 입력된 호스트/포트/키/토큰으로 실제 Votifier 패킷을 전송합니다 - 미리 저장할 필요는 없습니다 - 그리고 NuVotifier가 이를 수락했는지 즉시 알려줍니다. 실패하면 NuVotifier 자체 콘솔 로그(기본값
debug: true)에서 연결이 플러그인까지 도달했는지 확인할 수 있어, "잘못된 키"와 "차단된 포트"를 빠르게 구분할 수 있습니다. - 저장한 다음 실제로 투표하고, 다음 폴링을 기다리지 않고 보상이 바로 도착하는지 확인하세요.
내부적으로 이 사이트는 v2 토큰이 설정되어 있으면 HMAC 서명된 JSON 페이로드를 담은 표준 VOTIFIER 2 핸드셰이크를 전송하고, 그렇지 않으면 RSA로 암호화된 고전적인 v1 블록으로 대체합니다 - 이미 모든 Votifier 호환 리스너가 사용하는 것과 같은 프로토콜이며, 이 사이트만의 특별한 것은 없습니다.
이미 VotingPlugin을 사용 중인가요?
서버에 이미 VotingPlugin이 실행 중이라면 저희 플러그인을 설치할 필요가 없습니다 - 이 사이트를 수동으로 추가할 필요도 없는데, VotingPlugin에 이를 위한 유지 관리되는 프리셋이 있기 때문입니다.
게임 내에서 운영자로(또는 VotingPlugin.Commands.AdminVote.VotePresets 권한으로) 다음을 실행하세요:
/av VotePresets
VotingPlugin은 자체 VotingPlugin-Presets 저장소에서 현재 프리셋 목록을 다운로드하고 그중 하나를 선택하게 해줍니다 - VoxelRank도 포함되어 있습니다 - 그런 다음 그 프리셋에 필요한 값을 물어봅니다: 표시 이름, 여러분의 등록 페이지 투표 URL, 투표 간 딜레이 등입니다. 아니면 자신의 투표 링크로 바로 건너뛸 수도 있습니다:
/av VotePresets https://voxelrank.com/server/your-slug/vote
https://를 포함하세요; VotingPlugin은 목록에서 찾게 하는 대신 호스트 이름을 올바른 프리셋에 자동으로 매칭합니다.
어느 쪽이든 VoteSites.yml의 VoteSites: 아래에 해당 항목을 작성하거나 갱신합니다 - ServiceSite, VoteURL, 합리적인 기본 딜레이, 그리고 사이트에 아직 없다면 임시 표시 아이템이나 감사 메시지까지 - 그런 다음 여러분을 위해 투표 사이트를 다시 불러옵니다. 파일에 이미 있던 다른 내용은 그대로 유지됩니다. 새로 추가하는 것이 아니라 이미 설정된 구성을 변경하는 경우라면 먼저 VoteSites.yml을 백업하고, 플레이어에게 알리기 전에 무엇이 작성됐는지 - 특히 보상을 - 검토하세요. 프리셋은 시작점이지 완성된 설정이 아니기 때문입니다.
VotingPlugin은 실제로 투표를 받으려면 여전히 자체 Votifier 연결이 필요합니다 - 위 옵션 B와 같은 NuVotifier 설정을 가리키게 하세요. 또한 프리셋을 가져오려면 서버가 GitHub(raw.githubusercontent.com)에 접근할 수 있어야 합니다; /av VotePresets가 사용 가능한 프리셋이 없다고 보고한다면 이는 서버의 네트워크나 방화벽 문제이지 프리셋이 없어진 것이 아닙니다. 대체 수단으로 /av gui나 VoteSites.yml 직접 편집도 여전히 사용할 수 있습니다 - ServiceSite는 정확히 VoxelRank.com이어야 하며, 실제 투표나 관리자 테스트 투표 후 /av servicesites로 확인할 수 있습니다.
다른 보상 플러그인
VotingPlugin보다 가벼운 것을 사용 중인가요? SuperVotes와 SuperbVote는 둘 다 자체 vote-party 및 보상 명령어 시스템을 갖춘 가벼운 Votifier 리스너입니다. 둘 다 VotingPlugin처럼 사이트별 프리셋을 관리하지 않습니다 - 위의 보상 및 투표 탭에 있는 동일한 Votifier 호스트, 포트, v2 토큰(또는 v1 키)을 둘 중 하나에 설정하고, 다른 투표와 마찬가지로 보상을 구성하세요.
문제 해결
/votingsite testvote를 실행해도 아무 일도 일어나지 않습니다. 먼저/votingsite status를 확인하세요 - API 키가 승인되지 않으면 투표(실제든 테스트든)가 갈 곳이 없습니다. 편집 페이지에서 다시 복사하고 끝에 공백이 없는지 확인하세요.- Votifier 푸시는 전혀 도착하지 않지만 폴링은 작동합니다. 대개는 API가 아니라 Votifier 포트가 차단된 것입니다 - 대부분의 호스팅은 기본적으로 나가는 HTTP 트래픽은 허용하지만 임의의 추가 인바운드 포트는 허용하지 않습니다.
mode: both(또는 다른 보상 플러그인의 리스너를 별도로 실행하는 것)는 방화벽과 씨름하는 대신 쓸 만한 영구적인 대안입니다. - 보상이 발동하지만 게임 안에서는 아무것도 나타나지 않습니다. 보상 명령어는 콘솔에서 실행되므로 플레이어가 직접 입력했을 때만 작동하는 명령어(권한 없음,
op없음)는 조용히 실패합니다. 먼저 정확한 명령어를 콘솔에서 테스트하세요. - VotingPlugin이 "invalid service site"를 로그에 남기거나 투표를 절대 매칭하지 못합니다.
ServiceSite값은 대소문자를 제외하고 한 글자씩 정확히 일치해야 합니다. 이 사이트의 도메인 이름으로 추측하지 말고/av servicesites로 확인하세요. /av VotePresets가 사용 가능한 프리셋이 없다고 하거나, URL이 아무것도 매칭되지 않습니다. 이는 실행 시점에 GitHub에서 프리셋 목록을 다운로드하므로, 거의 항상 서버 자체의 네트워크 - 방화벽, 프록시, DNS, 또는 GitHub 장애 - 가raw.githubusercontent.com을 차단하고 있는 것이지, VoxelRank가 목록에서 빠졌다는 신호가 아닙니다. URL 매칭에는https://를 포함한 전체 주소도 필요합니다; 호스트 이름만으로는 인식되지 않습니다.- 보상 및 투표 탭의 설정이 저장되지 않는 것처럼 보입니다. 이는 소유권이 주장된 등록에만 적용됩니다 - 서버 목록의 소유권 주장 필터를 확인하세요. 가져온, 소유권이 주장되지 않은 항목에는 아직 보상을 설정할 소유자가 없습니다; 먼저 소유권을 주장하세요.
빠른 답변
Votifier가 정말 필요한가요?
아니요. poll 모드(VoxelRank 플러그인의 기본값)는 다른 아무것도 설치하지 않아도 작동합니다 - Votifier는 투표와 보상 사이의 지연을 줄여줄 뿐이며, 대신 VotingPlugin, SuperVotes, SuperbVote를 운영하고 싶을 때의 유일한 경로입니다.
저희 플러그인과 VotingPlugin을 동시에 사용할 수 있나요?
같은 보상에는 안 됩니다 - 실제로 보상 명령어를 실행할 하나를 선택하세요, 그러지 않으면 투표가 두 번 지급될 수 있습니다. Votifier 자체는 여러 리스너에 동시에 알릴 수 있으므로, 이는 기술적 제한이 아니라 "같은 보상을 두 번 설정하지 말라"는 규칙입니다.
제 호스팅에서 Votifier용 추가 포트를 열 수 없습니다.
VoxelRank 플러그인과 함께 poll 모드를 사용하세요. 이는 나가는 요청만 하므로 열어야 할 것이 없습니다. VotingPlugin과 비슷한 보상 플러그인들은 폴링 모드에 상응하는 것이 없어서, 들어오는 Votifier 포트가 필요합니다.
도움이 필요하신가요?
위의 단계 중 하나에서 막히셨나요, 아니면 서버가 실제로 보내는 내용과 뭔가 맞지 않나요? 문의하기 - 투표/보상 관련 질문에 대한 가장 빠른 경로가 그곳에 나와 있습니다.