Ir ao conteúdo
  • Cadastre-se

Controle do WII em jogos de PC via GlovePIE


Posts recomendados

Amigos...

Estou criando este topico para discutirmos um "sub produto" dos debates

do emulador de WII (dolphin), que é utilizar os controles do WII

não só no emulador mas como para controlar o mouse no windows,

e o mais interessante... usa-lo em jogos FPS, como RE5, Crysis...

E acho que não só em FPS... mas em jogos de corrida como Dirt2

e outros...

Pois basicamente criamos scripts que fazem o controle do WII

emular o teclado e mouse do Micro.

volto aqui pra editar, e colocar o que ja estou testando em casa.

[]sssss

Link para o comentário
Compartilhar em outros sites

falo dos scripts que são criados dentro do GlovePie, os comandos mesmo.

linhas de programação.

E ai tem os mapeamentos e tal....

Por exemplo... abaixo é o codigo que estou acertando pro meu RE5

// Estudo de script para RE5 by Inferis - Beta1

// Move

WASD = Wiimote.Nunchuk.joy

// mira

Mouse.RightButton = Wiimote.Nunchuk.C

// liga e desliga mover com wiimote

if wiimote.Plus = true then var.MoveButton = true

if wiimote.Minus = true then var.MoveButton = false

/* atira se mirado */

mouse.LeftButton + Var.rumble = wiimote.B

/* abrir portas */

Keyboard.F = wiimote.B

Keyboard.F + Var.rumble10 = (Wiimote.Gy) >= 80% m per s

/* correr */

Keyboard.Shift = Wiimote.Nunchuk.Z

/* chamar parceira */

Keyboard.Up = Wiimote.Up

Keyboard.Down = Wiimote.Down

/* mostrar itens */

Keyboard.E = Wiimote.A

/* mostrar Parceira */

Keyboard.Q = Wiimote.1

/* mostrar Mapa */

Keyboard.M = Wiimote.2

// facada

Keyboard.T + Var.rumble10 = (Wiimote.Gx) >= 80% m per s

var.Speed = 80 // 0 to 100

PIE.FrameRate = 120hz

if wiimote.HasMotionPlus = false then debug = "WiiMotion Plus NOT DETECTED!"

if wiimote.HasMotionPlus = true and var.MoveButton = true {

var.YawSpeed = wiimote.MotionPlus.YawSpeed

var.PitchSpeed = wiimote.MotionPlus.PitchSpeed

if SameValue( Smooth(wiimote.SmoothRoll, 10), wiimote.SmoothRoll, 10) then var.Roll = Smooth(wiimote.SmoothRoll, 10) else var.Roll = wiimote.SmoothRoll

if var.Roll < 0 and var.Roll >= -90 {

var.XYswap = 1 - EnsureMapRange(var.Roll, -90, 0, 0, 1)

var.RightDown = -1

var.TopUp = 1

}

if var.Roll <= 90 and var.Roll >= 0 {

var.XYswap = 1 - EnsureMapRange(var.Roll, 90, 0, 0, 1)

var.RightDown = 1

var.TopUp = 1

}

if var.Roll > 90 and var.Roll <= 180 {

var.XYswap = 1 - EnsureMapRange(var.Roll, 90, 180, 0, 1)

var.RightDown = 1

var.TopUp = -1

}

if var.Roll < -90 and var.Roll >= -180 {

var.XYswap = 1 - EnsureMapRange(var.Roll, -90, -180, 0, 1)

var.RightDown = -1

var.TopUp = -1

}

var.SpeedX = var.TopUp * var.YawSpeed - ( var.TopUp * var.YawSpeed * var.XYswap ) + ( var.RightDown * var.PitchSpeed * var.XYswap )

var.SpeedY = var.TopUp * var.PitchSpeed - ( var.TopUp * var.PitchSpeed * var.XYswap) + ( -var.RightDown * var.YawSpeed * var.XYswap )

mouse.DirectInputX = int(var.MouseX)

mouse.DirectInputY = int(var.MouseY)

var.MouseX = var.MouseX + ( var.SpeedX / (10500000 - EnsureMapRange(var.Speed, 0, 100, 0, 10000000) ) )

var.MouseY = var.MouseY - ( var.SpeedY / (10500000 - EnsureMapRange(var.Speed, 0, 100, 0, 10000000) ) )

}

if var.MoveButton = false {

var.MouseX = mouse.DirectInputX

var.MouseY = mouse.DirectInputY

}

// treme treme

// Rumble Fire

If Var.Rumble

Wiimote.Rumble = 1

Wait 100ms

Wiimote.Rumble = 0

Wait 50ms

EndIf

// Rumble All

If Pressed(Var.Rumble1 or Var.Rumble2 or Var.Rumble3 or Var.Rumble4 or Var.Rumble6 or Var.Rumble7 or Var.Rumble8 or Var.Rumble9 or Var.Rumble10) or Pressed(Var.Rumble5)

Wiimote.Rumble = 1

Wait 80ms

Wiimote.Rumble = 0

EndIf

// para tudo script

Var.ABZC = (Wiimote.A + Wiimote.B + Wiimote.Nunchuk.ZButton + Wiimote.Nunchuk.CButton)

if Var.ABZC then Var.Stop1 = 1

if Var.Stop1 then Var.Stop ++

if Var.Stop > 80 then Keyboard.LeftShift + P + I + E = 1

if (Var.ABZC = 0) then Var.Stop1 + Var.Stop = 0

Quem ja tiver controle de WII + nunchuck + motion, pode testar, ele se movimenta legal.... é só imaginar o mouse quando se esta mexendo o controle pra virar camera e tal....

ae na hora que você armar a mira, por enquanto, eu to ativando com "+" uma mira mais apurada... "-" menos desativa o recurso.

é só copiar esse codigo todo, colar no glove e executar...

ai entre no jogo e teste o controle ^^

===================== edit =============

Fiquei ontem até 2 da manha pra entender uma questão de directInput, que é para que o jogo em fullscreen enxergasse o mouse (ponteiro wiimote) de forma correta, utilizando a barra sensor.

coisa que ta meio tensa no codigo que eu postei acima.

praticamente o miolo do codigo acima sumiu e troquei por isso:

mouse.DirectInputX = (Wiimote.dot1x + Wiimote.dot2x) * -1

mouse.DirectInputy = (Wiimote.dot1y + Wiimote.dot2y)

essas coordenadas dot1 e 2 simplesmente salvaram minha vontade de continuar rsrsrsrs

vou refazer o codigo todo, e posto hoje o Beta dois, ja com a movimentação melhor.

[]ssssssss

Edit: segue abaixo codigo 99/100% para RE5:

// Usando WiiMote para o jogo Resident Evil 5, PC version, Beta3 by "Ex Inferis"

//

//

// Precisa da sensor bar com dois ou quatro leds, mais informações aqui:

//

// http://www.criminalcafe.com/showthread.php?56-Transforme-seu-PC-em-um-Nitendo-WII

// http://www.adrenaline.com.br/forum/pc/319858-controle-do-wii-em-jogos-de.html

// http://forum.clubedohardware.com.br/controle-wii-jogos/859510

//

//

//

// Bloco Abaixo Percebe se você esta usando mouse, ou apontando o wiimote para tela do PC

// Isso te permite trabalhar no windows com os dois, sem um conflitar o movimento com outro

//

var.ButtonFreezeTime = 25ms

var.PointerBump = KeepDown(Pressed(wiimote.A),var.ButtonFreezeTime) or KeepDown(Pressed(wiimote.B),var.ButtonFreezeTime)

//

//

//

// Bloco abaixo deixa acesa somente a luz 1 do controle

//

Wiimote.Led4 = false

Wiimote.Led3 = false

Wiimote.Led2 = false

Wiimote.Led1 = true

//

//

//

// Bloco abaixo é a magia negra do movimento do mouse! Lendo os Sensores (muito sensivel ainda)

//

if wiimote.PointerVisible but not var.PointerBump then

mouse.DirectInputX = (Wiimote.dot1x + Wiimote.dot2x) * -1

mouse.DirectInputy = (Wiimote.dot1y + Wiimote.dot2y)

end if

//

//

//

// Bloco de movimentos diversos, botões de ação, etc...

//

// ESC - Tela Menu do Jogo

Keyboard.ESC = wiimote.Home

//

// Movimenta (anda P1)

WASD = Wiimote.Nunchuk.joy

//

// Mirar

Mouse.RightButton = Wiimote.Nunchuk.C

//

// Atira se mirado

mouse.LeftButton + Var.rumble = wiimote.B

//

// Abrir portas. Abre com botao, ou chutando, chacoalhando o wiimote verticalmente

Keyboard.F = wiimote.Minus

Keyboard.F + Var.rumble10 = (Wiimote.Gy) >= 80% m per s

//

// correr

Keyboard.Shift = Wiimote.Nunchuk.Z

//

// enviar parceira / chamar parceira

Keyboard.Up = Wiimote.Up

Keyboard.Down = Wiimote.Down

//

// Golpe duplo usando parceira / chamar parceira (tambem)

Keyboard.V = Wiimote.Plus

//

// mostrar itens

Keyboard.E = Wiimote.A

//

// mostrar Parceira no mapa

Keyboard.Q = Wiimote.1

//

// mostrar Mapa

Keyboard.M = Wiimote.2

//

// Facada. Ativa chacoalhando o wiimote horizontalmente

Keyboard.T + Var.rumble10 = (Wiimote.Gx) >= 80% m per s

//

//

//

// Diversos, tremer controle, botao de panico e outros futuros...

//

//

// Tremer botões ou chacoalhadas

If Var.Rumble

Wiimote.Rumble = 1

Wait 100ms

Wiimote.Rumble = 0

Wait 50ms

EndIf

//

If Pressed(Var.Rumble1 or Var.Rumble2 or Var.Rumble3 or Var.Rumble4 or Var.Rumble6 or Var.Rumble7 or Var.Rumble8 or Var.Rumble9 or Var.Rumble10) or Pressed(Var.Rumble5)

Wiimote.Rumble = 1

Wait 80ms

Wiimote.Rumble = 0

EndIf

//

//

//

// PANIC BUTTON - Desativar controle do WIImote e voltar só para o mouse, (A+B+C+Z) juntos!!!

//

Var.ABZC = (Wiimote.A + Wiimote.B + Wiimote.Nunchuk.ZButton + Wiimote.Nunchuk.CButton)

if Var.ABZC then Var.Stop1 = 1

if Var.Stop1 then Var.Stop ++

if Var.Stop > 80 then Keyboard.LeftShift + P + I + E = 1

if (Var.ABZC = 0) then Var.Stop1 + Var.Stop = 0

Link para o comentário
Compartilhar em outros sites

o pgm não faz nada que eu saiba.

tem uns templates prontos, mas to na unha mesmo.

parece que to programando em mugen de novo rsrsrsrs

só estou pegando os scripts q tem pela net e estudando

ae cheguei nesse que montei.

o que mais me ferrou foi entender 4 linhas que movem o mouse

usando a sensor bar. ai fechou em 100% de precisão.

mas a mão humana segurando o controle reto, mirando, mesmo

segurando firme, "vibra" e o sensor do controle pega isso e fica

meio que mexendo a camera pixeis pra la e pra ca....

é meio estranho de acostumar no inicio.

mas como meu irmão disse, "é igual a vida real ué" rsrsrsrs

mas to vendo pra anular um pouco essa variação demais e

deixar mais "mouse na mesa" mesmo.... to ralando rsrsrsrs

é gostoso de brincar com os codigo, as instancias. quem

ja programou algo na vida vai curtir.

if then else..... XXX.yyy bla bla bla rsrsrsrsrs

to gostando dos resultados.

ta valendo cada real o investimento no controle original completo ^_^

só pela farra

[]ssss

Link para o comentário
Compartilhar em outros sites

paguei 200 conto via amazon em 12x no cartao rsrsrsrs

wiimote + motion + nunchuk

tudo original nintendo. Não quis arriscar com algo pirata

e não funcionar algum sensor, ou ter algum problema.

de ps2 pra pc eu tenho um porcaria, mas é só botão, então

tudo bem... agora com esses sensores do wii, a camera da ponta,

não quis arriscar não

eu tambem tava no osso, mas pra não ter rolo com minha ex mulher

comprei logo e devolvi o da minha filha (que mora com ela e tal)

paguei pelo sossego saca?....

Link para o comentário
Compartilhar em outros sites

heuehuehu, tá ótimo ja. E nem tem que ser programador.

se pegar o script que postei já pode usar.

vou melhorar ainda alguns detalhes... acho que vou

deixar mover a camera com um codigo e mirar com outro codigo...

pra imitar mais o mouse no "andar" e deixar mais preciso ao mirar.

do jeito que tá, é muito preciso em tudo, e ae o cabra tem que

ter a mão firme igual a do Colossos do X-Men rsrsrsrs

Mas da pra jogar normalmente. os controles respodem belissimamente bem :)

Link para o comentário
Compartilhar em outros sites

Seria interessante usar a configuração assim para FPS.

No nunchuck você usa o analógico para andar "W, A, S, D", botão de trás para mirar "se não me engano é o botão Z", imitando o botão direito do mouse e o botão frontal para pular ou agachar, dependendo do jogo "se não me engano seria o botão C".

No Wiimote, você usa para apontar o botão "A" para trocar de arma, B para atirar, algumas funcionalidades como recarregar arma, sendo algum movimento como chacoalhar o wiimote. Para zoom "sniper ou outra arma que requer esta funcionalidade" voce usa o sensor do motiom plus, girar para a esquerda seria o Zoom menos, e girar para a direita, seria o zoom mais. Ou desativar o movimento do analógico do nunchuck para poder usar o zoom no próprio alalógico.

Fácil não é, mas seria uma revolução para os jogos FPS. Estou pensando em comprar um conjunto para mim também, a sua compra demorou quanto tempo para chegar na sua casa? R$200,00 em 12x é muito bem vindo.

Link para o comentário
Compartilhar em outros sites

ué.... rsrsrs nem viu meus scripts????

da um olhada dentro que é o que você ta falando ai :)

fiquem atentos... to upando video do Dirt2 com wiimote!!!!!!!!!!!!!!!!!!!

loco demais esse. ficou perfeito! com rumble leds piscando rsrsrs

até amanha posto o codigo pra down.

============== EDIT

Podem pagar pau, pois ficou corretissimo esse!!! rsrsrsrs

Link para o comentário
Compartilhar em outros sites

se você ver o codigo que ja tenho do crysis (q não fiz, só to acertando) é coisa

linda de Deus.

Só a movimentação de mouse, pra variar, é antiga... to trocando por uma nova.

devo relançar o re5 com movimento mais "mouse" mesmo, sem usar a barra sensor,

pois fica muito **** de jogar.

vou deixar o codigo mais pra jogos tipo house of dead, onde só se mexe a mira mesmo

fica muito mais fiel e correto.

FPS tem que ser imitação de mouse mesmo, e não mirando com laser. não fica

bom na hora da ação não. Infelizmente. :(

Link para o comentário
Compartilhar em outros sites

Ex Inferis, porque você não testa algum FPS feito para o próprio Wii e tenta deixar parecido os controles?

vdd... não to com nenhum fps de wii pra ver como fica.

certeza que é usando a sensor bar, mas ta osso de fazer diminuir

um pouco aquela precisão toda que tem com o codigo q to usando.

fala um fps bom pra eu testar em casa. Ae tento ir percebendo

alguma coisa que talvez eu não esteja vendo. :(

e o Dirt2 ???? gostaram???

[]ssssssss

Link para o comentário
Compartilhar em outros sites

se você ver o codigo que ja tenho do crysis (q não fiz, só to acertando) é coisa

linda de Deus.

Só a movimentação de mouse, pra variar, é antiga... to trocando por uma nova.

devo relançar o re5 com movimento mais "mouse" mesmo, sem usar a barra sensor,

pois fica muito **** de jogar.

vou deixar o codigo mais pra jogos tipo house of dead, onde só se mexe a mira mesmo

fica muito mais fiel e correto.

FPS tem que ser imitação de mouse mesmo, e não mirando com laser. não fica

bom na hora da ação não. Infelizmente. :(

Isso é uma pena mesmo... Mas tomara que você consiga fazer um bom trabalho, mesmo que não fique 100% igual a jogar no Wii, com certeza será uma experiência e tanto!

Link para o comentário
Compartilhar em outros sites

em breve..... em breve ^^

ta 20 reales no ML :)

vou estudar mais isso pra saber se tem forcefeedback e tal...

ainda hoje codigo pra DOWN!!!! ^^

Ex Inferis, eu utilizo Windows 7 64bits e não consegui instalar o PPJoy. É somente com ele para usar o analógico para fazer a função do volante funcionar?

Tentei fazer um script também no glovepie, mas não achei o comando no wiremote1.comando para fazer o movimento de giro para simular o volante. Jogo o GRID e seria muito interessante utilizar o wiiremote como volante.

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!