Jogador maluco, problemático, olho parado.
- Juntou-se
- 21 de Julho de 2015
- Postagens
- 570
- Soluções
- 3
- Bravecoins
- 2.833
- Área
- Programação
- Motor de jogo
- RPG Maker 2003
Sistema de Trânsito
by Dr.XGB
Plataforma: RPG Maker 2000 v1.05b
Motor adicional: Destiny Patcher 2.0
Dificuldade: Avançado
Log:
Introdução:
Este sistema foi desenvolvido com a linguagem de programação DestinyScript. Fiz esse programa pois estou tentando retomar um projeto que era para ter sido lançado em 2015 como um especial de 10 anos do meu primeiro jogo, porém agora terei que pensar como eu vou chamar esse lançamento dessa vez, rsrsrs !!
E no jogo tem uma parte em que o protagonista cai em uma cidade, e nisso eu precisei desenvolver esse sistema de tráfego de carros. Pois eu não queria que os carros tivessem uma rota fixa, mas sim rotas desenvolvidas dinamicamente, onde a inteligência artificial do carro possa detectar se está se aproximando de um outro carro, ou se vai entrar em um cruzamento e detectar se há uma curva a ser realizada.
Descrição:
Trata-se de um sistema simples de Inteligência Artificial simulando um trânsito.
O sistema funciona através de um controlador implementado no mapa em que o sistema ocorrerá. A estrutura foi desenvolvida por funções, ações do controlador e ação principal.
O programa começa pela última página que ocorre em Processo Paralelo, ali será a parte principal do programa, onde ele vai detectar todos os carros existentes no mapa e vai chamar as ações do controlador para cada carro.
As ações do controlador são chamadas na primeira página do evento. Esta página vai ser responsável pela detecção de comportamentos daquele carro. São eles:
Cruzamento:- Cruzamento normal (em forma de cruz)
- Cruzamento em "T"
- Olhar para os lados para não se chocar com um carro no cruzamento
- Realizar a conversão
Prevenção de Colisões com outros carros:- Freiar
- Acelerar
- Fazer a Curva
- Andar para frente caso o carro não tenha feito nenhuma das ações acima
Cada uma destas ações e os outros métodos deste controlador estão separadas por páginas para facilitar a manutenção do programa e também por questão de organização, deixando a programação mais coesa e fácil de compreender o código quando vocês analisarem o sistema através do código-fonte. Seguem as funções do controlador dos carros abaixo:
CarroController:
Por enquanto nesta versão são apenas o tráfego dos carros. A próxima versão desse sistema fará o tratamento dos pedestres.
Aguardem por novidades!
Vídeo DEMO:
[youtube]https://youtu.be/l0nBdkofdUk[/youtube]
Links:
Dropbox - GitHub
Espero que tenham gostado e que tenha acrescentado conhecimento ao fórum.
Até a próxima! o/