GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Como ajustar velocidade de cada frame da animação no game maker
por Ralphed Ontem à(s) 18:28

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21

» Asteroid Core - Early Acesse Update [0.2.0.0]
por JOZ. Seg 08 Jan 2024, 14:39

» Versionamento de código com GitHub
por GabrielXavier Seg 08 Jan 2024, 07:32

» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por kolesovsup Sex 29 Dez 2023, 07:16


Dúvida sobre IA

+2
Gabreel
gerudoking
6 participantes

Ir para baixo

Dúvida sobre IA Empty Dúvida sobre IA

Mensagem por gerudoking Sáb 07 Nov 2009, 20:44

Olá.
Estou constantemente trabalhando numa IA que faça inveja em muitas outras.Algumas coisas,como movimento do personagem de IA já estão prontas.Mas gostaria de saber sobre uma coisa:
1-Como faço para que quando o player apareça na frente do personagem(tipo,na posição do sprite considerada com frente),ele comece um código?

Por favor,respondam logo.
gerudoking
gerudoking

Data de inscrição : 07/07/2009
Reputação : 0
Número de Mensagens : 467
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por Gabreel Dom 08 Nov 2009, 00:27

Você pode colocar que quando ele tiver a 1x do player execute o codigo..

(não sei criar o codigo de kbça) mais é uma idéia.

if x=1 {
Codigo
}

Isso não deve dar certo, mais segundo o que a fisica proporciona é isso que deve acontecer O_o
Gabreel
Gabreel

Data de inscrição : 02/10/2009
Reputação : 52
Número de Mensagens : 2232
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Javascript
  • Outros


Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por itallo Dom 08 Nov 2009, 08:41

faça o seguinte no evento step:

tole = 10 ///aqui vc configura a tolerancia de y em relação aos dois objects

if player.y < self.y+tole and player.y > self.y-tole
{
script_execute("script de ataque")
}
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por gerudoking Seg 09 Nov 2009, 11:48

Biel:
Foi mal,não funfou.

oBKo:

Quase funcionou do jeito que eu queria,mas queria que quando o player chegasse na posição considerada como frente do inimigo,ai sim acontecia isto,pq assim ele se move se o player chegar por qualquer direção!
gerudoking
gerudoking

Data de inscrição : 07/07/2009
Reputação : 0
Número de Mensagens : 467
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por PedroX Seg 09 Nov 2009, 11:57

if player.x < x and sprite_index=spr_tras{codigo}
if player.x> x and sprite_index=spr....entendeu?

_________________


Leia o Manual do Iniciante e a Lista de Tutoriais, para aprender bastante sobre o GM.
Recomendo o Manual completo das colisões, bem útil.
O exemplo Criar um chat (banir, kickar, etc) é interessante.

Para seu jogo ficar rápido e legal, aprenda a Aumentar o desempenho do seu jogo.

Aprenda a calcular a velocidade de suas animações


Entre para o Clube do Inglês:
PedroX
PedroX

Games Ranking : Nota B

Notas recebidas : C+B
Data de inscrição : 26/07/2008
Reputação : 311
Número de Mensagens : 6087
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 17 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

https://web.whatsapp.com/send?phone=5519995935953&text=Pedro

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por gerudoking Seg 09 Nov 2009, 13:04

Saquei,funcionou bem,mas o que eu quero é que:
1-O player chega na posição 0 graus do objeto inimigo,que está sendo considerada como frente.

2-Acontece o código.

3-Se a posição considerada como frente for 140 graus(por exemplo),acontece o mesmo.
gerudoking
gerudoking

Data de inscrição : 07/07/2009
Reputação : 0
Número de Mensagens : 467
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por dungeon333 Seg 09 Nov 2009, 13:21

graus = point_direction(x,y,inimigo.x,inimigo.y)
if graus == 0
{
//inimigo do lado de la>>
}
if graus == 180
{
//inimigo do lado de la<<
}
//etc
avatar
dungeon333

Data de inscrição : 29/05/2009
Reputação : 0
Número de Mensagens : 351
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por Denis Lemos Seg 09 Nov 2009, 13:48

Para isso você tem que criar uma variável "lado", para saber onde é a frente do player !

Primeiro declara ela no create do player:
Código:

lado=1
// começará já virado para direita !

Agora no step coloca assim:
Código:

if lado=1 {image_xscale=1} else {image_xscale=-1}

if lado=1 && obj_inimigo.x > x  && distance_to_object(obj_inimigo)<100

  {
      with(obj_inimigo) " função que o inimigo deve fazer "
  }

if lado=0 && obj_inimigo.x < x  && distance_to_object(obj_inimigo)<100

  {
      with(obj_inimigo) " função que o inimigo deve fazer "
  }

Agora para isto funcionar você terá que declarar quando o lado é igual à " 1 = direita "
ou " 0 = esquerda " !

No evendo " Keyboard " para a direita=right, coloca apenas isso:
Código:
lado=1

No evendo " Keyboard " para a esquerda=left, coloca:
Código:
lado=0

Espero que isso te ajude !
Denis Lemos
Denis Lemos

Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Unity
  • C#
  • Godot
  • C ou C++


Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por itallo Seg 09 Nov 2009, 16:59

vel = 4

if distance_to_object(player) < 100{
if player.x > self.x{
lugar = -45
}else{
lugar = 45
}

if player.y > self.y{
altu = 10
}else{
altu = -10
}


if player.x+lugar < self.x{
hspeed = -vel+rnd
}else{
if player.x+lugar > self.x{
hspeed = +vel+rnd
}
}

if player.y+5 < self.y{
vspeed = -vel+rnd
}else{
if player.y-5 > self.y{
vspeed = vel+rnd
}
}

if self.y < player.y+5 and self.y > player.y-5{
vspeed = 0
}

if self.x < player.x+45 and self.x > player.x-45{
hspeed = 0
}
}

if distance_to_object(player) > 300
direction = random(360)
if direction > 0 and direction < 80 or direction < 360 and direction > 270{
hspeed = -4
}else{
hspeed = 4
}

if direction < 180{
vspeed = -2
}else{
if direction > 180{
vspeed = 2
}
}



////executando o atack
if vspeed = 0 and hspeed = 0{
if atack = 1{
script_execute(band_atk_1)
}
if atack = 2{
script_execute(band_atk_2)
}
}

=============
if vel = 4 or vel = -4
{
global.p1runer = 1
}else{
if vel = 8 or vel = -8
{
global.p1runer = 2
}
}
itallo
itallo

Games Ranking : Nota C

Notas recebidas : B - D
Data de inscrição : 26/08/2009
Reputação : 12
Número de Mensagens : 970
Prêmios : Dúvida sobre IA Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 1 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

Dúvida sobre IA Empty Re: Dúvida sobre IA

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos