

HeimdallVoice integra zonas do mapa de Valheim com canais de voz no Discord.
Quando um jogador vinculado entra em uma zona configurada, o bridge move esse jogador para a sala de voz correspondente. Quando ele sai da zona, o bridge restaura o canal de voz anterior.
voice ou /voicevoice no console ou /voice no chat.!link CODIGO no Discord.discordChannelId configurado.Este projeto tem 2 partes:
O pacote da Thunderstore entrega o plugin do Valheim. Para o sistema funcionar, o bridge tambem precisa estar rodando.
BepInExPack ValheimDentro da pasta do bridge:
cd HeimdallVoice-Bridge
npm install
node index.js
Antes de iniciar o bridge, preencha:
HeimdallVoice-Bridge/config.json
Exemplo:
{
"discordToken": "SEU_TOKEN_DO_BOT",
"guildId": "SEU_ID_DO_SERVIDOR",
"serverHost": "0.0.0.0",
"serverPort": 24600
}
Campos obrigatorios:
discordToken: token do bot do DiscordguildId: ID do servidor DiscordSe esses campos ainda estiverem com os valores de exemplo, o bot nao inicia.
O plugin pode ser configurado pelos arquivos do BepInEx ou diretamente no Configuration Manager dentro do jogo.
Defina a URL do bridge em:
Bridge -> URL BaseExemplos:
http://127.0.0.1:24600https://seu-tunnel.trycloudflare.comSe voce estiver usando Cloudflared, coloque a URL gerada pelo tunnel em Bridge -> URL Base.
Tambem disponiveis no Configuration Manager:
Bot do Discord -> Token do BotServidor do Discord -> ID do ServidorServidor da Bridge -> HostServidor da Bridge -> PortaAs zonas podem ser configuradas no Configuration Manager em:
Zonas -> Quantidade de ZonasZona 1Zona 2Zona 3Cada zona suporta:
NomePosicao XPosicao ZRaioID da Sala DiscordO plugin tambem mantem uma copia em:
BepInEx/config/HeimdallVoice/zones.json
Exemplo:
[
{
"name": "Global",
"x": 0,
"z": 0,
"radius": 60,
"discordChannelId": "1250504640488013866"
},
{
"name": "Vila",
"x": 225,
"z": 88,
"radius": 10,
"discordChannelId": "1478777749895118918"
}
]
No jogo:
voice/voiceNo Discord:
!link CODIGOSe o bot nao iniciar, verifique primeiro o arquivo HeimdallVoice-Bridge/config.json. O bridge se recusa a iniciar enquanto discordToken ou guildId estiverem com os valores de exemplo.