BungeeCordを使ったMinecraft鯖運営

# このページを作った経緯
鯖運営をしていく中で毎度毎度忘れる（初期設定だから）のでメモ程度に作りました。

あくまで自分が実践してのことなのでその作業はいらないよなどがあるかもしれません。
#重要
このページは未完成です。
この表記が消えるまでは参考にしないことをお勧めします。
# 開けるPort（計５種）
|ポート|概要|種類（Paper/BungeeCord）|
|:-----------------:|:------------------:|:------------------:|
|25565|鯖入口|BungeeCord|
|0000|鯖A|Paper|
|0000|鯖B|Paper|
|0000|投票|BungeeCord|
|0000|投票|Paper|
**※BungeeCord鯖に25565を割り当てているのは鯖に入るときに
`IP:Port`
という形にしないため**
# BungeeCord鯖準備
**※すでにダウンロードは済んでいるものとする。**

### config.yml（初期）
```yml
forge_support: false
player_limit: -1
permissions:
  default:
  - bungeecord.command.server
  - bungeecord.command.list
  admin:
  - bungeecord.command.alert
  - bungeecord.command.end
  - bungeecord.command.ip
  - bungeecord.command.reload
timeout: 30000
log_commands: false
online_mode: true
disabled_commands:
- disabledcommandhere
servers:
  lobby:
    motd: '&1Just another BungeeCord - Forced Host'
    address: localhost:25565
    restricted: false
listeners:
- query_port: 25577
  motd: '&1Another Bungee server'
  tab_list: GLOBAL_PING
  query_enabled: false
  proxy_protocol: false
  forced_hosts:
    pvp.md-5.net: pvp
  ping_passthrough: false
  priorities:
  - lobby
  bind_local_address: true
  host: 0.0.0.0:25577
  max_players: 1
  tab_size: 60
  force_default_server: false
ip_forward: false
network_compression_threshold: 256
prevent_proxy_connections: false
groups:
  md_5:
  - admin
connection_throttle: 4000
stats: 25e4c7af-20e1-4c5b-82c6-3397aadd0a4b
connection_throttle_limit: 3
log_pings: true
```
### 変更点１
```yml
servers:
  lobby: # 鯖Aをあらわす文字（任意）
    motd: '&1Just another BungeeCord - Forced Host'
    address: localhost:0000 # 鯖A
    restricted: false
```
### 変更点２
```yml
listeners:
- query_port: 25565 # portを25565にした
  motd: '&1Another Bungee server' # 25565で入ろうとするとこのMOTDが見えるわけ
  tab_list: GLOBAL_PING
  query_enabled: false
  proxy_protocol: false
  forced_hosts:
    pvp.md-5.net: pvp
  ping_passthrough: false
  priorities:
  - lobby # worldが増えたら増えていく
  bind_local_address: true
  host: 0.0.0.0:25565 # portを25565にした
  max_players: 1 # 鯖入口にはプレイヤーが滞在しないので1でOK
  tab_size: 60
  force_default_server: false
```
# 鯖A Votifier config.yml
```yml
# The IP to listen to. Use 0.0.0.0 if you wish to listen to all interfaces on your server. (All IP addresses)
# This defaults to the IP you have configured your server to listen on, or 0.0.0.0 if you have not configured this.
host: 0.0.0.0

# Port to listen for new votes on
port: 0000 # 投票 | Paper

# Whether or not to print debug messages. In a production system, this should be set to false.
# This is useful when initially setting up NuVotifier to ensure votes are being delivered.
debug: false

# Setting this option to true will disable handling of Protocol v1 packets. While the old protocol is not secure, this
# option is currently not recommended as most voting sites only support the old protocol at present. However, if you are
# using NuVotifier's proxy forwarding mechanism, enabling this option will increase your server's security.
disable-v1-protocol: false

# All tokens, labeled by the serviceName of each server list.
tokens:
  # Default token for all server lists, if another isn't supplied.
  default: TOKEN # ここ重要

# Configuration section for all vote forwarding to NuVotifier
forwarding:
  # Sets whether to set up a remote method for fowarding. Supported methods:
  # - none - Does not set up a forwarding method.
  # - pluginMessaging - Sets up plugin messaging
  method: none
  pluginMessaging:
    channel: NuVotifier
```
# Bungee Votifier config.yml
```yml
# The IP to listen to. Use 0.0.0.0 if you wish to listen to all interfaces on your server. (All IP addresses)
# This defaults to the IP you have configured your server to listen on, or 0.0.0.0 if you have not configured this.
host: 0.0.0.0

# Port to listen for new votes on
port: 0000 # 投票 | BungeeCord

# Whether or not to print debug messages. In a production system, this should be set to false.
# This is useful when initially setting up NuVotifier to ensure votes are being delivered.
debug: false

# All tokens, labeled by the serviceName of each server list.
tokens:
  # Default token for all server lists, if another isn't supplied.
  default: ??????????????????? # ここ無視してどうぞ

# Setting this option to true will disable handling of Protocol v1 packets. While the old protocol is not secure, this
# option is currently not recommended as most voting sites only support the old protocol at present.
disable-v1-protocol: false

# Configuration section for all vote forwarding to NuVotifier
forwarding:
  # Sets whether to set up a remote method for fowarding. Supported methods:
  # - none - Does not set up a forwarding method.
  # - pluginMessaging - Sets up plugin messaging.
  # - proxy - Proxies votes to other NuVotifier servers from this server.
  method: proxy
  pluginMessaging:
    channel: NuVotifier

    #Only send votes to certain servers. If a server is present on excludedServers, then votes will NOT be forwarded
    #to them. If excludedServers is not present, votes will be sent to all servers.
    #If onlySendToJoinedServer is true, this option is ignored.

    #excludedServers:
    #- server1
    #- server2


    # Sets which cache to use if there are no players on the server that the vote is being sent to. Supported caches:
    # - none - Votes will simply be lost when no players are present on the server.
    # - memory - Votes will be cached in memory when no players are present. When Bungee is restarted, the votes will be lost.
    #   This method is NOT recommended for production systems!
    # - file - Votes will be saved to a local file every 3 minutes and on shutdown and reloaded when Bungee is restarted. This is suitable for
    #   most set ups.
    cache: file
    # Only sends the vote to the server in which the player is currently joined.
    onlySendToJoinedServer: false
    #Sets which server to send the vote in the event the player is not online when the vote is cast
    #If you do not want the vote forwarded to a fallback, set this value to empty ('')
    #ONLY USED IF onlySendToJoinedServer is true!!
    joinedServerFallback: 'Hub'
    # Options for file caching.
    file:
      name: cached-votes.json
      # days before a vote is considered 'dead' - removed from cache with a console warning
      voteTTL: 10
  # Specify servers to proxy votes for.
  proxy:
    Hub:
      address: 0.0.0.0
      port: 0000
      token: TOKEN
```