Closed Whebon closed 2 weeks ago
Alternative Options for 2c:
New server action for each technique type.
Reuse "actPlayTechnique" with args. actPlayTechnique will have some optional string fields "arg1", "arg2",...,"arg5" that can be used to store any additional client state information. WARNING: some client args can be transformed chameleons. (e.g. rare artefact)
Currently, all choice-based techniques are handled through a server-state. For some of them this is necessary because they involve hidden information (e.g. Spyglass, Dirty Exchange, Sabotage, etc).
However, some techniques (see affected cards below) involve choices based on open-information. These choices could be handled through a client state to reduce server interaction.
In this case, the client is responsible for locally scheduling the technique and making a choice. Then it sends the choice through an action. The server executes the action and notifies all players about a schedule. The current player ignores this notification, as it already locally
The sequence of events would look something like this:
Affected Cards: