SageCraft - An open-source harness for a decision model playing WoW

An open-source harness that lets Sage play World of Warcraft through screenshots and keystrokes. Inspect 4,573 decisions, the fixes behind a level-five run, or replay recorded events offline. Live play needs macOS, WoW and a Sage API key.

Add a comment

Replies

Best
Hey everyone, I’m Chris, one of the co-founders of Levanto. We make Sage, a decision model. I was in the bathtub wondering whether it could get a dwarf to level 5 in World of Warcraft. Then I got obsessed and accidentally built my first harness. I’m calling it SageCraft. It runs outside the game. The harness takes screenshots, builds state from what it can see, and gives Sage a menu of possible actions. Sage picks; the harness carries that choice out with keyboard/mouse input and checks the result. No addons or game-file modifications. The short answer to “did it work?” is: kinda. The dwarf reached level 5. That took 4,573 decisions across 32 sessions and 5h29 of active play. There were 16 harness fixes, eight recoveries with the runner stopped, and one human hunting-area change. The final roughly 18-minute stretch ran without human input. I want those details next to the good-looking clips. I built it using Astra in Codex. A frustrating part was Sage over-indexing on uncertainty, so I removed the “uncertain” options from the menus. The harness is Apache-2.0 and free to inspect or modify. Sage is our hosted commercial model. You can run the included offline replay without WoW, a Sage key or any model calls. Live play currently needs macOS, WoW and a Sage API key, and uses metered API usage. Start with the gameplay and build notes: Grab the harness / offline replay: If you build agents, I’d love to hear what you’d change about the model/harness split. If you play WoW, which decision made you wince? :)