Project

General

Profile

Actions

Emulator Issues #13736

open

[Feature Request] Overhaul WiiMote input in DTMs to record disconnects and extension changes

Added by InputEvelution 18 days ago. Updated 6 days ago.

Status:
New
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Currently, Dolphin records WiiMote input to DTM files by reusing the format used by real WiiMotes to send input data to the console. This helps reduce file sizes and avoids Dolphin having to do more work on the fly, as the resolution and type of input data used by WiiMotes can vary greatly during play. However, this format comes with a number of limitations compared to its GameCube Controller counterpart.

For one, it is impossible to record a WiiMote disconnecting, as there's nothing in the DTM format to indicate that a gap in input has occurred or how long it lasted. This makes speedrunning tricks that rely on controller disconnects (such as those in Wii Sports Golf) impossible to implement. DTMs also don't record what extensions a WiiMote has attached to it. Having the wrong extension attached to a WiiMote when playing an input recording can cause desyncs, and some games (such as Wii Sports) expect the player to connect and disconnect extensions at different points in the play session. This is inconvenient for both the creator and the verifier of an input recording, as the creator needs to give specifications as to what extensions are used where, and the verifier has to manually pause the game and change Dolphin settings at different points in the run to avoid desyncs. Additionally, extension data is encrypted, making it difficult to reuse inputs from other TASes.

Overhauling WiiMote input in DTMs to work more like the system used for GameCube controller input would allow these aspects to be properly utilised in tool-assisted speedruns. While this would likely lead to an inevitable increase in file size, I would argue that DTMs are already relatively small, and that submission sites like TASVideos already compress uploaded input files to reduce space. However, I do want to note that Dolphin's current TAS tools do not reflect the full range of WiiMote IR inputs (https://bugs.dolphin-emu.org/issues/11185). It is important that this is taken into account if such an overhaul is implemented, to avoid regressions in input recordings.

Actions #1

Updated by JosJuice 17 days ago

This would require a large overhaul of the DTM format. I would like to do that at some point, though.

Actions #2

Updated by Billiard26 6 days ago ยท Edited

This PR makes extension changes in DTMs work and eliminates the encryption problems: https://github.com/dolphin-emu/dolphin/pull/13348

Actions

Also available in: Atom PDF