I have a few Ideas
1.maybe it was another card for his Horn of Plenty
2.It was good for his menagerie engine
3.silver was forbidden by contraband and he revealed trader.
4.he revealed watchtower to trash it and boost his foragers.
5.he later trashed it with trash for benifit ( mine/taxman/butcher)
1, 3 and 4 aren't right, because cards that care about the name aren't allowed. Also, I didn't realize that Menagerie just cares about "duplicates", not "names", so 2 is not an incorrect answer for my original puzzle but it was my intention to forbid Menagerie, too. Taxman can be a legitimate reason to buy a Masterpiece instead of a Silver if both players go for Taxman and you need $3 Taxman fodder that your opponent's Taxman can't hit, so that would be a correct answer for the puzzle, but that's not what happened in the game (no Taxmen were bought even though it was in the kingdom).
My opponent just bought a $3 Masterpiece, which didn't empty the Masterpiece pile. The Silver pile wasn't empty either. There was no Fairgrounds or other cards that care about the name in the kingdom. Why was this a good play?
Price reduction?
Correct answer, but not what happened in the game.
A couple of additional facts about the game: 1) the game didn't end on a 3-pile ending, I don't think that he made the decision with 3-piling in mind and a 3-pile ending at that point would have been beneficial to me, 2) I think he spent a coin token in order to reach $3 for the Masterpiece, 3) I hosted the game, so only Base and Guilds cards were in the kingdom, 4) now that I've finished the game, I'm no longer sure if buying that Masterpiece was beneficial for him (I won the game despite that play, but not in a way in which I intended to win it, so perhaps I would have won more if he hadn't made that play, but maybe the plan B I went for after adjusting to the Masterpiece buy was optimal in the first place - I'm not good enough to tell). Treat these facts as hints, not as rules; you may still post answers that contradict these.