Strict Standards: Redefining already defined constructor for class wpdb in /home/klic/public_html/vt/wp-includes/wp-db.php on line 57

Deprecated: Assigning the return value of new by reference is deprecated in /home/klic/public_html/vt/wp-includes/cache.php on line 36

Strict Standards: Redefining already defined constructor for class WP_Object_Cache in /home/klic/public_html/vt/wp-includes/cache.php on line 384

Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 541

Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 541

Strict Standards: Declaration of Walker_Page::start_el() should be compatible with Walker::start_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 541

Strict Standards: Declaration of Walker_Page::end_el() should be compatible with Walker::end_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 541

Strict Standards: Declaration of Walker_PageDropdown::start_el() should be compatible with Walker::start_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 560

Strict Standards: Declaration of Walker_Category::start_lvl() should be compatible with Walker::start_lvl($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 659

Strict Standards: Declaration of Walker_Category::end_lvl() should be compatible with Walker::end_lvl($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 659

Strict Standards: Declaration of Walker_Category::start_el() should be compatible with Walker::start_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 659

Strict Standards: Declaration of Walker_Category::end_el() should be compatible with Walker::end_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 659

Strict Standards: Declaration of Walker_CategoryDropdown::start_el() should be compatible with Walker::start_el($output) in /home/klic/public_html/vt/wp-includes/classes.php on line 684

Deprecated: Assigning the return value of new by reference is deprecated in /home/klic/public_html/vt/wp-includes/query.php on line 21

Deprecated: Assigning the return value of new by reference is deprecated in /home/klic/public_html/vt/wp-includes/theme.php on line 540

Strict Standards: call_user_func_array() expects parameter 1 to be a valid callback, non-static method GoogleSitemapGenerator::Enable() should not be called statically in /home/klic/public_html/vt/wp-includes/plugin.php on line 164
THE VT » Blog Archive » How to Spend Those Lonely, Lonely Nights: Wiimote Edition

How to Spend Those Lonely, Lonely Nights: Wiimote Edition


Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/klic/public_html/vt/wp-includes/formatting.php on line 82

You know those moments in life where you don’t have anything or anyone to do, your ex-girlfriend keeps calling you telling you how many cocks she took last night, and you can’t even manage to ask out the adorably jewish girl who probably has a thing for you? Yeah, me too. But that’s alright, because you set up little projects to keep your mind off of these things, at least until the opportunity to get os fkucing durnk comes around. “What type of little projects will keep my mind off of the many times love has turned me away, yea, though I come a-knocking on its door every night, just to catch a glimpse of its shining face?” you ask. Well, how about hooking your Wii Remote up to your PC so you can enjoy the closest thing to affection you’ll ever know in the form of a wireless gamepad with motion-sensing and infrared-seeing support?

I know there are about twelve million sites out there that give tutorials on how to do so, but they are written by dumbfucks who have no concept of accessibility. Their instructions are usually along the lines of “Buy a Wiimote, express the value of Planck’s constant as a binary value, recite Pi to a million decimals, and make love to a beautiful woman. Simple.” But it’s not that simple, and no one will ever understand you, or how not-simple it is. But I do. I’m always here for you, and will hold your hand and snuggle with you through every step.


Alright, the first step: Buy a Wii Remote. If you care about this, though, you already have one. So let’s move on.

Step two: Buy a Bluetooth USB adapter, like this one: http://www.newegg.com/Product/Product.aspx?Item=N82E16833328004

It is cheap and will ship to you in a couple of days.

Step three, and here’s where you need to operate a computer (Windows XP, since I don’t know Vista at all.) When you get the dongle (heh heh), plug it in, but do not install the drivers from the CD that came with it. Don’t you ever think of doing that again. Do you hear me? You piece of shit. Go download BlueSoleil and use that for drivers instead (get it here). Now once that’s done installing, you’re halfway done.

Step four: Download GlovePIE and install it. Good job.

Step five: I guess you could do this earlier, but we’re doing it now. So deal. Anyway, go into the new icon BlueSoleil put in your taskbar:

Double-click that. Then double-click “Search Devices.” Now what you gotta do is pick up that Wii Remote and hold down the 1 and 2 buttons and let it flash. In about 20-30 seconds, this should show up on your devices list:

So now you’ve got your PC recognizing and interfacing with your Wii Remote, which is good. When it’s active, the icon will turn green.

Final step: Go into GlovePIE. This shit will be confusing, but don’t worry. I’ve gotcha. GlovePIE runs on scripts, pretty simple ones that tell the computer how to interpret the Wiimote’s button presses. Rather than throwing you out to find your own scripts, I’ll give you one to start out with:

ZSNES Emulation Script

// P1 button mapping
Key.Z = Wiimote1.Classic.b
Key.X = Wiimote1.Classic.a
Key.A = Wiimote1.Classic.y
Key.S = Wiimote1.Classic.x
Key.D = Wiimote1.Classic.L
Key.C = Wiimote1.Classic.R
Key.Up = Wiimote1.Classic.Up
Key.Down = Wiimote1.Classic.Down
Key.Left = Wiimote1.Classic.Left
Key.Right = Wiimote1.Classic.Right
Key.RightShift = Wiimote1.Classic.Minus
Key.Enter = Wiimote1.Classic.Plus

// P2 button mapping
Key.L = Wiimote2.Classic.b
Key.P = Wiimote2.Classic.a
Key.K = Wiimote2.Classic.y
Key.O = Wiimote2.Classic.x
Key.I = Wiimote2.Classic.L
Key.J = Wiimote2.Classic.R
Key.NUMPAD8 = Wiimote2.Classic.Up
Key.NUMPAD2 = Wiimote2.Classic.Down
Key.NUMPAD4 = Wiimote2.Classic.Left
Key.NUMPAD6 = Wiimote2.Classic.Right
Key.LeftAlt = Wiimote2.Classic.Minus
Key.LeftControl = Wiimote2.Classic.Plus

// Emulator Shared key
Key.Console = Wiimote1.Classic.Home
Key.F4 = Wiimote1.Classic.ZL
Key.F2 = Wiimote1.Classic.ZR

Key.Console = Wiimote2.Classic.Home
Key.F4 = Wiimote2.Classic.ZL
Key.F2 = Wiimote2.Classic.ZR

// LED P1
Wiimote1.LED1 = true;
Wiimote1.LED2 = false;
Wiimote1.LED3 = false;
Wiimote1.LED4 = false;

// LED P2
Wiimote2.LED1 = false;
Wiimote2.LED2 = true;
Wiimote2.LED3 = false;
Wiimote2.LED4 = false;

// P1 Analog sticks
// The following script mapped the left analog stick to the same controls as the D-pad

Key.left = Wiimote1.Classic.Joy1X <= -25%
Key.right = Wiimote1.Classic.Joy1X >= 25%
Key.up = Wiimote1.Classic.Joy1Y <= -25%
Key.down = Wiimote1.Classic.Joy1Y >= 25%

// For Smash TV game I have mapped the Right Analog stick to X,Y,A,B
Key.A = Wiimote1.Classic.Joy2X <= -25%
Key.X = Wiimote1.Classic.Joy2X >= 25%
Key.S = Wiimote1.Classic.Joy2Y <= -25%
Key.Z = Wiimote1.Classic.Joy2Y >= 25%

// P2 Analog sticks
// The following script mapped the left analog stick to the same controls as the D-pad

Key.NUMPAD4 = Wiimote2.Classic.Joy1X <= -25%
Key.NUMPAD6 = Wiimote2.Classic.Joy1X >= 25%
Key.NUMPAD8 = Wiimote2.Classic.Joy1Y <= -25%
Key.NUMPAD2 = Wiimote2.Classic.Joy1Y >= 25%

// For Smash TV game I have mapped the Right Analog stick to X,Y,A,B
Key.K = Wiimote2.Classic.Joy2X <= -25%
Key.P = Wiimote2.Classic.Joy2X >= 25%
Key.O = Wiimote2.Classic.Joy2Y <= -25%
Key.L = Wiimote2.Classic.Joy2Y >= 25%

That shit will let you play ZSNES roms with the classic controller, no problem, mapped just like the SNES pad. The ZR and ZL buttons are used to save and load a state, respectively, and the home button fast forwards through boring sections.

For more scripts, including ones that allow you to use the Wiimote like an NES controller and whatnot, go here. Note that some of the more advanced scripts out there require PPJoy, which helps with stuff like analog sticks.

Now you can feel like you’ve accomplished something on this lonely, lonely night.

Share and Enjoy: These icons link to social bookmarking sites where readers can share and discover new web pages.
  • Digg
  • Facebook
  • Google
  • del.icio.us
  • Reddit
  • Technorati
  • TwitThis

Tags: , , , ,

One Response to “How to Spend Those Lonely, Lonely Nights: Wiimote Edition”

  1. ILP Says:

    Deprecated: preg_replace(): The /e modifier is deprecated, use preg_replace_callback instead in /home/klic/public_html/vt/wp-includes/formatting.php on line 82

    Interesting shit, Seif, I’ll try this one day.

    I’m lying, I’m fucking lazy.

Leave a Reply