Postmortem


Gatekeeper foi um projeto desenvolvido para uma matéria da universidade de jogos digitais do IESB, matéria da qual exige o desenvolvimento de um projeto semestral e que normalmente é realizado em grupo.

Processo de desenvolvimento

É a primeira vez que escrevo um postmortem então acredito que eu deveria detalhar cada dificuldade ocorrida nesse projeto.

A primeira dificuldade foi definir tarefas e cargos pros membros do grupo, Gatekeeper originalmente foi um trabalho em grupo e todos os integrantes (5 pessoas) eram novatos, então eu assumi o papel de generalista e faria o que faltasse ser feito, apesar de, por exemplo, eu ser ruim programando e na época eu literalmente não sabia como programar nem o personagem se mover.

Além disso, como eu disse anteriormente o grupo possuia 5 membros, um deles trancou o curso, viramos 4, depois disso bem no inicio do projeto um dos membros decidiu  migrar de grupo e  viramos um grupo de 3 pessoas, apesar disso não houve nenhum contratempo ou algo do gênero e o projeto não foi prejudicado pela saida deles.

A segunda dificuldade foi programar, nesse momento do curso todos os alunos estavam aprendendo a programar na unity com Bolt (programação visual via nodes), eu insisti em ir no caminho do C# e do visual studio escrevendo o código "na raça" indo na contramão das aulas, pois eu senti que o bolt seria algo introdutório pra ensinar lógica da programação e que eu não usaria ele novamente e ao mesmo tempo imaginei que teria mais liberdade com o C#.

A terceira dificuldade foi o cronograma, tempo e novamente a programação, esse projeto estava dividido em 3 entregas, na primeira mostrariamos as mecanicas base, a segunda seria a arte do jogo no geral e a terceira seria o mais próximo possível de um beta. Visto a ausência de programadores no grupo eu fiz primeira entrega sozinho.

Nessa entrega havia apenas animações temporarias, aqui há um print com o visual da primeira entrega:


Nessa entrega havia  alguns problemas, por exemplo, eu não sabia fazer um método correto pro boss receber dano do jeito que eu queria, então se o jogador encostasse no boss o boss recebia dano e o jogador não, além disso eu estava usando rigidbody e colisores de fisica  pro boss, então com o golpe de lança que o jogador tinha ele conseguia erguer o sprite do boss e até arrastar o boss pelo cenário, situações que não deveriam acontecer. Por fim, qualquer coisa pequena que eu conseguia realizar nessa época, como as barras de vida, fazer as animações tocarem quando deveriam etc... tudo isso soava como pequenas conquistas que me motivaram a continuar com o projeto apesar de não saber nada de como tocar esse projeto pra frente, mas em algumas semanas eu já sabia um pouco do assunto.

A quarta dificuldade foi... meu grupo, já que de generalista eu me tornei o programador do grupo, a contragosto, mas não havia o que fazer já que ninguém assumia o papel de nada no inicio do projeto, conforme eu cito na primeira dificuldade. A partir desse ponto os outros dois integrantes ficaram responsáveis pela arte, mas ao chegar no dia da entrega não havia nada.

A quinta dificuldade foi fazer a arte, eu me retirei do grupo trazendo o projeto comigo já que eu havia feito tudo sozinho até o momento e tive que me deparar com a necessidade finalizar toda interface, animações etc sozinho ao mesmo tempo que aprendia a programar... usei muito hollow knight como inspiração e de alguma forma cheguei a algo diferente dele, cheguei a algo mais próprio/original, também foi nessa época que eu mudei o nome do projeto/jogo para Gatekeeper, antes era Growing threat.

Enfim, a arte foi um problema sério e teve que ser solucionado rapidamente para que eu seguisse o cronograma das entregas da universidade, se pararmos para analisar as animações do jogo vocês vão observar que elas possuem pouquíssimos frames, por exemplo, bubu invocando o bubuzinho tem entre 3 ou 4 frames apenas, além disso o Bubu se movimenta com dash pra eliminar a necessidade de fazer ele caminhando, pois o dash é um sprite estático com rastro e fumaça e é uma solução de locomoção muito mais rápida do que pintar/desenhar um walking cycle dele, eu até cheguei a tentar fazer um walking cycle, mas vi que ia requerer mais tempo do que eu tinha e os sprites estavam ficando ruins... Por fim, todos os golpes possuem poucos frames também, salvo engano cada golpe tem 3~4 frames no  máximo.

A sexta dificuldade e final foram sistemas, já tendo feito a ultima entrega pra universidade eu fui convidado pro "Pitching" pra apresentar meu jogo em um evento da  Universidade e esse convite me motivou a trabalhar no jogo por cerca de dois meses após o semestre terminar, pretendia adicionar mais inimigos, itens e inventário, inserir coisas que eu sabia que demoraria e explorar o que eu não sabia fazer.

E bom eu queria ir na vibe de um roguelike e do jeito que imaginei ia precisar de um inventário, um sistema de pop-up pra mostrar recompensas após derrotar o boss e um sistema de equipar os espólios e esse foi meu primeiro contato fazendo apenas sistemas e eu tive bastante dificuldade, no final consegui fazer funcionar, mas o jogo no geral tem muita gambiarra pra funcionar, um bom exemplo é que eu não sabia como fazer o boss piscar branco quando recebia dano, eu não tinha noção nenhuma de shader etc e eu evitava qualquer coisa que parecesse ser demorado a aprender por causa do pouco tempo que eu tinha, a  solução que encontrei foi mudar o material do inimigo pro material de fonte de texto do textmeshpro, funcionou... enfim  essa é uma das muitas gambiarras do projeto.

Por fim, no meio do caminho meu professor Felipe Dantas, me ajudou bastante me orientando quanto a duvidas minhas referentes a hitbox e outros dúvidas pontuais e o Israel Araújo que era de outro grupo me ajudou me orientando como fazer melhor algumas coisas, como o controle de dash do jogador que me deu insights pra fazer outros elementos no script do jogo.

Infelizmente devido a dificuldades da pandemia não aconteceu o evento do "pitching" do qual eu fui convidado a participar na época, já antecipando que o pitching não iria ocorrer me desanimei em incluir novos inimigos no jogo e o projeto segue agora um estado de post mortem, portanto declaro Gatekeeper como um projeto enterrado.

Talvez ele volte com outro nome e seu coreloop seja replanejado, mas isso fica em aberto.

Get Gatekeeper

Download NowName your own price

Leave a comment

Log in with itch.io to leave a comment.