An increasingly common question nowadays is how to make TASes for PC games. The answer to that highly depends on the game, and there may be no good option at all. This guide will go over various methods, and their pros and cons.
libTAS
libTAS is a Linux program which acts as an intermediate layer between the game and the operating system. It has typical TAS tools such as frame advance, savestates, and input recording. Linux is a much better OS than Windows for creating such a program, and Windows users can access libTAS too. There is varying support for running games made in Unity, Adobe Flash, DOS, and other platforms. If you can run your game in Linux, this is probably the best option for you.
Pros:
- Many TAS tools
- Reliable syncing
- Accepted on TASVideos
Cons:
- Some limits on game support
Hourglass
Hourglass is a Windows program which also acts as a layer between the game and the OS. Hourglass was created in 2011 and is not being actively developed, due to issues mentioned above. It has very limited game support and is best used in Windows XP; it also has no mouse support. This option is probably only best for compatible games which won't run on Linux.
Pros:
- TASing tools
- Accepted on TASVideos
Cons:
- Limited game support
- No mouse support
- Outdated
Specialized tool
One popular option is to create your own TAS tool for a specific game or engine, often by modifying the game itself. There is a list of some of these tools here. <documentation on making tools?>
Pros:
- Best option if not supported by the first two
Cons:
- May require a lot of time and programming knowledge
- Not accepted on TASVideos (yet)
External macro
Using a tool such as AutoHotKey which does not communicate with the game directly. It may be more reliable if you can have the macro detect particular frames to send inputs (e.g. by reading an on-screen-display), rather than just waiting a certain amount of milliseconds. <macro examples>
Pros:
- Most accessible option for some games
Cons:
- No dedicated tools (savestates, frame advance)
- Prone to desyncs
- Not accepted on TASVideos