drheld/isotropic_dominion_extension — Issue #27: Trader-Mountebank combo
Author: squigish
Created: 2011-10-21 03:59:53+00:00
State: open

I'd re-open the trader issue I submitted previously, but I don't have permission.

While the new hinterlands code works great, it still has a (significant) bug when both trader and mountebank are in play. In a nutshell, the last_gained_card variable doesn't "ungain" the right card when a trader is revealed after a mountebank. It's actually impossible to determine which card was "ungained" in some situations with the current isotropic implementation. I emailed Doug (the isotropic admin) about this, and this was his response:

I said:

My request is that you modify the code that handles Trader so that instead of saying "you reveal a Trader to gain a Silver instead", the log reads "you reveal a Trader to gain a Silver instead of a [card]".

Doug said:
I've actually already done this, it will be updated next time the server is restarted.

So, could we pro-actively write code that parses the "instead of" phrase, so that trader causes you to gain -1 copies of the correct card? I don't know when the server is next scheduled to be restarted, but I imagine it's fairly soon.

NB- I've already emailed this to novalis, so he may already be working on it. I'd fix it myself, but I can't figure out how dominion.js is parsing text from the log. Is that being handled somewhere else? If not, could someone try to comment it better?