SchultzGames
Para tirar dúvidas, crie um tópico especifico na área "Dúvidas em Geral" e aguarde ser respondido. Evite comentar em tópicos não relacionados a sua dúvida :D
TÓPICOS RECENTES:
Tópico:
Postado em:
Postado por:
Meu mais Novo Jogo Evade Z-51
Transição de cenas Bug com Scripts
Como faço um pulo de colisão?
[TUTORIAL] Como fazer um Sol Realista na Unity 5 ( Sun Shafts )
Meu personagem parou de andar , sem que eu alterasse ele
Problema com terreno!
Jogo Quiz perguntas aleatórias
Pintura na tela
Anti Pirataria
Manter a última posic de objetos após sair e voltar de cena
Alguem me ajuda em um script!
Camera
[____TÓPICO LIVRE____] FALE O QUE QUISER (Parte 2)
Erros ao tentar build para android!
Teleporte do player com outro objeto!
Media entre pontos e tempo!
Vídeo player não mostra nada
(Duvida)Sistema de estrelas
Filhos dos filhos
Construção de um save das configurações e ir pro jogo com as config certas
Duvida na hora da POSTAGEM na PLAY STORE
Auto posicionar objeto
Como dar um clique em um determinado botão através de Script
Como faço as personagens causarem dano (e vice-versa)?
Dúvida no uso de loop no Unity
Duvida em Python
Como usar LOD Group para usar no Mass Place Trees
Como Criar um Sistema de Coop? (Photon)
Fighter camera 3D tekken style, boxing style
Erro no Script- "The script needs to derived from MonoBehavior"
[TUTORIAL] Fixed Joint e Spring Joint - Unity 5
Música Grátis
Not a Dream - Formação de Equipe
Como deixar o código mais dinâmico
Duvida Shader para celular
Ideia para algum jogo
Aplicativo não instalado
Tela cheia em android
duvida de raytracing
[Em Desenvolvimento] Battles of Worlds
[Formação de Equipe] Battles of Worlds
Box Collider 2D Pausando o Jogo.
Como fazer um sistema para conectar objetos?
Jogos Pagos e proteção
[DÚVIDA] sair som do objeto ao pressionar uma tecla
Seleção de personagens sem usar ele como prefab
Duvida Postagem na Play Store
Fazer o player rodar a animação até o final
Ofuscar
Preciso de Ajuda Estou a desenvolver um projeto!
[TUTORIAL] Joystick vistual para mobile
desativa objecto
IDE editor C#
Porque o meu BoxCollider2D não desativa?
Sistema De Skin Na Unity
erro ao abrir projeto na unity 2019.2.0
Jogador Flicando no chão
Mostrar eventos no Inspector
[TUTORIAL] Menu Pause AVANÇADO (Unity 5.3 ou superior)
Algumas Maneiras de Ganhar Dinheiro Com o Blender e Modelagem 3D
[TUTORIAL] Salvar SCORE e substituir caso faça mais pontos.
aplicativo travando
e ai galera to tendo poblema com wheel collider
Shader Editor travando a cada alteração nas propriedades
Tela inteira no Android
Scale Factor de Modelos Faz Diferença Na Performacer do Jogo?
Picos de Queda de FPS!
ERRO NA UNITY, AJUDEM POR FAVOR
Como fazer uma tecla ser pressionado x vezes.
Vamos criar uma comunidade no Discord!
[Projeto em Andamento] Favela Combat - Multiplayer online (Android & iOS)
Como ativar e desativar o Box Collider utilizando o RayCast.
[RESOLVIDO] Player 2D girando ao descer de plataforma
Road Life - Jogo Mundo Aberto RPG
Como parar o spawn aleatório?
[RESOLVIDO] Pêndulo 2D
[RESOLVIDO] Como faço para clicar em um objeto e visualizar, girar...
Crio Ícones Personalizados Para Jogos
Metadados recusados AppleConnect [Screenshots]
Ajuda na criação de um jogo de Xadrez 3D
> Posso achar Bugs facilmente <
Meu Jogo inspirado em resident evil 2 remake
Unity + Photon 2
[RESOLVIDO] tira uma duvida
[TUTORIAL] Campo de visão dos inimigos (Enemy FOV) com Raycast ou OverlapSphere
Contagem de tempo em classes abstratas
Erro ao compilar em webGL
[RESOLVIDO] Animação na Movimentação (Parado, Andar e Correr)
[RESOLVIDO] Parâmetro "Out" não existe (Duvida com Script)
Duvida de movimentação de câmera 2D (Sem personagem)
[RESOLVIDO] Colocando meu jogo para 64 bits
(Animator) Animação bugada no animator!
[TUTORIAL] CONFIGURANDO O UNITY PARA COMPILAR PARA ANDROID
[RESOLVIDO] Porque o Vector2.Distance não está funcionando?
[TRETA BR] GAME QUASE FINALIZADO !
Algumas perguntas sobre cenas e transições
Sistema de "Avaliação" / Probabilidade / Notas
Problema com boxes colliders
Dúvida quando a interferência de uma colisão em um sistema de chute e passe
Hoje à(s) 7:20 pm
Hoje à(s) 6:54 pm
Hoje à(s) 3:17 pm
Hoje à(s) 1:26 pm
Ontem à(s) 10:54 pm
Ontem à(s) 8:54 pm
Ontem à(s) 2:59 pm
Ontem à(s) 10:42 am
Ontem à(s) 7:42 am
Qua Set 18, 2019 3:07 pm
Ter Set 17, 2019 8:22 pm
Ter Set 17, 2019 8:06 pm
Ter Set 17, 2019 4:29 pm
Ter Set 17, 2019 4:10 pm
Ter Set 17, 2019 1:32 pm
Ter Set 17, 2019 3:01 am
Ter Set 17, 2019 1:30 am
Seg Set 16, 2019 11:03 pm
Seg Set 16, 2019 8:21 pm
Seg Set 16, 2019 5:37 pm
Seg Set 16, 2019 4:07 pm
Seg Set 16, 2019 4:11 am
Seg Set 16, 2019 2:36 am
Seg Set 16, 2019 12:22 am
Dom Set 15, 2019 11:21 pm
Dom Set 15, 2019 8:29 pm
Dom Set 15, 2019 4:41 pm
Dom Set 15, 2019 3:52 pm
Dom Set 15, 2019 12:42 pm
Dom Set 15, 2019 12:41 pm
Dom Set 15, 2019 11:20 am
Dom Set 15, 2019 1:58 am
Dom Set 15, 2019 12:08 am
Sab Set 14, 2019 8:45 pm
Sab Set 14, 2019 7:55 pm
Sab Set 14, 2019 7:07 pm
Sab Set 14, 2019 7:06 pm
Sab Set 14, 2019 7:05 pm
Sab Set 14, 2019 6:58 pm
Sab Set 14, 2019 5:00 pm
Sab Set 14, 2019 4:57 pm
Sab Set 14, 2019 1:49 pm
Sab Set 14, 2019 12:37 am
Sex Set 13, 2019 10:58 pm
Sex Set 13, 2019 10:42 pm
Sex Set 13, 2019 8:58 pm
Sex Set 13, 2019 8:33 pm
Sex Set 13, 2019 8:28 pm
Sex Set 13, 2019 8:19 pm
Sex Set 13, 2019 8:17 pm
Sex Set 13, 2019 8:08 pm
Sex Set 13, 2019 8:06 pm
Sex Set 13, 2019 8:04 pm
Sex Set 13, 2019 2:40 pm
Sex Set 13, 2019 5:02 am
Sex Set 13, 2019 4:59 am
Sex Set 13, 2019 4:50 am
Sex Set 13, 2019 4:41 am
Sex Set 13, 2019 4:26 am
Sex Set 13, 2019 4:19 am
Sex Set 13, 2019 4:17 am
Sex Set 13, 2019 3:53 am
Sex Set 13, 2019 3:44 am
Sex Set 13, 2019 3:35 am
Sex Set 13, 2019 3:34 am
Sex Set 13, 2019 3:06 am
Sex Set 13, 2019 2:44 am
Sex Set 13, 2019 2:40 am
Sex Set 13, 2019 2:31 am
Qui Set 12, 2019 9:46 pm
Qui Set 12, 2019 9:46 pm
Qui Set 12, 2019 4:43 pm
Qui Set 12, 2019 3:22 pm
Qui Set 12, 2019 2:50 pm
Qua Set 11, 2019 10:05 pm
Qua Set 11, 2019 9:14 pm
Qua Set 11, 2019 1:16 pm
Qua Set 11, 2019 11:58 am
Qua Set 11, 2019 9:03 am
Qua Set 11, 2019 1:45 am
Ter Set 10, 2019 10:52 pm
Ter Set 10, 2019 6:28 pm
Ter Set 10, 2019 10:12 am
Ter Set 10, 2019 12:38 am
Seg Set 09, 2019 10:04 pm
Seg Set 09, 2019 6:08 pm
Seg Set 09, 2019 2:57 pm
Sab Set 07, 2019 7:23 pm
Sab Set 07, 2019 1:14 pm
Sab Set 07, 2019 12:12 pm
Sex Set 06, 2019 9:06 pm
Sex Set 06, 2019 11:44 am
Qui Set 05, 2019 11:30 pm
Qui Set 05, 2019 10:57 pm
Qui Set 05, 2019 6:26 pm
Qua Set 04, 2019 11:38 pm
Qua Set 04, 2019 9:02 pm
Ter Set 03, 2019 4:42 pm
Ter Set 03, 2019 2:52 pm
EmperorGO
Encracker
MayLeone
L3androG4m3r
mydaegon
lunaticsgames
MayLeone
Zack2
diegopds
MayLeone
gutovic29
Fagner
MarcosSchultz
Daniel Dória
lesgoy
danielPedra90
ffabim
poyser
NKKF
lucaspoiob
gtcmcsgo
MayLeone
lesgoy
Swordsdragon
joffersoju
victorgx22
tr4ssh
deikson
Josh123
Samuelostgamer
welberpv2022
JohnRambo
LardosJogos
Hamassfall
SteveRogers
LúcioHenrique098
lesgoy
lesgoy
SteveRogers
Dom3000
Dom3000
Newba
henriquegames501
guimaraf
gcs13
garnios
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
NKKF
MayLeone
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
MarcosSchultz
JohnRambo
dkrazor
recagonlei
CyberPh4ntom
NKKF
TecnoGames
Hamassfall
c4stor
Magnatah
numb123
JohnRambo
LardosJogos
RafaelSquid1
billybmx
katymarques
hao3726
MayLeone
Socates
LardosJogos
Newba
SteveRogers
garnios
JohnVitor
garnios
Hamassfall
ruanzikaad
Magnatah
Mancha
SteveRogers
gabrimo

[TUTORIAL]Network basico (legacy)

Ir em baixo

TUTORIAL [TUTORIAL]Network basico (legacy)

Mensagem por noocktall em Sab Dez 12, 2015 7:48 pm

Ola pessoal... sou novo aqui mas sou experiente em C#(basico) como eu não vi nenhum tutorial desse tipo eu decidi trazer um, embora seja um método antigo ainda funciona vamos para o tutorial Smile

Indice




  • Criando um Servido
  • Criando um Client
  • Extras


Criando um Servido



primeiro vamos criar um novo script C#, bote um nome que quiser
vamos declarar umas variáveis e criar umas voids
Código:
private const string typeName = "NomeDoJogo";
private const string gameName = "NomeDaSalaOuServer";
private const string gameComent = "ComentarioDoServer";
private Rect windowRect = new Rect (Screen.width - 200,0,200,135); //(posisao em X, posisao em Y, largura, altura)
 
private void StartServer()
{
    Network.InitializeServer(50, 25000, !Network.HavePublicAddress());//(maximo de players, porta para conectar, se usa Nat)
    MasterServer.RegisterHost(typeName, gameName, gameComent);
    Network.sendRate = 100;//máximo updates por farme do player
    MasterServer.updateRate = 100; //máximo de updates do server
}
com isso o servido ja estaria pronto Neutro mas não e so isso que queremos certo ?
vamos fazer um método OnGUI para criar um botao de iniciar o server
Código:
void OnGUI()
{
    windowRect = GUI.Window (1, windowRect, windowManager, "Painel de Controle");
}

void windowManager (int windowID)
{
    windowID = 1;
    if (!Network.isClient && !Network.isServer)
    {
        if (GUI.Button(new Rect(5, 25, 110, 30), "Ligar Server"))//(GUI.Button(new Rect(posisao X dentro do painel, posisao Y dentro do painel, largura, autura), "Ligar Server"))
            StartServer();
    }
}
desse jeito apenas quem não e o client(player conectado ao server) ou o próprio server pode aperta o botão
com isso a parte do servido esta pronta...
Ficarar mais ou menos assim no jogo
[TUTORIAL]Network basico (legacy) 2qnqzvb

Criando um Client



Agora vamos fazer um novo script C#, com o nome que quiser
vamos declarar algumas variáveis e voids
Código:

private HostData[] listaDeServers;
private const string typeName = "NomeDoJogoUtilizadoNoScriptAcima";
private Rect windowRect = new Rect (50, 50, 500, 350);//(posisao em X, posisao em Y, largura, altura)

void Awake ()
{
    MasterServer.ClearHostList();
    ProcurarServers();
}

private void ProcurarServers()
{
    MasterServer.ClearHostList();

    if(listaDeServers == null)
        MasterServer.RequestHostList(typeName);
}
 
void OnMasterServerEvent(MasterServerEvent msEvent)
{
    if (msEvent == MasterServerEvent.HostListReceived)
        listaDeServers= MasterServer.PollHostList();
}

private void EntrarNoServer(HostData hostData)
{
    Network.Connect(hostData);
}
com isso podemos procurar servers e entrar nele também...
vamos fazer ums botoes com a OnGUI para nos ajudar a entrar no server
Código:
void OnGUI()
{
    windowRect = GUI.Window(0, windowRect, WindowFunction, "Serves Onlines");
}

void WindowFunction (int windowID)
{
    windowID = 0;
    if (GUI.Button(new Rect(5, 295, 100, 50), "Refresh Hosts"))
        ProcurarServers();
    if (listaDeServers != null)
    {
        for (int i = 0; i < listaDeServers.Length; i++)
        {
            if (GUI.Button(new Rect(240, 25 + (50 * i), 250, 70), listaDeServers[i].gameName + "\n" + listaDeServers[i].comment + "\n" + "Users Onlines:" + listaDeServers[i].connectedPlayers + " Max Users:" + listaDeServers[i].playerLimit))//(GUI.Button(new Rect(posisao em X, posisao em Y + (posisao em Y² * i), largura, altura), listaDeServers[i].gameName + "\n" + listaDeServers[i].comment + "\n" + "Users Onlines:" + listaDeServers[i].connectedPlayers + " Max Users:" + listaDeServers[i].playerLimit))
                 EntrarNoServer(listaDeServers[i]);
        }
    }
}
com isso ja temos um meio de entrar no server se atribuímos esse script a algum objeto podemos ver que irar funcionar
[TUTORIAL]Network basico (legacy) 2ml6rm
podemos colocar o script de iniciar o server em um projeto e compilar para servi apenas como iniciador do server
e podemos colocar o script de conectar ao server no jogo para podemos entrar e conectar :D

Extras!!



*Em Construção*
embora os scripts tenham fechado no "}" ainda podemos aperfeiçoa-los

Extras para o script servido



Fazer Shutdown(Desligar) do server:
embora quando você da Stop(na unity) ou feixa o jogo, o server e automaticamente fechado forçadamente...
mas podemos fechar manualmente quando quisermos, para isso vamos adicionar ao script do server uma nova void
Código:
private void FeixarServer()
{
    if (!Network.isClient && Network.isServer)//apenas server pode executar a ação
    {
        Network.Disconnect(200);//damos um desconect seguro no player
        MasterServer.UnregisterHost();//feixamos o server
    }
}
agora para chamar ela vamos adicionar algumas linhas na void windowManager
Código:
if(Network.isServer)
{
    if (GUI.Button(new Rect(5, 60, 110, 30), "Shutdown Server"))
        ShutdownServer();
}
com isso irar ter um novo botão no painel de controle que irar aparecer apenas quando o server iniciar  :D

Extras para o script client


Botao de Desconectar:
com esse script podemos deixar o player se desconectar do server apertando um botão
podemos atribuir os codigos a outro script como um de menu pause ou criar um script para essa função...
vamos utilizar a void OnGUI, o codigo
Código:

if (Network.isClient){
    if (GUILayout.Button("Desconectar do servidor"))
        if (Network.connections.Length == 1) {
            Debug.Log("Disconnecting: " + Network.connections[0].ipAddress + ":" + Network.connections[0].port);
                Network.CloseConnection(Network.connections[0], true);
        } else
            if (Network.connections.Length == 0)
                Debug.Log("Não ha Conexão"); //aqui podes colocar algo para quando não esta conectado ao server... (nescesario retirar o if(network.isclient))
            else
                if (Network.connections.Length > 1)
                    Debug.Log("Excesso de conexões. Será que estar executando o servidor??");//aqui podes colocar algo para caso o hoster(você?) queira desconectar do jogo...
}


Editado no dia (20/12/2015) as [03:00] AM


Última edição por noocktall em Dom Dez 20, 2015 4:29 am, editado 1 vez(es)
noocktall
noocktall
Membro
Membro

Masculino PONTOS : 1578
REPUTAÇÃO : 19
Idade : 18
Áreas de atuação : progamação
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário http://kuork.org

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por Pqquim em Seg Dez 14, 2015 9:56 am

Bom Tutorial , mas como eu colocaria o jogo para se adequar em multiplayer ??
Pqquim
Pqquim
Iniciante
Iniciante

PONTOS : 1401
REPUTAÇÃO : 1
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por noocktall em Seg Dez 14, 2015 12:58 pm

depende do jogo... é aconselho usar o UNet da unity(5.1+) ou Photon, pois o método que eu postei ai e antigo demais alem que o master server que você hospedaria o jogo e da propiá unity deixa a desejar ficar sem leg


Última edição por noocktall em Ter Dez 15, 2015 11:26 am, editado 1 vez(es)
noocktall
noocktall
Membro
Membro

Masculino PONTOS : 1578
REPUTAÇÃO : 19
Idade : 18
Áreas de atuação : progamação
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário http://kuork.org

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por rafaelllsd em Seg Dez 14, 2015 5:56 pm

Esse sistema, 2 pessoas poderia jogar via servidor, hamachi? ou é só para o mesmo pc e outras linhas ligadas nele Ex: Lan house?
rafaelllsd
rafaelllsd
ProgramadorMaster

Masculino PONTOS : 3304
REPUTAÇÃO : 481
Idade : 19
Áreas de atuação : Unity, Audacity, Blender, Gimp, C#, JS, MySQL.

Respeito as regras : [TUTORIAL]Network basico (legacy) Aad8pUi

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por noocktall em Ter Dez 15, 2015 11:22 am

nesse caso não precisa de hamachi pois você ta hospedando na propiá unity, e sim da para jogar de 2, 3 ou ate mais só talvez haja leg
noocktall
noocktall
Membro
Membro

Masculino PONTOS : 1578
REPUTAÇÃO : 19
Idade : 18
Áreas de atuação : progamação
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário http://kuork.org

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por Pqquim em Qui Dez 17, 2015 3:32 pm

Noock tem como me ajudar a colocar meu game on ? ficaria muito grato ^_^
Pqquim
Pqquim
Iniciante
Iniciante

PONTOS : 1401
REPUTAÇÃO : 1
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário

Voltar ao Topo Ir em baixo

TUTORIAL Re: [TUTORIAL]Network basico (legacy)

Mensagem por noocktall em Sex Dez 18, 2015 4:19 pm

@Pqquim escreveu:Noock tem como me ajudar a colocar meu game on ? ficaria muito grato ^_^
sim, e só me manda um PM com seu skype para min ;D
noocktall
noocktall
Membro
Membro

Masculino PONTOS : 1578
REPUTAÇÃO : 19
Idade : 18
Áreas de atuação : progamação
Respeito as regras : [TUTORIAL]Network basico (legacy) WvDYdlf

Ver perfil do usuário http://kuork.org

Voltar ao Topo Ir em baixo

Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum