Servidores de Jogos

Sons e rádios: PlayAudioStreamForPlayer na prática

Sons e rádios: PlayAudioStreamForPlayer na prática

Música de login, rádio no carro, som ambiente numa boate: o áudio deixa o servidor muito mais imersivo. No open.mp, a função principal é PlayAudioStreamForPlayer.

O básico

PlayAudioStreamForPlayer(playerid, "https://exemplo.com/musica.mp3");
StopAudioStreamForPlayer(playerid);

O cliente do jogador baixa e toca o áudio direto da URL. O servidor do jogo só envia o endereço.

Som posicional

A função aceita posição e distância, para que o som fique mais alto perto da origem:

PlayAudioStreamForPlayer(playerid, url, x, y, z, 30.0, true);

Ótimo para boates, igrejas, shows e eventos.

Rádio de veículo

  1. Crie uma lista de estações (URLs de streams de rádio);
  2. Ao entrar no veículo, toque a estação escolhida para todos os ocupantes;
  3. Ao trocar de estação ou sair, pare ou troque o stream.
public OnPlayerStateChange(playerid, PLAYER_STATE:newstate, PLAYER_STATE:oldstate)
{
    if (newstate == PLAYER_STATE_DRIVER || newstate == PLAYER_STATE_PASSENGER)
    {
        new vid = GetPlayerVehicleID(playerid);
        if (RadioVeiculo[vid] != -1)
            PlayAudioStreamForPlayer(playerid, Estacoes[RadioVeiculo[vid]]);
    }
    else if (oldstate == PLAYER_STATE_DRIVER || oldstate == PLAYER_STATE_PASSENGER)
    {
        StopAudioStreamForPlayer(playerid);
    }
    return 1;
}

A assinatura do callback com tags (PLAYER_STATE:) segue os includes do open.mp. Nos includes antigos, os parâmetros não têm tag.

Som ambiente por área

Com áreas do Streamer, toque o som ao entrar e pare ao sair:

  • OnPlayerEnterDynamicArea → PlayAudioStreamForPlayer;
  • OnPlayerLeaveDynamicArea → StopAudioStreamForPlayer.

Cuidados técnicos

  • Prefira URLs estáveis e rápidas. Se o servidor de áudio cair, ninguém ouve nada;
  • Arquivos pequenos (MP3 com bitrate moderado) carregam mais rápido;
  • O jogador pode ter o volume do rádio do jogo desligado. Avise nas dicas do servidor;
  • Não force música o tempo todo: ofereça /musica para desligar.

Direitos autorais

Tocar músicas comerciais em um servidor público pode envolver direitos autorais. Prefira rádios que permitem retransmissão, músicas livres de royalties ou conteúdo próprio. Veja nosso post sobre o tema (não substitui orientação jurídica).

Hospede seu servidor com a VittHost

Nos planos OPENMP-BR da VittHost, seu servidor roda no Brasil com painel Pterodactyl, proteção DDoS, MySQL incluso, compatibilidade total com scripts SA-MP e teste grátis de 3 dias. Para hospedar os arquivos de áudio e o site, conheça também os VPS-NVME-BR.

Compartilhar:

Pronto para hospedar seu próximo projeto?

VPS com painel pré-instalado em 1 clique. Ativação imediata.

Ver planos VPS