HeimdallVoice
Server-side Discord zone-based voice mover for Valheim.HeimdallVoice
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.
Recursos
- Movimentacao automatica entre salas de voz do Discord por zona do mapa
- Vinculo da conta pelo jogo com
voiceou/voice - Suporte ao Configuration Manager
- Restauracao automatica para o canal anterior ao sair da zona
- Persistencia dos vinculos entre Steam e Discord
Como Funciona
- O jogador usa
voiceno console ou/voiceno chat. - O mod gera um codigo de vinculacao.
- O jogador usa
!link CODIGOno Discord. - O bridge salva o vinculo entre Steam e Discord.
- Quando o jogador entra em uma zona, o mod envia o
discordChannelIdconfigurado. - O bridge move o usuario para a sala de voz correta.
- Quando o jogador sai da zona, o bridge restaura o canal anterior.
O Que Voce Precisa
Este projeto tem 2 partes:
- O plugin BepInEx para Valheim
- O HeimdallVoice Bridge, um app Node.js que conversa com o Discord
O pacote da Thunderstore entrega o plugin do Valheim. Para o sistema funcionar, o bridge tambem precisa estar rodando.
Instalacao no Valheim
- Instale
BepInExPack Valheim - Instale este mod
- Inicie o jogo ou servidor uma vez para gerar os arquivos de configuracao
Configuracao do Bridge
Dentro 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 Discord
Se esses campos ainda estiverem com os valores de exemplo, o bot nao inicia.
Configuracao do Plugin
O plugin pode ser configurado pelos arquivos do BepInEx ou diretamente no Configuration Manager dentro do jogo.
URL do Bridge
Defina a URL do bridge em:
Bridge -> URL Base
Exemplos:
http://127.0.0.1:24600https://seu-tunnel.trycloudflare.com
Se voce estiver usando Cloudflared, coloque a URL gerada pelo tunnel em Bridge -> URL Base.
Configuracoes do Discord
Tambem disponiveis no Configuration Manager:
Bot do Discord -> Token do BotServidor do Discord -> ID do ServidorServidor da Bridge -> HostServidor da Bridge -> Porta
Zonas
As zonas podem ser configuradas no Configuration Manager em:
Zonas -> Quantidade de ZonasZona 1Zona 2Zona 3- ...
Cada zona suporta:
NomePosicao XPosicao ZRaioID da Sala Discord
O 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"
}
]
Comandos
No jogo:
voice/voice
No Discord:
!link CODIGO
Observacoes Importantes
- O bridge mantem apenas um vinculo por conta Discord
- O jogador precisa ja estar conectado a um canal de voz para poder ser movido
- Se o bridge estiver offline ou inacessivel, as trocas de zona nao vao mover o jogador
- Se voce usar um tunnel temporario do Cloudflared, a URL muda toda vez que ele for iniciado
Seguranca
- Nunca compartilhe o token do seu bot
- Se esse token foi exposto, revogue e gere outro imediatamente
Suporte
Se 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.
