Conectar-se
Quem está conectado
16 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 16 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 26/01/2010
Número de Mensagens : 154
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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)
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

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

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.
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 26/01/2010
Número de Mensagens : 154
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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.
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

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

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".
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 26/01/2010
Número de Mensagens : 154
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Qui 14 Out 2010, 12:27
O value ou valor é a variavel onde esta o ID do players = instancia a o value = id...
avatar
Ranking : Nota B
Notas recebidas : B-C-A-C
Data de inscrição : 18/09/2008
Número de Mensagens : 2490
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 1 Insignia 3x 0
Reputação : 52

Prêmios
   : 0
   : 2
   : 1
Ver perfil do usuáriohttp://xcreatorgames.weebly.com/

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

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.
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 26/01/2010
Número de Mensagens : 154
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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
avatar
Data de inscrição : 24/05/2008
Número de Mensagens : 2417
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 14

Prêmios
   : 0
   : 2
   : 0
Ver perfil do usuário

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

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!
avatar
Ranking : Nota D
Notas recebidas : D-C
Data de inscrição : 10/10/2010
Número de Mensagens : 582
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

em Sex 03 Dez 2010, 17:29
Olha , posso ta perguntando besteira ou outra coisa, mas
Oque é persistent?(Room Persistent,etc...)
avatar
Ranking : Nota E
Notas recebidas : E
Data de inscrição : 26/01/2010
Número de Mensagens : 154
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

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

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..
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum