Curso Online

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Curso Online

Mensagem por André Gustavo em Dom 16 Ago 2009, 13:49

   Curso Online    

Para os dois computadores para se comunicar ele terá alguma ligação protocolo. Como a maioria dos jogos, Game Maker oferece quatro diferentes tipos de ligações: IPX, TCP / IP, modem, e Serial. O IPX ligação (para ser mais preciso, é um protocolo) é quase totalmente transparente. Ela pode ser usada para jogar com outras pessoas na mesma rede de área local. Ele precisa ser instalado no seu computador para ser utilizado. (Se isso não funcionar, consulte a documentação do Windows. Ou vá para a rede item no painel de controle do Windows e adicionar o protocolo IPX.) TCP / IP é o protocolo Internet. Ela pode ser usada para jogar com outros jogadores em qualquer lugar na internet, supondo que você conhece seu endereço IP. Em uma rede local que você pode usá-lo sem fornecer endereços. Um modem a ligação é feita através do modem. Você tem que fornecer algumas definições modem (initialization uma corda e um número de telefone) para usá-lo. Finalmente, quando se utiliza uma linha série (uma conexão direta entre os computadores) que você precisará fornecer um número de configurações de porta. Existem quatro GML funções que podem ser usados para a inicialização destas conexões:

mplay_init_ipx()
inicializa uma conexão IPX.

mplay_init_tcpip(addr)
inicia uma conexão TCP / IP. addr é uma string contendo o endereço da Web ou endereço IP, por exemplo, «www.gameplay.com '.123.123.12 ou'123', possivelmente seguido de um número de porta (por exemplo: ': 12'). Só quando aderir a uma sessão (ver abaixo) que você precisa fornecer um endereço. Em uma rede de área local sem endereços são
necessárias.

mplay_init_modem(initstr,phonenr)
inicializa uma conexão modem. initstr é a seqüência de inicialização do modem (pode ser vazia). phonenr é uma cadeia que contém o número de telefone para tocar (por exemplo,'0201234567 '). Só quando aderir a uma sessão (ver abaixo) que você precisa fornecer um número de telefone.

mplay_init_serial(portno,baudrate,stopbits,parity,flow)
inicia uma conexão serial. portno é o número da porta (1-4). baudrate é o baudrate a ser utilizado (100-256K). stopbits indica o número de stopbits (0 = 1 bit, 1 = 1,5 bit, 2 = 2 bits). paridade indica a paridade (0 = nenhum, 1 = ímpar, 2 = even, 3 = marca). E de fluxo indica o tipo de controlo de fluxo (0 = nenhum, 1 = Xon / xoff, 2 = RTS, DTR = 3, 4 = RTS e DTR). Retorna se bem-sucedida. Um típico chamada é mplay_init_serial (1,57600,0,0,4). Dê a 0 como um primeiro argumento para abrir uma janela para que o utilizador possa alterar as configurações.

Seu jogo deve ligar uma destas funções exactamente uma vez. Todas as funções relatório se foram bem sucedidos. Eles não são bem sucedidas se o protocolo não está instalado ou apoiadas pela sua máquina. Para verificar se há uma conexão bem sucedida disponível você pode usar a seguinte função

mplay_connect_status()
retorna o status da conexão atual. 0 = sem conexão, 1 = conexão IPX, 2 = conexão TCP / IP, 3 = conexão modem, e 4 = conexão serial.

Para terminar a ligação chamada

mplay_end()
termina a conexão atual.

Quando se utiliza uma conexão TCP / IP que você pode querer dizer a pessoa que você quer jogar o jogo com o que o endereço IP do seu computador está. A seguinte função ajuda-o aqui:

mplay_ipaddress()

retorna o endereço IP da sua máquina (por exemplo'123 .123.123.12 ') como uma string. Você pode, por exemplo exibir esta em algum lugar na tela. Note que esta rotina é tão lento que não chamá-lo o tempo todo.

continua! ;)


Última edição por André Gustavo em Dom 16 Ago 2009, 14:04, editado 2 vez(es)

André Gustavo

Número de Mensagens : 278
Data de inscrição : 16/06/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Curso Online

Mensagem por André Gustavo em Dom 16 Ago 2009, 14:01

Parte 2

Quando você conectar a uma rede, pode haver vários jogos acontecendo na mesma rede. Chamamos a estas sessões. Estas sessões diferentes podem corresponder a diferentes jogos ou com o mesmo jogo. Um jogo deve identificar-se na rede. Felizmente, Game Maker faz isso para você. A única coisa que você tem que saber é que quando você muda o jogo nas opções id forma esta identificação mudanças. Desta maneira você pode evitar que pessoas com versões antigas do seu jogo irá jogar contra as pessoas com novas versões.

Se você deseja iniciar um novo jogo multiplayer você precisa criar uma nova sessão. Para isso, você pode usar a seguinte rotina:

mplay_session_create(sesname,playnumb,playername)
cria uma nova sessão sobre a conexão atual. sesname é uma string indicando o nome da sessão. playnumb é um número que indica o número máximo de jogadores permitidos neste jogo (use 0 para um número arbitrário). playname é o seu nome como jogador. Retorna se bem-sucedida.

Um exemplo do jogo tem de criar a sessão. A outra instância (s) do jogo deve aderir a esta sessão. Isto é um pouco mais complicado. Você precisa olhar para o que as sessões são disponíveis e, em seguida, escolher o um a aderir. Existem três importantes rotinas para isso:

mplay_session_find()
pesquisas para todas as sessões que ainda aceitam jogadores e retorna o número de sessões encontrado.

mplay_session_name(numb)
retorna o nome da sessão número entorpecido (0 é a primeira sessão). Esta rotina só pode ser chamado depois de chamar a rotina anterior.

mplay_session_join(numb,playername)
faz você juntar sessão número entorpecido (0 é a primeira sessão). playername é o seu nome como um jogador. Retorna se bem-sucedida.

mplay_session_join(numb,playername)
faz você juntar sessão número entorpecido (0 é a primeira sessão). playername é o seu nome como um jogador. Retorna se bem-sucedida.

Há mais uma rotina que pode mudar o modo de sessão. Ele deve ser chamado antes da criação de uma sessão:

mplay_session_mode(move)
conjuntos ou não para passar a sessão hospedeiro para outro computador, quando o hospedeiro termina. movimento deve ser verdadeiro ou falso (o padrão).

Para verificar o estado da sessão atual você pode usar a seguinte função

mplay_session_status()
retorna o status da sessão atual. 0 = sem sessão, 1 = Criar sessão, 2 = aderiram sessão.


Um jogador pode parar uma sessão utilizando a seguinte rotina:

mplay_session_end ()
termina a sessão, para o leitor.

continua!

André Gustavo

Número de Mensagens : 278
Data de inscrição : 16/06/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Curso Online

Mensagem por dungeon333 em Dom 16 Ago 2009, 14:38

Gostei !.. ta
bem explicado ...
o problema eh q mplay eh bem lento..

dungeon333

Número de Mensagens : 351
Data de inscrição : 29/05/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Curso Online

Mensagem por mako182 em Dom 01 Nov 2009, 20:54

bom cara bem explicado curti bastante essa explicação sobre mplay
+ iae vão ter mais tutos
o ultimo foi em agosto, vc coloco "continua"
espero q realmente continue
flow

mako182

Ranking : Nota C
Número de Mensagens : 334
Idade : 24
Data de inscrição : 30/05/2009
Notas recebidas : C+C
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

Voltar ao Topo Ir em baixo

Re: Curso Online

Mensagem por Gabreel em Seg 02 Nov 2009, 00:12

Cara li o começo sobre os protocolos, e tá show de bola, explicadão..

O objetivo do meu jogo numa versão futura é ser online, é o sonho de qualquer NERD.
E ai, não sei se você falou isso, mais qual é a melhor opção pra um jogo que suporta 20 pessoas conectadas simultaneamente, usando o meu computador como host, levando em consideração que a minha internet é de 1MB

Gabreel

Número de Mensagens : 2227
Idade : 20
Data de inscrição : 02/10/2009
Reputação : 52
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Curso Online

Mensagem por Conteúdo patrocinado Hoje à(s) 09:58


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

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