HumanVsAgentRollABall
# HumanVsAgent
## Descrição do Jogo
HumanVsAgent é um jogo desenvolvido no Unity, baseado no tutorial padrão Roll A Ball, porém com uma temática espacial. Neste jogo, o jogador assume o papel de um explorador espacial em uma missão para coletar todos os "PickUps" espalhados pela cena antes que o tempo limite de 1 minuto se esgote. No entanto, o desafio é intensificado pelo fato de que um agente treinado com o toolkit ML-Agents da Unity está competindo contra você. Além disso, se a rede neural no agente alcançar um alvo específico antes de você coletar todos os pickups, você também perderá o jogo.
HumanVsAgent oferece uma experiência emocionante e desafiadora, onde o jogador precisa demonstrar habilidades de navegação ágeis e estratégias inteligentes para superar o adversário virtual e completar a missão com sucesso.
## Desenvolvimento
HumanVsAgent foi desenvolvido utilizando o Unity Engine, uma poderosa ferramenta de desenvolvimento de jogos. A implementação do agente adversário foi realizada com o uso do toolkit ML-Agents da Unity, permitindo a criação de comportamentos autônomos baseados em inteligência artificial.
## Como Jogar
1. **Objetivo**: Coletar todos os "PickUps" na cena antes que o tempo limite de 1 minuto expire, enquanto evita que o agente adversário alcance um alvo específico antes de você.
2. **Controles**:
- Setas direcionais: Movimentação do jogador para frente, trás, esquerda e direita.
- Barra de Espaço: Salto.
3. **Instruções**:
- Use as setas direcionais para navegar pelo ambiente espacial e coletar os pickups espalhados pela cena.
- Pressione a barra de espaço para pular sobre obstáculos ou alcançar pickups em locais elevados.
- Evite colidir com obstáculos e o agente adversário.
- Fique atento ao tempo restante e colete todos os pickups antes que o cronômetro chegue a zero.
- Se o agente adversário alcançar o alvo antes de você coletar todos os pickups, você perderá o jogo.
## Redes Neurais
Aqui no repositório, na pasta ``results`` constam os logs do treinamento dos agentes e as redes neurais treinadas. Muitas delas foram evolução de processos de treinamento, e por isso, não estão necessariamente na última geração. Além disso, o arquivo de configuração do treinamento é o ``config_enemy.yaml``. Lá podemos alterar hiper-parâmetros e a arquitetura da rede neural.
## Repositório
Link: https://github.com/xValentim/HumanVsAgentRollaBall
## Melhorias Futuras
Por conta do tempo limitado, não foi possível treinar uma agente que oferecesse um desafio significativo ao jogador. No entanto, a ideia é treinar um agente mais inteligente e desafiador, que possa competir de forma mais eficaz contra o jogador. Além disso, outras melhorias planejadas incluem:
- **Novos Níveis**: Adição de novos níveis com diferentes layouts e desafios.
- **Novos Objetos**: Adição de novos objetos e elementos interativos para aumentar a complexidade e a diversão.
## Citações de Assets
- **Unity Engine**: Plataforma de desenvolvimento de jogos utilizada para criar o jogo.
- **ML-Agents Toolkit**: Utilizado para implementar o agente adversário com inteligência artificial.
- **Assets de HumanVsAgent**: Todos os assets utilizados no jogo foram criados internamente ou obtidos legalmente de fontes gratuitas, seguindo as políticas de licenciamento e direitos autorais.
- **Assets de Som** : https://www.portaldosmemes.com.br/
- **Assets Sci-Fi** : https://assetstore.unity.com/packages/3d/environments/sci-fi/sci-fi-styled-modul...
Leave a comment
Log in with itch.io to leave a comment.