[Tutorial] I.A - 1ª parte

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

Você acha que devo continuar com os tutoriais?

100% 100% 
[ 10 ]
0% 0% 
[ 0 ]
 
Total dos votos : 10

[Tutorial] I.A - 1ª parte

Mensagem por Tedi Ripper em Sab 02 Abr 2011, 16:07


Introdução
Oi galera, estou aqui para encinar (de verdade) o que é uma Inteligencia Artificial, como usa-la, e como fazer uma.
Estas aulas vão ser feitas por mim, mas não há nada programado, eu vou colocando aqui o que eu achar que for importante, aceita esse desafio?

Informações
Algumas informações:
Plataforma: estou usando GM 8 Lite, então obviamente pode-se usar nas 2 verções.
Dificuldade: depende da sua vontade, se você quer alguma coisa pronta, sugiro que feche esta janela!

|| || || || || || || || || || || || || || || || || || || || || || || || || || ||



Basicamente I.A é a Inteligencia Artificial (em ingles A.I (Artificial Inteligence)), ela serve para o PC, o computador, os robos e etc. Nos jogos você ve a I.A nos inimigos, CPU e tudo mais, mas será que é tão dificil assim fazer uma? Não, como 1º exemplo de I.A, vou encinar a fazer uma em D&D tão facil que chega até dar vergonha de dizer que I.A é dificil.



Para muitos isso é um bicho de 14 cabeças (7 é muito pouco), mas para vc saber, se você ja criou um jogo de plataforma, seguindo o exemplo da yoyo games, vc deve ter visto aquele objeto que se usa para quando o obj_inimigo colidir, ele muda de direção. o objeto inimigo basicamente tem uma inteligencia artificial, ele possui a inteligencia de que quando ele colidir com aquele objeto, ele volte, ele não sabe onde o objeto esta, mas sabe que quando ele colidir ele voltara, isso é uma I.A muito simples, agora no inicio desse tutorial, vamos criar coisas simples, como isso, mas n desanime, no fim vc estara criando objetos que pensam por si só!
Para projetar uma I.A, devemos saber o que queremos, não podemos criar algo simplesmente por criar, toda I.A tem um objetivo. Vamos usar de exemplo a tiasinha do correio no The sims, ela passa em determinado horario do dia, isso é programado, mas, se vc n recolheu seu jornal no outro dia, ela com sua I.A, acha um jeito de deixar a carta em outro lugar, que não há outro objeto (geralmente do lado da carta velha, mas se tiver objetos por perto, ela acha outro lugar). A pessoa que cria a I.A deve pensar bastante, pq o que mais buga, em todos os jogos, é a I.A, mas não se apavore, se você não consegue fazer I.As, peça ajuda, muitas veses as pessoas simplesmente não tem uma vocação para criar I.As, quem tem essa vocação, tem que ter muita criaividade (como eu ;) ).



Vamos criar um mini game, algo parecido com pacman, para vcs saberem este tutorial é do meu 1º jogo completo, então é muito simples, mas é só pra dar uma base, OK?
Abra o Game Maker.
DICA
Se você é iniciante, pode não saber, mas o certo é sempre começar um jogo por sprites, não adianta começar por outras coisas, o mais apropriado é começas pelas imagens.
Vamos usar 3 sprites, Você pode escolher elas mas eu vou pedir algumas coisas:
NomeTamanhoFormato
sp_player- de 32x32bola
sp_inimigotamanho do playerbola
sp_wall32x32quadrado
Observações
O player e o inimigo devem ser menores do que 32x32 se não eles não passarão pelo meio das paredes, uma dica é fazer 16x16
No sprite sp_inimigo, remova a opção: Precise Collision Checking
OBS:
agora crie um objeto para cada sprite, nos nomes, só troquem de "sp_" para "ob_".
siga as informações abaixo:
NomeInformaçãoEventos
ob_wallvisible:true / solid:trueNenhum
ob_playervisible:true / solid:false
Código:
Step:
if keyboard_check(vk_up) then y-=4
if keyboard_check(vk_down) then y+=4
if keyboard_check(vk_left) then x-=4
if keyboard_check(vk_right) then x+=4

Colision ob_wall:
speed=0

colision ob_inimigo:
room_restart()
ob_inimigovisible: true / solid: falseCreate & colision ob_wall: (event) Move Fixed: directions: cima/baixo/esquerda/direita. Speed:2
Observações
Crie um mapa com um formato de labirinto, evite deixar espaços vasios, tipo 2x2, coloque o ob_player e o ob_inimigo bem separados

Siga a observação acima, e teste o jogo, depois leia o resto.

Vc percebeu que o ob_inimigo, ao colidir com a parede, ele escolhe aleatoriamente uma direção para ir, isto nada mais é do que a I.A dele, vc n escolhe para onde ele vai, vc n sabe para onde ele vai ir, isso é que é uma I.A, algo não programado, que simplesmente acontece.


Como chegamos ao final desta primeira parte do tutorial, então vou dar uma tarefinha de casa. É só pra vc treinar, não é pra me passar ela.
Ai está: Com o joguinho que vc fez hoje, crie algo melhor, com outros inimigos, mais rapidos, mais fases. E se ficar um bom jogo, vai saber se vc não aproveita e posta ai no forum Razz


Ésta é só a primeira parte do tutorial, vou postar outra daqui a pouco, ou daqui a um tempo, veremos, até a proxima.

Tedi Ripper

Ranking : Nota C
Número de Mensagens : 765
Idade : 19
Data de inscrição : 21/11/2010
Notas recebidas : C
Reputação : 24
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Tutorial] I.A - 1ª parte

Mensagem por Convidad em Sab 02 Abr 2011, 16:25

tem um probleminha no step do player

Convidad
Convidado


Voltar ao Topo Ir em baixo

Re: [Tutorial] I.A - 1ª parte

Mensagem por Tedi Ripper em Sab 02 Abr 2011, 16:35

não to vendo problema nenhum, ve certinho se vc n copiou errado.

Tedi Ripper

Ranking : Nota C
Número de Mensagens : 765
Idade : 19
Data de inscrição : 21/11/2010
Notas recebidas : C
Reputação : 24
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: [Tutorial] I.A - 1ª parte

Mensagem por Conteúdo patrocinado Hoje à(s) 07:45


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