rbtying / shengji

An online version of shengji (a.k.a. tractor) and zhaopengyou (a.k.a. Finding Friends)

Home Page:https://robertying.com/shengji/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Throw evaluation policy which groups by component shape and then allow beating just the highest one.

rbtying opened this issue · comments

From @czhang23

2nd thought.

In case of 44K vs 55J, of course we need 55A to beat 44K.

In our case, 2/10 vs 2HJ, 2HJ should beat 2/10.

Reason 1, 2/10 cannot be thrown if there is any card is bigger. Think about 2/10 vs 2A.
Reason 2, 2/10 doesn't have two components. It is one component. Within one component, beating highest card is good enough.

Seems the way we need is a combined setting, i.e.
Within component, beat highest card (or pair, or tuple, or tractor, and so on)
Cross components, beat all components.

@czhang23 -- would love to learn more about what you mean here.

In the case where the play sequence is:

  1. 2c 10c
  2. 2h 10h
  3. 2h HJ

and trump is 3 and hearts, then I disagree that player 3 should win over player 2. if the trump is 2 and hearts, then player 3 should win (because HJ > 2h and 2h > 10h).

Perhaps we are miscommunicating a bit: a component is either a single n-tuple or a tractor. So, in this case, there are two components.

That said, it's perhaps interesting to require beating the highest component per format (i.e. beat the highest pair, beat the highest single card, also beat the highest tractor). Is that what you mean?

I think beating the largest component is what we need. To summarize,
1st, the original multi-throw defines the components.
2nd, the trump "kill" should match all components.
3rd, subsequent trump "kill" only need to beat the largest components to win the trick.

This should already be implemented as one of the options!

Yes. Please close this issue. Thanks.