Vault 문서 원본 보기 ← Vault 문서 편집 권한이 없습니다. 다음 이유를 확인해주세요: 요청한 명령은 다음 권한을 가진 사용자에게 제한됩니다: 사용자. 문서의 원본을 보거나 복사할 수 있습니다. '''Vault'''는 [[마인크래프트]] 서버에서 권한, 채팅, 경제 시스템을 위한 통합 API를 제공하는 플러그인이다. 개별 플러그인에 직접 연결하거나 의존할 필요 없이 쉽게 연동할 수 있도록 해주며, 다양한 권한 및 경제 플러그인들 간의 호환성을 보장한다. Sleaker가 개발했으며, 2011년부터 거의 모든 서버에서 필수 플러그인으로 자리잡았다. == 역할 == Vault는 직접적인 기능을 제공하지 않고, 다른 플러그인들 간의 다리 역할을 한다: * '''권한 시스템 통합''': 다양한 권한 플러그인과의 호환성 * '''경제 시스템 통합''': 여러 경제 플러그인을 하나의 API로 관리 * '''채팅 시스템 통합''': 접두사, 접미사 등 채팅 포맷 지원 개발자들은 각 플러그인의 API를 개별적으로 학습하지 않고도 Vault API만으로 모든 호환 플러그인과 연동할 수 있다. == 지원 플러그인 == === 권한 플러그인 === * [[LuckPerms]] (권장) * PermissionsEx (PEX) * GroupManager * bPermissions * zPermission * UltraPermissions === 경제 플러그인 === * [[EssentialsX]] Economy * iConomy * BOSEconomy * CraftConomy * CMI Economy * GemsEconomy * GoldIsMoney * Gringotts === 채팅 플러그인 === * [[EssentialsX]] Chat * [[LuckPerms]] (메타데이터) * ChatEx * mChat == 설치 == Vault는 다른 플러그인의 의존성으로 작동하므로 단독 설치만으로는 효과가 없다: # [https://www.spigotmc.org/resources/vault.34315/ SpigotMC]에서 다운로드 # plugins 폴더에 JAR 파일 넣기 # 서버 재시작 # 권한/경제/채팅 플러그인 설치 == 개발자 API == === Maven 설정 === <pre> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> <dependency> <groupId>com.github.MilkBowl</groupId> <artifactId>VaultAPI</artifactId> <version>1.7</version> <scope>provided</scope> </dependency> </pre> === 기본 사용법 === <pre> public class MyPlugin extends JavaPlugin { private static Economy econ = null; private static Permission perms = null; private static Chat chat = null; @Override public void onEnable() { if (!setupEconomy()) { getLogger().severe("Vault 경제 시스템을 찾을 수 없습니다!"); getServer().getPluginManager().disablePlugin(this); return; } setupPermissions(); setupChat(); } private boolean setupEconomy() { if (getServer().getPluginManager().getPlugin("Vault") == null) { return false; } RegisteredServiceProvider<Economy> rsp = getServer() .getServicesManager() .getRegistration(Economy.class); if (rsp == null) { return false; } econ = rsp.getProvider(); return econ != null; } // setupPermissions()와 setupChat()도 유사한 방식 } </pre> === 경제 API 사용 예시 === <pre> // 잔액 확인 double balance = econ.getBalance(player); // 돈 지급 EconomyResponse r = econ.depositPlayer(player, 100); if (r.transactionSuccess()) { player.sendMessage("100원을 받았습니다!"); } // 돈 차감 EconomyResponse r = econ.withdrawPlayer(player, 50); if (r.transactionSuccess()) { player.sendMessage("50원을 지불했습니다!"); } // 계좌 생성 (은행) econ.createBank("서버은행", player); </pre> === 권한 API 사용 예시 === <pre> // 권한 확인 if (perms.has(player, "my.permission")) { // 권한이 있을 때 } // 그룹 확인 String group = perms.getPrimaryGroup(player); // 그룹 추가 perms.playerAddGroup(player, "vip"); // 그룹 제거 perms.playerRemoveGroup(player, "default"); </pre> === 채팅 API 사용 예시 === <pre> // 접두사 가져오기 String prefix = chat.getPlayerPrefix(player); // 접미사 설정 chat.setPlayerSuffix(player, " [VIP]"); // 그룹 접두사 가져오기 String groupPrefix = chat.getGroupPrefix(world, group); </pre> == 설정 == config.yml은 매우 간단하다: <pre> # 업데이트 확인 update-check: true </pre> == VaultUnlocked == Vault의 개발이 정체되면서 VaultUnlocked라는 포크 버전이 등장했다: * '''다중 통화 지원''': 여러 종류의 화폐 관리 * '''Folia 지원''': 최신 서버 소프트웨어 호환 * '''BigDecimal 지원''': 정밀한 화폐 계산 * '''활발한 개발''': 지속적인 업데이트 == 주의사항 == * Vault는 단독으로는 아무 기능도 하지 않음 * 반드시 호환되는 권한/경제 플러그인이 필요 * plugin.yml에 depend 또는 softdepend 추가 필수 * 4년 이상 업데이트가 없지만 여전히 작동함 == 같이 보기 == * [[LuckPerms]] * [[EssentialsX]] * [[마인크래프트/플러그인]] == 외부 링크 == * [https://github.com/MilkBowl/Vault GitHub 저장소] * [https://github.com/MilkBowl/VaultAPI VaultAPI GitHub] * [https://www.spigotmc.org/resources/vault.34315/ SpigotMC 페이지] * [https://dev.bukkit.org/projects/vault Bukkit 페이지] [[분류:마인크래프트/플러그인]] Vault 문서로 돌아갑니다. 분류