Don’t hate Medium? You can read a post I wrote there: Link
Pandars is an Auction House scanner for a popular MMORPG written in Rust.
It emulates an official client by speaking the same, proprietary protocol, complete with ancient cryptography and questionable security decisions.
If the project would be fully implemented, a
pandars instance would be indistinguishable from a real person having their character stand in the auction house and browse listings all day.
This is the revival of the abandoned grollrs project!
My employer allowed me to write about this project on company time and publish on their blog, so read that post first.
The basic idea is simple: The code connects to a Mists of Pandaria server and scans the AH for you. Handling of found auctions is left to you, by default they are printed to the command line. Some features were deliberately kept private to prevent misuse.
Things not implemented:
Finding out what exactly warden does is quite tricky (by design). Warden allows the game server (!) to run arbitrary checks on the client machine, e.g. collect a list of running processes or calculate the checksum of a memory region. These checks are sent to the client at runtime (!). While I was able to hook the functions in the official client, mocking these checks would be insanely difficult.
Some of the results, the scanner produces: