Conectar-se
Quem está conectado
19 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 18 Visitantes

CRP-Max

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 21/01/2013
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

[Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 18:52
Estou desenvolvendo um game de corrida com uma visualização semelhante a de GTA de Play Station I, mas estou tendo dificuldades para encontrar uma formula para fazer o trafego andar pela cidade e andar normalmente pelas ruas, parar nos semáforos e coisas do tipo, o mesmo também valeria para para os adversários para que eles desviem dos carros a frente deles ou percebam as ruas.
Eu tentei fazer o seguinte: Criei blocos que quando os carros do trafego encostam neles, os carros girem até completarem uma posição de 90º. Porém, conforme eles vão andando e colidindo nesses blocos, eles acabam saindo e acabam girando mais de 90º, e uma hora o carro acaba saindo da linha que era para ele andar.
avatar
Ranking : Nota C
Notas recebidas : D-D-D-C-C-B
Data de inscrição : 15/03/2012
Número de Mensagens : 564
Insígnias de JAM :

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

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

Re: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 19:05
eu tbm ja tive um problemão com isso e resolvi abandonar a ideia até eu souber fazer esse algoritimo, desaculpe não te ajudar Sad mas eu fiz uma engine que pode servira para seu jogo, com apenas um objeto voce faz as ruas interligadas, sistema bem simples da uma olhada lá Smile
http://gmbr.forumeiros.com/t24910-colocacao-de-ruas-estradas?highlight=wngine+ruas
é bem util para fazer a room Very Happy
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: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 19:10
Isso ocorre porque você é ruim de matemática, assim como muitos aspirantes com o GM.
Matemática na criacao de jogos é poder amigo...

Quando você faz um "direction += valor" use um número múltiplo de 90, como 1, 2, 3, 5 e certifique-se de nao somar quando atingir mais 90 graus.
Se existe um necessidade suprema de nao usar os múltiplos de 90, entao voce precisa se certificar de que depois da última soma se voce passou de 90 graus, para voltar ao valor 90
avatar
Data de inscrição : 21/01/2013
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 19:15
Lol-King, fiz exatamente desse jeito, usei o valor 5 a cada instante(Step) que o carro fica dentro do quadrado, mas fui fazendo umas analises e percebi que o tamanho do quadrado e do carro acabam influenciando(Quanto maior o quadrado, mais tempo o carro fica dentro dele ou vice-versa) e também a velocidade do carro.
avatar
Ranking : Sem avaliações
Notas recebidas : B
Data de inscrição : 28/02/2012
Número de Mensagens : 1908
Insígnias de JAM :

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

Prêmios
   : 2
   : 2
   : 1
Ver perfil do usuáriohttp://guitarmester.no.comunidades.net/index.php?pagina=19362978

Re: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 19:21
Dá uma Olhada nesse jogo que diponibilizei a Engine aqui:
http://gmbr.forumeiros.com/t22146-engine-gmk-senhor-da-cidade-jogo-de-cidade-e-armas-carros

tem um sistema de tráfego de carro simples, mas os carros anda em bastante lugar.

// Faz tempo que fiz esse jogo/engine
avatar
Data de inscrição : 21/01/2013
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 19:51
Baixei, e achei bastante interessante Laughing , porém eu queria que houvesse o efeito gradual do carro executando a mudança de direção em 90º ou 45º.
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: [Corrida] Inteligência Artificial

em Seg 21 Jan 2013, 23:59
AlexandreMagnus escreveu:Lol-King, fiz exatamente desse jeito, usei o valor 5 a cada instante(Step) que o carro fica dentro do quadrado, mas fui fazendo umas analises e percebi que o tamanho do quadrado e do carro acabam influenciando(Quanto maior o quadrado, mais tempo o carro fica dentro dele ou vice-versa) e também a velocidade do carro.

Bem se o direction você está me garantido que está em 90/180/270/0(ou 360) então não tem nada de errado. Acredite em mim, o GM não erra por si só.
Talvez um detalhe importante é que você coloque o ponto de localização inicial do sprite exatamente no meio do carro.
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: [Corrida] Inteligência Artificial

em Ter 22 Jan 2013, 00:30
Eu usaria dois paths (um pra percorrer a cidade e um pra desviar dos obstáculos) e quatro variáveis (uma pro semáforo, uma pra indicar qual path usar, uma pra saber quando inverter o path e uma pra velocidade do path).
Em todo jogo é preciso usar matemática, mas existem certos eventos que não precisamos bater cabeça a toa.
avatar
Data de inscrição : 18/08/2010
Número de Mensagens : 414
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: [Corrida] Inteligência Artificial

em Ter 22 Jan 2013, 00:49
Bem você poderia fazer com que os oponente verifiquem se ah obstáculos a alguns pixeis ah frente, é se tiver, ele pode escolher se ele vai um pouco para esquerda ou direita, só que tem perigo de dele sair da rua, então fas com que ele verifique se esta próximo da beira a rua! (colocando objetos na beira da rua fica mais facil)
Poderia ser um codigo assim!

Código:
place_meeting(x,y+tantos,objetoobstaclo) {vira um pouco para o lado} else {volta para direção normal}
Bem, acho que poderia dar certo!
Fui...
avatar
Data de inscrição : 21/01/2013
Número de Mensagens : 8
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 0
Ver perfil do usuário

Re: [Corrida] Inteligência Artificial

em Ter 22 Jan 2013, 19:58
Tentarei usar esse modo de desviar obstaculos e tbm usar os paths(Apesar deste eu achar mais difícil fazer com efeitos).
Mas se tiverem mais ideias ficarei grato!
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