[MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

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

[MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por joorock12 em Qui 14 Out 2010, 10:53

Olá, tem muito tempo que não posto nada aqui.
Estou de volta aqui perguntando uma duvida que tenho a muito tempo, e mesmo assim não resolvi-a, porem agora que estou tentando produzir um MMORPG não sei como fazer-la.
Eu estou tentando fazer com que um objeto troque de room sem que precise executar o evento de criação(Event Create) de novo.
Eu já tentei colocar variáveis que definem por exemplo:
O objeto é um conector Online, onde ele no create ele conecta e “loga”, então já tentei fazer uma variável:
Se a variável for falsa, conectar se não passar para frente, porem não funcionou diante a 39dll.
Já tentei o Persistent porem não sei como ele funciona, já pesquisei em Engines, porem não me atendem pois não possuem explicações explicitas.
Obrigado.
- Ownh -


Última edição por joorock12 em Sex 03 Dez 2010, 10:29, editado 1 vez(es)

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por vinians em Qui 14 Out 2010, 11:18

Amigão, pelo que entendi, voce quer manter uma conexão ativa com a 39dll.
Quando você se conecta com ela a DLL te retorna um HANDLE que deve ser mantido até o fim do jogo. Para isso use uma variavel global. Exemplo:
//Coloque no evento CREATE do seu objeto de conexao:
Código:

if (not variable_global_exists("minha_conexao")
{
    globalvar minha_conexao;
    minhha_conexao = nova_conexao(); //apenas exemplo, troque pela funcao real
}
Basicamente seria isso, mais de mais informações para que possamos te ajudar melhor.

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por joorock12 em Qui 14 Out 2010, 12:03

Eu tentei porem não funcionou ainda possui o mesmo erro de antes:
Código:
ERROR in
action number 1
of  Step Event
for object obj_client:

Error in code at line 54:
          player = players[value];
                    ^
at position 19: Unknown variable players or array index out of bounds
Parece que o ele corrompe a variavel...
EDIT:Essa é a parte de atualização das posições do player onde Player se relaciona a ID do jogador.

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por vinians em Qui 14 Out 2010, 12:23

joorock12 escreveu:Eu tentei porem não funcionou ainda possui o mesmo erro de antes:
Código:
ERROR in
action number 1
of  Step Event
for object obj_client:

Error in code at line 54:
          player = players[value];
                    ^
at position 19: Unknown variable players or array index out of bounds
Parece que o ele corrompe a variavel...
EDIT:Essa é a parte de atualização das posições do player onde Player se relaciona a ID do jogador.
Na verdade pelo que ele está dizendo, a variavel "value" esta com um valor acima do valor permitido para o vetor players[]. Entre no debug do GM e verifique o vaor dessa variavel "value".

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por joorock12 em Qui 14 Out 2010, 12:27

O value ou valor é a variavel onde esta o ID do players = instancia a o value = id...

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por vinians em Qui 14 Out 2010, 12:32

joorock12 escreveu:O value ou valor é a variavel onde esta o ID do players = instancia a o value = id...
Sim, sim, mas você já verificou no debug? Ou coloque um show_message() para mostrar o valor dessa variavel, pois as vezes por algum motivo ela esta assumindo valores fora da faixa. Isso acontece muitas vezes em programação.
Tambem verifique se essa variavel players[] é global, se não for talvez fosse melhor declara-la como tal.
Tambem verifique se voce está inicializando a variavel players[] pois cada indice do vetor deve ser inicializado antes por exemplo:
Código:

var i;
for (i=0; i < 100; i += 1)
{
  players[i] = 0;
}
Isso garante 100 jogadores.

vinians

Ranking : Nota B
Número de Mensagens : 2490
Idade : 27
Data de inscrição : 18/09/2008
Notas recebidas : B-C-A-C
Reputação : 52
Insignia 1 x 0 Insignia 2 x 1 Insignia 3 x 0
Prêmios
   : 0
   : 2
   : 1

http://xcreatorgames.weebly.com/

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por joorock12 em Sex 03 Dez 2010, 15:54

Olá!
Estou aproveitando o tópico passado, para também pedir ajuda sobre, a troca de rooms em um jogo multiplayer...
Estou aqui para pedir ajuda sobre a lógica não sobre os códigos que devo usar.
Eu não tenho muita idéia de como fazer isso, então peço que me ajudem.
Aqui vai minha idéia:
Ao trocar de room o jogador envia a mensagem ao servidor de que ele trocou, Assim o servidor retorna aos outros players pedindo para que destruam a instancia dele.

Obrigado.
Ass. Ownh

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por Janx em Sex 03 Dez 2010, 16:48

joorock12 escreveu:Olá!
Ao trocar de room o jogador envia a mensagem ao servidor de que ele trocou, Assim o servidor retorna aos outros players pedindo para que destruam a instancia dele.

É assim mesmo. Lembre-se de avisar quem está na room que o player está indo para criá-lo lá tambem!

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: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por Luca$ em Sex 03 Dez 2010, 17:29

Olha , posso ta perguntando besteira ou outra coisa, mas
Oque é persistent?(Room Persistent,etc...)

Luca$

Ranking : Nota D
Número de Mensagens : 582
Data de inscrição : 10/10/2010
Notas recebidas : D-C
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por joorock12 em Sab 04 Dez 2010, 09:36

São aqueles objetos que estão presentes em todas as rooms!, Então é só isso?
Muito obrigado Janx, vou por em pratica..

joorock12

Ranking : Nota E
Número de Mensagens : 154
Idade : 20
Data de inscrição : 26/01/2010
Notas recebidas : E
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [MUDADO]Mudar de Room em Jogo multiplayer(LOGICA)

Mensagem por Conteúdo patrocinado Hoje à(s) 22:46


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