Polyis
- Originality:
Having polyominoes of various sizes and allowing players to choose which polyominoes appear during play (not yet implemented)
- Technical Merit:
Changelog:
Actively falling pieces now properly align with grid
Player can now control falling pieces by moving left/right or increasing fall speed with arrow keys
Game over when stack reaches the top of the screen
- Prototype Postmortem:
What did you learn from this prototype?
I learned how to better use groups in phaser.
What was the easiest or hardest part of making it?
The easiest part was making the sprites.
One hard part was figuring out why the sprites were misaligned. I eventually realized that the location of a sprite that's in a group is relative to the group's location, so I had to align the activegroup with the gridgroup and adjust other locations accordingly.
- Prototype Assets:
Did you make your prototype assets from scratch? Did you borrow them? Cite your sources here.
- Prototype Closest Other Game:
Which other game most closely resembles your game? If you are borrowing code from a Phaser Example, you must say so here. If you borrow code from elsewhere, you must say so here.
- This game is most similar to Tetris
- I borrowed code from the following examples:
-
- groups: https://phaser.io/examples/v2/groups/align-sprites-to-grid
- for each in groups: https://phaser.io/examples/v2/groups/for-each
- recycling in groups: https://phaser.io/examples/v2/groups/recycling
- random int: https://stackoverflow.com/questions/1527803/generating-random-whole-numbers-in-javascript-in-a-specific-range
- High Concept:
A one-sentence summary of your game.
Choose a range of sizes of polyominoes to play with, then fill entire rows to clear them as the polyominoes fall to avoid them stacking up to the top!
- Prototype Goal:
What game mechanic is this prototype evaluating?
Note: not all mechanics are in this prototype
Implemented:
Spawning, controlling, and stacking multiple minoes (square objects) and detecting when they are too high
Switching player control from one object to another (done by changing non-controlled grid to match object previously controlled by the player, then resetting player-controlled object)
Not yet implemented:
Having multiple objects controlled simultaneously yet differently (multiple squares in one polyomno)
Clearing a filled row and dropping above pieces down
- Player Experience Goals:
What experience do you want players to have when playing your game?
A familiarity for Tetris with adjustable different difficulties depending on which polyominoes are in play
- Gameplay:
A paragraph describing the actions the player can perform, the system dynamics, and the core mechanic. Include a concise explanation of the prototype’s inputs and their expected effects (how to play). You can also describe game play that is not in the prototype. You may include mock-up images for parts of the game not in the prototype.
Before starting the main gameplay, players may choose from a menu which sizes/shapes of pieces may appear.
Players may rotate polyominoes clockwise or counterclockwise, move polyominoes left or right, increase fall speed of polyominoes, instantly drop a polyomino into its landing position, and swap a polyomino into/out of storage.
If an entire row of squares is filled, that row gets removed, the player earns points, and the above pieces fall to fill the space left by the cleared row.
If a piece lands above the upper barrier, the player loses and gets a game over.
- Strategies:
What player strategies do you expect will be effective at playing this game?
- Stacking polyominoes on the left and right sides while leaving the middle open
- Keeping a line piece in storage until there is a narrow gap in which the line piece may clear a number of rows corresponding to the length of the line piece
- Keeping a generally good polyomino which can fit in many different positions, such as a T-shaped tertromino, in storage until the player needs it, such as when they receive a polyomino which does not fit well into the current layout
- Moving a piece left/right to delay the falling to have more time to think
- Story/Setting/Premise:
A paragraph about the world your game is set in and who the characters are. What makes the game world and its occupants unique and interesting? Do the tokens represent something? If the game has a backstory, mention it here. If the game is abstract, then say so.
How will the dramatic tension interact with the gameplay tension?
The game is currently planned to be abstract, but a story may be added later.
- Target Audience:
A single sentence that describes the demographic you're trying to reach.
The craftsman player type
People who enjoy puzzles of various difficulties under time constraints
People who enjoy Tetris but want something new
- Play Time:
How long does your game take to play?
Depending on player skill level and RNG of dropped polyominoes, anywhere between a few seconds and forever