Aumentamos nosso servidor de jogos Minecraft completo com minijogos. Parte 3. Instalando minijogos



Parte 1. Selecione e instale o servidor

Parte 2. Instale o mapa para o lobby do servidor

Veja o que eu acabei com: mc.piratebayserver.net
Para qualquer dúvida, escreva para Discord .

E assim, o lobby está pronto, agora precisamos iniciar o servidor com minijogos e um servidor proxy.
Para fazer isso, precisamos dos seguintes plugins:


E assim, baixe todos os plugins.

Também criamos três novas pastas na pasta raiz do servidor:
~ / BungeeCord
~ / MurderMystery
~ / SkyBlock

Copie o arquivo BungeeCord.jar baixado para a pasta BungeeCord, copie paper-1.15.2.jar para MurderMystery e SkyBlock. Além disso, em todas as novas pastas, copie o arquivo start.sh do PirateBay.

Editamos o arquivo start.sh para que, para cada servidor, tenhamos nosso próprio nome de processo para o programa de tela. Também para o BungeeCord, haverá outro arquivo jar que baixamos anteriormente. Eu fiz o seguinte.

Corda elástica:

#!/bin/sh

screen -S BungeeCord java -Xms512M -Xmx512M -jar BungeeCord.jar

Mistério:

#!/bin/sh

screen -S MurderMystery java -Xms1G -Xmx1G -XX:+UseConcMarkSweepGC -jar Paper-1.15.2.jar

SkyBlock:

#!/bin/sh

screen -S SkyBlock java -Xms1G -Xmx1G -XX:+UseConcMarkSweepGC -jar Paper-1.15.2.jar

Observe que agora, no total, 4 servidores consomem 3,5 GB de RAM, então tive que aumentar a configuração da gota na hospedagem para 4Gb.

De acordo com o cenário já concluído, lançamos 3 novos servidores, não esquecendo de editar o arquivo eula.txt.

Após o primeiro lançamento do servidor BungeeCord, precisamos registrar três servidores futuros em sua configuração: PirateBay, MurderMystery, SkyBlock. Para fazer isso, adicione os seguintes servidores ao arquivo ~ / BungeeCord / config.yml, excluindo o que foi criado por padrão:

servers:
  lobby:
    motd: '&1JWelcome to Lobby'
    address: localhost:25565
    restricted: false
  murdermystery:
    motd: '&1JWelcome to Murder Mystery'
    address: localhost:25566
    restricted: false
  skyblock:
    motd: '&1Welcome to Sky Block'
    address: localhost:25567
    restricted: false

defina também ip_forward: true e não esqueça de alterar online_mode: true para false se você não possui o Minecraft licenciado.

Após o primeiro lançamento dos servidores MurderMystery e SkyBlock, bem como do PirateBay, editamos o server.properties definindo as portas correspondentes do bungeecord. Você também precisa definir o modo online = false, para que o bungeecord possa proxy de nossos servidores:

para PirateBay:
server-port =
25565 query.port = 25565
online-mode = false

para MurderMystery:
server-port = 25566
query.port = 25566
online -mode = false

para SkyBlock:
server-port = 25567
query.port = 25567
online-mode = false

Além disso, para que o Citizens Server Selector funcione, precisamos definir o parâmetro bungeecord no arquivo spigot.yml do servidor PirateBay: true

Reinicie todos os servidores.

Observe que agora alteramos a porta de conexão no cliente do jogo, de acordo com a configuração do bungeecord agora é 25577.

Agora é hora de configurar o servidor do lobby. Para fazer isso, copie os plug-ins baixados SuperLobbyDeluxe, Citizens, Citizens Server Selector, LuckPerms, ItemJoin e Chest Commands na pasta de plug-ins do nosso servidor PirateBay ~ / PirateBay / plugins. Reiniciamos o servidor e nos conectamos a ele a partir do jogo.

Primeiro, escolheremos um lugar no mapa onde os jogadores devem aparecer e executar o comando:

/superlobby setspawn @a

Agora, selecionamos um local para o npc, que nos redirecionará para o servidor de minijogos e executará os comandos:

/css create &a&lMurderMystery
/css setCmd css join murdermystery
/css setDesc &eOnline: &1{players} 

Nosso npc foi criado e, se clicarmos com o botão direito do mouse, seremos redirecionados para o servidor MurderMystery. Para alternar entre servidores, você também pode usar o comando / server:

/server murdermystery
/server skyblock
/server lobby

Fazemos o mesmo para o SkyBlock:

/css create &5&lSkyBlock
/css setCmd css join skyblock
/css setDesc &eOnline: &1{players} 

Deveríamos ter o seguinte:



agora vamos configurar o menu do jogador. Para fazer isso, precisamos ajustar a configuração do plugin ItemJoin.

Abra ~ / PirateBay / plugins / ItemJoin / items.yml e substitua o conteúdo pelo nosso:

items.yml
# --{ =-=-=-=-=-=-=-=-=-= ItemJoin's Custom Item Configurations, by RockinChaos =-=-=-=-=-=-=-=-=-= }--
# See the tutorial page for a more in-depth explaination; https://github.com/RockinChaos/ItemJoin/wiki
items-Version: 6
items-Delay: 2
items-Overwrite: false
items-Spamming: false
items-RestrictCount: false
items:
  compass:
    id: COMPASS
    slot: 0
    name: '&1Lobby menu'
    commands:
      - 'menu'
    triggers: join, respawn, world-change
    permission-node: itemjoin.compass
    enabled-worlds: Void
    itemflags: death-drops, self-drops, inventory-modify


Também fazemos com ~ / PirateBay / plugins / ChestCommands / menu / example.yml:

example.yml
######################
#+                  +#
#   MENU SETTINGS    #
#+                  +#
######################

menu-settings:

  # REQUIRED
  # Appears as the title of the menu.
  name: '&1Menu'

  # REQUIRED
  # The number of rows in the menu.
  rows: 3

  # OPTIONAL (you can remove this or set it to '')
  # Bind multiple commands using ; (command: 'menu; m; me')
  command: 'menu'

  # OPTIONAL
  # How frequently the menu will be refreshed, in seconds.
  # Useful if you have variables in items' descriptions.
  auto-refresh: 5

  # OPTIONAL
  # This command command will be executed when the menu is opened.
  # Supports all the icon command types.
  open-action: 'tell: &eYou opened the example menu.'

  # OPTIONAL
  # The menu will open only when right-clicking with a compass.
  open-with-item:
    id: compass
    left-click: false
    right-click: true


######################
#+                  +#
#       ITEMS        #
#+                  +#
######################


lobbycmd:
  COMMAND: 'server lobby'
  NAME: '&eReturn to the Main Lobby'
  LORE:
    - 'Returns to the Main Lobby'
  ID: enderpearl
  POSITION-X: 1
  POSITION-Y: 1

spawn:
  COMMAND: 'spawn'
  NAME: '&eBack to Spawn'
  LORE:
    - 'Left click to move to Spawn Point'
  ID: turtleegg
  POSITION-X: 1
  POSITION-Y: 2

skyblock:
  COMMAND: 'server skyblock'
  NAME: '&ePlay SkyBlock'
  LORE:
    - 'Left click to play SkyBlock'
  ID: grassblock
  POSITION-X: 4
  POSITION-Y: 1

murdermystery:
  COMMAND: 'server murdermystery'
  NAME: '&ePlay Murder Mystery'
  LORE:
    - 'Left click to play Murder Mystery'
  ID: bow
  POSITION-X: 5
  POSITION-Y: 1


Reiniciando o servidor PirateBay. Deveríamos ter um menu na forma de uma bússola:



e quando você clica com o botão direito do mouse aqui está o menu do jogo:



Mas se tirarmos o papel do operador do nosso jogador executando o comando

/deop Dinikin

quando tentamos abrir o menu da bússola, recebemos uma mensagem de que não temos permissão para abrir o arquivo example.yml. E aqui o plugin LuckPerms vem em nosso auxílio. Ele permite que você configure os direitos para executar determinados comandos para determinados grupos de usuários ou até jogadores específicos.

Retornamos ao nosso usuário a função do operador no console do servidor:

op Dinikin

e entre lá:

lp user Dinikin permission set luckperms.*

nos dê direitos de administrador para todos os comandos do plugin LuckPerms.

Vá para o jogo e execute o comando:

/lp editor

que gerará um link para o site do plug-in, no qual precisamos editar mais os direitos:



Siga o link e, na página aberta, adicione o grupo de usuários padrão chestcommands.open.example.yml rights:



Clique em Salvar no canto superior direito, copie o comando gerado e execute-o no jogo. O resultado será a seguinte mensagem:



Novamente, removemos os direitos do operador e tentamos abrir o menu do jogo. Agora isso deve funcionar para um usuário simples:



agora você pode transferir os plug-ins ItemJoin e Command Chest com o conteúdo de suas pastas para os servidores de minijogos SkyBlock e MurderMystery, para que você não faça o mesmo novamente.
Também copiamos os plugins correspondentes de minijogos. Para Murder Mystery, também copiamos o plug-in Holographic Displays e o SuperLobbyDelux. Reinicie o servidor do minijogo.

Para o plug-in LuckPerms nos dois servidores, repetimos as etapas para dar aos jogadores acesso ao menu.

E assim, o jogo SkyBlock está pronto para nós, você pode acessá-lo através do npc ou do menu. Para iniciar a sobrevivência, basta digitar o comando / is ou / island e selecionar o tipo de ilha.



Se você deseja que a ilha seja criada automaticamente para todos os novos players, coloque a propriedade enable: true no arquivo ~ / SkyBlock / plugins / BentoBox / addons / BSkyBlock / config.yml para o parâmetro create-island-on-first-login e reinicie o servidor .

Resta pouco: selecionar e importar um mapa para o mini-jogo Murder Mystery e configurá-lo.

Fiz o download deste mapa, descompactei o arquivo e carreguei a pasta ~ / MurderMystery no servidor. Não esqueça de alterar o valor da propriedade level-name = world para o nome da pasta do mapa no arquivo ~ / MurderMystery / server.properties. Reiniciamos o servidor e vamos para a placa MurderMystery:



Como configurar o jogo Murder Mystery, você pode neste vídeo

Parabéns, terminamos a instalação do servidor do jogo. Ainda precisamos fazer alguns ajustes cosméticos, como rótulos de boas-vindas e informações. No entanto, essas alterações já estão além do escopo deste tutorial, mas acho que você pode descobrir facilmente os arquivos de configuração do plug-in SuperLobbyDelux.

All Articles