Online [Help]

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

Online [Help]

Mensagem por Gabreel em Qua 20 Jan 2010, 01:54

Ultimamente eu andei lendo sobre como criar um jogo online...

Só achei duas formas, pela var mplay e pela 39dll

Com a dll 32 num consegui nem nada..

com o mplay junto com o help do gm consegui criar um jogo onde se inverte as posições e so da pra jogar com 2 players...

existe uma forma pra eu juntar 4 players no jogo?

Vc s vão ver mtas duvidas minha nessa area ;s


Última edição por ·ßieL em Qui 21 Jan 2010, 22:55, editado 1 vez(es)

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: Online [Help]

Mensagem por Froidz em Qua 20 Jan 2010, 09:48

Claro que tem kra, faça da mesma forma que vc fez para dois players, só que adicione mais dois oO'

Froidz

Número de Mensagens : 1053
Idade : 23
Data de inscrição : 03/08/2008
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Online [Help]

Mensagem por Gabreel em Qui 21 Jan 2010, 22:23

Como vou definir o ID do usuário?

Pois um usuário tem que se identificar diferente de outro, certo? o-o

Tipo, acho que vou fazer isso pelo Mysql, definindo id individual pra cada usuário, mai o unico problema é que num consigo fazer o mysql rodar..

E com ou sem mysql eu preciso testar..

Vlw desde já..

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: Online [Help]

Mensagem por Janx em Qui 21 Jan 2010, 22:37

Os usuarios são diferenciados pelos IDs assim que se conectam.
Pelomenos na 39dll. O server recebe SEMPRE ID 1.
O próximo que entra recebe ID 2, assim por diante.

Para ter mais players você precisa saber quantas pessoas tem no jogo
Dai quando se você for o server você envia para todos esses jogadores com um loop.
Código:
for(a=2; a < total_players; a+=1) //começa no 2 pois 0 não tem e 1 é você mesmo (server)
{send_message(a);}

Se você for o player, você manda para o server e o server repassa para todos os outros jogadores.

Flwss

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Online [Help]

Mensagem por Gabreel em Qui 21 Jan 2010, 22:50

Flw Janx, vo arruma um erro nas mensagens e dai eu ja testo..

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: Online [Help]

Mensagem por dungeon333 em Qui 21 Jan 2010, 23:00

Janx escreveu:Os usuarios são diferenciados pelos IDs assim que se conectam.
Pelomenos na 39dll. O server recebe SEMPRE ID 1.
O próximo que entra recebe ID 2, assim por diante.

Para ter mais players você precisa saber quantas pessoas tem no jogo
Dai quando se você for o server você envia para todos esses jogadores com um loop.
Código:
for(a=2; a < total_players; a+=1) //começa no 2 pois 0 não tem e 1 é você mesmo (server)
{send_message(a);}

Se você for o player, você manda para o server e o server repassa para todos os outros jogadores.

Flwss
cara vc ta confundindo 39dll com Simple Online Connection (SOC)
na 39dll n vem os ID dos players nao

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: Online [Help]

Mensagem por Mário Valney em Qui 21 Jan 2010, 23:23

Naum sei se entendi direito sua pergunta, mas:

Se vc estiver usando mplay, saiba que cada player que entre no seu jogo receberá um ID diferente. Sendo 0 vc.

Agora para saber o ID vc pode fazer o seguinte:

Código:

//Descobrir o total de jogadores:
var n_jogadores;
n_jogadores = mplay_player_find()

//Descobrir o nome de cada jogador:
for (i=2 ; i <= n_jogadores ; i += 1) nome_jogador[i] = mplay_player_name(i);

//Listar todos os jogadores:
var lista_jogadores;
lista_jogadores = ''
for (i=2 ; i <= n_jogadores ; i += 1) lista_jogadores = ( lista_jogadores + '#' + string(nome_jogador[i]) );

//Qual o meu nick?:
var meu_nick;

meu_nick = mplay_player_name(0)

//Mostrar todos os jogadores:

show_message(' - Nessa sala estão presentes:##' + string(meu_nick) + ' ' + '[Eu]' + string(lista_jogadores) )

assim vc pode saber o nome de cada player no seu jogo.(eu usei pra listar o nome de tds que entraram no meu.) Mas vc pode listar tbm os IDs. Acho que era isso, né?

Se naum for pode perguntar. Ultimamente venho estudando muito esse "mplay". Consegui fazer um monte de coisas, só naum consigo fazer dois jogadores com IP diferente se conectarem e entrarem na mesma sala. Teoricamente, funcionaria, mas acho q naum to sabendo arranjar a questão das portas. Se alguém puder me ajudar, por favor!

Aqui estão as funções que vc provavelmente vai usar:

mplay_player_find() Procura por todos os players na sessão atual e retorna o número de players encontrado.
mplay_player_name(numb) Retorna o 'nome' do player 'numb'. (0 é o primeiro player, que é sempre vc mesmo. Só pode ser chamado depois da primeira. Lembre-se que 'numb' varia de 0 até (mplay_player_find - 1), i.e. de 0 até o número de player - 1.
mplay_player_id(numb) A mesma coisa da anterior. Contudo retorna o ID e não o nome. Esse ID é usado no serviço de recepção e envio de mensagens: mplay_message_send(player,id,valor) - envia uma mensagem para o 'player' indicado (pode ser o ID ou o nome e 0 envia pra todos, menos vc!) com o valor indicado (real ou string). O 'id' é o id da mensagem.

Espero muito ter ajudado! XD

Mário Valney

Ranking : Nota A
Número de Mensagens : 203
Idade : 24
Data de inscrição : 16/11/2009
Notas recebidas : A
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.areaonze.com

Voltar ao Topo Ir em baixo

Re: Online [Help]

Mensagem por Gabreel em Sex 22 Jan 2010, 00:25

Vlw, vo estudar outros modos de conexão...

Andei lendo os tutos do joaoneto, e ele falou que tem problemas com routers.. (talvez seja esse seu problema..)

To aprendendo a mexer com SOC

(PS: Zero Sofware? Não seria Zero Software)

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: Online [Help]

Mensagem por Janx em Sex 22 Jan 2010, 00:27

dungeon333 escreveu:
Janx escreveu:Os usuarios são diferenciados pelos IDs assim que se conectam.
Pelomenos na 39dll. O server recebe SEMPRE ID 1.
O próximo que entra recebe ID 2, assim por diante.

Para ter mais players você precisa saber quantas pessoas tem no jogo
Dai quando se você for o server você envia para todos esses jogadores com um loop.
Código:
for(a=2; a < total_players; a+=1) //começa no 2 pois 0 não tem e 1 é você mesmo (server)
{send_message(a);}

Se você for o player, você manda para o server e o server repassa para todos os outros jogadores.

Flwss
cara vc ta confundindo 39dll com Simple Online Connection (SOC)
na 39dll n vem os ID dos players nao

Foi mal cara, mas eu tenho certeza disso.
A 39dll faz isso.
o meu jogo usa ela e eu sei como ela funciona: Guerra²

Janx

Número de Mensagens : 2417
Idade : 23
Data de inscrição : 24/05/2008
Reputação : 14
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Online [Help]

Mensagem por Mário Valney em Sex 22 Jan 2010, 00:36

·ßieL escreveu:Vlw, vo estudar outros modos de conexão...

Andei lendo os tutos do joaoneto, e ele falou que tem problemas com routers.. (talvez seja esse seu problema..)

To aprendendo a mexer com SOC

(PS: Zero Sofware? Não seria Zero Software)

My FAIL! - Kra. Alguem me mata!

Vlw!

E vou ver esse negócio de routers.

Mário Valney

Ranking : Nota A
Número de Mensagens : 203
Idade : 24
Data de inscrição : 16/11/2009
Notas recebidas : A
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   :
   :
   :

http://www.areaonze.com

Voltar ao Topo Ir em baixo

Re: Online [Help]

Mensagem por Conteúdo patrocinado Hoje à(s) 01:51


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