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: 16.652 ]

Por: Rodrigo Zimmermann em 16/12/2008 | Blog: https://www.vivaolinux.com.br/~bilufe


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

Por que a interface Unity é melhor que as interfaces do Windows 7 e MacOS X

LibreOffice Writer 5 vs. Microsoft Word 2010

LibreOffice - Utilizando macro para preencher um documento no Writer

Aventuras do Mint Linux 10 em um computador antigo

Instalação de softwares no Debian Linux e derivados

Leitura recomendada

Jogos no Arch Linux - Porque nem tudo é tela preta!

Emulando o saudoso jogo ELITE em seu Linux

Hippo Viewer: Cliente para acesso a mundos virtuais

Jogando America's Army no Linux

Rodando Ragnarok (bro) no Linux

  
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




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts