Forum Discussion
Scratch
11 years agoHonored Guest
Walking without ODT
Update 10.4.14
I got through Doom 3 BFG few days ago and boy, was that an experience! I played it fully through with this script and made adjustments for it along the way, I attached the latest version, Pseudo Walker 0.501 in this post.
It is better than earlier versions and can now be used with Wii Zapper and it uses some console commands (Doom 3 BFG) to make PDA more viewable etc. Check readme and script itself (comments) for more information about keys and controls. It can be used with other games as well, but some of the stuff going on is Doom 3 spesific, you might want to edit/disable these sections. Check script.
If you want to see script in action, here is a link to slightly older video with earlier version of script and without wii Zapper.
https://www.youtube.com/watch?v=jI266___lNk&feature=youtu.be
It actually looks less controllable in the video than it really is, it is quite accurate once you get a hang of it.
Original post:
I got my devkit few days ago and dear lord it is awesome. Had to say that, but to the point now. Before I even had my Rift, I was thinking what kind of ODT would be the simplest and most affordable to one to build. I thought I should start with the tracking, and having two wiimotes with nunchucks allready, that was the best way to proceed.
Now I'm tracking my legs with nunchucks in my pockets using glovepie and wiimotes are free for other purposes. And by just lifting my feet (making walking gestures), I totally feel like walking, atleast in demos! I understand the need for ODT and I propably build one, but at the moment I'm happy with just this. I must implement running, strafing and crouching also and then I'm ready to try this with real games.
What do you think, are you using this method in real games or is there something I'm missing?
23.3.2014 Added new version of Nunchuck Walker script and some updated info
From the readme:
Nunchuck Walker 0.43
Script made by Scratch (Joni Lammassaari) for GlovePIE 0.45
For use with two wiimotes and nunchucks. Nunchuks track your legs from your
pockets, nunchuck 1 (connected to the wiimote1, where first blue light is lit after
bluetooth connection is established) to the right pocket and nunchuck 2 to the left pocket.
Use some time to get used to walking gestures and running, use round mat
or other device to keep you in one place. When you lift your other leg, make sure your other is almost straight.
Keep steady pace when walking and find your pace taking too long steps at first, then gradually increase the pace so it becomes smooth.
ATTENTION! Place nunchuck to your pockets joysticks facing towards each other!-><-
Hold both wiimotes in your hands, wiimote 1 turns your character when you tilt
it, mousebutton1 is wiimote1 B and mousebutton2 is wiimote2 B.
Jump (space) activates when you move both wiimotes up with a rapid pull.
You can take backsteps when you pull wiimote2 up and make walking gestures.
Starfing happens at this point with wiimote2 left and right buttons.
You can freely edit and share this file.
Many Unity based demos for Oculus Rift work with this script out of the box.
Try for example Ocean Rift (very smooth), VR Training (Very fun) and Dreadhalls (very horrific!).
BUT PLEASE BE CAREFUL WHEN USING THIS METHOD WITH HEAD MOUNTED DISPLAY!
USE SAFETY MEASURES TO PREVENT ACCIDENTAL FALL!
USE THIS AT YOUR OWN RISK.
Recommended procedure to use to get wiimotes up and running:
1. Start GlovePIE
2. Load Nunchuck Walker 0.4 Script
3. Press Run (this starts the script and helps wiimotes to establish connection)
4. Detach nunchucks from wiimotes if not allready detached, place wiimotes on steady surface
5. Press wiimote 1's buttons 1 and 2 until blinking stops and first blue led is lit
6. Same to wiimote 2, second blue led is lit. Connection is now established
Sometimes it takes some time to get both wiimotes connect...
7. Place nunchucks to your pockets, joysticks facing towards each other.
8. Connect nunchucks to wiimotes
Note, as soon as nunchucks are connected, they start to track your feet and
send commands if you move!
9. Make sure mouse follows vertically wiimote1's tilt and both wiimotes are still connected
10. Start game
11. HAVE FUN!
I've played some Doom 3 BFG now with Rift and this and it is AWESOME :D
I got through Doom 3 BFG few days ago and boy, was that an experience! I played it fully through with this script and made adjustments for it along the way, I attached the latest version, Pseudo Walker 0.501 in this post.
It is better than earlier versions and can now be used with Wii Zapper and it uses some console commands (Doom 3 BFG) to make PDA more viewable etc. Check readme and script itself (comments) for more information about keys and controls. It can be used with other games as well, but some of the stuff going on is Doom 3 spesific, you might want to edit/disable these sections. Check script.
If you want to see script in action, here is a link to slightly older video with earlier version of script and without wii Zapper.
https://www.youtube.com/watch?v=jI266___lNk&feature=youtu.be
It actually looks less controllable in the video than it really is, it is quite accurate once you get a hang of it.
Original post:
I got my devkit few days ago and dear lord it is awesome. Had to say that, but to the point now. Before I even had my Rift, I was thinking what kind of ODT would be the simplest and most affordable to one to build. I thought I should start with the tracking, and having two wiimotes with nunchucks allready, that was the best way to proceed.
Now I'm tracking my legs with nunchucks in my pockets using glovepie and wiimotes are free for other purposes. And by just lifting my feet (making walking gestures), I totally feel like walking, atleast in demos! I understand the need for ODT and I propably build one, but at the moment I'm happy with just this. I must implement running, strafing and crouching also and then I'm ready to try this with real games.
What do you think, are you using this method in real games or is there something I'm missing?
23.3.2014 Added new version of Nunchuck Walker script and some updated info
From the readme:
Nunchuck Walker 0.43
Script made by Scratch (Joni Lammassaari) for GlovePIE 0.45
For use with two wiimotes and nunchucks. Nunchuks track your legs from your
pockets, nunchuck 1 (connected to the wiimote1, where first blue light is lit after
bluetooth connection is established) to the right pocket and nunchuck 2 to the left pocket.
Use some time to get used to walking gestures and running, use round mat
or other device to keep you in one place. When you lift your other leg, make sure your other is almost straight.
Keep steady pace when walking and find your pace taking too long steps at first, then gradually increase the pace so it becomes smooth.
ATTENTION! Place nunchuck to your pockets joysticks facing towards each other!-><-
Hold both wiimotes in your hands, wiimote 1 turns your character when you tilt
it, mousebutton1 is wiimote1 B and mousebutton2 is wiimote2 B.
Jump (space) activates when you move both wiimotes up with a rapid pull.
You can take backsteps when you pull wiimote2 up and make walking gestures.
Starfing happens at this point with wiimote2 left and right buttons.
You can freely edit and share this file.
Many Unity based demos for Oculus Rift work with this script out of the box.
Try for example Ocean Rift (very smooth), VR Training (Very fun) and Dreadhalls (very horrific!).
BUT PLEASE BE CAREFUL WHEN USING THIS METHOD WITH HEAD MOUNTED DISPLAY!
USE SAFETY MEASURES TO PREVENT ACCIDENTAL FALL!
USE THIS AT YOUR OWN RISK.
Recommended procedure to use to get wiimotes up and running:
1. Start GlovePIE
2. Load Nunchuck Walker 0.4 Script
3. Press Run (this starts the script and helps wiimotes to establish connection)
4. Detach nunchucks from wiimotes if not allready detached, place wiimotes on steady surface
5. Press wiimote 1's buttons 1 and 2 until blinking stops and first blue led is lit
6. Same to wiimote 2, second blue led is lit. Connection is now established
Sometimes it takes some time to get both wiimotes connect...
7. Place nunchucks to your pockets, joysticks facing towards each other.
8. Connect nunchucks to wiimotes
Note, as soon as nunchucks are connected, they start to track your feet and
send commands if you move!
9. Make sure mouse follows vertically wiimote1's tilt and both wiimotes are still connected
10. Start game
11. HAVE FUN!
I've played some Doom 3 BFG now with Rift and this and it is AWESOME :D
11 Replies
- ScratchHonored GuestOk, now I have a round mat under my feet so I feel if I'm going to move out of place. I,ve mapped all necessary Skyrim controls to wiimotes and menu and map to my pockets :) Drawback is I yet failed to figure out how to script walking backwards and I cannot walk while crouching. But we will see. Also one must walk and run with steady pace it to be smooth.
But still, I think this is one of the most affordable ways to leave your seat and play games standing without omnidirectional treadmill ;) - KydDynoMyteHonored GuestAre you sharing your script anywhere? I'd like to give this a try. I've been sticking to cockpit type simulators but I got a couple wiimotes and nunchucks, I'd like to see why people like walking around so much in vr. :)
- serrarensHonored GuestI am also quite interested how you have done this. I have experimented with the wii stuff for some time, but the connection was too unstable to be usable.
Which tooling do you use to read out the wiimotes? Do you use the Motionplus ones or is it just accelerometer readings?
BTW: I also have a round mat, it should be mandatory when using the Rift standing up! - ScratchHonored GuestI'm happy to share the script, but don't expect anything fancy! :) but it surely works once you get the hang of it and is fun way to play. I'll try to upload it tomorrow or as soon I have some time. I add few variables and comment lines so it is easier to change settings and modify to your own liking.
- ScratchHonored GuestEdit. newer version and info added to the first post!
Here is the script and some info to get things up and running with two wiimotes and nunchucks. I did not use motion plus yet in this version, this is a work in proggress. In the first lines you will find variables to change the most important settings. Crouching now works with toggling, so when you crouch, your character crouches, but you can physically stand up and walk. And when you want your avatar to stand up, crouch and stand up quickly again. I think this won't break the immersion and it is useful to be able to walk while crouching. ;)
Text from the readme file:
Nunchuck Walker 0.4
Script made by Scratch (Joni Lammassaari) for GlovePIE 0.45
For use with two wiimotes and nunchucks. Nunchucks track your legs from your
pockets, nunchuck 1 (connected to the wiimote1, where first blue light is lit after
bluetooth connection is established) to the right pocket and nunchuck 2 to the left pocket.
Use some time to get used to walking gestures and running on place, use round mat
or other device to keep you in one place.
ATTENTION! Place nunchuck to your pockets joysticks facing in!-><-
Hold both wiimotes in your hands, wiimote 1 turns your character when you tilt
it, mousebutton1 is wiimote1 B and mousebutton2 is wiimote2 B.
Jump (space) activates when you move both wiimotes up with a rapid pull.
You can freely edit and share this file.
Many Unity based demos for Oculus Rift work with this script out of the box.
Try for example Ocean Rift (very smooth), VR Training (Very fun) and Dreadhalls (very horrific!).
BUT PLEASE BE CAREFUL WHEN USING THIS METHOD WITH HEAD MOUNTED DISPLAY!
USE SAFETY MEASURES TO PREVENT ACCIDENTAL FALL!
USE THIS AT YOUR OWN RISK.
Recommended procedure to use to get wiimotes up and running:
1. Start GlovePIE
2. Load Nunchuck Walker 0.4 Script
3. Press Run (this helps wiimotes to establish connection)
4. Detach nunchucks from wiimotes if not allready detached
5. Press wiimote 1's buttons 1 and 2 until blinking stops and first blue led is lit
6. Same to wiimote 2, second blue led is lit. Connection is now established
This is sometimes takes time to get both wiimotes connect...
7. Place nunchucks to your pockets, joysticks facing inwards
8. Connect nunchucks to wiimotes
Note, as soon as nunchucks are connected, they start to track your feet and
send commands if you move!
9. Make sure mouse follows vertically wiimote1's tilt and both wiimotes are still connected
10. Start game
11. HAVE FUN!
If you have any questions, I'm happy to help if I can :mrgreen: There is most certainly more effective ways to use wiimotes and nunchucks, but this is just something I came up with and it works. :) - serrarensHonored GuestI tried your script today and it worked first time exactly how you described. Well done! Even in combination with my own time travel project :-)
I do have a couple of questions:
- why do you use the nunchucks? you could also use the wiimotes directly. Because they are easier to put inside your pockets?
- the detection worked better for me when the nunchuck joysticks were pointing outward. Is this a typo the readme?
- is switching from walking to running done by larger movements or quicker movements. I wasn't able to achieve this yet.
- how exactly do you detect crouching?
Although it does not seem very special to you, simple but working solutions are often the best! - ScratchHonored GuestGlad you got it working!
- I use nunchucks because they are smaller to fit in your pockets (like you said), but also because I like to have both of the wiimotes and their buttons in my hands.
- Hmmm. Worked better joysticks outwards... So joysticks are pointing opposite directions? Are you sure you connected your right leg nunchuck to your wiimote 1 (I keep it in my right hand)? It actually should work very poorly if it is the other way around.
- Switching from walking to running: Very good question! This I should have explained with greater detail in readme. Answer to smooth movement is PACE.
So, Every time you lift your leg and movement is greater than stand/walk treshold, script outputs a keyboard input (W) and keeps it pressed a certain time (stored in variable var.walk). Script also checks that your other leg is not making the same move (crouch is actually detected this way) and the leg you move, is not the same leg you moved on last step. You always have to walk switching the moving leg (I mean, in real life you do this naturally to able to move at all :) but in game I had to make restrictions so you can't "cheat" moving just one leg).
Let's get back to var.walk. Default is 500ms. This is actually important for one to find your walking pace, because if your step is too short in time compared, it's not smooth. If it is too long, it is not smooth, but taking too long steps is the way to find the pace! I suggest you open tuscany demo (I've been walking and running around that house maybe hundred times testing:))
and take very long steps. In time wise. No great movement should be needed (if too great move, it switches to run mode, then back to walk mode and again not smooth). You notice character moves a certain time. Now take another long step. It should stop after every step. Now, decrease stepping time slightly and find the sweet spot when character moves undisturbed. NOTE! Every time you lift your leg, the other leg should be somewhat straight.
Running happens, when your leg movements are greater than walk/run interval. So you must make greater gestures to run. Lift your leg higher, and keep your other leg straight. var.run (default 400ms) determines how long (in timewise) running steps are. In default, they are slightly shorter (walk 500ms, run 400ms). Here pace is even more important! Find it same way, at first taking too long steps but gradually shortening to find the sweet spot. And every time you lift your other leg, the other should be straight! I noticed, that if your leg is not straight enough, it sometimes detects this crouch movement. I must tweak the script to get rid of this, but key is, other lifted, other straight!
Hope this helps and keep shooting questions and feedback, I appreciate it very much.
To your last comment, this is actually quite special for me too, this is the first script I've made with GlovePIE and first I've ever shared anywhere :) - ScratchHonored GuestHmm. Thought about it and maybe I should make a short demonstration video to give you some idea what kind of movements script expects. Must say that walking gestures should be very mellow, it is possible that others trying this script try to make them too big and script stutters between walking and running and standing... :?
Edit. Ok, i realized that your pockets must be tight enough this to work accuratelly. Me and my wife tested this with jeans, works good, but now I tested this with pyjama trousers, very bad detection... - serrarensHonored GuestWow! Nothing fancy, but still a lot of thoughts behind it. I recognize the situation :-)
About the joysticks pointing outward: you are absolutely right. Wiimote1 was on the left, nr 2 on the right.
I don't have much time tonight, but I certainly will spend more time working with your script this weekend. - ScratchHonored GuestUpdated newer version of Nunchuck walker to the first post. Now lenght of walking step and running step is the same by default, maybe it is easier to get hang of it now.
Added backtracking by lifting your wiimote2 and making walking gestures. Also added strafing, but with buttons, pressing wiimote2's left and right buttons. I've played lot of Doom 3 with Rift and this, which is very, very entertaining. ;)
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 2 months ago
- 12 years ago
- 12 years ago
- 9 months ago