pogo2d icon indicating copy to clipboard operation
pogo2d copied to clipboard

Pokémon GO 2D VERSION é minha reimaginação do clássico sucesso mundial, onde você anda pela cidade, capturando os monstrinhos.
O jogo está sendo desenvolvido com REACT JS, Tailwind CSS , Javacript e Typescript para o front-end.
O back-end ainda não foi implantado mas já está sendo desenvolvido, ele utilizará NODEJS + EXPRESS para a criação da API REST, MONGOOSE E MONGODB para o banco de dados, e terá como função a criação e login de usuário, assim como controle de dados dos itens e bolsa de pokémon do jogador.
O projeto está totalmente responsivo para PC, ANDROID e IOS.

LINK PARA O JOGO:
https://pokemongo2d.vercel.app/

ATENÇÃO AS BREAKINGS CHANGES NA V9.00 INICIE UM NOVO JOGO PARA NÃO QUEBRAR

Detalhes técnicos:

O objetivo do jogo (até a versão 1.00) é andar pelo mapa capturando os pokémon, para posteriormente montar seu time que será usado para batalhas (na versão 2.00). Para isso foram construídas telas, separadas como páginas no projeto, o gerenciamento de troca de telas é feito com REACT ROUTER DOM.
A estilização em sua maior parte utiliza TAILWINDCSS e em alguns casos específicos STYLE INLINE. As animações ou são GIFS ou animations criadas com CSS e JAVASCRIPT.
O jogo contém músicas e efeitos sonoros controlados pela WEB AUDIO API do JAVASCRIPT, setadas como REFERÊNCIAS(useRef) do REACT, para um controle mais preciso do início e pausa das músicas.
Na criação das variáveis e arrays do jogo, foi utilizado gerenciamento de ESTADOS(useState) do REACT juntamente com CONTEXT API(useContext) para compartilhar as informações entre todas as páginas.
Utilizei arrays para:

  • a criação inicial dos pokémon no mapa
  • a criação inicial das pokéstops no mapa
  • a criação da bolsa de pokémon do jogador
  • a criação inicial dos itens do jogador
    Até que o back-end seja implantado estes dados são salvos a cada alteração, utilizando LOCALSTORAGE, assim se o usuário sai da página, ao voltar ele tem suas informações obtidas novamente e continuará com o mesmo estado em que saiu do jogo, podendo escolher se quer CONTINUAR ou iniciar um NOVO JOGO (limpando assim o LOCALSTORAGE).
    Cada pokémon tem seus atributos principais retirados de um array fixo, que foi obtido através da POKEAPI (https://pokeapi.co/) para agilizar o desenvolvimento.
    Inicialmente (na versão 0.85) estão sendo utilizados:
  • name
  • number(id)
  • types
    Para o sistema de batalhas as informações que serão adicionadas serão:
  • baseStats (attack, defense, stamina)
  • movesets

Pokemon Go 2D Roadmap to 1.00

  • [x] loading screen
  • [x] pokestops creation
  • [x] pokemon creation
  • [x] map screen
  • [x] menu
  • [x] catch screen
  • [x] pokemon removal on catch
  • [x] map boundaries
  • [x] mobile joystick
  • [x] change alerts for screen texts
  • [x] CP calculation
  • [x] Add pokemon types
  • [x] pokemon bag
  • [x] character selection
  • [x] bag creation
  • [x] bag screen
  • [x] items bag creation
  • [x] items bag screen
  • [x] music
  • [x] sfx
  • [x] permanent save (localstorage)
  • [x] continue / new game
  • [x] pokemon movesets
  • [x] pokemon details screen
  • [ ] level up system

Pokemon Go 2D Roadmap to 2.00

  • [ ] authentication system
  • [ ] cloud saving
  • [ ] battle system
  • [ ] gym battles
  • [ ] raid battles
  • [ ] ?pvp battles?