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

12 de agosto de 2012

Criando um jogo de labirinto em Haskell

Quando eu estava aprendendo a programar em C, eu fiz vários pequenos projetos para colocar meu conhecimento à prova.

É muito bom olhar estes códigos antigos e perceber que aprendi muito nestes anos. Também é prazeroso ver que mesmo sem conhecer quase nada, consegui fazer muitas coisas divertidas.

Uma das primeiras coisas que fiz em C, foi um jogo de labirinto para terminal do Windows. Fiquei inacreditavelmente feliz e me achando muito inteligente por conseguir fazer um jogo assim.

Após algum tempo já programando, depois de conhecer a biblioteca SDL para criar jogos gráficos em C, o joguinho de labirinto chegou na sua terceira versão: DuDuRoX.

Como agora estou aprendendo Haskell e quero manter a tradição, irei criar um novo DuDuRoX nesta linguagem: DuDuHoX. Notem a pequena variação no nome demonstrando minha imensa criatividade.

Quem quiser acompanhar o progresso e fazer comentários, todo o código está disponível no GitHub (link no parágrafo acima).

Bastantes coisas já estão funcionando, até já é possível jogar. Quem quiser experimentar, é só baixar a plataforma Haskell, fazer um clone do repositório, executar o comando cabal install na pasta do jogo e ele estará disponível no seu terminal como "DuDuHoX".

Quem quiser dar uma olhada em códigos antigos, meus primeiros passos na programação estão postados no site Viva O Linux:

Alguns códigos mais "avançados", acabei não compartilhando, porém tenho eles salvos no meu computador, se alguém se interessar posso compartilhar também:

  • MultiMines: Jogo de campo minado.
  • HChess: Jogo de xadrez.
  • ObjectDetector: Tratador de imagem para realçar as bordas de objetos.
  • LConv: Conversor de "linguagens", a partir de uma pseudo-linguagem, o usuário conseguia definir regras de criptografia e aplicar a textos.
  • GATesting: Algoritmo genético para encontrar qualquer formula matemática que trouxesse como resultado o valor informado.

14 de janeiro de 2009

Conversando com o self. II

- Preciso pensar menos em mim e mais nas outras pessoas, querendo ou não eu afeto a realidade de todas as pessoas a minha volta. Qualquer palavra que solto pode transformar drasticamente a existência de uma realidade.
- Sabendo-se a necessidade, só basta trilhar o caminho.
- Caminhos são fáceis de trilhar, o dificil é acertar o rumo deles.
- Saber X Fazer, lembra do que escrevestes ontem?
- Hum... Verdade. Vou achar um jeito para parar de interferir na realidade alheia.
- Impossivel.
- Nem se eu me isolar no meu quarto?
- Nem assim.
- Por quê?
- Porque isto iria influenciar a existência de todas as outras realidade de forma inverssa, afinal, você deixaria de influenciar algumas, e estas existências podem se tornar tristes sem sua influência.
- Puts... Preciso então medir cada ação minha?
- Praticamente, sim.
- Mas isto é humanamente impossível.
- O impossível apenas é impossível porque ninguém conseguiu fazê-lo até hoje.
- Ah, tem aquela frase que diz "não sabendo que era impossivel, foi lá e fez", não tem?
- Sim, acabastes de citar Jean Cocteau, um importante cineasta.
- Então só preciso fazer... Mas como?
- Trilhar o caminho faz parte da solução que encontrastes.
- Hum...
- Hum?
- Trilhar o caminho... faz parte... hum...
- Hum???
- Nunca havia pensado que achar uma solução inclui trilhar o caminho até esta solução.
- Tão óbvio como a reação da prata e do enxofre.
- Hein?
- Nada, nada.
- Bom, a solução eu tenho: "Interferir de maneira positiva na maioria das existências que estão em minha volta." Só falta eu encontrar o caminho.
- Cuidado.
- Cuidado com o quê?
- Trilhar caminhos já trilhados levam ao mesmo fim. Podes começar neles para ter um leve senso de direção, mas tente fazer sua própria rota - a não ser, claro, que o fim que você deseja seja o mesmo do que da pessoa que trilhou aquele caminho.
- Tsc, alguém já conseguiu influenciar de maneira positiva todas as existências?
- Talvez, um homem...

12 de janeiro de 2009

Conversando com o self.

- O que vem a ser a realidade?
- O meio que te cerca.
- Isto é algo absoluto ou dependente de interpretação?
- Depende de sua interpretação
- O que interpreto como real?
- Imagens, sons, emoções, sentimentos e qualquer outra experiência que venha a ser sentida.
- Se me falta um sentido, não perco a realidade?
- Sua realidade se altera.
- Tenho como perder a noção da realidade?
- Da realidade alheia, sim.
- E da minha?
- Não.
- Por que não?
- Não é óbvio? O que você vivenciar será sua realidade.

- E se eu não gostar da realidade?
- Você pode fugir.
- Não quero fugir da realidade.
- Porque fugir pode ser mais doloroso.
- Então estou preso a realidade?
- Você ainda pode fugir.
- Não sou um covarde!
- Na interpretação de quem?

- Como posso fugir de algo que me rodeia?
- Só você sente o que te rodeia.
- Não consigo parar de sentir!
- E isto é ruim?
- Isto me faz sofrer!
- Quem gera a dor?
- Não sei...
- Existe mais alguém que controle sua realidade?

- Então a felicidade só depende de mim?
- Óbvio.
- Mas sem noção da realidade irão me chamar de louco!
- Esta é a realidade alheia.
- Eu sofro com ela.
- Novamente gerando sofrimento?

- Então um louco pode ser feliz?
- Não será ele mais feliz que você?

- Por que eu me sinto assim?
- Porque você interpreta seu estado como ruim.
- Por que?
- Porque te ensinaram isso.
- Ensinaram o que?
- Que estar abaixo dos outros é ruim.

- Como assim?
- Você interpreta como infelicidade o fato de ter menos que outro.
- Não sou egoísta!
- Mesmo?
- Sim!!!
- E por que ficasse triste ao saber que seus amigos estão namorando?
- Porque... Eu também queria uma namorada.
- Bingo.
- Mas...
- Se você arrumasse uma namorada antes que eles você não ficaria feliz?
- Não sei...
- Se fosse o primeiro a ter um carro...
- Pare...
- Ou o primeiro a abrir uma empresa...
- Pare!
- Ok.

- Não sei o que faço...
- Oh, meu Deus. Não entendeu nada do que eu falei?
- Eu tenho medo.
- Do que?
- Dos outros.