Entrar
Últimos assuntos
» player não consegue andarpor 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
» 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
» 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 usar a engine Network Platform GM:S
5 participantes
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
[Tutorial]Como usar a engine Network Platform GM:S
Tutorial
Como usar a engine Network Platform
Plataforma
Game Maker studio
Descrição
Fiz este mini tutorial para quem não está sabendo como abrir um servidor e um cliente nesta engine que já vem incluso no Game maker studio.
Engine usada
http://www.mediafire.com/?y9kq329q8vhpqmb
Todos os direitos reservados a yoyo games
Como usar a engine Network Platform
Plataforma
Game Maker studio
Descrição
Fiz este mini tutorial para quem não está sabendo como abrir um servidor e um cliente nesta engine que já vem incluso no Game maker studio.
Engine usada
Todos os direitos reservados a yoyo games
1- PASSO
Na opção Target (onde fica todos os módulos de exportação) escolha a opção windows , não sei se funciona em outros módulos , mas deve funcionar.
2- PASSO
Click no ícone de criar executáveis.
3- PASSO
Na aba TIPO , troque Windows NSIS Installer (cria executável com instalador) por Single runtime executable (cria apenas o executável) e exporte para alguma área do seu pc.
4- PASSO
Execute a executável da engine , depois escolha o nome do servidor , e clique em "create server"
SERVIDOR CRIADO !
5- PASSO
Clique novamente na executável
6- PASSO
Percebe que aparece o "endereço" do servidor criado , clique neste endereço para ir na sala onde o player mike , que é o dono da sala está.
7- PASSO
Pronto , cliente criado . Se vários jogadores quiserem ir para a sala de um servidor , terá que clicar no endereço que aparece na tela , mas se quiser iniciar outro servidor , escolha um nome e clique no botão ao lado.
Emfim , tutorial termina por aqui , espero que tenha gostado , se surgir alguma duvida , pode pergunta aqui no tópico ou mande uma mp , abraço , ate a próxima.
Última edição por !!Game Play!! em Ter 16 Abr 2013, 19:07, editado 2 vez(es) (Motivo da edição : Arrumei Link's Quebrados.)
Re: [Tutorial]Como usar a engine Network Platform GM:S
o link da engine esta off e as imagens tbm, mesmo assim tentei seguir o tuto e não funcionou, fico no aguardo..
abç.
abç.
Gonzo- Data de inscrição : 29/05/2012
Reputação : 33
Número de Mensagens : 929
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Desculpe mina , mas aqui esta tudo funcionando perfeitamente , tenta ver se o problema é sua net , abraço.
Re: [Tutorial]Como usar a engine Network Platform GM:S
GamePlay só foi possivel tentar baixar a engine hoje, e me parece que esta quebrado o link.
Tem como esquematizar ae pra mim? fazenvofavôh
Tem como esquematizar ae pra mim? fazenvofavôh
Re: [Tutorial]Como usar a engine Network Platform GM:S
Pronto ! Consertei os link's
Se ainda continuar com link's quebrados , por favor , me avise , que eu dou um jeitinho aqui.
Se ainda continuar com link's quebrados , por favor , me avise , que eu dou um jeitinho aqui.
Re: [Tutorial]Como usar a engine Network Platform GM:S
!!Game Play!!
agora funcionou!
bom vc poderia adaptar algumas coisas pra nós ?
tipo.. tirar a opção de escolher o server e ao invés disso redirecionar o cliente para um arquivo online q contenha o ip do server ? o que acha ? vlw pelos print só consegui pq causa deles !!
abç.
agora funcionou!
bom vc poderia adaptar algumas coisas pra nós ?
tipo.. tirar a opção de escolher o server e ao invés disso redirecionar o cliente para um arquivo online q contenha o ip do server ? o que acha ? vlw pelos print só consegui pq causa deles !!
abç.
Gonzo- Data de inscrição : 29/05/2012
Reputação : 33
Número de Mensagens : 929
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Desculpem ressuscitar o tópico. Mas a dúvida não foi respondida e estou enfrentando este mesmo problema.
Fazer o cliente logar automaticamente SE já existir um servidor.
Como fazer isso?
EDIT: Consegui fazer o login automaticamente, se já existir um servidor.
No objeto "oMenu", evento "Networking" ponha o código:
Mas ainda não é a solução ideal.
Eu preciso que o jogo busque na internet a informação de servidores disponíveis (ip, porta), e se existir pelo menos 1, se conecte nele.
Em outras palavras, preciso me conectar a um servidor EXTERNO, e não a um servidor que esteja na mesma rede que eu.
Fazer o cliente logar automaticamente SE já existir um servidor.
Como fazer isso?
EDIT: Consegui fazer o login automaticamente, se já existir um servidor.
No objeto "oMenu", evento "Networking" ponha o código:
- Código:
/// UDP server code - Detect servers "broadcast"
var eventid = ds_map_find_value(async_load, "id");
if( eventid == global.broadcast_server )
{
var ip = ds_map_find_value(async_load, "ip");
// incoming data for the server from a connected saocket
var buff = ds_map_find_value(async_load, "buffer");
name = buffer_read(buff, buffer_string );
// Add to our list...if we don't already have it!
var index = ds_list_find_index(global.serverlist, ip);
if( index<0 ){
ds_list_add(global.serverlist, ip);
ds_list_add(global.servernames, name);
show_debug_message("New server found at: "+ip+" called: "+name);
if ds_list_size(global.serverlist)>=1 //se já existir um server, se conecta automaticamente nele
{
global.connectip = ds_list_find_value(global.serverlist, 0);
alarm[0] = 2;
}
}
}
Mas ainda não é a solução ideal.
Eu preciso que o jogo busque na internet a informação de servidores disponíveis (ip, porta), e se existir pelo menos 1, se conecte nele.
Em outras palavras, preciso me conectar a um servidor EXTERNO, e não a um servidor que esteja na mesma rede que eu.
Neofix- Games Ranking :
Notas recebidas : A
Data de inscrição : 19/01/2009
Reputação : 7
Número de Mensagens : 98
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Aí vc vai ter que ter uma lista de servidores cadastrados. E mostrar o status de cada um desses servidores.
Vc não vai conseguir um script pra varrer a net em busca disto. É como os desenvolvedores de jogos fazem.
Essa lista pode ser baixada sempre que o cara for jogar. A forma de fazer (baixar esse arquivo) está no meu tuto de Arquivos Online.
Vc não vai conseguir um script pra varrer a net em busca disto. É como os desenvolvedores de jogos fazem.
Essa lista pode ser baixada sempre que o cara for jogar. A forma de fazer (baixar esse arquivo) está no meu tuto de Arquivos Online.
fredcobain- Games Ranking :
Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios :
x 0 x 3 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Eu vou ter que deixar meu computador ligado com vários servidores abertos para o pessoal se conectar neles?
Porque eu estava pensando em fazer algo mais dinâmico, onde cada jogador pode criar seu servidor, enviar sua informação para a web, e o próximo que conectar seria o cliente, que baixa as informações e se conecta.
A lógica é: Se não existirem servidores, cria um. Se existir, se conecta automaticamente. Tudo rápido e transparente ao usuário final.
E assim por diante sempre permitindo partidas versus entre dois jogadores.
O networking do Game Maker funciona muito bem quando temos 2 jogares no mesmo ambiente, compartilhando a mesma rede. Preciso expandir isso para o nível global.
Porque eu estava pensando em fazer algo mais dinâmico, onde cada jogador pode criar seu servidor, enviar sua informação para a web, e o próximo que conectar seria o cliente, que baixa as informações e se conecta.
A lógica é: Se não existirem servidores, cria um. Se existir, se conecta automaticamente. Tudo rápido e transparente ao usuário final.
E assim por diante sempre permitindo partidas versus entre dois jogadores.
O networking do Game Maker funciona muito bem quando temos 2 jogares no mesmo ambiente, compartilhando a mesma rede. Preciso expandir isso para o nível global.
Neofix- Games Ranking :
Notas recebidas : A
Data de inscrição : 19/01/2009
Reputação : 7
Número de Mensagens : 98
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
isso tem que ser pesquisado em um lugar centralizado, não tem outra forma de implementar.
Vc vai ter um serviço, cada cliente vai criar um server quando iniciar o jogo, essa informação deve ser mandada através de buffer (ip externo, porta, etc) para um servidor central.
Esse servidor vai receber a informação e mostrar isso (através de alguma página ou devolvendo um buffer para o cliente).
É assim que funciona.
Vc vai ter um serviço, cada cliente vai criar um server quando iniciar o jogo, essa informação deve ser mandada através de buffer (ip externo, porta, etc) para um servidor central.
Esse servidor vai receber a informação e mostrar isso (através de alguma página ou devolvendo um buffer para o cliente).
É assim que funciona.
fredcobain- Games Ranking :
Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios :
x 0 x 3 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Deixa eu ver se entendi.
#1- Deixo um computador ligado, com um serviço rodando 24hs por dia, que tem o numero IP registrado no jogo (ou o ip armazenado em um arquivo .ini hospedado na internet, caso o ip da minha maquina mude sei lá se é dinâmico)
#2- O jogador abre o jogo, ele se conecta ao meu serviço, e ele responde para criar um servidor e aguardar segundo jogador
#3- Segundo jogador abre o jogo, o serviço sabe que tem um server esperando por ele, então envia os dados do servidor (jogador 1) e o player 2 se conecta diretamente nele.
#4- Para os próximos jogadores, repetir a partir da etapa #2
Penso que vai ser tenso programar isso tudo...
Vc já fez algo parecido Fredcobain?
#1- Deixo um computador ligado, com um serviço rodando 24hs por dia, que tem o numero IP registrado no jogo (ou o ip armazenado em um arquivo .ini hospedado na internet, caso o ip da minha maquina mude sei lá se é dinâmico)
#2- O jogador abre o jogo, ele se conecta ao meu serviço, e ele responde para criar um servidor e aguardar segundo jogador
#3- Segundo jogador abre o jogo, o serviço sabe que tem um server esperando por ele, então envia os dados do servidor (jogador 1) e o player 2 se conecta diretamente nele.
#4- Para os próximos jogadores, repetir a partir da etapa #2
Penso que vai ser tenso programar isso tudo...
Vc já fez algo parecido Fredcobain?
Neofix- Games Ranking :
Notas recebidas : A
Data de inscrição : 19/01/2009
Reputação : 7
Número de Mensagens : 98
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
É algo mais ou menos assim. Mas vc não precisa deixar um computador ligado o tempo todo.
A primeira camada, vc pode fazer via DotNet ou PHP, ou algo que o valha... seria um webservice.
Nunca fiz algo parecido, mas não é tão tenso de se fazer não.
A primeira camada, vc pode fazer via DotNet ou PHP, ou algo que o valha... seria um webservice.
Nunca fiz algo parecido, mas não é tão tenso de se fazer não.
fredcobain- Games Ranking :
Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios :
x 0 x 3 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Bom estou quebrando a cabeça aqui.
Eu consegui aqui no fórum mesmo, um script PHP para gravar uma informação em um servidor WEB
escrever.php <- este arquivo vc coloca em seu servidor WEB
e este é o comando GML para o game maker criar um "arquivo.txt" no servidor WEB
Com o seu tutorial Fred, acredito que não terei problemas para baixar essa informação da Web em um segundo momento. Assim a primeira parte do quebra cabeças esta feita.
Gravar e ler dados na web, atualizando a lista de servidores (IP dos próprios jogadores).
Essa solução me desobriga de manter um server dedicado aqui em casa rsrs
EDIT: Para fins didáticos, vou colocar aqui o código de leitura de arquivos na WEB. Se o leitor quiser mais informações leia o tutorial escrito pelo Fred!
---
Como vai funcionar:
Usando a lógica, se o arquivo.txt estiver vazio, significa que não existem servidores disponíveis, então o player1 cria o servidor e atualiza o arquivo.txt com seu numero IP.
Em seguida o player2 verifica o arquivo, vê que ele não está vazio, então se conecta ao servidor (player1) e em seguida zera o arquivo.txt.
Assim por diante sempre gerando partidas entre dois jogadores espalhados pelo mundo.
Eu consegui aqui no fórum mesmo, um script PHP para gravar uma informação em um servidor WEB
escrever.php <- este arquivo vc coloca em seu servidor WEB
- Código:
----------------
escrever.php
----------------
<?php
$fp = fopen("arquivo.txt", "w");
fwrite($fp, $_GET['info']);
fclose($fp);
?>
e este é o comando GML para o game maker criar um "arquivo.txt" no servidor WEB
- Código:
-------
GML
-------
texto="999.999.9.9"; //aqui vc carrega a msg que vai ser gravada
http_post_string("http://www.SEUSERVIDORWEB.com/escrever.php?info=" + string(texto), 0);
Com o seu tutorial Fred, acredito que não terei problemas para baixar essa informação da Web em um segundo momento. Assim a primeira parte do quebra cabeças esta feita.
Gravar e ler dados na web, atualizando a lista de servidores (IP dos próprios jogadores).
Essa solução me desobriga de manter um server dedicado aqui em casa rsrs
EDIT: Para fins didáticos, vou colocar aqui o código de leitura de arquivos na WEB. Se o leitor quiser mais informações leia o tutorial escrito pelo Fred!
- Código:
-------
LER
-------
//evento create
http_get("http://www.SEUSERVIDORWEB.com/arquivo.txt");
textoexibir="loading...";
//evento Async>HTTP
textoexibir=ds_map_find_value(async_load,"result");
//evento draw
draw_text(20,20,textoexibir);
---
Como vai funcionar:
Usando a lógica, se o arquivo.txt estiver vazio, significa que não existem servidores disponíveis, então o player1 cria o servidor e atualiza o arquivo.txt com seu numero IP.
Em seguida o player2 verifica o arquivo, vê que ele não está vazio, então se conecta ao servidor (player1) e em seguida zera o arquivo.txt.
Assim por diante sempre gerando partidas entre dois jogadores espalhados pelo mundo.
Neofix- Games Ranking :
Notas recebidas : A
Data de inscrição : 19/01/2009
Reputação : 7
Número de Mensagens : 98
Prêmios :
x 0 x 0 x 0
x 1 x 0 x 0
x 0 x 0 x 0
Re: [Tutorial]Como usar a engine Network Platform GM:S
Isso garoto! To gostando de ver vc arregaçando as mangas!
Esse é o caminho mesmo!
Depois vc poderia transformar num belo tutorial.
Parabéns pela perseverança de ir quebrando a cabeça até achar um caminho... tenho certeza que vc aprendeu muito nesse processo.
É isso que falta pra maioria.
Muito bom!
Esse é o caminho mesmo!
Depois vc poderia transformar num belo tutorial.
Parabéns pela perseverança de ir quebrando a cabeça até achar um caminho... tenho certeza que vc aprendeu muito nesse processo.
É isso que falta pra maioria.
Muito bom!
fredcobain- Games Ranking :
Data de inscrição : 14/04/2011
Reputação : 163
Número de Mensagens : 692
Prêmios :
x 0 x 3 x 0
x 0 x 0 x 0
x 0 x 0 x 0
GMBR :: Ensine & Aprenda :: Tutoriais :: Game Maker
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos