Relatório de desenvolvimento do jogo Vaqueiro Survivors feito para a disciplina de Introdução a Programação do curso de Engenharia da Computação do CIn/UFPE.
- Arthur Henrique dos Santos Silva
- Lucas José Duarte Cavalcanti
- Pedro Henrique de Andrade Cavalcanti
- Theo William da Rocha Ferreira
- Thiago Tenório de Albuquerque
Vaqueiro Survivors é um jogo no qual o Zé Vaqueiro enfrenta um apocalipse de vacas zumbi no Nordeste, e para sair vivo dessa vaqueijada, ele usa sua pistola lendária com balas de microfone e tenta desviar da maior quantidade possível de vacas zumbi. Nessa jornada ele coleta recompensas e aumenta de nível conforme acerta suas microfonadas.
Como os códigos foram organizados
animation/
├── left/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
├── right/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
backgrounds/
├── 1.png
├── 2.png
├── map.png
├── mapa.png
coin/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
coracao/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
fontes/
├── Oxanium-Bold.ttf
├── PressStart2P.ttf
inimigo/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
screenshots/
├── tela final.png
├── tela gameplay.png
├── tela inicial.png
sprites/
├── arma.png
├── gun.png
├── mic.png
├── terrorist.png
xp/
├── 0.png
├── 1.png
├── 2.png
├── 3.png
Main.py
groups.py
personagem.py
settings.py
sprites.py
pygame==2.6.0pygame-cerandommath| Time | Tarefas |
|---|---|
| Arthur Henrique | Responsável pelo código base, desenvolvendo o movimento do player, dos inimigos e do mapa. |
| Lucas José | Desenvolveu a parte gráfica do jogo, criando os sprites do jogador, dos coletáveis e dos inimigos. |
| Pedro Cavalcanti | Responsável pelo desenvolvimento das mecânicas dos coletáveis, das colisões e dos sprites. |
| Theo William | Desenvolveu o background e foi responsável pela organização do código com o uso de POO. |
| Thiago Tenório | Líder da equipe e responsável pelo repertório e pelos slides de apresentação do projeto. |
Utilizamos os conceitos fundamentais, como estruturas de armazenamento (list, dict, etc.) e estruturas condicionais (if, else, while, for), assim como os princípios da Programação Orientada a Objetos (POO), os quais permitiram manter o código organizado e acessível.
Ademais, outro método essencial para o desenvolvimento do jogo foi o uso de funções, as quais contribuíram significativamente na criação de classes, estruturas que auxiliaram na organização do código e em uma melhor visibilidade.
Os principais desafios enfrentados pelo grupo foram a adaptação ao uso de bibliotecas e de sistemas de controle de versão (VCS), assim como a divisão de tarefas da equipe. Assim, pode-se afirmar que, além das hardskills, a principal lição que aprendemos durante o projeto foi o trabalho em equipe.


