Emulator Issues #5751
motion plus becomes un-calibrated in Skyward Sword after swordplay
OK first let me list my system.
Dolphin Build: 3.0-862 64bit
OS: Windows 7 Ultimate 64bit
Video Card: GeForce GTX 570
Graphic Drivers: 306.23
CPU: Intel I7 2600K @ 3.4GHz
RAM: 8GB Dual Channel
Game ID: SOUE01
Bluetooth Adapter: Asus Bluetooth V2.1 USB Adapter
Bluetooth Driver provider/version: Atheros Communications/188.8.131.52
Wiimote: Nintendo RVL-CNT-01
OK so I'm playing Skyward Sword. I made an ISO of my retail disc. For the most part the game runs perfectly smooth at 30FPS; though I noticed when you take out the sword to fight after a few swings it becomes "un-calibrated" is the best way to describe it. Now a quick way to fix it is to waggle the wiimote around some more till it becomes centered. OK let's say you take out Links sword, fight an enemy and then you take out your sword again, rather than being centered and facing straight it will be off to your far right, and then if you move your hand left it goes up. If you forcefully waggle it, it seems to correct itself, or you can go into the menu and re-calibrate it. This also affects selecting inventory. Let's say your just had to use your sword to kill an enemy again, then you press the "B" button to select something, rather than the little hand icon being centered it will be to the far left and the movement of the wiimote does not accurately reflect what's on-screen. I took the game and same wiimote to my actual Wii and played it there, no problems. So that means it's not the sensors in the wiimote as I first had thought. I did tweak quite a bit in the settings of the emulator to try to see if that would help.
Here are my current settings.
Enable Dual Core: Checked
Enable Idle Skipping: Checked
Enable Cheats: Checked
Frame Limit: Auto
Limit FPS: Un-checked
CPU Engine: JIT Recompiler
Lock Thread To Cores: Checked
Force Console as NTSC-J: Un-checked
DSP Emulator Engine: DSP HLE Emulation
DSP LLE On Thread: Checked
Dump Audio: Un-checked
Audio Backend: Dsound
Sample Rate: 48000Hz
Enable Screensaver: Un-checked
Use EuRGB60 Mode (PAL 60): Checked
Adapter: Nvidia GeForce GTX 570
Full-screen Resolution: 1920x1080
Aspect Ratio: Auto
Use Full-Screen: Un-checked
Everything else on the general tab is unchecked.
Internal Resolution: 3x Native (1920x1584)
Scaled EFB Copy: Checked
Per-Pixel Lighting: Un-checked
Force Texture Filtering: Un-checked
Skip EFB Access From CPU: Un-checked
Ignore Format Changes: Checked
EFB Copies: Texture
Texture Cache: Fast (all the way to the right)
External Frame Buffer: Disabled
Cache Display List: Un-checked
Disable Per-Pixel Depth: Checked
OpenCL Texture Decoder: Un-checked
Disable Fog: Un-checked
Skip Dest.Alpha Pass: Un-checked
OpenMP Texture Decoder: Un-checked
Everything on the Advanced Tab is unchecked.
Sorry if I wrote a book, I just wanted to be thorough on my settings. So Yea I can't figure out a way to fix it. I have tried checking "Skip EFB Access from CPU" I have tried changing "EFB Copies" to RAM rather than Texture but that seems to slow it way down to the point that you can't really play the game.
So any thoughts would be greatly appreciated. Also is anyone else experiencing this problem? I have also uploaded a video to YouTube showing what I'm talking about.
#3 Updated by geminixnet over 8 years ago
I'm sorry, I did look all over the forums for an answer to my problem. I also extensively searched too. All I could find was someone having a similar problem with a sword game in Wii Sports+.
I did test with DX9 and OpenGL, still same issue. I also tried software renderer, same issue. Yes the wiimote works fine with an actual Wii. That was my first thought that it was a problem with the wiimote. As far as problems with the real wii, I can play for an hour or more and not have this issue. For the sake of trouble shooting, I also exported my save file from Dolphin and played it on my actual Wii.
My background is SQL, not programming; though what could be happening is that the emulator is not processing all the information. I noticed if you sword fight really "slow" ie don't waggle the wiimote that much, it tends to do OK for longer rather if you shake it around. Could it be the emulators interpretation of the data?
#6 Updated by geminixnet over 8 years ago
OK I have a wireless sensor bar for my PC setup, yes I calibrate with it when I start the game. I'm aware that pressing down on the d-pad re-centers the device, but it does not calibrate the wiimote. The problem is that if the sensors think the wiimote is pointing left when in reality you are pointing it forward, pressing down on the d-pad to re-center it won't do anything you will still have to move the wiimote to whatever position it thinks forward is. When you start the game it actually calibrates the wiimote, then you use the IR Bar to center it. I'm not experiencing this problem with the actual Wii system. Yes you do have problems with the real Wii with the wiimote becoming un-centered, and have to re-center it with the d-pad, but this is not that.
#10 Updated by slmpika over 8 years ago
I have had something similar happen to me as well, but it didn't really affect me for most of the game. It's most noticeable with small motions, like targeting the clawshot, where the cursor will drift slowly while you try to target something. I was still able to swing the sword in the direction I wanted most of the time, but I had to make sure to exaggerate the motion. It also makes the harp minigame much more difficult. I would usually restart the emulator once every few hours to reset the calibration. After getting a new bluetooth adapter, I did notice that the motion-plus movement was much more accurate (though still not perfect), so maybe it has something to do with that.
#12 Updated by school.player over 8 years ago
I can confirm this bug. It seems to do this to a tiny extent on the real Wii over a 30-60min period, but 1 or 2 sword slashes is enough to throw off Dolphin.
I've just chalked it up to the crappy WM+ emulation, since this happens in Wii Sports Resort swordplay too.
#13 Updated by Billiard26 over 8 years ago
- Status changed from New to Won't fix
The swordplay already works extremely well in Dolphin.
The emulator does not run at exactly 100% speed at all times.
We have to deal with the OS to send/receive bluetooth packets.
Packets are dropped/inserted to deal with timing differences.
Real wiimotes are never going to be 100% flawless.
#18 Updated by hardy.kevin.c about 8 years ago
I can also confirm this issue. It seems that pointing the Wiimote at my sensorbar every now and then while aiming something or while in a menu seems to fix it (I don't usually have to tell it to recenter either, unless I need the cursor).
Still not sure if this is a bug with the game, dolphin, our individual bluetooth stacks and/or adapters, or some awkward combination of all three. It's not a game-breaking bug, but if it's still possible to improve it, that would be nice.