Mostrando postagens com marcador Jogo. Mostrar todas as postagens
Mostrando postagens com marcador Jogo. Mostrar todas as postagens

segunda-feira, 17 de março de 2014

Blog Novo!

Resolvi mudar o meu blog, levá-lo um pouco mais a sério, e dispor de um pouco mais de recursos.

O novo endereço do meu blog é este:
http://crbonilha.com

Layout novo, host novo e até domínio novo!

Os posts que eu julgava mais interessantes foram e alguns ainda serão transferidos para lá.
Não farei mais nenhum post aqui, apenas lá.

Considerem este blog aposentado.
Não vou excluí-lo, porém, pois há bastante conteúdo bacana aqui ainda.

Vejo vocês lá.

sexta-feira, 12 de abril de 2013

Projeto adiado!


Venho, por meio desse post, anunciar que o desenvolvimento do projeto de RPG foi adiado..
Não sei, eu geralmente me saio bem em um projeto quando estou empolgado, e esse projeto, por algum motivo, já não me apresenta essa empolgação..
Decidi esperar a vontade voltar, pois assim asseguro que o projeto será feito com vontade, e não forçado por causa do compromisso..

Pra quem é desenvolvedor e ficou curioso com o código fonte do mesmo, hoje eu vou distribuir.
Vale lembrar que nenhum dos gráficos usados no projeto são de minha autoria, eu apenas os utilizei como forma de portfólio. Nunca tive retorno financeiro desse projeto, e nem pretendo.
Espero que façam bom uso do mesmo, não expondo de forma incorreta, mas sim usando para fins de estudos.

O projeto foi desenvolvido no Eclipse, e a hierarquia de pastas do mesmo está como de costume do Eclipse. Se quiserem testar o jogo, terão que compila-lo junto a uma IDE.
Não vou disponibilizar um arquivo baixável para o celular por dois motivos: não sei como, e estou com preguiça. Se eu mudar de ideia eu coloco aqui.
O link do projeto está aqui: http://www.mediafire.com/download.php?l6nj7gkgdjc1n5d

O projeto está bem bagunçado, e como é meio complexo, foram usadas várias classes e linhas de código. Eu procurei comentar o máximo possível, mas provavelmente continuará confuso para os mais desatentos.
Se quiserem editar, continuar o projeto, ou algo do tipo, estão liberados.
Se tiverem alguma dúvida em relação ao projeto, enviem um e-mail para: cristhian.bonilha@hotmail.com

Bom, é isso, até mais!

sexta-feira, 29 de março de 2013

Batalha Gameloop

Eae, como estão?

Eu estou meio atarefado, pra variar, mas pra provar que eu não deixei o jogo de lado, eis uma prova irrefutável (ou não) de que ele está em desenvolvimento:


Nada mais que uma print do gameloop da área de batalha do jogo..
Ainda não está completa, e essa parte é só 1% do código completo, que está por trás desses métodos, porém é ali que rola toda a organização, portanto está entre as partes mais importantes do código, por isso resolvi mostrá-la.

Eu também imaginei se alguém teria curiosidade em ver um ou outro método, ou uma outra técnica que eu utilizo no desenvolvimento, então eu resolvi postar esse pedaço pra checar. Vocês acham isso interessante?

Acontece que eu utilizo técnicas que, digamos, podem ser, ou não, as mais recomendadas.. Resumindo, eu ainda sou iniciante na área, e tudo que eu programo está em fase de teste. Qualquer programador experiente vai notar falhas no meu código e oportunidades de otimização, porém por hora esses meus métodos estão funcionando, e eu estou aprendendo bastante com os mesmos, portanto está tudo bem.

Acho que já falei demais pra um post rápido, até mais.

domingo, 24 de março de 2013

Batalha

Falta pouco para o fim do protótipo hein..

Confesso que pulei uma parte do planejado, que seria o menu de itens (eu fiz apenas o de equipamentos), e também atrasei um pouco o prazo que vinha mantendo de atualizações, porém agora eu me motivei e vou terminar de vez esse jogo, para no mínimo dizer que eu levei o projeto até o fim.

Como prova, aqui está uma print do elemento em desenvolvimento, o sistema de batalha:


Esse será, provavelmente, a última parte do projeto, porém promete uma jogabilidade não antes vista em RPGs para celulares (não que seja boa, mas sim nova haha).

Sério agora, o sistema de batalha que tenho em mente será bem interativo, tirando um pouco aquela parte de "Atacar" ou "Defender" classico de sistema de batalhas em turnos. Nada contra, porém o que planejo será diferente, e tirará proveito da tela touch screen que os aparelhos modernos nos disponibilizam.
Notem que eu ainda não tenho o sistema pronto, portanto estou sujeito a falhas e/ou incapacidade de implementação, porém tenho em mente essa meta e vou procurar cumprí-la.

Depois desse discurso bonito, me despeço. Até mais.

sábado, 16 de março de 2013

Equipamentos

E lá vem mais prints.

Dessa vez eu terminei de implementar o sistema de equipamentos, onde você poderá equipar seu personagem com os equipamentos disponíveis em sua mochila, com um layout bem bonito e intuitivo (eu acho haha).

Sem mais delongas:


O próximo passo será a implementação de visualização de itens não equipáveis, e por fim o sistema de batalha.

Aguardem =D.

quinta-feira, 14 de março de 2013

Mapas e Inventário

Trago a vocês mais algumas prints de como o projeto está indo.

Dessa vez eu adicionei mais funcionalidades aos npc's, e entre elas o teleporte, que capacita viajar de um mapa até outro. Eis então a necessidade de criar outro mapa, e lá vai o herói, para dentro das casas das pessoas.

Outra atualização é o inventário, onde estarão (ainda não estão) disponíveis informações sobre o herói, seus itens, seus equipamentos, etc.

E o mais importante, as prints:


Em breve trago mais informações.

Até mais.

domingo, 10 de março de 2013

#1 Projeto - Continuação Jogo de RPG

Ae, consegui.

Depois de um tempo quebrando a cabeça, consegui implementar a interação com NPC's, pelo menos as mais básicas, como mostra o vídeo:



Para deixar claro, os gráficos desse projeto estão sendo emprestados do RTP do RPG Maker VX, e contém direitos. Eu não tenho intenção de vender esse jogo, ao menos com esses gráficos, e nem tirar nenhum lucro divulgando meu projeto aqui. Minha única intenção é montar um portfólio como programador.

Algumas screenshots de qualidade decente:


PS: Não, essas falas não fazem o menor sentido.

Entre os próximos passos estão:
- Mais interações com NPC.
- Transição entre mapas.
- Menu de equipamentos.
- Sistema de batalha.

Eae, gostou? Sinta-se livre para comentar, ou não.

Até mais.

domingo, 3 de março de 2013

NPC's

NPC, pra quem não sabe, significa Non-player character (Personagem que não é um player, em uma tradução livre).

Ele estão em quase todos os jogos hoje em dia, pedindo ajuda para matar um dragão, indicando a direção da floresta amaldiçoada, contando informações inúteis e até lhe vendendo aquela espada que tanto queria.

E em breve, estarão no meu jogo de RPG. Pois é, NPC's em breve estarão marcando presença no meu jogo e interagindo com o personagem dos modos mais aleatórios possíveis.

Aqui vai uma print da parte mais superficial da implementação funcionando, eles estão "visíveis":


Para minha surpresa, interações com NPC's são bem complexas de serem implementadas, e isso está me rendendo boas dores de cabeça.

Porém nada que é bom vem de graça, então é melhor eu parar de chorar e voltar ao trabalho.

Até..

quinta-feira, 28 de fevereiro de 2013

#1 Projeto - Início jogo RPG

Bom, decidi começar um projeto a longo prazo, para ver se consigo um resultado mais elaborado, bem-feito, etc.

Resolvi montar um jogo de RPG, como vocês devem ter visto pelo meu post de prévia.

Eu dividi o meu projeto em partes, sendo a primeira a implementação do mapa e movimentação do personagem, hoje concluída.
Entre os próximos passos estão a implementação de NPC's, conversa com os mesmos, menu, e o passo nem um pouco ambicioso, a batalha.

Chega de papo, olhem como ficou o primeiro passo, a implementação do mapa e a movimentação do herói, com verificação de colisão e múltiplas camadas de desenho.



(Por motivos maiores, minha visão estava limitada no momento da gravação do vídeo, eis o motivo pelo qual errei tantas vezes o botão direcional, fazendo com que o herói parasse)

E algumas prints:


Múltiplas camadas de desenho?
Sim, como vocês podem, ou não, ter notado, quando o personagem passa por trás da árvore, a árvore é desenhada em frente dele, e não atrás, como o piso, que é desenhado abaixo do herói.
Por mais óbvio que essa relação entre os elementos pareça, a implementação sempre requer atenção, portanto para o planejamento do mapa foi necessário levar diferentes camadas em consideração.

Os direcionais são provisórios (não que algo até então seja definitivo), ainda estou pensando em qual seria a melhor forma de movimentar o personagem.

Agora falta seguir os próximos passos, quem sabe assim eu leve esse projeto até o final.

Se alguém tiver alguma sugestão, porém uma sugestão viável de implementação por um programador iniciante, sinta-se a vontade para me contar. Eu agradeço.

Contato: cristhian.bonilha@hotmail.com

Até a próxima..

quarta-feira, 27 de fevereiro de 2013

Prévia do meu protótipo de RPG

Eae..

Bom, pra procurar acabar com esses longos tempos de espera antes um post importante, eu vou publicar hoje uma prévia do meu projeto atual e explicar um pouco.

Minha ideia é implementar um jogo de RPG, no estilo mais clássico, com mapa, npc's, eventos, batalhas em turno, equipamentos, etc.
Estou tentando implementar a melhor estrutura possível, de modo que caso eu queria modificar algo no futuro, adicionar novos mapas, novos monstros, etc, tudo esteja adaptável, escalável, e não me cause dor de cabeças. Acredito que essa seja a regra básica pra um projeto de longe prazo, inclusive.

No momento, estou implementando a parte do mapeamento, onde o personagem poderá explorar a procura de algo pra fazer. Aqui está uma print de como está no momento:


Tudo é provisório, e como eu não sou designer nem nada, eu emprestei os gráficos do software de desenvolvimento de jogos RPG, RPG Maker, para fins de teste apenas.

No print é possível ver as direcionais, que serão responsáveis por movimentar o personagem. Há apenas um objeto no cenário até então, a árvore, mas ela está me servindo apenas de teste. Eu já implementei um sistema para desenhar o mapa, só estou com preguiça de montar um, haha.

O próximo passo é implementar a câmera que acompanhará o personagem no decorrer do mapa. Após isso, o passo 1 do protótipo estará pronto.

Acredito que ainda nessa semana eu trago um vídeo com o gameplay do personagem passeando pelo mapa.

Até mais.

domingo, 24 de fevereiro de 2013

Path Finding

Eae, como estão?

Essa semana passei um sufoco tentando implementar um protótipo de jogo de RPG pra android, e me deparei com a necessidade de implementar um esboço de uma inteligência artificial em um personagem.

Se você apenas joga jogos, e nunca imaginou como seria programar um, vou dar uma breve explicação do que seria uma inteligência artificial, a qual você interagiu o tempo todo.
De acordo com o livro 'Programming Game AI by Example', "...se o jogador acredita que o seu adversário é inteligente, então ele é inteligente..." (tradução livre).
Ou seja, se o seu adversário no jogo apresenta ações que são satisfatoriamente coerentes com a situação, então há a impressão de que ele tomou uma decisão inteligente, e a partir dai, ele se tornou inteligente.
Sabe aqueles inimigos nos jogos de luta que se defendem ou até se esquivam de seu golpe? Essa simples  ação que o computador executa está contidas no código do jogo, e cada uma é acionada seguindo um padrão, fazendo com que cada ação esteja intimamente ligada com a situação, e simulando ao máximo uma decisão humana, criando assim a ilusão de inteligência.

Esse tópico sobre inteligência artificial ainda vai muito longe, e existem vários livros por aí muito mais coerentes e didáticos do que eu, portanto aconselho-os que os procurem.

O que eu queria falar hoje é sobre o algoritmo Path Finding.
Que algoritmo é esse? Bom, esse é um nome dado a um algoritmo o qual busca por um caminho, desde um ponto (x, y) até outro ponto (x, y) de um mapa, desviando de obstáculos e, em alguns casos, encontrando o caminho mais curto.

Esse tipo de algoritmo é implementado em jogos de múltiplos gêneros, porém com mais ênfase em jogos de RPG.

Ok, mas esse algoritmo é importante ou dispensável? Deveria eu, como programador, prestar atenção a ele ou simplesmente implementá-lo de forma porca?
Na minha humilde opinião, esse algoritmo é importantíssimo, e deveria, assim como qualquer aspecto de seu jogo, ser testado e implementado com cuidado, para evitar bugs.
Quando ele funciona, os jogadores mal notarão, porém quando ele buga, com certeza eles notarão, e como qualquer bug, não deixarão barato. Veja um exemplo do famoso jogo Skyrim, uma super produção que não escapou do bug do PathFinding.



Ok, é importante, mas por onde eu começo?
Bom, me fiz a mesma pergunta alguns dias atrás.
Há algum tempo que eu aprendi um pouco sobre grafos, e conheci um algoritmo chamado A*, o qual na época achei complexo demais.
Essa semana me vi forçado a implementá-lo, e depois de um pouco de suor, consegui.
Aconselho, para aqueles que ainda não conhecem nenhuma técnica, estudem esse algoritmo citado, o A*. Aqui está uma página bem teórica e didática, que explica passo a passo os fundamentos do algoritmo:
http://www.policyalmanac.org/games/aStarTutorial_port.htm

Outro site muito interessante que oferece uma boa explicação, exemplos e até um simulador, é o site do Abrindo o Jogo, nessa pagina: http://abrindoojogo.com.br/inteligencia-artificial-nos-games-%E2%80%93-pathfinding

Bom, acho que isso era tudo que eu tinha pra falar sobre. Caso eu grave o resultado da minha experiência, eu postar aqui mesmo, para que possam ter uma ideia de como ficou.

Até mais.

segunda-feira, 11 de fevereiro de 2013

#6 Jogo - Pong (Android)

Eae, tudo certo?

Comigo tá tudo certo, só meio corrido, e com um pouco de preguiça.

Como disse, estou estudando desenvolvimento de jogos na plataforma Android, o famoso sistema operacional para celulares que você deve estar cansado de ouvir, e usar, provavelmente.

Eu ainda estou no início, pra variar, e esses dias resolvi testar a minha capacidade de lidar com entradas multi-touch, e eis que surgiu a ideia de recriar o clássico Pong.
Nessa versão do Pong, você joga sozinho, e deve manter a bola quicando nas raquetes o maior período de tempo possível, acumulando pontos e batendo records, enquanto a dificuldade aumenta.

Eu gosto de fazer as coisas bem feitas, ou pelo menos tentar, mas dessa vez não consegui achar nenhum meio de capturar a tela do Android de modo decente, e na pressa por postar algo no blog que há muito está esquecido, resolvi gravar de qualquer maneira mesmo, e eis o resultado no vídeo:



Aqui estão algumas screenshots, para terem uma noção melhor da tela do jogo:



















Todos a parte gráfica foi desenhada pelas funções básicas da biblioteca Android, e meu foco não era exatamente esse, portanto não me julguem.

Para o bem dos desenvolvedores curiosos, não vou postar o link do projeto.
Não é por mal, mas sentiriam vergonha de mim. Este projeto foi um projeto teste, e basicamente direcionado ao meu celular, portanto está entupido de gambiarras, sem falar de um bug na parte do multi-touch que ainda pretendo resolver.
Prometo que meus próximos projetos serão melhor estruturados e estarão disponíveis para quem quiser dar uma olhada.

Contato: cristhian.bonilha@hotmail.com

Bom, é isso, até a próxima.

sexta-feira, 4 de janeiro de 2013

#5 Jogo - Jogo de Plataforma 2

Pois é, denovo o jogo de plataforma, porém agora com melhorias.

Primeiramente, estou desenvolvendo na linguagem Java, portanto decidi recomeçar o projeto com um pouco mais de organização.
Dessa vez utilizei até padrões de projeto, pois é, utilizei o MVC e o Observer.
Recomendo que quem tem interesse estude esses padrões, são eficientes, e deixam o código muito mais organizado.
Um detalhe é que, pra quem deseja programar para Android, esses dois padrões são considerados "bons costumes", portanto é sempre bom tê-los na manga.



 Assim que fizer o upload do código e do executável eu posto aqui.

Bom, é isso, até mais.

domingo, 30 de dezembro de 2012

#4 Jogo - Jogo de Nave

Eae, como estão?

Como disse, estava envolvido em projetos de desenvolvimento de jogos, e resolvi (precisei) aprender a desenvolver na plataforma Java. Aqui está meu primeiro esboço projeto.


Pra quem tem interesse, aqui estão os links para download, tanto do executável quanto do código fonte.
Download do executável: http://www.mediafire.com/?5b96yre7jddz7ca
Download do código fonte: http://www.mediafire.com/?7ti09278h0b4f8b

Por hora é só, até mais.

terça-feira, 18 de dezembro de 2012

Meus projetos - Links

Bom, eu fiz um tempo atrás alguns projetos em C++, usando a engine Allegro, que simulavam alguns jogos.

Até então, quem tinha interesse podia entrar em contato comigo por e-mail para receber o código fonte, porém, devido a problemas técnicos, isso fica um pouco inviável. Portanto eu fiz o que eu devia ter feito no começo, que seria fazer o upload dos arquivos e soltar o link aqui.

Pra quem não viu, vou postar aqui o link do post e o link para download.

Pong
Tópico - http://crbonilha.blogspot.com.br/2012/09/1-jogo-pong.html
Vídeo - http://youtu.be/tqOIEp4IWlM
Download - http://www.mediafire.com/?85d5svhbpt4631w
Comentário:
Eu ainda estava aprendendo a mexer com o allegro, portanto pode apresentar um ou outro bug ou uma ou outra função ineficaz.
Código pouco comentado, perdão por isso.

Arkanoid
Tópico - http://crbonilha.blogspot.com.br/2012/09/2-jogo-arkanoid.html
Vídeo - http://youtu.be/e71jVNEpji4
Download - http://www.mediafire.com/?h3esp1psl9nm1fm
Comentário:
Fiz logo em seguida ao jogo Pong, com uma ou outra evolução, tanto na arquitetura da programação quanto nos métodos. Ainda não perfeito.
Código também pouco comentado. Prometo que já aprendi a comentar o código haha.

Wonderboy
Tópico - http://crbonilha.blogspot.com.br/2012/11/3-jogo-jogo-de-plataforma.html
Vídeo - http://youtu.be/ynfM6Tkn1Ao
Download - http://www.mediafire.com/?47d45qdofqeo2bk
Comentário:
Projeto do qual mais me dediquei até então. No finalzinho eu mudei uma ou outra ideia, ainda não havia aplicado orientação a objetos, portanto está meio na gambiarra, porém o resultado ficou razoável.
Esse código eu comentei bastante, portanto já facilita caso alguém queira aprender.

Bom, é isso, caso alguém ainda tenha alguma dúvida quanto a algum projeto, ou queira entrar em contato, basta enviar um e-mail para: cristhian.bonilha@hotmail.com

Até.

sábado, 24 de novembro de 2012

#3 Jogo - Jogo de plataforma

Tá aí, pra quem tava se perguntando qual era o projeto paralelo que eu tava envolvido.
Pode parecer besteira, mas eu curto muito programar jogos, e esse eu consegui fazer muita coisa que eu tava querendo fazer. Uma gambiarra aqui, outra ali, e tá funcionando.
Claro que é só um jogo de teste, com um cenário e um monstro, porém agora eu já sei levemente como as coisas funcionam, e em breve eu faço algo mais digno.

Aqui tá o vídeo com o gameplay do meu jogo, bem simples.


Update 18/12/12:
Adicionado link para download no servidor MediaFire:
http://www.mediafire.com/?47d45qdofqeo2bk

Teclas:
Z - Ataca
Direcionais - Movimentam o personagem
Esc - Fecha

Caso queiram tirar alguma dúvida, ou entrar em contato, mandem um e-mail para: cristhian.bonilha@hotmail.com.

Até.

sábado, 29 de setembro de 2012

#2 Jogo - Arkanoid

Pois é, mais um dia, mais um jogo.

To nessa onda de fica montando jogo no allegro, daqui a poco passa haha.

Dessa vez montei o jogo arkanoid, bem diferente do original.




Update 18/12/12:
Adicionado link para download no servidor MediaFire:
http://www.mediafire.com/?h3esp1psl9nm1fm

Teclas:
Direcionais - Movimentam a raquete
Barra de espaço - Solta bola
Esc - Fecha

Caso queiram tirar alguma dúvida, ou entrar em contato, mandem um e-mail para: cristhian.bonilha@hotmail.com.


Até a próxima.

sexta-feira, 28 de setembro de 2012

#1 Jogo - Pong

Bom, ultimamente tenho estudado bastante a biblioteca Allegro, do c++.

Pra quem não conhece, a biblioteca Allegro te dá uma interface gráfica, e é muito utilizada para criar jogos.
Nisso, eu resolvi montar um jogo para testar minhas habilidades, e remontei então um clássico dos games, chamado Pong.



Resolvi upar o vídeo no youtube para arquivar no blog.
O jogo não está perfeito, mas foi minha interpretação do jogo.


Update 18/12/12:
Adicionado link para download no servidor MediaFire:
http://www.mediafire.com/?85d5svhbpt4631w

Teclas:
Cima e Baixo - Movimentam a raquete da direita
W e S - Movimentam a raquete da esquerda
Esc - Fecha

Caso queiram tirar alguma dúvida, ou entrar em contato, mandem um e-mail para: cristhian.bonilha@hotmail.com.


É isso aí, até a próxima.