Suporte a um novo servidor

O que muda entre servidores, onde isso entra no módulo e como conferir que funciona.

O que muda

Cada servidor tem seu próprio cliente. A base, OTClientV8, é a mesma, mas isto costuma mudar:

  • o bot: qual é, e como ele nomeia rotas, marcadores e suprimentos;
  • recursos do servidor: tasks, blessings, redemption, autoloot;
  • onde o cliente guarda os arquivos, e quais módulos ele já tem.

O módulo lê o básico sozinho: nome, nível, experiência, posição, capacidade, stamina e skulls à vista. O resto vem de um adaptador.

Escreva um adaptador

Um adaptador é uma tabela Lua com funções. O módulo pergunta a cada adaptador, em ordem, e usa a primeira resposta.

table.insert(Voidwatch.adapters, {
  server = function() return 'myserver' end,
  route = function() return CaveBot and CaveBot.getCurrentProfile() end,
  routeOn = function() return CaveBot and CaveBot.isOn() end,
  supplies = function()
    return { { name = 'great mana potion', have = itemAmount(238), want = 800 } }
  end,
  action = function(name)
    if name == 'toggle_cavebot' then
      return function(args) if args.on then CaveBot.setOn() else CaveBot.setOff() end; return true end
    end
  end,
})

Um campo que nenhum adaptador responde fica fora dos dados, e o painel o esconde.

Confira

  1. Pareie um cliente no servidor e abra Ao vivo: nível, posição e capacidade aparecem.
  2. Os campos do adaptador também aparecem: rota, suprimentos, tasks.
  3. Mande pausar e retomar pelo painel; o registro de comandos mostra feito.
  4. Abra a visão ao vivo e veja a captura atualizar a cada poucos segundos.

Quando um servidor passa nessas checagens e jogadores o usam, ele aparece como suportado na lista de servidores. Compartilhe seu adaptador no nosso Discord para outros jogadores do servidor.