Spaces

Spaces are table entities that define placement areas, ownership zones, and generated layouts.

What spaces are

Spaces are guidance and rules entities for the table. They tell players where pieces belong, who can access an area, and how placement should be organized.

How the system uses spaces

  • spaces provide placement targets and placement constraints
  • spaces can carry access and visibility semantics
  • spaces can normalize the rotation of the pieces sitting in them
  • spaces are below pieces in table layering so pieces remain the primary manipulated objects, unless a space is set to draw over them
  • layouts generate multiple spaces from a compact configuration instead of storing a separate layout runtime family

Visibility

A space is visible by default, so a table you have just laid out looks like the table you laid out. Hide an individual space with the Visible switch in its Space Settings when you want the rule without the outline, and it stays hidden until you turn it back on.

Changing the default did not change spaces that already existed. A space you hid before, or a space on a table you built earlier, keeps exactly the visibility it had.

Drawing over pieces

A space normally draws under the pieces placed in it. Turn on Draw Over Pieces in the Appearance section of its Space Settings when the space should sit on top instead: a frame around a card, a highlight, a cover, or a marker that has to stay readable over whatever is placed there. Use the Fill Opacity slider to decide how much of the pieces shows through.

Drawing on top is only a picture. A click on a piece under the space still picks up the piece, so play works exactly as it does with any other space. To select or move the space itself, switch to Edit mode and use Target Spaces as usual.

Player areas do not offer this setting. Every space starts drawing under its pieces, and spaces that existed before the setting arrived are unchanged.

Dragging a run of cards

Dragging a card out of a space normally takes just that card, as you want for a hand of cards fanned out where they overlap. For a solitaire column, where you move a card together with every card laid on top of it, turn on Carry Pieces On Top in the Layout tab of the space's Space Settings. Then dragging a card in that space brings along every piece above it in the space, in one drag. Drop the run on another column and it lands there in the same order: below the cards already there, above them with the Prepend sort order, or where you drop it with As Inserted. A column lying on a mat or board, or printed on its face, works the same way.

  • Only pieces in the same space come along, and only those above the card you drag. Dragging the top card moves it alone.
  • A token resting on a card still rides that card, as everywhere on the table. Dragging the token itself moves only the token, never the cards under it.
  • A locked card stays where it is, and a card someone else is holding is left behind.
  • Every space starts with the setting off, and spaces that existed before it arrived are unchanged.

Turning the new top card face up

In a Klondike tableau column, the card under the one you move turns face up. Turn on Flip New Top Card in the Auto tab of the space's Space Settings to have the table do that for you: whenever the top card is taken out of the space (dragged off, alone or with a run on top, moved to a hand or trashed), the card now on top of the space turns face up.

  • The top card is the one drawn over all the others in the space. Taking a card from under it turns nothing over.
  • The flip shows at once for you and for every other player, and it is part of the same action: one undo puts the card back and turns the new top card face down again.
  • Moving, gathering or deleting a great many cards at once turns over only the card left on top when it is done, however many cards it takes.
  • It turns over cards. A stack lying on top of the space is left as it is: for a stack, use the stack's own Flip New Top Card setting. A locked card, or a card with spaces on its face, is left as it is too, as it would be if you turned it over yourself.
  • A card it turns face up counts as revealed, and a trigger for a card being turned face up runs for it.
  • Every space starts with the setting off, and spaces that existed before it arrived are unchanged. Pythia turns it on when it sets up a game like Klondike.

Spaces inside spaces

A space can sit inside another space, the way card slots sit on a player mat. Put a space entirely inside another one, by adding it there from the Entity Browser or by dragging an existing space in, and it sits in that space:

  • It travels with it. Drag the player area (or a mat) and every space inside it comes along, with the pieces in all of them. When Table Settings lays the player areas out again, their slots go with them. Turn the outer space and the spaces inside it turn with it, keeping their place, and so do the pieces in them.
  • It must stay entirely inside. Touching the edge is fine; a space dragged half out of the one it sits in is refused, and so is making the outer space too small for the spaces inside it. Drag a space fully out onto the table and it sits on the table again.
  • Spaces inside the same space keep the usual small gap between them, as spaces on the table do.
  • A piece dropped where two spaces overlap goes to the innermost one: a card dropped on a slot joins the slot, not the player area around it. When the slot will not take it (it is full, or does not accept that kind of piece), the area around it takes it instead.
  • Sending the outer space to the trash sends the spaces inside it too, and their pieces stay on the table. Restoring it brings them back in place. Removing a seat removes the slots in its area.
  • Saving the table as a configuration, starting a table from one, copying and pasting, and game archives all keep a space inside the space it was in.

A space inside a player's area counts as part of that player's area: peeking, closed player areas, sequences that pick pieces "in a player's own space" and dealing to tagged spaces all treat a slot on a player's mat as theirs.

Spaces on a card, mat or board

A space can also sit on a face of a tile: a card, a player mat, a board. Each face has its own spaces, so a mat can have card slots on its front and a different set, or none, on its back.

  • Adding one. Right-click the tile where you want the space, pick Add Entities, and add a space: it goes on the face that is showing, centred where you clicked. It must lie entirely on the tile and keep the usual small gap from the other spaces on that face; if it is too big for the tile, you are told so. A layout added on a tile goes on it the same way.
  • Moving one. Drag a space onto a tile and it goes on the face showing. Drag a space on a tile around the tile and it stays on it; drag it fully off and it sits on the table again. Resizing or turning it keeps it where it is on the face. A space holding other spaces cannot go on a tile.
  • It goes where the tile goes. Move, turn or exhaust the tile, however you do it, and its spaces move and turn with it. Pieces in those spaces come along exactly once and keep their place in their space. A card in a slot on a mat also rides the mat when you drag the mat, even where it hangs over the mat's edge.
  • Only the face showing is in play. The spaces on the face turned down are not shown, do not take drops, are not counted, and are never sent to any player's browser, so they give nothing away about the hidden face. Turn the tile over and its other face's spaces come out.
  • Turning it over is refused while a space on it holds something. Take the pieces off its spaces first; you are told what is in the way.
  • When the tile leaves the table (to a hand, a deck, a bag, the trash or the box), anything in its spaces stays on the table where it was. Its spaces come back when the tile does. Emptying the tile from the trash removes its spaces for good.
  • Copies keep them. Duplicating, copying and pasting the tile copies the spaces on both faces, empty. Saving the table as a configuration, starting a table from one, and game archives keep every space on the face it was on.
  • Access. A space on a tile takes the access of the space the tile lies in, unless you set its own: slots on a mat lying in a private player area are private too, and count as that player's.
  • Picking one. A space on a tile draws on top of the tile and under the pieces in it. Clicking it picks the tile, as clicking any piece does; to select the space itself, turn off Target Pieces.

The spaces belong to that one tile, not to every copy of its card in the game. Drawing slots on one card does not draw them on the other copies.

Which pieces a space holds

A space holds the pieces that sit in it. A piece counts as sitting in a space when its center is inside the space's outline (for a point space, when it is on or near the point), the space accepts that kind of piece, you may reach into it, and the space has room for it. A turned space is judged by the outline you see: a piece on the visible end of a space turned on its side is in it, and the corners the space turned away from are not. A book open on a spread is judged, and centred in a space, by the whole spread you see. A space in a custom shape is judged by the shape itself, not the rectangle around it, so a piece dropped in the cut-away part of one map region goes to the region it is really on. A piece that a custom space centres is centred inside the shape, even when the middle of its rectangle is cut away. The same rule applies after a piece in a custom space moves (a flick, a roll, a resize, an arrange or a sequence step): if its center leaves the drawn shape, it leaves the space and joins whatever space it now sits in, such as the neighbouring map region. The one exception is a space with a row, grid, column, fan or scatter layout. That layout places its pieces across the whole rectangle, so a piece in one stays while its center is inside the rectangle. The same outline decides how close two spaces may be.

While you drag a piece, the space it will go into lights up, and only that one. It is the innermost space that takes the piece, never a space you cannot reach, one that is full, or one that does not accept that piece. It is judged where the piece will land: a piece dragged past the table's edge lands at the edge, a group dragged past it comes back on together, and a piece dragged out of your hand is put down centred on the pointer, snapped to the grid when the table has one. When no space lights up, the piece lands on the open table.

The moment you let go, the piece shows where it lands: its slot in a row, grid, column or fan, its spot in a scatter space, the table's edge. A piece thrown into a scatter space lands on a spot of its own; drop it in at another point and it lands somewhere new. A card dropped onto a pile in a stack space shows on top of the pile at once and joins the pile a moment later, when the save is done.

A space's required tags, blocked tags and allowed colors ignore blank entries and letter case, so an empty required tag requires nothing.

This follows the piece wherever it goes, not only when you drag and drop it:

  • Resize a card in Edit mode, type new coordinates in its settings, or line pieces up with Arrange, and a piece that ends up outside its space leaves it. One that ends up on a space joins it.
  • A copy, a paste, a card taken out of a sleeve, a ring taken off a pawn, a token peeled off a pile or dispensed from a bowl, a new piece added from the browser, and an imported piece all belong to the space they land in, never to the space of the piece they came from.
  • Making a space smaller lets go of any piece it no longer covers. Moving a player area, whether you drag it or Table Settings lays the areas out again, takes the pieces in it along.
  • A flick, or anything else that moves a piece without it leaving its space, keeps its place in the space's order. Only putting a piece down again moves it to the end: dropping a piece back into the space it is already in counts as placing it there again.

Who can reach a space

A space's Access setting decides who may act on the pieces inside it: All Players, specific seats, or the seats adjacent to its owner. Others Can See is a separate question, and the two do different jobs.

  • Access is who may pick a piece up, draw from a deck, press a button, move anything.
  • Others Can See is what everyone else is shown: Everything, just an occupancy count, or Nothing.

A space inside another space, or on a tile lying in another space, uses the access of that space unless you set its own. A slot on a private player mat is private too, with no setting to change. In the slot's Space Settings the Access choice Same as the outer space shows what it currently inherits; choose any other Access to give the slot its own. A space's piece count, where others are shown one, includes the pieces in the spaces inside it.

Setting Others Can See to Everything while Access is limited to certain seats is a normal thing to want, and it means exactly what it says: other players watch that area in full and cannot touch it. Seeing is not touching. A piece you may not reach shows the ordinary table pointer rather than the grab hand, and a press on it pans the table the same way a press on bare felt does.

Rotate on placement

A space decides how the pieces sitting in it are angled. There are three choices in Space Settings:

  • Follow Space -- a piece lines up with the space when it arrives, whatever angle it came in at. Turn it afterwards and it turns from there, like a card turned in its slot. Nothing about the space is written to the piece, so taking it out shows the piece at its own angle, including any turn you gave it. Rows, grids and fans turn with the space too, so a rotated space reads as a rotated slot rather than a straight line of cocked cards. This is the default for new spaces.
  • Keep Current -- pieces are left at whatever angle they already had.
  • Rotate to Fit -- the space's angle is written onto the piece permanently. Take it out and it stays turned.

Follow Space lines a piece up, it does not add to it: a card turned 20 degrees dropped into a space turned 30 degrees is drawn at 30, not 50. Rotate it 90 degrees there and it is drawn at 120. Exhausting a card still reads as a turn relative to its slot, exactly as it does under Rotate to Fit.

Player areas use Keep Current, so the cards a player sets out in their area sit at the angles they choose. Spaces that existed before Follow Space arrived were left on Keep Current too, so no table changes the way it looks on its own.

Space categories

Triggers

Spaces support reactive triggers that fire when pieces enter or leave:

  • Piece Added -- fires when a piece is placed on the space
  • Piece Removed -- fires when a piece is removed from the space

Space triggers can filter by piece type and tags. See Triggers for full details.