First off the tl;dr for those in a hurry.
My SPS source code has been available since July 2022. It's not the only implementation.
So the short explanation is that the design of pickTetriminoSeed
, the function that is the basis for the whole of TetrisGYM SPS (v4 and v5 seeds) has a weakness that Tetris original rom does not. The attached seeds are a list of seeds that fall into the same sequence before piece 100. This is caused by @invalidIndex
. There are 276 seeds. Because of how the LFSR in generateNextPseudorandomNumber
works, it's not just 276 seeds that do that, it's ~2x that. This is true of just about everything I've checked so instead of 4 million unique seeds, we have about 20k-80k sequences that a player can expect to get (research not complete). And because of how it locks, it continues indefinitely. This is probably beyond the capacity of a person to memorize, but we could see players memorize a small fraction of favorable and unfavorable sequences for a benefit in competition. Let's start the work of writing an improved SPS shall we?
Hoy discutimos un mecanismo muy interesante.
The audio is created with Google Text-to-Speech in Android for free using the spanish (Spain) voice. The script was written by various authors around the world and given to Wikipedia, where I got it on June 30, 2024.
Toma fotos!
Read more »This is the twentieth podcast. Hoy discutimos un animal muy interesante.
The audio is created with Google Text-to-Speech in Android for free using the spanish (Spain) voice. The script was written by various authors around the world and given to Wikipedia, where I got it on June 12, 2024.
I want to thank the listeners for spending time learning. Keep up the good work. I'll try to keep creating good content for you on a reasonable schedule. Creating this blog is helping me learn as we build a podcast.
Read more »