In this elegant strategy game, the original rules (see here) were an adaptation of Martian Go, and the difference was the scoring rules; they were changed to prevent draws. I've been trying to understand if the current rules are fair or not. I found they aren't and propose in this post a different scoring rule which makes the game fair.

Let's state the counting rule.

  • (*) If a pyramid with a pips of player A is pointing to another pyramid with b pips of player B, then player A gets a penalty of b tokens, equal to the pip-count of player B's pyramid and player B gets a bonus of a tokens of the pip-count of player A's pyramid. 

Since player A has to pay b tokens, and player B gets a tokens, the score difference between B and A, written B-A, will afterwards be B+a - (A-b) = (B-A) + (a+b), i.e, the difference will increase by the sum of the pips of the pyramids involved. Please verify.

Now look at the following rule (it's similar):

  • (**) If a pyramid with a pips of player A is pointing to another pyramid with b pips of player B, then player A gets a penalty of b tokens, equal to the pip-count of their own pyramid, and player B gets a bonus of a tokens, equal to the pip-count of their own pyramid.

So, what happens to the score difference B-A? It becomes (B+b) - (A-a) = (B-A) + (a+b). So, the result is identical to the other rule. This means that for a 2-player game, both rules are identical for determining the score difference.

However, in games with more than 2 players, the rules do not yield identical results. It brings up the question what is fair in the first place. I will now give a simple scenario which shows that rule (*) is unfair in a 3-player game and rule (**) is fair.

So, let's say that (a*,b,c) means that player A has a pyramid of a pips, B has a pyramid of b pips, and C has pyramid of c pips. Furthermore, the * means that the mentioned pyramids of player B and C are pointed at player A's. We denote the score that comes from this situation by [pqr] with p the score of player A, q the score of B and r the score of C. If the star [*] appears at the second number, it's B's pyramid that is pointed to by the others, and if it occurs with the third, then it's C's pyramid that is pointed to.

So, (a*,b,c) gives a score [b+c, -a, -a] with rule (*), and [a, -b, -c] with rule (**), etc.

Individual scores can be added, as they refer to situations on different squares on the board. Look at the end of the following imaginary game where the shown combination of three situations are present:

(1*,1,3), (1,1*,3), (2,2,1*)

According to (*) we get the score 

[4,-1,-1]+[-1,4,-1]+[-1,-1,4] = [2,2,2].

I find this unfair. If we look carefully at the situation, we see that all players have a similar situation, a 1-pip is pointed to by two other pyramids of the opponents. Clearly, player C is doing worse than the other two players, because he uses twice a 3-pip to branch off an opponent's 1-pip, while players A and B use a 1-pip and a 2-pip respectively. Also note that if we would discard player A and the first situation, then player B would have won from player C, and if we discard player B and the second situation, then player A would have won of player C.

With the rule (**) we get the score

[2,-1,-3]+[-1,2,-3]+[-2,-2,2] = [-1,-1,-4]

Note that you get a bonus for every (two here) pyramid pointing at yours! Now it's clear how much player C is worse, because he used his 3-pips, squandering 6 points, against the other players only 3-pips; the fact that they point to a 1-pip doesn't matter, since it's equal for all. It makes sense (and is fair) that player C is now 3 points behind the others.

More complicated situations can be thought of--some where the worst player even wins by rule (*)--but I believe that the basic idea stays the same, showing that rule (*) is unfair in a game with more than 2 players, and rule (**) is fair.

So, I would vote to change the official rules to make Branches and Twigs and Thorns a fair game for more than 2 players. Hope this is in time for Pyramid Arcade . . . 

Views: 166

Replies to This Discussion


Clearly, player C is doing worse than the other two players, because he uses twice a 3-pip to branch off an opponent's 1-pip, while players A and B use a 1-pip and a 2-pip respectively.

I've not studied the argument in great detail, so I may be missing some subtlety, but it seems like you are basing it off of your personal idea of what "fairness" and "doing worse" should be, instead of what they actually are in terms of the rules as written, and the strategic/tactical implications of the rules as written.

It seems perhaps analogous to someone wanting to change the rules of Chess so that a player who is checkmated does not in fact lose if he actually has more material still on the board, because the player with less material "is doing worse", so it's not "fair" that the player with less material would win. Just as a Chess player may cleverly sacrifice material (which might seem "worse" to do - surely it's bad to lose material!) if it wins the game by the actual victory conditions, similarly a Branches player may cleverly place their 3-pippers (which might seem "worse" to do - surely it's bad to place your 3-pippers pointing at another player's pyramid!) if it wins the game by the actual victory conditions.

I.e., is player C really "doing worse"? Or is player C simply playing well and exploiting the rules as they are, and their scoring implications?

Or so it seems to me as my initial reaction, though I'm willing to be convinced otherwise. :)

Either way, I cannot imagine arbitrarily changing the rules of the game based on such a seemingly subjective argument about "fairness" without at least confirming with the game's author (Andrew Plotkin) to get his agreement and blessing to change the rules.

Hi Russ,
You have some good and some not so good points.
Starting with "I've not studied the argument in great detail," doesn't give me much confidence in the usefulness of your reply. Nevertheless, for the other readers who take the time to study the few details, it will be evident that my rule is sound and gives identical results for a 2-player game. This takes care of your argument about its "arbitrariness".
A better point you make is to verify with the author what the intention of the rule is. Regardless of the follow-up, this is a forum to explore ideas. Everybody can judge rules for themselves and share findings and solutions. Worst case would be that the author and I don't agree on what fair means, better is to adopt both rules as viable (answering to different concepts of fairness), and best to acknowledge that the current rule is flawed and the new rule replaces it (and agreement on fairness is established).
Since yesterday I found another reason to adopt my rule. As the example shows, the current rule still allows for draws in clearly asymmetrical situations in which one player does worse than the others.

This game has, as mentioned, a history of changing the scoring rule. The first version ended too often in a draw. This tells me that "fairness" is perhaps still under development for this game and I hope to contribute to an improvement.
I will try to contact Andrew Plotkin and inform him of these developments. His input will no doubt have a bearing. Thank you for your initiative and involvement.

Ahoy Starship Captains!

In this follow-up I will correct a mistake I made in the previous post, share an amazing discovery, report back from Andrew Plotking (the inventor of the game), and give a different fair rule that I now believe is the true fair rule.


To my amazement, I discovered today that there are an infinite number of rules that are identical for 2-player games, but diverge for multiplayer games! That's a surprise to me and a stepping stone that allowed me to find the correct fair rule that I tried to find. 


But first, I'd like to correct rule (**) in the original post. I made a copying error. I apologize for the confusion. So, let's correct it immediately and then move on to my discoveries.

Of course, I meant the following.

  • (**) If a pyramid with a pips of player A is pointing to another pyramid with b pips of player B, then player A gets apenalty of a tokens, equal to the pip-count of their own pyramid, and player B gets a bonus of b tokens, equal to the pip-count of their own pyramid.

Notice that I just forgot to change values a into b and vice versa, when I copied it from rule (*). Once more, I apologize. This is not Facebook, so I can't change the original post. But this is the next best.


And indeed, I contacted Andrew Plotkin, who responded promptly. His answer to get involved in this discussion was the following (he is OK with me quoting him):

"However, it's been so many years since I've looked at it that I'm really no more of an expert than anybody else. I don't expect to touch the web page ever again. So decide whatever you want! I leave it up to you."

That leaves it up to us, then. So, let's go on with an open mind.


Well, I intend to figure out what is going on with this intriguing and fun game! I love a challenge. And as I said, I found an infinite number of rules that coincide for the 2-player variant.

Those rules are as follows. Take a parameter 0 <= t <= 1, and consider the following rule for this t.

  • (t) If a pyramid with a pips of player A is pointing to another pyramid with b pips of player B, then player A gets a penalty of t.b + (1 - t).tokens, and player B gets a bonus of t.a + (1 - t).b tokens.

What happens to B - A? Well, it becomes [B + (t.a + (1 - t).b)] - [A - (t.b + (1 - t).a)] = (B - A) + (b + a). Please, check this. Again, the result is identical as before: B - A + (a + b)! Fascinating, isn't it?

So, for any t, these rules coincide for a 2-player game! This gives a bit of a different idea of "arbitrariness", wouldn't you say?

Well, what does this tell us? It tells us that the 2-player variant is in fact a special case, even a degenerate case. That means that any of these infinite counting rules for a 2-player game are naturally fair. But if we want the rules to be fair for a multi-player game, we have to find out what t to use. Note that (*) is the rule where = 1 and (**) is the rule where t = 0. I had honestly no clue about that yesterday! Note that t does not in fact have to be anywhere between 0 and 1 (it can also be negative or bigger than 1), but as it happens, these seem to be the natural boundaries. At once we can spot that t = 1/2 would also be a nice choice for t; it seems to balance the two "extreme" rules (*) and (**) out. So, let's look at it closer.

What does the rule with = 1/2 actually mean? It means that player A pays half of the sum value of the involved pyramids to B. But as it stands, if the rule would be to consistently pay double that, it is even easier to grasp. Now we can see that there is really no use for the pot, other than to provide enough tokens across the board: all the exchanges of tokens go from the one that pays the penalty to the one that receives the bonus. So, a small says: it's cheap to dock (branch), but you have to add a penalty for the size of your ship. A large says: It's expensive to dock (branch), but you also need to add a penalty for the size of your ship. In effect, branching off from a large with a small is as "expensive" as branching off from a small with a large. i think that is fair. Notice that rules (*) and (**) aren't so symmetrical! And that was so puzzling at first, since rules (*) and (**) are quite natural.


So, let's look at a different situation again that bothered me today, because it showed that my new rule (**) was faulty as well.

(1*,-,(3,3)), (-,1*,(3,3)), (3,3,1*), (3,3,1*).

So, player C branches off with four larges, once with two larges from a small of player A and once with two larges from a small of player B. Also, players A and B branch off from a small of C, both with two larges. Note that player C squanders 4 larges and the other players squander 2 larges, a total of 4 to player C. This ought to balance out. Also, player C squanders them to different players, while he gets the four all for himself. Should player C win? I don't think so. He squanders more than the other players (double the amount) against the same smalls. Perhaps he should play even?

Rule (*) gives the score [6,0,-2] + [0,6,-2] + [-1,-1,6] + [-1,-1,6] = [4,4,8], C wins.

Rule (**) gives the score [2,0,-6] + [0,2,-6] + [-3,-3,2] + [-3,-3,2] = [-4,-4,-8], C loses.

The result of (**) does not feel like fair to me in this situation, and it proved to me that rule (**) is not better than rule (*). It's as far from a tie as (*), just in the opposite direction!

So, what does rule (1/2) do? It gives [4,0,-4] + [0,4,-4] + [-2,-2,4] + [-2,-2,4] = [0,0,0]! Ah! I can live with this, can you?

Note. Multiplying all scores by 2 wouldn't affect who will win! But it prevents half tokens . . . And it's a natural rule that the player being penalized should pay the sum of the values of the pyramids to the player being rewarded. We call this rule (1/2)'.

Perhaps you think it is bad to change my mind so quickly? Not at all, it's a sign of flexibility! As I have been trying to understand what is going on with the scoring rule in this game, I have discovered quite a surprising property of the 2-player game, didn't I? To preserve fairness for multi-player game I am now practically convinced that rule (1/2)--or its cousin (1/2)'--is best.

If we go back to the example I gave in my previous post, let's see what rule (1/2)' does in that case.

So, starting with 

(1*,1,3), (1,1*,3), (2,2,1*),

the score with (1/2)' will be

[6,-2,-4] + [-2,6,-4] + [-3,-3,6] = [1,1,-2],

so C loses, just as (**) predicted. Since the result that C loses is the same, it explains why I was so charmed by rule (**). Nevertheless, note that C loses differently in both cases.

With (**) all players are in debt and that is a bit strange, because player A for instance has a total of 4 pips pointing at his 1 by two ships and only points with one medium 2 to a 2 (if it had been two smalls it would have been different). So, player A should have a positive score. And the same for player B. Even though player C loses, it kept bothering me that the result wasn't totally intuitive after yesterday. Now I know why. It wasn't fair either!

Now, with rule (1/2)', we see that player C payed a net of 1 to player A and also 1 to player B. It seems fair. A property of rule (1/2) is that the sum of all penalties (counting negative) and bonuses (counting positive) is zero! So, whoever loses has a negative score, and the winner has the highest positive score.


Conclusion. Rule (1/2) or (1/2)' is the preferred scoring for multiplayer games of Branches and Twigs and Thorns!

I hope I showed that the scoring rule of this game is an intriguing little puzzle and that I solved it satisfactorily. Thanks for reading.

Your thoughts are welcome.

Hello Starship Captains, here is a short update about the 3-player version of the game.

I am playing sample games in a 3-player version to get a feeling for how the game develops under normal circumstances and how the rules fare (pun intended). I need these real games to prove that our exercise with these counting rules actually make a difference at least in some games.

I played 10 games in all now, each taking about 10 minutes or so and about 10 minutes more to register the scores and do the calculations. In 9 of them ALL rules agree. This was somewhat of a surprise. Perhaps that explains why nobody found any problem with the rules before?

However, today I played one game in which rule (**) was found unfair and rule (1/2) agreed with rule (*)! Another indicator that my previous rule (**) is not fair. When I have played some more games and get a better feeling for the strategy of the players, I will be able to tweak the games and find an example where rules (*) and (**)  do not agree, yet rule (1/2) agrees with rule (**), showing that rule (*) is not fair either.

Once I have found that game, I will post pictures of both "problem" cases, show the involved calculations, so you can see why rule (1/2) is in fact the only fair rule.

I find it exciting times for this "antique" game from 2002!

Ahoy Starship Captains,

in this update about Branches and Twigs and Thorns, I will clarify the fairness of the rule (1/2) a bit more. If you've been studying my notes, you will have noticed that the third player was actually not involved in any comparison. I realized that I just as well might do that and consider the relative score differences that occur for all the mentioned rules. In that way, you can easily see what the effect of each rule is on the third player. Further in this post, I will go over some general considerations for fairness and give more examples that show that rule (1/2) is really the rule to consider.


The first idea I want to illustrate is that when a player branches off of another player, then this event is independent of any other branching event that may already have happened or will later happen in the game. In other words, all branches can be studied independently. Another way of saying it is that the order in which they happen does not matter for the score. 
So, let's assume that a ship of size a of player A points to a ship of size b of player B. In our previous notation we wrote (a,b*) or in a 3-player game (a,b*,-). Note that with our previous notation in 3-player game (a,b*,c) = (a,b*,-) + (-,b*,c), so we can study any 3-player situation as the sum of two 2-player situations.
So, we can ask: how do the score differences change with any such situation (a,b*,-)? We have to consider the new differences B'-A', C'-A' and C'-B' in relation to the old ones B-A, C-A and C-B. Note that this time I have included player C in the calculation of the differences. It seems too obvious to overlook, but we are learning . . .
Rule (*): 

B'-A' = B+a - (A-b) = B-A + (a+b). We knew this already, but I include it for completeness.
C'-A' = C - (A-b) = C-A + b
C'-B' = C - (B+a) = C-B - a

Rule (**): 

B'-A' = B+b - (A-a) = B-A + (a+b). We knew this already, but I include it for completeness.
C'-A' = C - (A-a) = C-A + a
C'-B' = C - (B+b) = C-B - b

Rule (1/2):

B'-A' = B+(b+a)/2 - (A-(a+b)/2) = B-A + (a+b). We knew this already, but I include it for completeness.
C'-A' = C - (A-(a+b)/2) = C-A + (a+b)/2
C'-B' = C - (B+(a+b)/2) = C-B - (a+b)/2

General Note. Please verify that the score for a fourth player D will behave just like the score for player C and the difference D'-C' is not affected whatsoever. So, every player not involved in a branching will stay at the same level as before relative to each other, no matter what rule is used. That is why we only need to understand the dynamics in a 3-person game.

Rules (*) and (**). A player not involved in the branching will gain an advantage over the player that pays a penalty and a disadvantage relative to the one that receives a bonus, but the amounts seem to be arbitrary. With rule (*) the advantage gained equals the size of the pyramid of the player paying the penalty. With rule (**) the advantage gained equals the size of the pyramid of the player receiving the bonus.

Rule (1/2). A player not involved in the branching will gain an advantage over the player that pays a penalty and a disadvantage relative to the one that received a bonus, with an amount equal to half of the sum of the pyramids involved.


To show that rules (*) or (**) are really unfair, I will make it more explicit that the differences C'-A' and C'-B' should at least not depend on only one of the involved pyramids.

For instance, I would like the rules to obey the following fairness principle:

  • (F1) If in a game situations (a,b*,-), (-,a,b*) and (b*,-,a) happen, then all players should end up with equal score 0.

This is because everybody gains from one player and loses to another the equal amount of points. Let's compute the scores for the sum of these situations.

Rule (*): [-b,a,0] + [0,-b,a] + [a,0,-b] = [a-b,a-b,a-b]. Note that if a<b, then everybody loses b-a points; if a>b, then everybody gains a-b points; if a=b then nobody gains or loses.

Rule (**): [-a,b,0] + [0,-a,b] + [b,0,-a] = [b-a,b-a,b-a]. Note that if a<b, then everybody gains b-a; if a>b, then everybody loses a-b points; if a=b, then nobody gains or loses.

Rule (1/2): [-(a+b)/2,(a+b)/2,0] + [0,-(a+b)/2,(a+b)/2,0] + [(a+b)/2,0,-(a+b)/2] = [0,0,0]. Note that nobody gains or loses, and this result is independent of the values of a and b. This is what we want for a fair rule.

We can ask the question if the effect of rules (*) or (**) might be desirable. To answer this, consider the fourth player: they will either gain or lose an advantage, depending on whether a<b, or b<a (with whatever rule (*) or (**) is played). It seems arbitrary how this goes down and hardly fair. Either the fourth player (not involved in the branching) wins an unfair advantage over the other players, or the other players win an unfair advantage over the fourth player. I believe that the score should be 0, as with rule (1/2), so that a fourth player does not lose or gain from this interaction between the other players.


I would also like the rules to obey the following fairness principle:

  • (F2) if in a game (b,a*,-), (-,a,b*) and (b*,-,a) happen, then all players should end up with equal score 0.

Note. The only difference between (F2) and (F1) is that (a,b*,-) has been replaced by (b,a*,-)!

Again this should be fair, because everybody gains from one player and loses to another the equal amount of points. However, an easier way of saying this is that (a,b*,-) should have the same impact on everybody's score as (b,a*,-); e.g., branching off with a pawn from a queen is equally bad as branching off with a queen from a pawn. (Note that this IS how a 2-player game is scored after all.)

Another way of formulating (F2) would be:

  • (F2)' The score for situation s1 = (a,b*) + (b*,a) must equal the score for situation s2 = (a,b*) + (a*,b).

Let's see what happens: 

Rule (*). [s1] = [-b,a,0] + [a,-b,0] = [a-b,a-b,0], while [s2] = [-b,a,0] + [b,-a,0] = [0,0,0]. Note that in the first case, in fact where the situation between player A and B is truly symmetrical, player C is either a beneficiary of the situation if a<b, or duped if b<a. This seems hardly desirable. Perhaps we could live with the idea that if player A and B branch off of each other, then player C should ALWAYS have an advantage or ALWAYS have a disadvantage; it shouldn't depend on what particular pyramids are used which of the two it is going to be, should it?

Rule (**). [s1] = [-a,b,0] + [b,-a,0] = [b-a,b-a,0], while [s2] = [-a,b,0] + [a,-b,0] = [0,0,0]. Again we see a similar asymmetry occur as with rule (*).

Rule (1/2). [s1] = [-(a+b)/2,(a+b)/2,0] + [(a+b)/2,-(a+b)/2,0] = [0,0,0], while
[s2] = [-(a+b)/2,(a+b)/2,0] + [(a+b)/2,-(a+b)/2,0] = [0,0,0]. Now the situations cancel out as desired.

Note. Since in the case of rule (1/2) the score equals 0 for all involved players, this means that it doesn't have any unfair effect, neither for the involved players, neither for the other players. This seems to be desirable for a fair rule.


This concludes my current investigation. I will try and play appropriate games which demonstrate these principles and then post pictures of the game end. I played about six 2-player games and am gaining experience with the strategy. The game is totally intriguing. We discovered that being the first to branch off of your opponent may be advantageous! I remember (only a few weeks ago) that it seemed that one had to postpone it the longest, but it isn't so . . .


Any observations, remarks or questions about this post are welcome.



  • Add Photos
  • View All

© 2018   Created by Ning Administrator.   Powered by

Badges  |  Report an Issue  |  Terms of Service