also search for: $median, $averageC+, $maximumS, etc.last updated: 2023-11-29 12:00:01 UTC
percentile rank:
glicko: ± - games won: / (%)
STAT | VALUE | RANK | % |
---|
STAT | VALUE | RANK | % |
---|
This page lists some curated skins, as well as skins I (TENCHI) have created.
To learn how to use the skins, please refer to this FAQ question on how to use TETR.IO PLUS.
Note: because TETR.IO internally resizes the textures for its rendering engine, the pixel ratio of the skins can appear distorted. If this happens, try to zoom in or out a few times until it appears regular (CTRL + or CTRL -). Click here to see the difference.
Some skins have multiple variants that you can navigate using the arrows on each side of the title.
Original minimalist skin by badgoblin.
Three shape variants, each with a hollow ghost piece variant.
Recommended background: None (black)
Original pixel skin by MHFiver.
Use in case of giant ape infestation in your construction site.
A refreshing way to play TETR.IO
Original skin by MHFiver.
Original pixel skin by Madeline.
“I'm not a bad slime!”
Recommended BGM: #1.
10 PRINT CHR$(205.5+RND(1));:GOTO 10
Recreates a famous Commodore 64 10 PRINT one-liner: a simple code that only outputs slashes and backslashes, yet the randomness creates an intricate maze.
If this skin is too hard to play with, try the colored variant.
Recommended backgrounds: None / #2
Recommended BGM: #1-#16
Simple beveled blocks depicting classical Asian elements.
In order: fire 火, wood 木, light 光, wind 風, heaven 天, earth 地, water 水, void 空, metal 金.
Palette by ARNE.
Vector recreation of Puyo Puyo Tetris for TETR.IO by Xelitik.
Recommended background: #1
Bonus: Sound pack by ZaptorZap & Neeko
This FAQ answers to questions for both TETR.IO and TETR.IO STATS, and also serves as an unofficial manual. If you find a mistake or think items should be added to this FAQ, please tag @Tenchi on the Discord server.
Note: disabled links below are planned questions that haven't been written yet.
If the custom background you are trying to load is black, first make sure it's not really dark (try to adjust the option BACKGROUND VISIBILITY).
Otherwise, this is probably due to the image host where the custom background was uploaded does not explicitly allow web applications to download their content (see CORS Headers for more information).
UniQMG made a live tester for backgrounds, which will tell you if a provided link can be used ingame.
Solutions:
When linking an imgur picture, make sure to copy the link of the image itself and not the album.
For example: https://cors-anywhere.herokuapp.com/https://foobar.com/bg.png
(Note: including the second https://)
Currently, the only way to use block skins is to use TETR.IO PLUS, a mod for TETR.IO made by UNIQMG, available as a Firefox add-on, or a mod for the desktop client (follow the release notes carefully for instructions).
For more help, please refer to TETR.IO PLUS's own Wiki and FAQ.
The VS SCORE is an indicator of how well you did during a TETRA LEAGUE match. It is calculated using the following formula:
VS = [ ( lines sent + garbage cleared ) / pieces ] * PPS * 100
To improve your VS SCORE, improve your APM, PPS, and defense game.
Note: the * 100 multiplier is there to put this indicator on the same scale as APM, instead of being a small value.
FINESSE is a measure of how optimally you place tetrominoes on the board. A perfectly finessed piece will have been placed to its desired location using the least amount of button inputs.
You can check out the Finesse article on Hard Drop for the optimal movements of each piece. You can also use Hard Drop's Tetresse tool to train finesse.
To improve your FINESSE:
The level tag's color as well as the shape on the right changes depending on the level. The rule is:
Here is a special level tag that previews how it would look at any level: just click on it and type!
The way handling is implemented in JSTRIS and other clones is buggy and doesn't follow guideline:
Here is a diagram made by to illustrate:
The PLAYER STATS tab provides meta players that start with the character $ that can be searched just like regular users, whose stats reflect different measurements:
Moreover, for each of these measurements, you can search for rank-specific stats by adding the rank name at the end of a meta player, for example $averageA- or $maximumB, etc.
There are several factors to consider:
When there are only 10 people queuing, the chances that someone with your exact skill is also in the queue isn't guaranteed. So instead of making players wait, the matchmaking system will match against the next closest level.
Give it your best, and it will be a valuable experience.
To quote @Spork on Discord:
Some people aren't properly ranked
Some people have great days
Some people have awful days
Some people are just in the middle of massive improvement
and are on their way up to their new rank
Some people leave the game for 2 months,
"grind jstris" the entire time
and then come back to rank up
People sometimes forget that the players are humans
and not AI playing at a specific level
Also related: this question.
There are a few markers on various graphs around the site to indicate the dates where some things about the game changed:
The API is now public and available at https://tetr.io/about/api/.
The league data has been scraped hourly since the open alpha started, first using a private API and now the public one.
This website however only shows the last month of player history, which may be improved at a later date.
This means that your RD is still too high.
The initial placement matches are a way for the server to get a rough estimate of your level, at the end of which you will have an initial TR rating.
This rough estimate however is denoted by having a high RD (rating deviation), the number after the ± in your glicko rating. Only when that number gets under 100 will you have a rank.
The RD value can be found in the enter matchmaking screen in the tetra league in the game, or on the tetra channel site.
For this, there is only one way: play more matches.
On the desktop version of the game, you can limit the framerate to your screen's refresh rate (for example 60 FPS).
You can enable this setting in the game's settings under desktop settings.
You can verify if the framerate cap got applied on the debug display by pressing F8.
This is probably due to an old cache.
Possible solutions:
It is a draggable timeline:
You can resize this box by dragging the sides to zoom into the graphs, and then drag the box left or right to go backward or forward in time.
Here is the current attack table used by the game posted by on Discord, showing how many lines of garbage an attack will send, depending on when in a combo the attack was made:
For example, doing the combo Triple > Single > Single > Quad will send 2 + 0 + 1 + 7 = 10 lines of garbage total.
The B2B bonus adds + 1 when active, and increases at regular intervals: the more B2B are performed in a row, the higher the B2B level is, starting at level 2 when 3 B2B are performed.
Here is the current rank distribution used by the game, as posted by on Discord:
Note: the percentiles got updated on version 3.2.3.
This means that the ranks are distributed equally across the player-base and is not intrinsically tied to the exact number of TR or glicko — the ranks are spread throughout the whole player-base, meaning that the top 1% will always have the rank while the bottom 2.5% will always have the rank .
In other words, if the server ever only contains pro-level players, the bottom 2.5% of those pro-level players will still have the rank , even if they are so strong. And similarly, if the server only ever contains beginner-level players, the top 1% of those beginners would still have the rank .
Moreover, your rank will only get updated if you play league games, and can only go down if you lose, and only go up if you win.
To check which amount of TR gets you which rank, check out the RANKS tab of this website!
The rule of thumb used to be "about 5000 per level" but recently tweaked the formula to make it longer to reach high levels:
(where x is the amount of experience and y the level)
A playground is available here to see this formula plotted.
Here is a very approximate reference for the XP needed between two levels at various ranges:
Level 0 — 6: ~1000 XP Level 7 — 24: ~2000 XP Level 25 — 127: ~3000 XP Level 128 — 1021: ~4000 XP Level 1022 — 1261: ~5000 XP Level 1262 — 1652: ~6000 XP Level 1653 — 1974: ~7000 XP Level 1975 — 2244: ~8000 XP Level 2245 — 2475: ~9000 XP Level 2476 — 2676: ~10000 XP
A precise list for the XP needed to reach the next level is available here (up until level 5000).
You can set a profile picture in the ingame settings, under account settings.
There are currently two ways to import a custom map:
You can make maps with using tetrio studio on this site.
Here is an explanation from on Discord:
Sorts all players by least garbage received. Takes the top 10, and picks one at random, with the 1st person (least received) having 10x as much chance of being picked as the 10th person (most received out of the top 10)
Sorts all players by height of their stacks. Takes the top 10, and picks one at random, with the 1st person (tallest stack) having 10x as much chance of being picked as the 10th person (shortest stack out of the top 10)
From either the ingame or standalone tetra channel sections.
Ingame, they are located in the menu: tetra channel and then ME.
On the site, just input your or anyone else's name into the name search to reach their user profile where their replays should be located.
Drag and drop the file anywhere on the game window while in the menus.
The game will then load the replay file and you can play it back.
The same applies for custom game settings in Solo (TTP files) and multiplayer replay files (TTRM files).
It matters if you have a correct replay with an incorrect file extension, as tetrio just won't load it at all.
Your last ten tetra league replays are saved publicly for everyone to view on the tetra channel site no matter your settings.
Custom online 1v1 matches are recorded in all graphics presets except for minimal mode if you have the "show duels side by side" option off. You must save the replay locally however, otherwise it gets thrown out when you leave the results screen.
For Sprint replays, the yellow triangles indicate a finesse fault. If your sprint has more than thirty faults, they won't show up. The red gradients indicate a "choke": chokes are found if a piece is more than 3x slower than your PPS at that point. The yellowish orange graph shows your "local PPS" at that moment in time: local PPS is your PPS over last 10 pieces.
For Blitz replays, the yellowish orange graph is your "local SPP": local SPP is the SPP over last 30 pieces, divided by level.
For Versus replays, it changes into a two-sided blue and red graph, showing the VS score difference the left and blue player has over the other player.
Here is the description for the network icons, as posted by on Discord:
After this picture was made, a new icon was introduced, which indicates that you have been disconnect entirely, and Ribbon is trying to reconnect the client.
Yes. Provided you have a powerful enough Android phone and an external keyboard or controller to control the game with.
You can also try and manually install an old version of Firefox mobile to use tetrio plus with (mobile addon support was dropped in the latest releases) to get onscreen controls and eliminate the need for an external controller.
The different arrows in the KO feed have different meanings, depending on how the targeted player was defeated:
Here is a table showing the kicks on T-pieces when using 180° rotations, as posted by on Discord:
Based on GLIXARE
Based on this paper by Mark Glickman
Commands are actions you can take by typing them in the chat of a custom multiplayer room. Commands were added in Version 3.1.0, Version 3.2.0 and Version 4.1.1.
Here is a list of commands:
Note: a NAME in caps means the command expects an parameter, a [NAME] name in square brackets means the parameter is optional.
Version 3.2.0 added the /set command, which allows the room host to quickly set multiple room properties at once. To set multiple properties, separate them with semi-colons.
For example, /set meta.name=my cool room;meta.match.ft=15 renames the room and makes it a FT15.
List of properties (courtesy of AZNGUY.MP4 on Discord):
meta.name=ROOM NAME; meta.userlimit=0; meta.autoStart=0; meta.allowAnonymous=1; meta.allowUnranked=1; meta.userRankLimit=z; meta.bgm=RANDOM; meta.match.modename=VERSUS; meta.match.type=versus; meta.match.ft=1; meta.match.wb=1; game.options.stock=0; game.options.presets=default; game.options.bagtype=7-bag; game.options.spinbonuses=T-spins; game.options.combotable=multiplier; game.options.allow180=1; game.options.kickset=SRS+; game.options.allow_harddrop=1; game.options.display_next=1; game.options.display_hold=1; game.options.nextcount=5; game.options.display_shadow=1; game.options.are=0; game.options.lineclear_are=0; game.options.room_handling=0; game.options.room_handling_arr=2; game.options.room_handling_das=10; game.options.room_handling_sdf=6; game.options.g=0.02; game.options.gincrease=0.0025; game.options.gmargin=3600; game.options.garbagemultiplier=1; game.options.garbagemargin=10800; game.options.garbageincrease=0.008; game.options.locktime=30; game.options.garbagespeed=20; game.options.garbagecap=8; game.options.garbagecapincrease=0; game.options.garbagecapmax=40; game.options.garbageblocking=combo blocking; game.options.passthrough=0; game.options.manual_allowed=0; game.options.b2bchaining=1; game.options.clutch=1; meta.name=ROOM NAME meta.userlimit=0 meta.allowAnonymous=1 meta.bgm=RANDOM meta.match.type=versus meta.match.ft=1 game.options.stock=0 game.options.bagtype=7-bag game.options.spinbonuses=T-spins game.options.allow180=1 game.options.kickset=SRS game.options.allow_harddrop=1 game.options.display_next=1 game.options.display_hold=1 game.options.nextcount=5 game.options.display_shadow=1 game.options.are=0 game.options.lineclear_are=0 game.options.room_handling=0 game.options.room_handling_arr=2 game.options.room_handling_das=10 game.options.room_handling_sdf=6 game.options.g=0.02 game.options.gincrease=0.0025 game.options.gmargin=3600 game.options.garbagemultiplier=1 game.options.garbagemargin=10800 game.options.garbageincrease=0.008 game.options.locktime=30 game.options.garbagespeed=20 game.options.garbagecap=8 game.options.garbagecapincrease=0 game.options.garbagecapmax=40 game.options.manual_allowed=0 game.options.b2bchaining=1 game.options.clutch=1 game.options.scalegarbagespeed=1
If you like what I do, you can tip me on Ko-Fi. It will help with the server costs and give me some motivation after working more than 200 hours on this site! ☻
Please note: only donate if you have disposable income!
If you have any improvement ideas, positive or negative feedback, feel free to contact me: tag or DM @Tenchi on the official TETR.IO Discord server.
Many people helped make or improve this site without whom this wouldn't have been possible.
I would like to thank them, in no particular order (literally random every refresh):
Sorry if I forgot a few names!
If you get an error saying TETR.IO requires WEBGL, you can find some solutions on the Tetrio Github: