[PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
4 participantes
Página 1 de 1
[PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Olá!
Ultimamente eu venho trabalhando no multiplayer do meu jogo (que será para android) e estou utilizando o Unet (network manager e tal) para criar um modo multiplayer local para meu jogo. Bom.. Eu consegui fazer um client se conectar ao outro localmente, seja via rooteador portátil do android ou usando um rooteador de verdade... Até aí tudo bem... Mais ultimamente eu venho enfrentando um problema que ta quebrando a minha cabeça. Acontece o seguinte: Eu utilizo o editor do unity e o meu dispostivo android para testar o multiplayer... Eu crio o host usando o editor do unity e quando conecto ao host usando meu celular android, o jogo simplesmente trava e fecha sozinho... Eu já testei muitas coisas, mais até o momento não consegui encontrar a raiz do problema. Mais quando eu crio o host no meu dispositivo e conecto utilizando o editor, o jogo funciona perfeitamente. A mesma coisa rola quando uso dois dispotivos android. Quando crio o host usando o dispositivo A o host é criado normalmente e a a partida inicia perfeitamente, mais quando conecto ultilizando o dispositivo B, o jogo trava. Ah, e sempre que isso rola, o dispostivo Host não trava. Apenas o Client. Por isso venho aqui pedir ajuda a quem puder me ajudar!
Obrigado pelo seu tempo!
Ultimamente eu venho trabalhando no multiplayer do meu jogo (que será para android) e estou utilizando o Unet (network manager e tal) para criar um modo multiplayer local para meu jogo. Bom.. Eu consegui fazer um client se conectar ao outro localmente, seja via rooteador portátil do android ou usando um rooteador de verdade... Até aí tudo bem... Mais ultimamente eu venho enfrentando um problema que ta quebrando a minha cabeça. Acontece o seguinte: Eu utilizo o editor do unity e o meu dispostivo android para testar o multiplayer... Eu crio o host usando o editor do unity e quando conecto ao host usando meu celular android, o jogo simplesmente trava e fecha sozinho... Eu já testei muitas coisas, mais até o momento não consegui encontrar a raiz do problema. Mais quando eu crio o host no meu dispositivo e conecto utilizando o editor, o jogo funciona perfeitamente. A mesma coisa rola quando uso dois dispotivos android. Quando crio o host usando o dispositivo A o host é criado normalmente e a a partida inicia perfeitamente, mais quando conecto ultilizando o dispositivo B, o jogo trava. Ah, e sempre que isso rola, o dispostivo Host não trava. Apenas o Client. Por isso venho aqui pedir ajuda a quem puder me ajudar!
Obrigado pelo seu tempo!
Weslley- Moderador
- PONTOS : 5726
REPUTAÇÃO : 744
Idade : 26
Áreas de atuação : Inversión, Desarrollo, Juegos e Web
Respeito as regras :
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
- Código:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.Networking;
public class GERENCIADORLOCAL : MonoBehaviour {
public static string Nick;
public static bool IniciarHost;
public static bool IniciarClient;
public static string IP;
public static int Porta;
public static string Cena;
private GameObject[] Local;
public int Ping;
[Header("Elementos")]
[Space(10)]
public NetworkManager GerenciadorLocal;
public GameObject CastielPrefabMultiplayer;
void Awake()
{
Local = GameObject.FindGameObjectsWithTag("LOCAL");
if (Local.Length >= 2)
{
Destroy(Local[0]);
}
DontDestroyOnLoad(transform.gameObject);
}
void Start()
{
Nick = DATA.NomeDeUsuario;
}
void Update()
{
Herois();
Server();
}
void Herois()
{
if (DATA.HeroiAtivado == ("Castiel"))
{
GerenciadorLocal.playerPrefab = CastielPrefabMultiplayer;
}
}
void Server()
{
Ping = GerenciadorLocal.simulatedLatency;
if (Cena == ("Mapa De Teste"))
{
GerenciadorLocal.onlineScene = ("Teste");
}
if(IniciarHost == true)
{
GerenciadorLocal.networkAddress = IP;
GerenciadorLocal.networkPort = Porta;
GerenciadorLocal.StartHost();
IniciarHost = false;
}
if(IniciarClient == true)
{
GerenciadorLocal.networkAddress = IP;
GerenciadorLocal.networkPort = Porta;
GerenciadorLocal.StartClient();
IniciarClient = false;
}
}
}
Este é o script do gerenciador de rede, o script que conecta o client e cria o host...
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Se quiser eu posso postar o código do herói tambem!
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Eu realmente preciso de uma ajuda com isso.. Qualquer tipo de ajuda seria bem vinda! Se você conhece uma forma alternativa de fazer um multiplayer local (wifi ou bluetooth), ou pode me ajudar com este problema do unet, por favor, poste aqui!
Obrigado
Obrigado
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Entendo amigo. Mas você deve respeitar as regras do fórum:
3- Não é permitido postar novamente em um tópico mais de duas vezes seguidas. Caso queira adicionar algo, edite o último post ou aguarde 24h.
3- Não é permitido postar novamente em um tópico mais de duas vezes seguidas. Caso queira adicionar algo, edite o último post ou aguarde 24h.
JohnRambo- Moderador
- PONTOS : 5171
REPUTAÇÃO : 661
Idade : 24
Áreas de atuação : Unity;
Programação;
Música e Sonorização;
Graduado em Análise e Desenvolvimento de Sistemas;
Respeito as regras :
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Olá.
Supondo que o script esteja em um GameObject vazio, tente adiciona um NetworkIdentity ao gameobject e substituir MonoBehaviour por NetworkBehaviour na sua classe.
Tente depurar o código também. Faça um multiplayer basicão, sem definir nomes de usuário, sem pegar a latência, sem nada. Só instanciando os players, e depois vá adicionando recursos e testando simultaneamente. Fica mais fácil identificar onde está o problema.
Sei que não é a resposta que você queria, mas é relevante.
Supondo que o script esteja em um GameObject vazio, tente adiciona um NetworkIdentity ao gameobject e substituir MonoBehaviour por NetworkBehaviour na sua classe.
Tente depurar o código também. Faça um multiplayer basicão, sem definir nomes de usuário, sem pegar a latência, sem nada. Só instanciando os players, e depois vá adicionando recursos e testando simultaneamente. Fica mais fácil identificar onde está o problema.
Sei que não é a resposta que você queria, mas é relevante.
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Obrigado pela sugestão! Iriei testar isso e vou postar aqui no forum o resultado!
Ah, eu coloquei um tipo de console no meu jogo, e rodei no meu dispositivo android, e em uma dessas vezes em que ele crashou, apareceu o seguinte log de erro no console: "Failed to destroy a semaphore (device or resource busy)" eu pesquisei sobre isso e o que eu encontrei foi algo relacionado com o carregamento de uma cena... Mais eu acho dificil ser algo com a cena porque eu apaguei essa cena de teste e criei outra cena e o erro persistiu. Talvez esse erro seja aleatorio e não tenha nada a ver com o meu caso, mais de qualquer forma eu to avisando sobre esse erro, porque talvez ele seja uma dica para resolver meu problema.
Obrigado
Ah, eu coloquei um tipo de console no meu jogo, e rodei no meu dispositivo android, e em uma dessas vezes em que ele crashou, apareceu o seguinte log de erro no console: "Failed to destroy a semaphore (device or resource busy)" eu pesquisei sobre isso e o que eu encontrei foi algo relacionado com o carregamento de uma cena... Mais eu acho dificil ser algo com a cena porque eu apaguei essa cena de teste e criei outra cena e o erro persistiu. Talvez esse erro seja aleatorio e não tenha nada a ver com o meu caso, mais de qualquer forma eu to avisando sobre esse erro, porque talvez ele seja uma dica para resolver meu problema.
Obrigado
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Show!marcos4503 escreveu:Obrigado pela sugestão! Iriei testar isso e vou postar aqui no forum o resultado!
Ah, eu coloquei um tipo de console no meu jogo, e rodei no meu dispositivo android, e em uma dessas vezes em que ele crashou, apareceu o seguinte log de erro no console: "Failed to destroy a semaphore (device or resource busy)" eu pesquisei sobre isso e o que eu encontrei foi algo relacionado com o carregamento de uma cena... Mais eu acho dificil ser algo com a cena porque eu apaguei essa cena de teste e criei outra cena e o erro persistiu. Talvez esse erro seja aleatorio e não tenha nada a ver com o meu caso, mais de qualquer forma eu to avisando sobre esse erro, porque talvez ele seja uma dica para resolver meu problema.
Obrigado
Eu uso Unet, mas ainda não usei em mobile. Dificilmente tenho algum problema relacionado a Unet em si. As vezes ( quase sempre ) quando agente descobre o problema fica se perguntando porque não pensou nisso antes.
Geralmente eu deixo uma cópia salva do script e começo outra do zero e vou fazendo e testando, até descobrir o ponto em que está parando. Depois conserto o script original.
Re: [PROBLEMA] Problema ao conectar a um host com o Unet. (Localmente)
Isso! Eu pensei em fazer isso, mais como meus scripts de multiplayer são muito pequenos eu não pensei que estivessem gerando problemas, mais de qualquer forma vou começar do zero e ir testando tintin por tintin. Bom. Em relação aos crashs, podemos descartar coisas relacionadas a memoria RAM, meu jogo só esta usando aproximadamente 40mb. Eu estava pensando em alguma coisa relacionada a limitaçoes do android, ja que quando conecto pelo pc (que é mais potente) tudo funciona perfeitamente.
Tópicos semelhantes
» [DÚVIDA]Problema com Multiplayer UNET
» Unet Problema ou Erro de Logica?
» [RESOLVIDO]Várias salas, um Host (UNET)
» Como conectar dois celulares usando UNET?
» Problema com o ThirdPersonController
» Unet Problema ou Erro de Logica?
» [RESOLVIDO]Várias salas, um Host (UNET)
» Como conectar dois celulares usando UNET?
» Problema com o ThirdPersonController
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos