User:Oshisaure: Difference between revisions
No edit summary |
No edit summary |
||
Line 3: | Line 3: | ||
I've also made [[A Gnowius' Challenge]] and [[Puzzle Juggle Trouble]], and worked on a [[Cambridge]] fork with MillaBasset. | I've also made [[A Gnowius' Challenge]] and [[Puzzle Juggle Trouble]], and worked on a [[Cambridge]] fork with MillaBasset. | ||
== | == Vulptile Rotation System (VRS) == | ||
Although I had made a few over-the-top joke rulesets in the past (see [[A Gnowius' Challenge#Biased-On-Nutty-Kick-Enhancement Rotation System|BONKERS]] for a good example), the question of a proper Rotation System came about when I started having projects about a 1-VS-1 game. I wanted to have a game that differed greatly from the [[Tetris Guideline]], partly because it was incompatible with the idea of my game, partly because I wanted to imply that this game was following its own set of rules. One of the points of difference was, of course, the Rotation System. | Although I had made a few over-the-top joke rulesets in the past (see [[A Gnowius' Challenge#Biased-On-Nutty-Kick-Enhancement Rotation System|BONKERS]] for a good example), the question of a proper Rotation System came about when I started having projects about a 1-VS-1 game. I wanted to have a game that differed greatly from the [[Tetris Guideline]], partly because it was incompatible with the idea of my game, partly because I wanted to imply that this game was following its own set of rules. One of the points of difference was, of course, the Rotation System. | ||
Line 25: | Line 25: | ||
tttt ll sss zzz iii oo jj | tttt ll sss zzz iii oo jj | ||
</playfield> | </playfield> | ||
Now onto the rotation system itself, for real. | |||
=== Core ideas and base guideline of VRS === | |||
A common criticism about [[SRS]] is that it feels unpredictable at high gravity. I think that this is mostly an issue on the wallkicks, but that part of it is induced by the S, Z and I pieces behaving differently on opposite orientations. Here's an example: | |||
{| border="0" cellspacing="0" style="text-align:center; border-collapse:collapse" | |||
|- style="vertical-align:top;" | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
gggggg | |||
gggggggzz | |||
ggggggggzz | |||
ggggggggg | |||
gggggggg | |||
gggggggg | |||
ggggggggg | |||
</playfield> | |||
Rotate CW from entry orientation | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
gggggg | |||
ggggggg | |||
gggggggg | |||
gggggggggz | |||
ggggggggzz | |||
ggggggggz | |||
ggggggggg | |||
</playfield> | |||
Z piece goes down | |||
|- style="vertical-align:top;" | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
gggggg | |||
gggggggzz | |||
ggggggggzz | |||
ggggggggg | |||
gggggggg | |||
gggggggg | |||
ggggggggg | |||
</playfield> | |||
Rotate CW from "upside-down" | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
gggggg z | |||
ggggggg zz | |||
ggggggggz | |||
ggggggggg | |||
gggggggg | |||
gggggggg | |||
ggggggggg | |||
</playfield> | |||
Z piece stays up | |||
|} | |||
While ambiguities like this don't happen in ARS, its right-side bias still leads to the infamous [[ARS#Mihara's conspiracy|Mihara conspiracy]]. | |||
The [[ARS#Center column rule|centre column rule]] also prevents moves that would otherwise work the same as their inverse: | |||
{| border="0" cellspacing="0" style="text-align:center; border-collapse:collapse" | |||
|- style="vertical-align:top;" | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gg | |||
gggllggggg | |||
ggggl ggg | |||
gggglggggg | |||
</playfield> | |||
Rotate CCW | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gg | |||
ggg ggggg | |||
gggglllggg | |||
gggglggggg | |||
</playfield> | |||
Works fine, classic ARS twist | |||
|- style="vertical-align:top;" | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
ggg | |||
gggglllggg | |||
gggglggggg | |||
</playfield> | |||
Inverse move, rotate CW | |||
|style="padding:4px; width:108px;"|<playfield> | |||
gggg | |||
gggxx | |||
ggggx ggg | |||
ggggxbgggg | |||
</playfield> | |||
Doesn't work, would kick off [[File:BTet.png]] | |||
|} | |||
Based on these observations, VRS was designed with strict compliance to the following rules in mind: | |||
* '''Visual consistency:''' If two situations look identical, they are identical, and the same input will give the same results. The only direct consequence of this is that S, Z and I only have two states (horizontal and vertical) instead of four (North, East, South and West) | |||
* '''Reversability:''' If a rotation works, then the inverse rotation should be accounted for. While a valid setup for some reverse rotations may be impossible, the necessary kick is available anyway. This happens with the T piece in SRS on a couple rotations: | |||
{| border="0" cellspacing="0" style="text-align:left; border-collapse:collapse" | |||
|- | |||
|style="padding:4px;width:68px;"|<playfield> | |||
gt | |||
gttgg | |||
gt--g | |||
gg-gg | |||
</playfield> | |||
|This kick exists | |||
|- | |||
|style="padding:4px;width:68px;"|<playfield> | |||
- | |||
-- | |||
ttt | |||
t | |||
</playfield> | |||
|This kick is coded in due to reversability, but there is no way to make it happen in normal gameplay | |||
|} | |||
* '''Horizontal symmetry''': A setup and its mirror conditions give mirrored results. This prevents the rotations and kicks to be biased towards one side only. For example: | |||
{| border="0" cellspacing="0" style="text-align:left; border-collapse:collapse" | |||
|- | |||
|style="padding:4px;width:108px;"|<playfield> | |||
g | |||
g i- | |||
gggiii gg | |||
ggg-g ggg | |||
ggggggggg | |||
</playfield> | |||
|If this is what happens when rotating CW on this state... | |||
|- | |||
|style="padding:4px;width:108px;"|<playfield> | |||
g | |||
-z g | |||
gg zzzggg | |||
ggg g-ggg | |||
ggggggggg | |||
</playfield> | |||
|... then this is what happens when rotating CCW on this state | |||
|} | |||
<small>''(this is still WIP)''</small> | <small>''(this is still WIP)''</small> |
Revision as of 16:51, 22 October 2020
Hello! I'm Oshisaure, a Tetris nerd who likes to do silly things in Tetris games, with a slight specialisation in Rotation Systems and unusual Twists. I have a YouTube channel where I like to share these silly things.
I've also made A Gnowius' Challenge and Puzzle Juggle Trouble, and worked on a Cambridge fork with MillaBasset.
Vulptile Rotation System (VRS)
Although I had made a few over-the-top joke rulesets in the past (see BONKERS for a good example), the question of a proper Rotation System came about when I started having projects about a 1-VS-1 game. I wanted to have a game that differed greatly from the Tetris Guideline, partly because it was incompatible with the idea of my game, partly because I wanted to imply that this game was following its own set of rules. One of the points of difference was, of course, the Rotation System.
Piece colours and entry orientations
While I do not consider things like colour scheme, harddrop vs sonic drop or piece entry rotation to be strictly related to the rotation system itself, they still end up being commonly assiciated into a common ruleset that people get used to - you can ask a guideline player and a TGM player what "the right piece colours" are and they will give you different answers.
Because of this, I've decided to make my own colour scheme as well. To make it easier to play for colourblind people, I've made S and Z follow complemetary hues, as well as L and J. I then filled in the colours to the best of my ability by putting warm colours on the S and L pieces - as they both fit in a left well - and then picking colours that would probably upset anyone using Sega or guideline colours. I ended up with:
- I: Purple
- O: Orange
- T: Green
- L: Red
- J: Cyan
- S: Yellow
- Z: Dark blue
As for spawning orientations, I make the pieces spawn flat side down, as that gives the most manoeuvrability in high gravity.
TL;DR: the pieces look like this on spawn
Now onto the rotation system itself, for real.
Core ideas and base guideline of VRS
A common criticism about SRS is that it feels unpredictable at high gravity. I think that this is mostly an issue on the wallkicks, but that part of it is induced by the S, Z and I pieces behaving differently on opposite orientations. Here's an example:
Rotate CW from entry orientation |
Z piece goes down | ||
Rotate CW from "upside-down" |
Z piece stays up |
While ambiguities like this don't happen in ARS, its right-side bias still leads to the infamous Mihara conspiracy. The centre column rule also prevents moves that would otherwise work the same as their inverse:
Rotate CCW |
Works fine, classic ARS twist | ||
Inverse move, rotate CW |
Based on these observations, VRS was designed with strict compliance to the following rules in mind:
- Visual consistency: If two situations look identical, they are identical, and the same input will give the same results. The only direct consequence of this is that S, Z and I only have two states (horizontal and vertical) instead of four (North, East, South and West)
- Reversability: If a rotation works, then the inverse rotation should be accounted for. While a valid setup for some reverse rotations may be impossible, the necessary kick is available anyway. This happens with the T piece in SRS on a couple rotations:
This kick exists | ||
This kick is coded in due to reversability, but there is no way to make it happen in normal gameplay |
- Horizontal symmetry: A setup and its mirror conditions give mirrored results. This prevents the rotations and kicks to be biased towards one side only. For example:
If this is what happens when rotating CW on this state... | ||
... then this is what happens when rotating CCW on this state |
(this is still WIP)