Skip to content

Jogo 2D Top-Down de exploração de labirintos em Java

Notifications You must be signed in to change notification settings

ViniMorei/Gaming_HelloWorld

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

35 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Gaming "Hello, World!"

Esse repositório contém o meu "Hello, World!" do desenvolvimento de jogos, sendo um jogo com o propósito de aprender os conceitos de game dev e de pixel art para criação de sprites. Decidi por utilizar as seguintes ferramentas: Java para lidar com toda a lógica, LibreSprite para criação de sprites, e IntelliJ para servir de ambiente de desenvolvimento e gerenciamento de pacotes.

Execução

Pré requisitos: JDK 21 ou superior. Este projeto foi compilado utilizando o JDK 21, sendo este necessário para a sua execução.

  • Fazer o download do JAR mais atual na seção de releases.
  • Executar o arquivo no terminal:
    java -jar caminho\para\o\arquivo\Gaming_HelloWorld.jar
    

Purranormal Maze

Purranormal Maze é um jogo de exploração de labirintos feitos através de geração procedural de maneira aleatória, derrotando inimigos e coletando objetos distribuídos no mapa.

A protagonista do jogo é a gata Meg, uma felina que consegue invocar espíritos elementais de fogo, gelo e eletricidade, que gosta de colecionar itens para levar para o seu dono.

O objetivo do jogo é encontrar todos os baús no menor tempo possível, derrotando o máximo de inimigos e coletando o máximo de itens.

Controles

W, A, S, D - Movimentação

P - Pause

M - Miar

J - Arranhar

K - Magia de fogo

U - Magia de gelo

I - Magia de eletricidade

Personagens e inimigos

Meg
Slime
Mimic
Fire Summon
Personagem principal. Pode
invocar seres elementais
Uma meleca Um baú falso Invocação de fogo da Meg

Algoritmo de geração de labirintos

Binary Tree Hunt and Kill
Esse algoritmo consiste em percorrer uma matriz (Labirinto), e, para cada elemento (Célula / Casa), o algoritmo abre um caminho aleatoriamente com o vizinho "norte" ou "oeste", com o layout final se assemelhando a uma árvore binária, onde cada nó só tem dois filhos. O labirinto gerado por esse labirinto tem a limitação de ser um pouco previsível e ter dois lados completamente vazios Este algoritmo consiste em visitar um elemento aleatório da matriz, e em seguida abrir um caminho com uma célula vizinha que não foi visitada ainda. Caso o algoritmo chegue em um ponto onde não há mais células que não foram visitadas ao redor, o algoritmo entra no modo Hunt, onde ele busca uma célula não visitada que possui pelo menos um vizinho que já foi visitado, abre caminho entre eles e volta ao modo Kill, até todas as células serem visitadas
Labirinto Binary Tree
Labirinto Hunt and Kill