Category: Home Page 4 of 5

Jogo da Velha usando sockets



Semestre passado cursando a disciplina Redes II, tive que desenvolver um Jogo da Velha usando sockets. E como sempre deixo tudo pra última hora… Virei a noite/madrugada na casa do cascardo e conseguimos fazer uma versão inicial, e até bem jogável, do Jogo da Velha. Usamos GTK2 e Glib2. Era parte do TP fazer uma pequena documentação. O Jogo é GPL.

Repositório: https://github.com/marcelometal/jogo-da-velha

Player 1

Player 2

Nessa primeira “versão 0.1” por decisão de projeto, a porta de conexão escolhida foi a “5555” e o host o “localhost”.

Fontes

Arquivos principais:

Pacote (todos os arquivos):

Métodos do Protocolo:

  • START (Inicia um novo jogo)
  • JOIN (Usado para entrar em um jogo existente)
  • PLAY (Opção escolhida pelo jogador)
  • LIST (Lista todos os jogos)
  • QUIT (Termina a conexão do cliente)

Dependências:

  • Glib2 (No Debian: aptitude install libglib2.0-dev)
  • GTK2 (No Debian: aptitude install libgtk2.0-dev)

Como compilar:

gcc -g -Wall -o gtk gtk.c `pkg-config gtk+-2.0 --cflags --libs`
gcc -g -Wall -o velha velha.c `pkg-config glib-2.0 --cflags --libs`

Testando:

Se já foi compilado o cliente e o servidor, basta:

Rodar o servidor:

./velha &

Abrir o cliente A:

./gtk &

clicar em “Start new game”
esperar um outro cliente entrar no jogo

Abrir o cliente B

./gtk &

escolher o jogo no combobox
clicar em “Join existing game”
começar a jogar clicando na posição escolhida

Referências:

Corretor ortográfico pt_BR no debian

Servidor Público Jabber-BR

Plataforma Xemele

feed2book

Super Console Firefox

splashy theme

Linksys WRT54G e WebCam A4 Tech




Linksys WRT54G

WebCam A4 Tech

No sábado (16/08/2006) comprei um Linksys WRT54G (porque ele aceita GNU/Linux, e logo logo vou colocar) e uma WebCam A4 Tech. Mas só fui brincar com eles no domingo. Foi um experiência divertida.

Pra começar, o laptop que eu uso é um PcChips A530. A placa wireless dele é uma Prism2. Ela é USB e o driver é o linux-wlan-ng .

Bus 001 Device 002: ID 124a:168b AirVast

Para instalar o linux-wlan-ng é preciso baixar o fonte e compilar. Mas no debian, existe o “module-assistant” que é uma ferramenta feita para facilitar a instalação desses módulos que não estão no kernel (ou não podem ser distribuídos compilados). Então é só invocar o “module-assistant” ou fazer diretamente:

module-assistant prepare

 

module-assistant auto-install linux-wlan-ng-modules

E depois carregar o módulo:

modprobe prism2_usb

Com o módulo instalado fui configurar o Linksys. Por padrão, ele vem em modo “opensystem”. MAs meus vizinhos são muito chatos pra eu compartilhar a internet com eles. Então eu deixei o acesso(autenticação) restrito utilizando WEP.

Parti pra configurar o linux-wlan-ng. Nele não tem como setar SSID. É preciso editar o /etc/wlan/wlan.conf, setando o SSID do Linksys que é “linksys”, copiar o /etc/wlan/wlancgf-DEFAULT para /etc/wlan/wlancgf-linksys e dentro do /etc/wlan/wlancgf-linksys configurar o WEP.

Não funcionou de forma alguma. Acabei desistindo do WEP e filtrando o acesso pelo MAC-Address. Wireless no Ninho dos Escorpiões funcionando =)

Com o wireless funcionando eu fui brincar com a WebCam. O driver dela é o spca5xx.

Bus 004 Device 003: ID 0ac8:303b Z-Star Microelectronics Corp. ZC0303 WebCam

Também tive que instalar ele pelo “module-assistant”.

module-assistant prepare

 

module-assistant auto-install spca5xx

Ou:

aptitude install spca5xx-modules-2.6.17-2-686

E depois carregar o módulo:

modprobe spca5xx

E me adicionar com permissão pra acessar o dispositivo de video

addgroup metal video

Driver instalado fui testar abrindo o gnomemeeting. Que travou completamente a máquina. O mesmo aconteceu com o xawtv, camstream e aMSN.

Fiz testes em outras máquinas e não travou. Será que a WebCam não gostou do meu laptop?! Ontem foi lançado o kernel 2.6.18, com várias correções no V4L. Vou compilar e torcer pra resolver esse problema. =P

Atualização:
Utilizando o kernel 2.6.18 a WebCam funcina que é uma beleza. =)

parabéns pro xemelê

php-gettext

Page 4 of 5

Powered by WordPress & Theme by Anders Norén