Usando joysticks em jogos que não possuem opção para utilizá-lo no Linux

Já pensou em utilizar o joystick em jogos que não o suportam? Pois este tutorial tem como missão ensinar a utilizar o joystick em qualquer jogo no Linux.

[ Hits: 17.760 ]

Por: Perfil removido em 16/12/2008


Introdução



Você já deve ter se deparado com jogos que não permitem utilizar joysticks, mas você gostaria de poder utilizá-los com o seu joystick. Saiba que é possível utilizar o seu joystick em qualquer jogo no seu sistema operacional Linux.

O programa que permite fazer isto é o xjoypad, e você pode configurar através deste programa o seu joystick para efetuar ações como se estivesse utilizando o teclado. Por exemplo, ao pressionar o botão A do joystick será como se a tecla CTRL do teclado fosse pressionada.

Instalação e configuração

Baixe o seguinte pacote: download xjoypad.zip

Extraia o conteúdo do pacote com a ferramenta de compactação de sua distribuição (ark, file-roller, xarchiver) para qualquer pasta em seu computador.

Após a extração é necessário entrar na pasta xjoypad e marcar como executável o arquivo xjoypad. Para marcar um arquivo como executável utilize o comando "chmod +x arquivo" ou utilize o diálogo "Propriedades" do seu gerenciador de arquivos.

Pronto, já está instalado! Vamos agora à configuração.

Configuração do xjoypad

O xjoypad é um utilitário de linha de comando, e para utilizá-lo é necessário repassar alguns argumentos como as keycodes das teclas que se deseja utilizar com o joystick.

Exemplo de sintaxe para o xjoypad:

xjoypad -display $DISPLAY -device /dev/input/js0 -up 98 -down 104 -left 100 -right 102 -buttons 65

Neste exemplo o xjoypad vai utilizar a tela padrão do sistema, definida na variável do sistema $DISPLAY, vai fazer o uso do joystick presente em /dev/input/js0 e vai utilizar as setas do teclado para os botões UP DOWN LEFT e RIGHT, além de utilizar o botão A para a tecla ESPAÇO.

É recomendável criar um script com as opções para cada jogo que se deseja executar.

Exemplo de script criado para executar o jogo xgalaga:

#!/bin/sh
./xjoypad -verbose -up 98 -down 104 -left 100 -right 102 -buttons 65 &
xgalaga
killall xjoypad
Linux: XGalaga
Este script lança o xjoypad com os argumentos necessários para mapear as teclas do jogo xgalaga, em seguida executa o jogo e aguarda o término do jogo para matar o processo do xjoypad.

Para executar o script é necessário torná-lo executável, utilize o comando "chmod +x script" ou o diálogo Propriedades no gerenciador de arquivos para efetuar esta tarefa.

Mapeamento de teclas

Para que o xjoypad funcione corretamente com os seus jogos é necessário mapear as teclas utilizadas pelo jogo e definir as keycodes no xjoypad.

Primeiramente execute o jogo e tente descobrir as teclas que ele utiliza, feito isto abra um terminal e execute o comando:

xev

Pressione a tecla que você deseja mapear. Se você pressionar a tecla CTRL haverá o seguinte resultado no terminal:

KeyPress event, serial 31, synthetic NO, window 0x2800001,
root 0x1a6, subw 0x0, time 3764316, (26,139), root:(865,163),
state 0x10, keycode 37 (keysym 0xffe3, Control_L), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False

O keycode que você precisa saber é 37, veja a parte destacada acima.

Se o jogo utiliza a tecla CTRL para efetuar uma ação, você pode associar à um botão do joystick da seguinte maneira:

xjoypad -verbose -up 98 -down 104 -left 100 -right 102 -buttons 65 37 (...)

Sintaxe do comando xjoypad:

xjoypad [-display display] [-devicefilename filename] [-verbose] [-up keycode] [-down keycode] [-left keycode] [-right keycode] [-buttons keycode keycode ...] [-turbo button]

Lembre-se de sempre definir as keycodes das teclas utilizadas pelo jogo.

Só para lembrar, um script pode ser sempre a melhor maneira de salvar a configuração para cada jogo que for executar.

Boa diversão!

   

Páginas do artigo
   1. Introdução
Outros artigos deste autor

Repensando o PID 1 - Lennart Poettering

Sudoers 1.8.12 - Parte III - Manual

Como instalar o LAMP no Mageia 6

Uso de terminologia imprópria com software livre

Configurando servidor Samba como Workgroup no Slackware

Leitura recomendada

Cliente de Ultima Online nativo para Linux

Outra forma para jogar jogos do Windows utilizando Dual Boot

Segredos de emuladores e jogos no Linux

Counter Strike proibido no Brasil

Você conhece o NetHack?

  
Comentários
[1] Comentário enviado por removido em 16/12/2008 - 17:53h

bem legal ...

[2] Comentário enviado por rogerboff em 16/12/2008 - 20:47h

Legal a sua dica... mas já pensei em outra utilidade para ela.... hhehehehehe

Abraços

[3] Comentário enviado por jborda em 17/12/2008 - 08:45h

Filé heim...

[4] Comentário enviado por andersontm em 17/12/2008 - 10:06h

Show!! tenho um controle USB-dual igual ao de PlayStation nesse funciona tb?
Abraço!

[5] Comentário enviado por removido em 17/12/2008 - 15:37h

Obrigado pela ajuda

[6] Comentário enviado por GilsonDeElt em 20/12/2008 - 18:53h

cara, valeu pela dica
assim que eu arranjar um joystick, eu vou aplicá-la
;-)
flw

[7] Comentário enviado por thalys_01 em 23/05/2009 - 12:58h

eu gostei da guele game gue vc colocou o pokemon goldensky meu pokemon esta no nivel 52 e meu tokepi esta no nv 20 mas o meu wior

[8] Comentário enviado por vinipsmaker em 09/11/2010 - 21:26h

e o link para download do xjoypad.zip não está mais funcionando, achei esse aqui e resolvi compartilhar:
http://download.ammoq.com/


Contribuir com comentário