page.summary

page.figure

## How to play

### Controls
#### Play mode

Move with ${Hyper("ArrowKeys")}. When the bar becomes full, you run out of moves.

Press [[down]] when standing on an //object// (either a //crate// or your //other self//) to pick it. Press [[down]] again to drop it. Press **against an edge** to throw the //object// sideways over it.

#### Replay mode

Press ${Control("action")} to enter //Replay Mode//. Your //future self// will now replay all your moves... then you return into //Play Mode//.

Whenever your future self can't move in a particular direction, this move is simply skipped.  

${Hyper("Instructions/Game")}
${Hyper("Instructions/Community")}

Mentioned in
============
@StephenLavelle's [Puzzlescript Gallery|https://puzzlescriptgallery.tumblr.com/post/172318724969/httpspedropsigithubiopmgrppuzzlescript]

${Hyper("GameCredits")}


### Special thanks

@wainwright, for impressive feedback, both in quality and quantity (see changelogs below).

@puzzlescript, @perconti, @thatscar, @draknek, @lavelle  for different levels of feedback.


## F.A.Q.

### How was the name PMGRP chosen?

Play Mini Gemini Replay PMGRP is a //Recursive Acronym//, as the last P in PMGRP refers to the game itself. This results in an infinite name that means play again and again, forever.

It also contains //imperfect symmetry//, as highlighted: //Play// **Mini** Ge-**Mini** Re-//Play//. This reflects the slight differences during //replay mode// due to interactions between the player and its future self.