Posts for year 2008

Stock market reduction

We’ve been playing 1889 lately (3 games in three days). It sparked the following game notion (and thus the creation of this category):

  • Something akin to an 1830-esque 2D stock market
  • A fairly large deck of cards, each card bearing the name of a company and an arrow (right, left, up, down)
    • Some cards may have double arrows
  • The deck of cards is shuffled and some number are laid out in an ordered draught pool
    • The draught pool should be long, providing a long view into the future.
  • One their turn a player may: 1. Buy one share
    • If all shares of a company are in player’s hands at the end of a round, the stock value moves up a row 1. Sell any number of shares
    • On share sales, stock value moves down one row per sold share 1830-style 1. Play one or two cards from their hand
    • Each played card affects the stock value of the names company by moving its stock value in the arrowed direction
    • Assume a smallish hand-size limit, perhaps 5 1. Draught any two cards from the pool
    • As soon as a card is draughted a new card is drawn and added to the new end of the draught pool
    • The oldest card is free
    • If one of the new cards is draughted the draughting player must place $N on each older card in the draught pool, sweetening those cards for later players
    • If a card bearing money is draughted the draughting player takes the money
  • The Game is played until the card deck is exhausted
  • The deck is then inverted (no shuffling) and the game continues through the ordered deck
  • Once the draught deck is exhausted the game is over
    • Players cash in their shares
    • Player with the largest net worth wins

Possible extension:

  • Instead of the cards bearing a company and an arrow, have two decks, one of companies and another of arrows and players must draught one card from each deck’s pool and play two cards (one of each) on their turn

In for a pound

Structures to toy with:

  • Tichu-style, the hand starts with a round of passing:
  • Two cards to each player
  • Review the passed cards
  • Two more cards to your partner
  • It is possible that’s too much passing
  • Played cards are arranged in a 2D grid. Each row and column of contiguous cards must either form a meld or a legal subset of a meld
  • Cards may only be played in positions in which they extend (potential) melds both directions
  • Cards may not be played in positions in which they conflict with potential melds in any direction
    • Are full houses legal melds?
    • Stairs?
  • One their turn a player may play a single card or pass
  • If they play a single card they may then do one of:
  • Play a second card adjacent to the first (any direction)
  • Play a PASS card
    • Each player has N PASS cards
    • PASS cards immediately pass control to the partner and are lost when played
  • Place or recover their BLOCK
    • Each player has one BLOCK
    • BLOCKs mark positions that may not be played in
    • Should a trick end while blocks are still in play they are lost
  • Pass
  • Suits should probably wrap, 10-11-12-1-2 style

Divination of intent and thence coordination seems the core problem of a partnership game. More standard partnership card games communicate richly by what is/is_not played when and how that pattern relates to the goals of the partnership. Not One More also supports extensive signalling in the card grid, but it is both extraordinarily rich and extraordinarily diffuse, making divination and coordination hard. The primary idea of the above structures is to add more discrete signalling methods between partners.

Deconstructed Uno

A chat with Ben Keightley on #bgdf_chat (I’m using the wonderful irssi instead of BitchX these days, so the formatting is a little different than previous log posts):

11:34 | clearclaw > You rarely play card games, right Ben?

11:35 | Coca_Lite > That’s right, I don’t play a lot of card games.

11:35 > clearclaw nods

11:35 | Coca_Lite > Not ‘traditional’ card games, anyway. I play a lot of Race for the Galaxy but I don’t think that’s what you mean.

11:35 > clearclaw nods. I’ve been noodling a sort of reverse climbing game

11:37 | clearclaw > The core element of the noodle is that played cards form melds against the other player’s played cards

11:37 | clearclaw > And the player of the last card that is part of the highest value meld is the current trick-winner

11:37 | clearclaw > The idea is to extend hand-management out of just to player’s hand to extend across all the hands of all the players.

11:37 | Coca_Lite > Love it.

11:39 | clearclaw > Thus one player leads an ace, another follows with a second ace and is therefore winning with a pair of aces, a third plays a 2, someone plays a pair of twos and is winning with trip 2s, then someone plays 3/4/5 to win with the A/2/3/4/5 etc.

11:40 | Coca_Lite > Yes, I love it. Lately you can take any game and add ‘…without the auction!’ to it, and I’m sold. Your game sounds like Modern Art…without the auction.

11:41 > clearclaw grins. I kinda like it too. Had the idea and posted it last night.

12:28 | clearclaw > Naming the inverse climbing game NotOneMore for the nonce, Tichu-style stairs are simply too hard to calculate comparative probabilities on.

12:29 | clearclaw > That leaves either the standard meld types of pairs, trips, 4-of-a-kind and rummy-esque runs, or going for the Poker set.

12:29 | clearclaw > Current thoughts are:

12:30 | clearclaw > Must either follow suit lead or must extend what has already been played toward a potentially winning meld or must fold.

12:30 | clearclaw > If fold can’t play in that trick any more

12:32 | clearclaw > Once all players pass trick is resolved

12:32 | clearclaw > Possible: If all players pass except the last player to play a card, they may NOT play again.

12:33 | clearclaw > Player may play one or two cards on their turn.

12:34 | clearclaw > Thinking of making melds have the value of the lowest card in them. That would weaken the already enormously powerful straights.

12:35 | clearclaw > Physicality would be all players toss cards into the central pot. As each player takes the lead they take the cards they want from the pot and build their winning meld before them.

12:35 | clearclaw > As they are superceded they toss that back in and another player builds the new winning meld.

12:37 | Coca_Lite > Once a card is ‘committed’ to a meld, it should stay there. No rearranging melds willy-nilly.

12:37 | clearclaw > Why?

12:38 | clearclaw > (asides from the explosive complexity)

12:38 | Coca_Lite > Explosive complexity, and to force early commitments by players.

12:38 | clearclaw > Fair point

12:39 | clearclaw > I’ve been more worried by having the game consist of only one trick as all players play all their cards in the first trick

12:40 | clearclaw > I had been thinking of various 2D arrangements of cards which expressed multi-member participations.

12:40 | clearclaw > And each player has a marker. If the marker is on the graph they are winning. As they are superceded another player becomes King of the Hill.

12:41 | clearclaw > Having committed cards would reduce the single-trick problem greatly.

12:41 | clearclaw > And would put in some interesting hand-management aspects.

12:42 | Coca_Lite > OK, or something like: each player has his own deck of cards with a colored back. Cards contributed to melds score for owners.

12:50 | clearclaw > How about each player plays 1 or 2 cards. The first card must be placed adjacent to a previously played card and the next card (if played) adjacent to that. If the player’s played card(s) form a winning meld they put their marker on one. Any previous player’s marker is removed from the board.

12:51 | clearclaw > Rows and columns of cards must either form legal melds or fractions there-of

12:51 | clearclaw > The value of a meld is the lowest value card in the meld

12:52 | Coca_Lite > Yeesh, it’s starting to sound like deconstructed Uno

12:52 | clearclaw > Scrabble-icious.

12:52 | clearclaw > I thought Uno was only a matching game?

12:52 > clearclaw has never played Uno

12:53 | doho123 > Uno is crazy eights

12:53 | doho123 > Match either the rank or suit of the previously played card

12:53 | clearclaw > I’ve not played that either. Just read the ‘geek page.

12:54 | clearclaw > Discard matching.

12:54 | doho123 > Right

12:54 | clearclaw > The “array” is sort of an agglomerative discard pile I guess.

12:55 | clearclaw > Yes, deconstructed Uno. Ha!

Tricky climb

An odd idea, not yet fully enfranchised into a game. Consider a (relatively standard) climbing game, perhaps along the lines of Mu, however rather than players playing cards in sets they would iteratively play them one at a time until everyone passes1. The key element would be that rather than a player’s played cards forming the sets within themselves, they would instead form sets within the space of all cards played for that “trick”. For instance:

  1. PlayerA: Leads an Ace.
  2. PlayerB: Follows with another Ace and is therefore winning with two Aces.
  3. PlayerC: Follows with an 8.
  4. PlayerD: Follows with a pair of 8s and is therefore winning with three 8s. …etc.

Problem:

  • Determining who is winning the current “trick”.
  • Requirements for following.
  • How points are assigned
  • Method required to denote who is currently winning the trick

Initial thoughts:

  • 5 suits (perhaps a Sticheln deck)
  • Do not need to follow suit
  • May play any number of cards so long as the total number of cards played by that player in the trick is no more than one larger than the total number of cards played by the previously card-count leader[^2].
  • Suits are circularly ordered with the lead suit high and the others following in a constant rotational order
  • Standard meld definitions including Tichu’s stairs.
  • Each meld in the taken trick scores the value of the highest card in the meld, with arrangement of melds organised so as to minimise left over cards
  • Left over cards and singletons don’t score

  1. Echoes of Mu’s bidding again. 

Decay of fortunate capacity

Power Grid’s market system with the two layers of plants is interesting and provides a deceptively large degree of control and prediction. It really is quite clever while presenting a surprisingly predictable pattern. Space Race has the problem that while it models something akin to the 18XX train rusting progression, the intended sequence is so short (3 layers) that incentivising player progression is worse than tetchy. I’m not sure I can learn from Power Grid here, but it is tempting.

A possible address is to model the total productive capacity of the system, to cumulatively sum the total production to date. As that total production volume crosses pre-set thresholds the next layer becomes available and of course as the third layer is entered all level 1 factories rust. This could essentially arithmetic sum could be modelled in several ways, actually tracking total production volume as a calculated sum or simply having bits from a limited supply which are discarded as they are used1.

With such an approach it becomes tempting to add a fourth level of factory, a pure consumer. We could call it the Centre Of Government or some such silliness (themed after Asimov’s Foundation universe?). It would either be notably expensive or force auctioned at another production volume threshold. There would be only one CoG, and while it wouldn’t necessarily rust the level 2 factories2 it would consume both level 2 and level 3 goods until the end of the game, with all fees and payments recorded as usual for route-based deliveries. Variously interesting curves could be applied to the system. Perphaps the market value of the CoG pseudo-product would likely decline continuously, forcing a race between additional factory construction/operation, run-away CoG ROI and endgame acceleration? Similarly a race could be constructed between the level 2 and level 3 factories based on the game-length required for equivalent profit volume3?

Such a system has advantages. The level 1 factories would be (mostly) unprofitable but failing to buy into them would allow those that do to be extremely profitable and to have undue leverage into the level 2 factories and economy. The real value of the level 1 factories would be to establish market relationships for exploitative level 2 factory upgrades which would actually be profitable. This would of course also require ensuring a limited supply of Level 2 factories (possibly by spacing rules rather than count?). The level 3 factories would then be similarly constrained4. And likewise for the level 4 CoG factory: placement constricted by neighbourhood. Such placement rules could be quite interesting and offer an attractive short-long planning aspect.

Methinks I should spend more time in the shower.


  1. If the progression needs to be a little more complex than a straight sum, then extra units could be discarded to act as a controlled accelerator. For instance each turn’s production is discarded along with a matching set of the most voluminously produced colour. 

  2. This needs to be examined in some detail. It is tempting to not ruse the level 2 factories and thus provide a profit race between the level 2 and level 3 factories. Conversely it is tempting to rust the level 2 factories and thus provide a severe investment management headache 

  3. Echoes of the Wabash in Wabash Cannonball. 

  4. Likely a formal proof would be needed to ensure that deadlock spacing arrangements wouldn’t be possible 

Shading dark

I generated a 7-depth Penrose tiling last night. It took most of the night.

Axiom:
  [N]++[N]++[N]++[N]++[N]
Rules:
  M=OA++pA—-NA[-OA----MA]++;
  N=+OA–PA[---MA--NA]+;
  O=-MA++NA[+++OA++PA]-;
  P=–OA++++MA[+PA++++NA]–NA;
  A=
Angle:36

The tiled SVG’s generated by the L-System are prone to very high rates of duplicate elements. They’re also extremely slow and system intensive to process under Inkscape as the entire graph is rendered as a single bazillion-point object. Handling the performance problem is simple enough: Inkscape/Edit/Select_All and then break up the object with Inkscape/Path/Break_Apart. Ahh, much better.

Handling the duplicates is tougher. There are simple duplicate elements, PATH elements with identical attributes and vertices and there are path elements which are identical except that they list the vertices in a different order. The former are easy to remove. Just fold the raw XML document so that all PATH entries occupy but a single line, sort the PATH elements and then remove all duplicates. In my case I just extracted the PATH elements to an external text file, wrote a quick XEmacs macro to make each PATH element single-line and then did:

$ sort outfile.xml | uniq 

Voila! All identical PATH elements removed. This simplistic dupe-removal reduced the file size by approximately 30%.

I looked at removing the duplicate-vertex elements but found it too hard for a quick hack fix. In short I’d have to extract all the path elements and then the vertices for each element, sort them and then do duplicate removal. That was more than I was willing to be bothered with. However while wandering the data I noticed that there were many 7 vertex elements whose vertices precisely overlaid the vertexes of other elements (exception: a small few elements at the edge of the graph). With the exception of the ones at the edge of the graph, they were all redundant. Remove them:

$ grep -v "path.*M.*L.*L.*L.*L.*L.*L"  outfile.svg

While a plain white mesh is pleasantly clear, I had the idea of colouring the tiles to give a bit of a stereoscopic effect.

#! /usr/bin/env python
import sys
in_f = open (sys.argv[1], "r")
out_f = open (sys.argv[2], "w")
ndx = 0
for line in in_f:
  if ndx % 3 == 1:
    line = line.replace ('fill:none', 'fill:#999999')
  if ndx % 3 == 2:
    line = line.replace ('fill:none', 'fill:#cccccc')
  out_f.write (line)
  ndx += 1
in_f.close ()
out_f.close ()

The effect of which is to assign a fill colour to two thirds of the elements, a different colour for each third

Inkscape-LSystem-PenroseRender-Big-Coloured

I like it.

Inkscape, L-Systems, SVG, Penrose and other tilings

I’ve been playing with the L-System support in Inkscape, generating Penrose Tilings. Damn this is clever neat nifty fun!

Axiom: 
  [N]++[N]++[N]++[N]++[N]
Rules:
  M=OA++pA----NA[-OA----MA]++;
  N=+OA--PA[---MA--NA]+;
  O=-MA++NA[+++OA++PA]-;
  P=--OA++++MA[+PA++++NA]--NA;
  A=
Angle:36

Just drop that into Inkscape/Effect/Render/L-System (put all the rules on one line) and you should get this:

Inkscape-LSystem-PenroseRender

Increase the Order value and it will iterate more, drawing a larger graph. Be careful though as execution time grows exponentially as the number of iterations grows.

Inkscape-LSystem-PenroseRender-Big

Some other L-system-derived graphs produced with Inkscape:

Axiom:
  f
Rules:
  f=-f+f+g[+f+f]-;
  g=gg;
Angle: 60

LSystem-Hex

Or perhaps more entertainingly:

Axiom:
  W
Rules:
  W=+++X--F--ZFX+;
  X=---W++F++YFW-;
  Y=+ZFX--F--Z+++;
  Z=-YFW++F++Y---;
Angle: 30

LSystem-Lace

Yes, that’s a single continuous line in what is known as a space filling curve. Wander about Wikipedia or with a search engine and you’ll find many other little L-system programs for other tilings or space filling curves. Plug them in and play! They’re not only a heck of a lot of fun but such curious tilings can easily form the backdrop for interesting games and there are many many such interesting patterns.

5711f24bc6717f9efd48c93e82fbc2e1

Peeling player onions

Attempting a taxonomy of player interaction along a scale of increasingly personal relations:

Absent interaction

The simplest form: there is simply nothing the players can do to affect each other and thus no form of profitable reaction to another player’s choice or inversely, prompt a player to change course in reaction to your choice. Games absent interaction are the poster children for Multi-Player Solitaire.

Recognition interaction

There’s no requirement for understanding or predicting the other players, merely recognition that they exist and have potentials that may affect the results of your game. qDominion (usually) falls in this camp (there are small exceptions). Knowledge of the specifics of the other players is rarely if ever useful, but an overview of the gestalt of all the other players en masse is useful. Do any of them have any of XYZ cards? What is the rate of consumption of the QRS card stack across all players? The answers to such questions can profitably inform play choices.

Predictive interaction

Ahh, the first tremblings of mutual-perception! The question isn’t what effects a player may enforce on another, but rather how correct choice-prediction (and thus correct counter-counter-counter-counter–ad-infinitum-choice-prediction) may be translated into an advantage. The classic recent case is Race for the Galaxy; a game in which there are significant efficiency gains for drafting on other player’s choices. Predictive interaction is a slippery beast as it has a strong harmonic in Personal Interaction and a weaker harmonic in Personal Direct Interaction.(see below).

Direct interaction

Players intimately affect each other, contructively, obstructively and destructively. They may help each other’s success, obstruct success, or directly destroy or foul each other’s success. I sank your battleship! The effects can range from the relatively subtle taking of a limited resource another had planned on taking themselves (eg roles in Puerto Rico, actions in Age of Steam, station markers or track tiles in the 18XX) to the very direct destruction or removal of player value (eg stock trashing and loot’n’dump in the 18XX, conquest and possible elimination in Risk, dumping a high point pain card on an opponent in Sticheln, or almost any player-interaction in Diplomacy).

Direct interaction can be sub-divided into Impersonal and Personal types

Personal Direct Interaction is the targeted subset of Direct Interaction and a weak harmonic of Predictive Interaction (due to the requirement of accurate player incentive/value prediction in foiling player’s personal success). The qualifier is that the subject is explicitly and deliberately targeted. Something isn’t done to all players or to any random player, but specifically to specific player with deliberate (ill) intent for that specific player’s success. Settlers of Catan‘s monopoly card card (all other players give the player all their resources of a given type) and calling time in Galaxy Trucker are usually Impersonal Direct Interaction as they are indiscriminate effects. In contrast encouraging a large bribe in Intrigue and then reneging on the implied or promised deal, building walls in another player’s presumed territory, using “their” resources” to cut them off from “their” buildings, or simply conquering a player’s temples and territory and annihilating their military and conquering their territory in Antike is Personal Direct Interaction.

Personal interaction

The return of subtlety. Here the ticket isn’t to recognise or even so much to predict, but to comprehend the player(s) intimately. The challenge is to not only predict their immediate choices, but their patterns, their strengths and weaknesses as players, their intersection of character and individuality with the game and by the advantage of exploiting that intimate and intensely subjective comprehension, to beat them. Personal Interaction is a strong harmonic of both Predictive Interaction and Personal Direct Interaction (see above).

Observations

It is worth noting that the above divisions aren’t quite linear or evenly spaced along the not-quite-a-scale. That’s a problem with the soft-sciences: straight lines aren’t. Most noticeably Personal Interaction is variously orthogonal to both forms of Direct Interaction and the line between Subjective Interaction and Direct Interaction isn’t quite straight through Predictive Interaction.

Apocryphally, women as a gender are commonly said to dislike the destructive sides of Direct Interaction. I’ve not noticed that gender bias but several of the players I commonly play with (mostly male FWVLIW) share that trait: they are only interested in constructive positive-sum games. Additionally different players have various detection and preference ranges for the interaction levels they prefer. While I can detect the inter-player interaction among players of Race for the Galaxy it is too diffuse and impersonal to appeal to me. Similarly Impersonal Direct Interaction has little appeal for me. In contrast one of the chaps I play with1 simply isn’t comfortable with any form of Personal Direct Interaction where-as another chap pooh-poohs and avoids anything which doesn’t operate at the deepest level of Personal Interaction.


  1. Names withheld to protect the guilty (of course).