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

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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

Inteligência artificial - Problemas

em Ter 08 Jan 2013, 23:40
Falae pessoal blz ?? Espero que sim , estou com um grande problema na inteligência do meu inimigo , As veses ele "entra" no outro inimigo fazendo com que nenhum deles ande , estou desesperado , não consigo corrigir , fiquei des de as 3 da tarde até agora tentando , e nada , por favor me ajudem , acredito que isto seja de nível mais avançado , mas não tenho certeza.
Engine : https://www.dropbox.com/s/ii3jsf9jqjfdgru/Projeto%20Novo%20-%20Edi%C3%A7%C3%A3o%20do%20Pulo.gmk
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 00:24
Se eu tivesse lido o seu tópico antes já teria te ajudado, só agora entrei.
Vou analizar aqui e doum edite mais tarde.
Até mas...


Última edição por Super Maker em Qua 09 Jan 2013, 01:07, editado 2 vez(es)
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 01:02
@Super Maker escreveu:Se eu tivesse lido o seu tópico antes já teria te ajudado, só agora entrei.
Vou analizar aqui e doum edite mais tarde.
Até mas...
Opa , claro sem problemas
Obrigado pela ajuda!
avatar
Data de inscrição : 09/07/2011
Número de Mensagens : 646
Insígnias de JAM :

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

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

Re: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 01:07
Cara esse bug é mesmo de desesperar rsrs.
Desculpa eu não poder procurar mais, mas é que a hora já ta me desfavorecendo.
Pela manhã vai ter mais ajuda e sei que apontarão o erro pra você.
A dica que eu deixo é: Faz um painel que mostra o estatus das variáveis. Com isso você pode achar mais rápido.
Até mais!
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 01:44
@Super Maker escreveu:Cara esse bug é mesmo de desesperar rsrs.
Desculpa eu não poder procurar mais, mas é que a hora já ta me desfavorecendo.
Pela manhã vai ter mais ajuda e sei que apontarão o erro pra você.
A dica que eu deixo é: Faz um painel que mostra o estatus das variáveis. Com isso você pode achar mais rápido.
Até mais!
Opa cara rlx , obrigado mesmo assim e boa noite hehe
avatar
Ranking : Nota D
Notas recebidas : D
Data de inscrição : 14/02/2010
Número de Mensagens : 911
Insígnias de JAM :

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

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

Re: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 09:05
Experimente adicionar um evento colision/colisão do inimigo com ele mesmo, e depois, na aba control, adicione o código:

Código:

x=xprevious
y=yprevious

Isso fara com que ao inimigo tocar no outro objeto inimigo, que ambos voltem 1 pixel em x e 1 pixel em y.Evitando o bug..
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 11:25
@peixoto escreveu:Experimente adicionar um evento colision/colisão do inimigo com ele mesmo, e depois, na aba control, adicione o código:

Código:

x=xprevious
y=yprevious

Isso fara com que ao inimigo tocar no outro objeto inimigo, que ambos voltem 1 pixel em x e 1 pixel em y.Evitando o bug..
Adicionei isto , mas eles continuaram um dentro do outro ):
Pensei em fazer algo assim no step do inimigo
if distance_to_object(obj_inimigo1)<64 {with(MENOR ID) {speed=0}}
o problema é que não sei chegar o menor id
isso acima , não funcionou!
Acredito que isto seja impossível!
Queria pedir desculpas , por que fiz duplo post , na hora que percebi deletei! Desculpe
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 16/01/2012
Número de Mensagens : 970
Insígnias de JAM :

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

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

Re: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 12:23
Tente algo como :
Código:
global.__menor_id = -1; // Declaração
with(all)
  begin
    if(distance_to_object(obj_inimigo1)<64)then
      begin
        if(global.__menor_id = -1)then global.__menor_id = id; // ID
        else global.__menor_id = min(global.__menor_id , id); // Menor
      end
  end
with(global.__menor_id)begin speed = 0; end
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 13:17
@TRFN escreveu:Tente algo como :
Código:
global.__menor_id = -1; // Declaração
with(all)
  begin
    if(distance_to_object(obj_inimigo1)<64)then
      begin
        if(global.__menor_id = -1)then global.__menor_id = id; // ID
        else global.__menor_id = min(global.__menor_id , id); // Menor
      end
  end
with(global.__menor_id)begin speed = 0; end
Era pra botar isto no step ?? Ainda não sei muito sobre GML , coloquei no Step e não funcionou!Tentei também colocando o global.__menor_id = -1; // Declaração no create , mas não consegui
Acredito que o problema é quando o inimigo vira do lado esquerdo para o direito e vice versa , se você viu a engine acredito que deu para perceber ... Obrigado
e se possível me ajude a resolver hehe obrigado de verdade!
avatar
Data de inscrição : 04/04/2010
Número de Mensagens : 148
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 13:29
Pra que você quer o menor ID dentre todos os objetos?
O que você precisa não é executar um instance_nearest() ?
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 13:30
@L0l-King escreveu:Pra que você quer o menor ID dentre todos os objetos?
O que você precisa não é executar um instance_nearest() ?
Na verdade isso foi uma forma que eu pensei de fazer isso , e seria o menor id dentre os inimigos , e oque instance_nearest faz ?? verifica quem está perto ?? e como usaria isso ?? Eu não sei por que eles entram um no outro , eles são sólidos , na colisão já coloquei bounce , já fiz várias coisas , mas nada funciona , como usaria isso?
avatar
Data de inscrição : 04/04/2010
Número de Mensagens : 148
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 19:12
Instance_nearest retorna o objeto do tipo que você passar mais próximo do ponto determinado.

Pra impedir de grudar um no outro faça uma verificação simples do tipo
Código:

if(!place_free(x+hspeed,y+vspeed)){
  //faça alguma coisa aqui que impeça o movimento, como zerar a hspeed
}
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 19:19
Fiz isso , e não funcinou!
Ficou assim
if(!place_free(x+hspeed,y+vspeed)){
speed=0 vspeed=0 hspeed=0
}
Por favor , baixe a engine e veja , é um problema bem estranho , nem o bounce funciona , obrigaddo!
avatar
Data de inscrição : 04/04/2010
Número de Mensagens : 148
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 19:21
Vou baixar e dar uma olhada.
Dou edit se eu entender alguma coisa de como corrigir.

Uma nota importante sobre o código que postei:
Ele precisa ser feito por ÚLTIMO durante o step, porque senão você seta zero e logo depois seta outro valor através de, por exemplo, segurar a seta direita.


EDIT: kra, quais objetos sao sólidos? To tentando entender de onde surgiu algum objeto sólido, só que tem muito objeto e muito código pra eu analisar.
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 20:06
@L0l-King escreveu:Vou baixar e dar uma olhada.
Dou edit se eu entender alguma coisa de como corrigir.

Uma nota importante sobre o código que postei:
Ele precisa ser feito por ÚLTIMO durante o step, porque senão você seta zero e logo depois seta outro valor através de, por exemplo, segurar a seta direita.


EDIT: kra, quais objetos sao sólidos? To tentando entender de onde surgiu algum objeto sólido, só que tem muito objeto e muito código pra eu analisar.
Os objetos solidos são os que tão na pasta objetos , mas os que são usados são só os obj_limite, e obj_limite_cima , e o inimigo é o obj_inimigo que tá na pasta inimigos
obj_inimigo1
é o primeiro piece of code do step do inimigo1
___________OQUE EU ACHO____________
Eu acho que deveria ser feito algum código para tirar eles dentro um do outro caso isto acontece , por que para previnir isso é meio complicado , por que dependendo do caso , existem magias no jogo , que jogam os inimigos para traz...
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 21:50
Amigo, seu código está muito mal formatado. Para jogos pequenos com poucas linhas em cada evento não tem tanto problema assim, mas para jogos com diversas condições e com eventos com bastante código a formatação é impressindível para que você mesmo possa alterar no futuro e para que outros possam te ajudar. Aprenda a formatar seu código!
Flws!
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 21:51
@vinians escreveu:Amigo, seu código está muito mal formatado. Para jogos pequenos com poucas linhas em cada evento não tem tanto problema assim, mas para jogos com diversas condições e com eventos com bastante código a formatação é impressindível para que você mesmo possa alterar no futuro e para que outros possam te ajudar. Aprenda a formatar seu código!
Flws!
A onde eu aprendo a formatar?
avatar
Data de inscrição : 04/04/2010
Número de Mensagens : 148
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 21:52
A formatação de códigos é chamada de indentação, até a wikipédia te mostra como que funciona.
avatar
Data de inscrição : 20/12/2012
Número de Mensagens : 97
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 21:59
@L0l-King escreveu:A formatação de códigos é chamada de indentação, até a wikipédia te mostra como que funciona.
Aaah , eu dei uma olhada , vou tentar arrumá-lo , mas alguem teria alguma sugestão de como tirar um de dentro do outro ?
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: Inteligência artificial - Problemas

em Qua 09 Jan 2013, 22:05
Sim, eu identifiquei alguns problemas:

1) Não use precise collision para este tipo de jogo, use mascaras.
2) Não coloque eventos de colisão do inimigo com o próprio inimigo, pois o próprio m_potential já desvia do mesmo, a colisão vai literalmente parar o objeto.
3) Quando você se distancia do inimigo > 230 se nao me engano. Você esta setando o speed = 0 isso faz com que ele fique parado onde está. Você deve na verdade criar um novo alvo em posições diferentes para que os inimigos se separem automaticamente. Quando estiverem separados, ai sim você os para.

Tem mais coisa mais nao me lembro agora.
Flws!
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