Jogo da cobrinha em C

date
Aug 13, 2016
slug
jogo-da-cobrinha-em-C
status
Published
tags
Tecnologia
C/C++
Jogos
summary
Código do jogo da cobrinha desenvolvido em C, com A-Star, animações em ASCII e efeitos sonoros.
type
Post
Sempre fui fascinado pela simpliciade e elegância dos jogos clássicos. Entre eles, o jogo da cobrinha representa também um importante marco na história dos videogames. Simples de entender, mas desafiador para programação com recursos muito limitados de hardware ou de programação, no século passado.
Por isso, decidi criar uma versão utilizando C puro, incluindo também o famoso algoritmo de busca A* (A-Star) para criar cobrinhas que disputem a comida, e possa tornar o jogo mais competitivo.
Um fato curioso, que sempre que preciso aprender uma nova linguagem de programação, gosto de fazer o jogo da cobrinha como primeiro programa. Penso que, assim, acelero o aprendizado de conceitos que considero muito importantes em qualquer linguagem de programação.
Confesso que nunca parei pra pensar, apenas fui fazendo e quando vi, tenho jogo da cobrinha com diversas abordagens diferentes.
Foto: jogo clássico da cobrinha feito em C puro, por J. Caraumã.Foto: jogo clássico da cobrinha feito em C puro, por J. Caraumã.
Foto: jogo clássico da cobrinha feito em C puro, por J. Caraumã.

Em particular, o joguinho descrito abaixo foi desenvolvido em ambiente Linux, mas foi testado também em ambiente Windows.
Assim, pra rodar no terminal (ou cmd) e ficar melhor apresentável, fiz algumas dinâmicas visuais utilizando arte em ASCII, o código lê algumas variáveis e faz animações, pra tornar um pouco menos monótona.
Além disso, fiz um menu interativo e colorido, com alguns recursos a serem implementados em breve. A priori, algumas somente algumas opções do jogo estão disponíveis, falta desenvolver a opção de “Configurações” e de “Ranking”.
Outra coisa que me preocupou, foi o som. Daí, fiz uso da biblioteca Bass (excelente) pra proposta do joguinho. Consegui alguns áudios de outros jogos “retrôs” e coloquei nesse também, pra experiência ficar completa.
Você pode acessar o código fonte completo no github em github.com/jancarauma/cobra.
cobra
jancaraumaUpdated Jul 23, 2025

Abaixo faço a descrição do passo a passo de como compilar e rodar o joguinho no seu sistema.

Pré-requisitos

  • Gcc ou compilador C equivalente;
  • Biblioteca libastar;
  • Biblioteca Bass.

Como rodar no Linux

Faça o download do repositório aqui e extraia o código fonte no local de sua preferência. Ou, se preferir, faça o clone direto do github, caso tenha o git instalado:
git clone https://github.com/jancarauma/cobra.git cd cobra
Em seguida, instale a biblioteca libastar. Para isso, verifique a arquitetura do seu sistema (x86 ou x64) e instale a biblioteca correspondente.
Se for x86:
sudo dpkg -i lib/libastar0_0.9-2_i386.deb
Por outro lado, se for x64:
sudo dpkg -i lib/libastar0_0.9-1_amd64.deb
Em seguida, basta realizar o download e instalar a biblioteca BASS.
sudo cp lib/libbass.so /usr/local/lib sudo chmod a+rx /usr/local/lib/libbass.so sudo ldconfig
Tome o cuidado de instalar a versão correta da biblioteca Bass conforme a arquitetura do seu sistema.
Por fim, compile e, ao finalizar, execute o arquivo cobra.
make ./cobra

Resultado

Se você é estudante de programação, desenvolvedor experiente, ou simplesmente um entusiasta de jogos retrô, espero que aproveite tanto jogando quanto explorando o código-fonte.
Video preview
 
If you have any questions, please contact me.
© 2016 - 2025 | J. Caraumã

Made in Roraima, Brazil