GCPP:Proposal-Platy

From YPPedia

Puzzle Codename: Platy

Contact
Username: Fiddler
Additional contact info: Orsino on all oceans, mainly Viridian
Project forum thread: GCPP Forum thread
Gcpp big logo.png A prototype is available for this proposal.
Check it out and contribute to the design!



Game concept

Tantrix with goals, bonuses, and penalties.

Objective

To complete loops of "thread" on the playing board. Longer loops score more, as do loops with fewer colors. Loops that pass through one or all of the bonus pieces score better still.

Gameplay

The game board is a grid of hexagonal pieces 8 columns wide and 14 rows high. The outer two columns and the top and bottom row cannot be rotated by the player, though they can be removed from the board when used in a loop. Each piece consists of one to three "threads" of between two to five different colors, depending on the difficulty level. The movable pieces can be clicked to rotate them clockwise or counter-clockwise. Each different piece that is clicked counts as a move.

The basic goal of the game is to complete loops of thread using the pieces provided on the board. As each loop is completed, the pieces used in the loop and any caught inside the loop are instantly removed from the board and the pieces below them in the columns slide up, with new pieces filling in at the bottom of the column. Under each column is an indicator of the remaining number of pieces for that column.

The pieces in the two side columns that are greyed out will always be short curves pointing back to the playing board. As pieces slide up to fill in for removed pieces, any piece already present on the board that ends up in one of the top three "unmovable" spots will be rotated so that a long curve connect the two bordering movable spots. If the piece does not have a long curve on it, it will be transformed according to a specific chart yet to be drawn up. New pieces created to fill in the bottom three unmovable spots will always have a long curve facing the playing board.

At the bottom of the screen is a move-counter. If the move counter reaches zero, the middle two rows of the gameboard are removed and a penalty is assessed against the player's score. The move counter goes down by one for every piece that is clicked on the gameboard. When a simple loop (i.e. not created using a bonus piece) is created the move counter goes up one for each three pieces used in the loop.

On each screen two to eight (depending on difficulty) pieces are highlighted. Looping through these bonus pieces provides a score multiplier. Looping through all of them will provide an additional bonus and reset the move counter.

Walkthrough

Fig. 1

As you start the game a random selection of pieces fill the board. There are two goals at the bottom, along with the move counter in blue. Underneath each column of pieces is another counter, in white numbers.

Fig. 2
Fig. 3

Immediately you notice a simple loop that can be formed in the upper left corner of the board. You click on one piece and rotate it around until it completes the loop.

Fig. 4

Clicking on that one piece has reduced your move counter by one move.

Fig. 5

As the pieces used in the loop disappear from the board, the counter beneath the columns decreases for each piece used. In addition, you receive one move back on your move counter for completing a loop four pieces long.

Fig. 6
Fig. 7
Fig. 8

As new pieces slide in from the bottom, the remaining pieces are slid up from the bottom. This forms a chain, clearing out the pieces used in that loop. Chains are worth very little so they don't count against your column piece count or against your move count. They only add a slight bonus to your score.


Fig. 9

Looking at your new board you notice two possibilities - a huge loop you can make with only a dozen moves or a smaller loop, made with only 3 moves. Deciding to go for the huge loop, you click on the 12 pieces, rotating them into place and creating a loop 24 pieces long.

Fig. 10

In addition to the 24 pieces used in the loop, the ten pieces trapped inside the loop also disappear. You receive a slight score bonus for clearing those pieces, but they also reduce your column piece count - one piece is removed from your count if any pieces were trapped in that column. Since the loop was 24 pieces long, you receive 8 moves back on your move counter.

Finally, you reach a point where one of the columns reaches zero. Any loops made after this point will not bring new pieces onto the board. Play will continue until no more loops can be made.


Scoring

Longer loops are worth more than shorter loops. Loops of a single color will be worth more than loops with multiple colors. Simple loops score less than "goal" loops.

The score for each completed loop consists of three parts, multiplied together. First there is the base score for the loop. Then there is the color bonus. And finally there is the goal bonus, which is modified by the number of goal pieces used.

  • a= blue pieces
  • b= green pieces
  • c= maroon pieces
  • d= orange pieces
  • e= yellow pieces
  • f=greatest value of a, b, c, d, or e
  • h= number of bonus pieces
  • i= bonus pieces used
  • q= colors used in loop
  • r= colors used on board
  • t= twists used in the loop
  • y= loop length
  • z= score


The base score for each loop is number of threads used in the loop, divided by the number of threads in the loop minus the number of twists in the loop. <math>\frac{y^2}{y-t}</math>

The color bonus rewards working on a board with a higher color count. In the equation used in development it is expressed as: <math>\frac{f}{y}</math>, though in the final implementation it should probably be a more subtle function.

The goal bonus starts out at 10 points for any loop not using a bonus piece. For each bonus that is used, a fraction of an additional ten points is added. Matematically: <math>(10 + \frac{10 i}{h})</math>

Altogether:

<math>\frac{y^2}{y-t} \times \frac{f}{y} \times (10 + \frac{10 i}{h}) = z</math>

Pieces trapped inside of a loop that get cleared away should be counted as another loop being cleared away on the same move with the same scoring proportion as the loop actually formed. For example: A 24 piece loop scores 160 points on the clear. Ten pieces trapped inside are used to tabulate the score for another loop. 16 {raw score} /24 {potential raw score} = 0.6667 x 100 {the raw scoring potential of ten pieces} = 67 * (difficulty multiplier) additional points.


Old scoring

Original

The base score for each loop is the sum of the squares of the count of each color used in the loop, divided by the number of pieces in the loop. <math>\frac{a^2 + b^2 + c^2 + d^2 + e^2}{y}</math>

The difficulty multiplier rewards working on a board with a higher color count. In the equation used in development it is expressed as: <math>\frac{r}{q} (\mbox{ if } r > y \mbox{ use y})</math>, though in the final implementation it should probably be a more subtle function.

The score potential starts out at 10 points for any loop not using a bonus piece. For each bonus that is used, a fraction of an additional ten points is added. Matematically: <math>(10 + \frac{10 i}{h})</math>

Altogether:

<math>\frac{a^2 + b^2 + c^2 + d^2 + e^2}{y} \times \frac{r}{q} (\mbox{ if } r > y \mbox{ use y}) \times (10 + \frac{10 i}{h}) = z</math>

Every twist in the loop reduces the y value of the scoring equation by one.

The wildcard piece, when used, would look at a, b, c, d, & e, add the largest two values, and then square that number and add it to the square of the remaining value.

Example:
a=4, b=1, c=5
Normally, this would be worth 4.2 points (raw score). Using the wildcard, you'd add a plus c to get 9, which when plugged into the equation gives you a raw score of 8.2.

Booched

<math>\frac{y}{y-t} \times \frac{r}{q} (\mbox{ if } r > y \mbox{ use y}) \times (10 + \frac{10 i}{h}) = z</math>

Nex revision

The color bonus rewards working on a board with a higher color count. In the equation used in development it is expressed as: <math>\frac{r}{q} (\mbox{ if } r > y \mbox{ use y})</math>, though in the final implementation it should probably be a more subtle function.

Variability

The changing number of bonus pieces, in addition to the increasing number of colors, will provide variability. On higher levels, large-scoring loops that use bonus pieces will periodically introduce the wildcard pieces in place of the regular bonus piece.

End criteria

As pieces are removed from each column new pieces slide up from the bottom. Each column only has a certain number of new pieces available, indicated at the bottom of the board by a number or a graphic. Once one column depletes its reserve of new pieces, no more new pieces will slide into any column. During this final phase the game continues until the move limit is exhausted or no more loops are possible, whichever comes first.

Difficulty scaling

Difficulty Colors Bonus pieces Chance of wildcard
1 2 2 0%
2 2 3 0%
3 3 2 2%
4 3 3 5%
5 3 4 8%
6 4 3 11%
7 4 4 14%
8 4 5 16%
9 5 5 18%
10 5 6 20%
11 5 7 22%
12 5 8 24%

Scaling comes from changing both the number of bonus pieces and the color count used on the board. In addition, play-testing may reveal certain pieces that should be available more/less often on certain difficulties.

Color count - ranges from three colors on the lowest difficulty to five on the highest.

Bonus pieces - Ranging from two at the lowest levels to as high as eight on the highest.


Crafting type

This puzzle fits weaving most obviously, though with alterations in artwork, boardshape, and the removal of used pieces / introduction of new pieces it could also be made to fit furnishing.

Known problems

With no time limit single games can take a long time like alchemistry. Also, the changing move limit may confuse some people.

Notes

This idea was originally proposed by Chalmun in February of 2005. The original Game Design thread was last posted to in October 2005. I PM'ed Chalmun for permission to submit the puzzle and got his okay in January 2007.

The goals of this update are twofold: 1) To add a definite ending condition and 2) to add a risk/reward structure. Goal 1) is achieved by adding the piece counter to every column of movable pieces. Goal 2) is the point of the bonus loops. Lower-level play can be achieved by idly creating loops whereas upper-level play will be dominated by the difficult to obtain goal of connecting every bonus piece in a loop time and again. The trick will be to try to balance the low risk/low reward "make any patterns you want" and the high risk/high reward "connect these specific pieces" playstyles and scoring structures in order to really differentiate the various levels of play.

Programming Notes

To Do

  • Immobile pieces should disappear when used and be replaced.
  • Implement new scoring formula
  • Detecting twists

Known Bugs

  • Colors used in the loop are reported incorrectly

Images