TAS Setup

Tools

Choosing a version of Dolphin

The two versions of Dolphin worth considering for TASing are the latest build and ZE 7.2.

Latest BuildZelda Edition (ZE) 7.2
Lua script supportNoYes
Memory watchesDMEDolphin window or DME
Load state behaviorVisually updates without advancing frameMust advance frame to visually update
TAS turbo inputChoose any turbo speedTurbo only on alternating frames
Frame count displayEach frame increments by 2*Each frame increments by 1

*Potentially as the result of the frame count periodically switching between odd and even numbers for some reason, the latest build has the issue of some frames appearing to be impossible to perform an input on; e.g. when trying to chain a roll frame perfectly, you might find that pressing A on one frame is too early and doesn't cause a roll, but pressing A on the next frame is too late and leaves an extra frame between rolls. This problem is very awkward but can be overcome using the turbo function, since the turbo function refers to frame counts in half frames (i.e. 15 Hz mashing would be input as "2" on and "2" off, translating to 1f on and 1f off). In the rolling example above, setting the turbo to "1" on and "2" off (or vice versa) and beginning the turbo 2f before the frame the roll input should be on will result in the turbo input landing on a half frame and successfully chaining the rolls. This can be very problematic for changing control stick inputs rapidly, though, such as in a wiggle EBS. Note that this explanation makes no sense, but it does describe the behavior accurately.

Dolphin setup

This video by Malleo is a comprehensive guide to setting up Dolphin for TASing. Relevant information begins at 1:29.

The most important points regarding setup covered in this video are:

  • creating portable.txt
  • adjusting settings to avoid desyncs
  • hotkey config
  • controller config
  • using TAS input

The video then demonstrates TASing some menuing and using scripts.

Dolphin Memory Engine

Dolphin Memory Engine (DME) is a tool that allows you to view and modify values in memory in the game while running Dolphin. The video from Malleo above (at 9:29) goes over setting DME up, using it to find memory watches useful for TASing, and altering values at memory addresses. Although altering values is generally not something you'd want to do in a TAS, it can be useful for testing.

Since Twilight Princess's memory addresses are well documented, you will probably not need to find memory addresses on your own. See this memory info spreadsheet by Taka for addresses, offsets from the player pointer where relevant, and data types. If you are using Dolphin ZE (see version differences above), once you know the address for the watches you want to use, you can add them to the watch list within Dolphin to display the information in the Dolphin window rather than the separate DME window.

Lua scripting

Hotkeys for control stick positions

Idea by TheTasMaster

Outside of versions of Dolphin with Lua script support, there is no functionality for recalling specific control stick or pointer coordinates at the click of a button. This is something that would be very useful for TASing brakeslides, especially DL-DR and wiggle brakeslides. However, AutoHotkey and Window Resizer can be used in conjunction with Dolphin to achieve this. The video below goes over setting this system up, and pages where the two necessary programs can be downloaded are linked as well.

Other setup tips

  • Twilight Princess has a well-known issue with significant lag in Hyrule Field when played on Dolphin. Be sure to enable the Hyrule Field Speed Hack under right click -> properties -> patches.
  • It will be helpful to bookmark the User folder within the Dolphin installation files. This folder contains the following useful folders:
    • Dump, where frame and audio dumps will export
    • GameSettings, where memory watches to be shown in Dolphin can be added in Dolphin ZE
    • GC, where virtual memory cards are stored
    • StateSaves, where save states and their associated dtm files are stored; these can be copied into other folders for backup and copied back into this folder for use in Dolphin

This video goes over some fundamentals of save state management.

Last updated 09/16/2024 – bewildebeest