Auto-tracking is done by running a Lua script in Snes9x which exposes the emulator's game memory to EmoTracker through a "socket" interface.
However, if you're using vanilla Snes9x there doesn't seem to be any interest from the developers to support this feature.
Instead, this feature was added to the Snes9x-rr fork of Snes9x and is maintained there separately. The latest release of Snes9x-rr can be downloaded from github.
Note: I needed the x86 version of Snes9x-rr for my setup. The x86-64 version was not compatible with the Lua scripts that came with my version of EmoTracker. 🤷♂️
- Open EmoTracker and select your tracker.
- Right-click the "Auto Tracking" icon (🤖) in the bottom-right corner of EmoTracker and select
SNES > Lua
. The icon should turn yellow. - Open Snes9x-rr and select
File > Lua Scripting > New Lua Script Window
. - In the Lua Script window, click "Browse..." and navigate to the EmoTracker Lua script directory for Snes9x. On my machine this was
C:\Program Files (x86)\EmoTracker\Connectors\snes9x
. - Select
connector.lua
and click "Open". - If your ROM is running, or you load your ROM, the window should look similar to this:
ConnectorLib Lua Connector 2.2.0 (LuaSocket 3.0-rc1)
script returned but is still running registered functions
Connection established
Now EmoTracker should be auto-tracking.
Just did a bit of tinkering with this, and I'm having a bit of an issue. It didn't track any checks I did in Escape, and every time I saved and quit to reset to a starting point, it would wipe my keys on the tracker (that it wasn't auto-tracking anyway, found a TR small in the moat chest and all it did was mark the moat chest, ignoring the key). This could be a bit of an issue in non-race, casual situations where save and quit is an acceptable method of travel.