It's been mentioned a few times that people want an input plugin that's better for making TASes. I realized this should be pretty easy to do since some existing input plugins have source available that's free to use for anything. So what features do people want, again?
UPDATE:
Here
[adelikat]: Updated link with a current one.
Everything but the combo system is functional. So far it has only been tested with Mupen64 0.5 running on Windows XP.
It's based on Def's DirectInput plugin. To use, move or copy "TASDI.dll" into the "plugin" folder where your emulator is, then open the emulator and choose "TAS Input Plugin 0.6" in the Input Plugin part of the Settings. Then you'll want to configure the buttons before using it, like any other input plugin.
When you start a ROM, a control panel should appear for each active controller. If the main emulator window doesn't get focus when you click on the panel, click on the emulator once first, then on the input panel, and it should remember it after that. You might want to turn off the "Pause when inactive" option in the emulator, if you don't want it to pause whenever you are dragging the panel around or clicking on a button.
The "Instant / Relative / Radial" buttons change how the keyboard (or joystick) controls the analog stick. You can also left-click and drag on the analog stick circle to set the stick position, or right click once if you don't want to drag the mouse to keep controlling it. The sliders on the right are multipliers for X and Y analog stick intensity from the keyboard. To reset the multiplier to 100%, right-click-drag on the slider bar. "Ang. Disp" stands for "Angular Display", which changes the X/Y display into Angle/Distance. You can manually edit the numbers for X/Y or Angle/Distance, but if you do so, remember that other input is disabled while you're editing it, until you hit Enter or Escape to return focus to the emulator. The game buttons (A,B,L,R,Start,etc.) can be left-clicked on for auto-hold, or right-clicked on for auto-fire.
Known bugs:
- If you're using a joystick, you'll need to set the max range to 127 instead of 128 in the settings.
- Sometimes the X and Y range sliders start at 1, so you'll have to set them higher before you can move with the keyboard/joystick.
- Autofire doesn't work in many games yet (timing issues, since the plugin has no reliable way to tell what frame it is)
- It doesn't show movie playback input (not really a bug because it is the plugin specification that lacks any way of supporting this)
- Combos don't work yet (because they haven't been implemented)
- If you spastically click the show/hide buttons the panel may eventually stop working.