GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» player não consegue andar
por lovn7 Qui 21 Nov 2024, 13:33

» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22

» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31

» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23

» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49

» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58

» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36

» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36

» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33

» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51

» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28

» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18

» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08

» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10

» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16

» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40

» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01

» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45

» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34

» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28

» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48

» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54

» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14

» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50


Tutorial - Como fazer um jogo multiplayer online - Parte II

+21
Mart10carado
MatheusReis
Gabreel
Furious God
irlansn
Mannoroth
Natch
itarodrigo
.:Allison:.
williamsp
Tedi Ripper
Markituh
allanjau
carotmaker
kevin sousa
Super Games
itallo
vinians
PedroX
F. Nizzio
Janx
25 participantes

Página 2 de 3 Anterior  1, 2, 3  Seguinte

Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Tedi Ripper Qua 26 Jan 2011, 21:08

krak, essas citacoes, n da pra indende nada, lol

Ai Markituh, eu n consigo intende como vc tem1168 mensagens, e se registrou em 2009, eu nunca tinha visto vc no forum
Tedi Ripper
Tedi Ripper

Games Ranking : Sem avaliações

Data de inscrição : 21/11/2010
Reputação : 25
Número de Mensagens : 777
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por williamsp Dom 30 Jan 2011, 12:59

vc deveria ser mais especifico com seu tutorial
como saber onde colocar alguns codigos se vc nao especifica onde colocalos
exemplo


A estrutura de uma mensagem:
Antes de seguirmos para o próximo item, é preciso saber como é a estrutura das mensagens trocadas entre Client e Servidor. Na verdade é muito simples, mas sempre varia de mensagem para mensagem. A estrutura básica é assim:

Primeiros dois bytes = Tamanho da mensagem em bytes.
Terceiro byte = ID da mensagem. Serve para identificar qual o tipo de mensagem é essa, para que possamos manipulá-la corretamente.
Restantes = “Mensagem”.

Vamos ver um exemplo em que eu envio uma String “Testando” que tem ID de mensagem 5:
view source
print?
1 clearbuffer(); //Limpa o buffer interno, aqui é como uma Carta que vamos enviar, primeiro precisamos de um papel em branco, não é?
2 writebyte(5); //ID
3 writestring(“Testando”); //Mensagem
4 sendmessage(SOCKET); //Envia a mensagem para o Socket


Ué, mas cade os dois primeiros bytes de tamanho?
Esses são adicionados automaticamente pela DLL. Você não precisa se preocupar com eles.


isso vai onde coloca isso em q lugar ou ele fica flutuando nos scriptis
williamsp
williamsp

Data de inscrição : 26/01/2011
Reputação : 0
Número de Mensagens : 5
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://www.receitasegostosuras.com

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por PedroX Dom 30 Jan 2011, 13:58

Isso nao coloca em lugar algum. Esse é so pra voce entender como faz.
Nao é necessario por em lugar nenhum.

FLW

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por .:Allison:. Ter 01 Fev 2011, 23:15

Nesse Tutorial se eu não mim engano, você usou HTML certo ? Como funciona esse tipo de mixagem ?
.:Allison:.
.:Allison:.

Games Ranking : Nota B

Notas recebidas : B
Data de inscrição : 25/07/2010
Reputação : 4
Número de Mensagens : 630
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 14 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://clubmaker.forumeiros.com

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Markituh Ter 01 Fev 2011, 23:25

HTML? O tutorial não fala nada a respeito de HTML. Ele usa sockets para fazer a conexão, usando a 39dll. E um sistema de bytes para enviar dados entre os computadores.
Markituh
Markituh

Games Ranking : Sem avaliações

Data de inscrição : 11/10/2009
Reputação : 106
Número de Mensagens : 2184
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 1 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por itarodrigo Qua 02 Fev 2011, 00:12

F. Nizzio escreveu:Eu não entendi o que ele falou.
Tem que explicar melhor, nem sempre as pessoas entendem todas essas coisas dificeis. Explicar melhor é a chave pra fazer coisas decentes.

Minha nota ao tutorial é acima da média: 5.5, porque pode ter gente que entende melhor.

Tenha um bom dia.
Nizzio

A melhor forma de entender alguma coisa é perguntando a quem sabe, e para isso existe o fórum, para perguntar.

Comece estudando cada parte separadamente, e só passe para o próximo código quando entender o anterior, e sempre que tiver dúvida pergunte.

Acredito que isso é a melhor dica para quem está aprendendo.

Quando entrei aqui eu nao sabia nada de GML, e hoje já consigo fazer meus proprios codigos, porem, quando tenho duvida corro pra cá, pois sei que tem muita gente competente aqui para ajudar.

Se achou dificil de entender esse tutorial, comece tentando entender outros mais fáceis.

Abraço.
itarodrigo
itarodrigo

Data de inscrição : 28/08/2010
Reputação : 52
Número de Mensagens : 599
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Natch Qua 02 Fev 2011, 13:51

optimo tutorial
funcionou perfeitamente, só que quando adicono um 3º jogador, a lista de jogadores não actualiza nesse 3º jogador

mas estas de Parabens, assim já posso fazer um joguinho online Smile
Natch
Natch

Data de inscrição : 05/06/2008
Reputação : 0
Número de Mensagens : 501
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://studionatch.com.sapo.pt/

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Janx Qua 02 Fev 2011, 14:29

Natch escreveu:optimo tutorial
funcionou perfeitamente, só que quando adicono um 3º jogador, a lista de jogadores não actualiza nesse 3º jogador

mas estas de Parabens, assim já posso fazer um joguinho online Smile

Realmente, havia um pequeno errinho no código. Mas já esta consertado.
Obrigado por ter percebido o bug!

ATENÇÃO!
Se você seguiu o tutorial antes do dia 02/02/2011 você deve corrigir um pequeno pedaço do código:


STEP - SEGUNDO SCRIPT - OBJETO obj_Host
01 //Receber mensagens do Client
02 var size, msgID;
03
04 for (iPL = 1; iPL < global.MaxPlayers; iPL += 1) //Precisamos receber a mensagem de cada jogador
05 { //Usamos "iPL" pois depois serão feitos outros loops e usar a variavel "i" pode gerar conflitos
06 size = 1;
07 while (size)
08 {

Adicione logo depois do loop FOR a linha:
size = 1;

E remova a linha "size = 1;" anterior. Ela não é necessária.

Porque o bug ocorreu:
Depois de não receber mais mensagens no primeiro player, a variável size recebia valor 0 e então era passado para o próximo jogador. Como a variável não era resetada o jogador era pulado e assim sucessivamente. Sendo lida apenas a mensagem do primeiro jogador.

Como eu disse... um pequeno errinho pode gerar grandes problemas...
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por itarodrigo Qua 02 Fev 2011, 14:35

tenho uma duvida quanto a jogos assim.

que tipo de programa se usa para criar o servidor e deixar o programa server rodando nele?
itarodrigo
itarodrigo

Data de inscrição : 28/08/2010
Reputação : 52
Número de Mensagens : 599
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Janx Qua 02 Fev 2011, 17:03

itarodrigo escreveu:tenho uma duvida quanto a jogos assim.

que tipo de programa se usa para criar o servidor e deixar o programa server rodando nele?

"que tipo de programa se usa para criar o servidor e deixar o programa server rodando nele?"
Não intendi o que você quis dizer...

Você quer dizer, um jogo online tipo um "mmo"? Como funcionar o servidor "global" do jogo?
O servidor não necessariamente precisa participar do jogo como estamos fazendo nesse tutorial. Ele pode ser apenas a ligação entre um jogador e outro. O que ele faria seria receber, repassar e guardar informações dos jogadores.
Esse servidor pode ser feito no Game Maker mesmo. Embora eu não acho que seja uma boa ideia pra um jogo grande, já que seriam inúmeras mensagens para serem manipuladas. Como sabemos o GM não é muito rápido se comparado a uma linguagem "pura". Não é que o GM não possa fazer, o problema é a quantidade de mensagens que ele vai conseguir manipular o mais rápido possível, atrasar as mensagens significa LAG e não queremos isso no jogo, certo?
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por itarodrigo Qua 02 Fev 2011, 17:38

entao, caso eu hospede um jogo servidor, em meu pc, por exemplo, outros usuarios conseguiriam acessar, mesmo sem estar em minha rede?
itarodrigo
itarodrigo

Data de inscrição : 28/08/2010
Reputação : 52
Número de Mensagens : 599
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 4 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por PedroX Qua 02 Fev 2011, 18:01

Cara se voce colocar um jogo servidor no seu PC, ele estiver rodando e conectado, da sim.
Exemplo:
Voce poe o servidor rodando ai e deixa conectado. Voce pode ir aonde quiser que o jogo repassara as mensagens para os clientes. Desde que sua conexao nao caia, pq se cair tera que voltar e so depois enviara as mensagens, dando problemas etc.

FLW

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Janx Qua 02 Fev 2011, 18:18

itarodrigo escreveu:entao, caso eu hospede um jogo servidor, em meu pc, por exemplo, outros usuarios conseguiriam acessar, mesmo sem estar em minha rede?

mesmo sem estar em minha rede, você quer dizer, sem estarem em LAN? Sim.
Mas claro que eles vão estar conectados a você.

Todo jogo online se conecta em um servidor. Se você tem algum firewall, dependendo das suas configurações, quando algum programa ou JOGO tenta acessar a internet (conectar no servidor?) você pode ver até mesmo o IP dele.
Você quer hospedar um servidor no seu computador? Sem problemas, mas saiba que você vai precisar de uma internet muito boa. Igualmente na taxa de upload e download dela! Tomar algumas medidas de segurança para evitar a invasão também é fundamental. Você tem que ter muita coisa em mente, não vá simplesmente abrindo o seu computador para a internet! Pode ser perigoso!

Lembrando que o que eu falo não é 100% correto, podem existir muitas variantes ai no meio. Mas pela minha experiencia, pesquisas, testes e conhecimento sobre o assunto, o que eu te digo é o que eu acredito ser o conceito certo! Você pode pesquisar por conta própria também, provavelmente você deve achar o que eu encontrei.

Enfim, estamos fugindo do assunto do tópico. Se quiser continuar a conversa, mande MPs ou abre um tópico para discutirmos isso, ok? Se quiser, pode criar na seção:
IA, Física, Banco de dados, 3D e Online
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Mannoroth Seg 07 Fev 2011, 23:40

Eu acho q fiz tudo direito, mas na hora de testar, na tela de espera nao aprece os dados (nem na tela do servidor, nem dna do cliente).
Eu reli tudo e nao sei o que tá faltando, criei o executavel com a DLL numa pasta e copia desse executavel junto com copia da DLL noutra pasta...
... abri os dois: em um eu fui no servidor e digitei um nome pra uma sala; nem outro eu fui no icone do cliente, 127.0.0.1 e dei ok. Nas duas so aparece a mensagem 'tela de espera' direto.
Ajudae Janx.
Mannoroth
Mannoroth

Games Ranking : Nota D

Notas recebidas : D+D
Data de inscrição : 05/10/2010
Reputação : 12
Número de Mensagens : 841
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Super Games Ter 08 Fev 2011, 09:32

Aqui no meu não tem a aba Constants.
Super Games
Super Games

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 10/06/2010
Reputação : 36
Número de Mensagens : 2800
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Java
  • Godot
  • Javascript
  • C ou C++


Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Janx Ter 08 Fev 2011, 17:26

Mannoroth escreveu:Eu acho q fiz tudo direito, mas na hora de testar, na tela de espera nao aprece os dados (nem na tela do servidor, nem dna do cliente).
Eu reli tudo e nao sei o que tá faltando, criei o executavel com a DLL numa pasta e copia desse executavel junto com copia da DLL noutra pasta...
... abri os dois: em um eu fui no servidor e digitei um nome pra uma sala; nem outro eu fui no icone do cliente, 127.0.0.1 e dei ok. Nas duas so aparece a mensagem 'tela de espera' direto.
Ajudae Janx.

Nas duas so aparece a mensagem 'tela de espera' direto
Você quer dizer como um "show_message", ou é a unica coisa que aparece escrita na tela?

Código:
01   if room = rm_WaitingRoom
02   {
03       draw_text(200,16,"Tela de Espera");
04   }
05   
06   if instance_exists(obj_Client)
07   {
08       for (i=0; i < global.MaxPlayers; i += 1)
09       {
10           draw_text(5,32+i*16, string(i)+" "+obj_Client.players[i,PL_NICK]);
11       }
12   }
13   else if instance_exists(obj_Host)
14   {
15       for (i=0; i < global.MaxPlayers; i += 1)
16       {
17           draw_text(5,32+i*16, string(i)+" Sock: "+string(obj_Host.players[i,PL_SOCK])+" Nick: "+obj_Host.players[i,PL_NICK]);
18       }
19   }

Você percebeu que nas linhas 06 e 13 é checado se o objeto X existe? Se você usou outro nome para os objetos você deve trocar nessas linhas, senão o jogo não vai desenhar nada. Se não deu erro nenhum, provavelmente o problema está nesse DRAW, as informações só não estão sendo mostradas.

@Super Games
No GM 8 vá na aba RESOURCES -> DEFINE CONSTANTS
Ou pressione ctrl + shift + N
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Super Games Ter 08 Fev 2011, 18:03

Aqui tambem não tem...
Super Games
Super Games

Games Ranking : Nota C

Notas recebidas : C
Data de inscrição : 10/06/2010
Reputação : 36
Número de Mensagens : 2800
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 1 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Java
  • Godot
  • Javascript
  • C ou C++


Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Mannoroth Qua 09 Fev 2011, 01:38

Janx escreveu:Você quer dizer como um "show_message", ou é a unica coisa que aparece escrita na tela?

É isso aqui q aparece tanto no cliente quanto no server:
Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Telaespera

Janx escreveu:Você percebeu que nas linhas 06 e 13 é checado se o objeto X existe? Se você usou outro nome para os objetos você deve trocar nessas linhas, senão o jogo não vai desenhar nada.
Eu não mudei os nomes dos objetos, são obj_Host e obj_Client mesmo. Eu revisei tudo mais uma vez e nao entendi o q falta. Q tal se eu te mandar o meu .gmk como ficou e vc ver se tem algo errado (meu interesse é aprender mesmo, mas realmente nao identifiquei o q tá faltando).

Sobre alocar os objetos nas rooms: na room_WaitingRoom não botei objeto nenhum incialmente, e na room rm_menu botei o obj_btmhost e obj_btmclient e tambem o GAME, só esses três ae, já q o obj_Client e obj_Host serão criados posteriormente atraves de eventos.
Mannoroth
Mannoroth

Games Ranking : Nota D

Notas recebidas : D+D
Data de inscrição : 05/10/2010
Reputação : 12
Número de Mensagens : 841
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Janx Qua 09 Fev 2011, 12:54

Aparentemente é algum erro no DRAW, mas se quiser mandar o projeto para eu dar uma olhada pode mandar.
obj_Client e obj_Host são criados por eventos mesmo.

De uma olhada na variável global.MaxPlayers, talvez você tenha atribuído valor 0 a ela. Coloque 10.
Janx
Janx

Data de inscrição : 24/05/2008
Reputação : 14
Número de Mensagens : 2417
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 2 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Mannoroth Qua 09 Fev 2011, 20:56

[quote="Janx"]
Agora crie um outro objeto “Controlador” de sua preferência, eu gosto de chamá-lo de GAME (Deixe ele como Persistent). Nesse novo objeto, adicione um evento Create e coloque o seguinte código:

global.Nick = get_string("Digite seu Nick: ",""); //Pegar o nick do jogador
global.Server = 0; //Guarda o Socket do Servidor.
global.MyID = -1; //ID online do jogador
global.MaxPlayers = 0;

dllinit("39dll.dll",1); //Inicializar funções de Sockets da DLL.




Iniciando o Servidor:
Vamos para o objeto obj_Host. No evento Create adicione o seguinte:

//Criar servidor
global.Server = tcplisten(5068,5,1); //Inicializa o Servidor, fica em espera por conexões na porta 5068.
//Você pode mudar os argumentos dessa função como preferir.
//tcplisten(PORTA,CONEXÕES SIMUNTANEAS, MODO);
//PORTA -> Porta para conectar
//CONEXÕES SIMUNTANEAS -> Antes do jogador entrar mesmo no jogo, sua conexão deve ser aceita, enquanto isso ele ficara na "espera".
//Isso é para quantos você quer deixar na espera. Não é preciso um valor muito alto.
//MODO -> deixe o valor em 1, senão seu servidor ficará travado até alguem conectar

if (!global.Server) //Caso não tenha inicializado corretamente passar uma mensagem de erro.
{instance_destroy();
show_message("Erro ao criar o servidor");
exit;}

global.MaxPlayers = 10; //Limite de jogadores

//Criar lista de Jogadores.
for (i = 0; i < global.MaxPlayers; i += 1)
{
players[i,PL_SOCK] = -3; //Socket do player [Só usado no Host]
players[i,PL_NICK] = ""; //Nick do player
}

//Adicionar informações do servidor na lista [Servidor sempre é o 0]
players[0,PL_SOCK] = global.Server;
players[0,PL_NICK] = global.Nick;
global.MyID = 0;

room_goto(rm_WaitingRoom); //Depois de inicializar tudo corretamente ir para a tela de espera.
//Esse objeto é "Persistent", pois isso não será destruido na troca de rooms.

clearbuffer();
writebyte(MSG_PLDATA);
writebyte(iPL); //Os outros jogadores só recebem dados do servidor, então precisam saber o ID de qual player são esses dados
writestring(nick);
for (i=1; i < global.MaxPlayers; i+=1) //Como são varios jogadores, precisamos enviar para todos eles
{ //Usando um loop for isso fica bem facil! Repare que começamos do 1, porque o 0 é sempre o servidor.
if (i != iPL) //Não precisamos repassar a mensagem para quem a enviou
{sendmessage(players[i,PL_SOCK]);}
}

//O Hoster possui os dados de todos os jogadores então ele mesmo pode repassar os nicks dos demais players
for (i = 0; i < global.MaxPlayers; i += 1)
{
if (i != iPL) //Não enviar o nick do proprio jogador para ele mesmo
{
clearbuffer();
writebyte(MSG_PLDATA);
writebyte(i);
writestring(players[i,PL_NICK]);
sendmessage(players[iPL,PL_SOCK]);
}
}
break;
}
}
}


No seu tutorial existem duas variaveis global.MaxPlayers sendo criadas, uma no obj_Host e outra no objeto GAME, em uma o valor é 0, na outra o valor é 10.

De qualquer jeito eu acabei de alterar as duas pra 10 e mesmo assim o problema continua, vou te mandar o .gmk por MP.
Mannoroth
Mannoroth

Games Ranking : Nota D

Notas recebidas : D+D
Data de inscrição : 05/10/2010
Reputação : 12
Número de Mensagens : 841
Prêmios : Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Tutorial - Como fazer um jogo multiplayer online - Parte II - Página 2 Empty Re: Tutorial - Como fazer um jogo multiplayer online - Parte II

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Página 2 de 3 Anterior  1, 2, 3  Seguinte

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos