EmojiTetra
|
https://twitter.com/EmojiTetra/with_replies
Some analysis
Some plans for future analysis
Board health
Ideas to measure board health
- simple board fill - Count of positions on the board that are used. This is extremely simple and is already in the analysis
- modified board fill - count columns that have holes in them, and use that as modifying factor to the simple board fill. The height of those columns (or of highest?) should be a factor too
- discussion in this thread: https://twitter.com/HeptaSean/status/1063093435719213056
- board age - for each used position, track how long (age in pieces spawned) it has been on the board. Health is then the sum of ages. Lower = healthier
- A low board will have a higher turnover of pieces and better health. A high board will have low rows that are stuck for a long time - as they age the health will decrease, indicating we are high and possibly stuck there...
- however, it's still not an objective absolute, as two identical boards may register different health
- discussion in this thread: https://twitter.com/Caber_nl/status/1065174652060909570
- weighted board fill - count occupied positions in columns. The unhealth of a piece is valued according to how difficult it is to get to. Basically, the more buried a piece is, the higher it scores. Buried holes need to be handled in some form (they are bad), and deep open wells need to be handled (they are good)
- possible implementation: every occupied position is a point. Those that are on an equal row or higher than the lowest accessible open spot have no further weighting, however each occupied position below that row gets an additional +1 for each row further down. Each unoccupied position (hole!) gets an additional +1.
- Should it handle horizontal holes (ie don't count quite as strongly because once uncovered, they'll be easier to fill and move on?)
Sociopolitical analysis
The game can be examined as a microcosm of human democratic/communication behaviour!
I wrote some notes about this at one point. There have been many tweets too.
- For instance, this thread: https://twitter.com/alexjc/status/1063861229536665601
Tactics
- Avoid center holes and center towers
- Keep the board clean
“ | Playing @EmojiTetra:
1 dimensional: where do I put this piece? |
” |
Rhyming game tips
(refer also to My Terminology below)
“ | If there are less rows than four, build it up to score some more
If there are more rows than five, tear it down to stay alive |
” |
- "less than four? build up more"
- "make a column only if it's to the bottom"
- on the side build a column, but only if it's to the bottom
- note: uses non-standard use of "column". Should find a tip to call it a well
- "more than five? clear some lines to stay alive"
- I like it, except the meter in the first and second clauses is mismatched. “If you’re stuck with more than five, clear some lines to stay alive.”
- "1+1<2" - this is great for sentiment and brevity, but the only people it would be clear to are the power players who know it anyway!
Game Table
Game | Theme | Start date/tweet | End date/tweet | Score | Scoring rate (per 72 polls) | Cause of death (usually analysis of lower 9 rows) | Notes |
---|---|---|---|---|---|---|---|
1 | Fruit | 16th April 2018 | 28th April 2018 | 8375 | 734.47 | Capping an I-well (6 deep well on right edge, with a 3deep cap after final scoring move) | First game naturally topped the high score table. Board style changed on 19th: https://twitter.com/EmojiTetra/status/986827445251616769 |
2 | Animal | 28th April 2018 | 6th May 2018 | 6800 | 769.811 | Building a non-edge I-well (5 deep) above 4 rows of scattered holes | |
3 | Book | 6th May 2018 | 10th May 2018 | 2200 | 638.71 | mix of scattered holes (3 of them) and two different I-wells (3 deep each, one edge, one not) | |
4 | Aquatic | 10th May 2018 | 12th May 2018 | 900 | 453.147 | non-center I-well (3deep) and then 6 rows of scattered holes | Lowest score |
5 | Heart | 12th May 2018 | 27th May 2018 | 13850 | 891.153 | 5 deep left edge well, with a scattered hole below, and several above | New high score. Board style changed on the 22nd: https://twitter.com/EmojiTetra/status/998831537196908549 |
6 | Clothing | 27th May 2018 | 1st July 2018 | 41275 | 1218.95 | 6 deep right-edge well above two lines of scattered holes, and capped | Bug caused in-game delay at GAMEOVER screen (how long?). New high score. Board style changed on 5th June: https://twitter.com/EmojiTetra/status/1003930144908558336 |
7 | Plant | 1st July 2018 | 5th July 2018 | 3675 | 1006.08 | full height edge well on the right | |
8 | Fruit | 5th July 2018 | 16th July 2018 | 13725 | 1154.44 | Fastest start to a game to date due to empty board bonus on poll 20 | |
9 | Heart | 16th July 2018 | 8th August 2018 | 26650 | 1158 | ||
10 | Animal | 8th August 2018 | 27th August 2018 | 20075 | 1173.21 | Game paused for 24h on 2018-08-14 | |
11 | Aquatic | 27th August 2018 | 5th September 2018 | 11925 | 1221.34 | ||
12 | Book | 5th September 2018 | 11th September 2018 | 6300 | 1074.88 | ||
13 | Plant | 11th September 2018 | 15th September 2018 | 3950 | 1019.35 | ||
14 | Heart | 15th September 2018 | 19th September 2018 | 3225 | 900 | ||
15 | Clothing | 19th September 2018 | 1 January 2019 | 127400 | 1229.27 | Altered to a Halloween theme over Halloween and Christmas theme over Christmas. First game to have a >4 run of same-piece. Had a run of 5 and a run of 8. See EmojiTetra/DeepStatistics for more info. First game with multiple all-clears. New high score. | |
16 | Plant | 1st January 2019 | 17th January 2019 | 20050 | 1234.9 | First game to score uninterrupted sequential tetras. Initially Christmas theme chosen randomly, then re-randomised to plant. First game to recover from a 50-full near-death board experience | |
17 | Aquatic | 17th January 2019 | 6 February 2019 | 23500 | 1177.45 | ||
18 | Plant | 6th February 2019 | 17th February 2019 | 11975 | 1087.26 | Feature add on 10/Feb: Intermediate board showing cleared lines | |
19 | Book | 17th February 2019 | 10th March 2019 | 26200 | 1262.65 | First 1100 empty board bonus. Fastest first 24 hours, due to a tetra on poll 43 and then an empty board bonus on poll 51 | |
20 | Hearts | 10th March 2019 | 19th March 2019 | 10450 | 1076.39 | Greatest save - from a board fill of 52 | |
21 | Fruit | 19th March 2019 | 2nd April 2019 | 15775 | 1189.32 | ||
22 | Aquatic | 2nd April 2019 | 6th April 2019 | 4775 | 1038.67 | ||
23 | Animal | 6th April 2019 | 3rd May 2019 | 31800 | 1206.32 | Happy Birthday. New record of most single-line-clears in a row (20) at end of game. | |
24 | Aquatic | 3rd May 2019 | 11 May 2019 | 8300 | 1094.51 | ||
25 | Animal | 11th May 2019 | 10th July 2019 | 75350 | 1256.71 | First triple-line board clear. Highest scoring rate game to date | |
26 | Plant | 10th July 2019 | [31 July 2019] | 25700 | 1191.5 | A 14 run of S/Z/O only made lineclearing difficult | |
27 | Aquatic | 31 July 2019 | Current game | 7500+ | 1320.29 |
Note: my timezone is UTC+10 and my dates reflect that. I hope to direct link to tweets sufficient that they can be used for exact time lookups if needed
- More details of games (list of pieces) are at EmojiTetra/Details
Board styles / known feature changes
- Start of Game 1 from the 16 April 2018: score in blocks, then unicode SOON, then linedrawing to illustrate NEXT piece
- During Game 1 on the 19 April: unicode SOON replaced with unicode F-FWD
- During Game 5 on the 22 May: Literal "Next", then braille indicator of next piece. Then literal "Score" in and score in plain text
- During Game 6 on 5 June: "Next" and score moved to right of board. Next illustrated with emoji same as board
- During Game 18 on 10 Feb: "The bot will now tweet a rendition of the game grid with filled rows marked as disappearing, with the score benefit shown." - https://twitter.com/emojitetra/status/1094340439849615360
Notable events
Empty Board Bonus
Game | Piece | Date/link | Score | Notes |
---|---|---|---|---|
6 | T | 15th June 2018 | +1250 | First all-clear. |
8 | T | 5 July 2018 | +1250 | |
15 | L | 8 Nov 2018 | +1250 | |
15 | T | 5 Dec 2018 | +1250 | |
15 | J | 5 Dec 2018 | +1250 | Achieved a second all-clear within 8 hours! |
17 | L | 1 Feb 2019 | +1250 | |
19 | I | 17 Feb 2019 | +1100 | First single-line all-clear |
25 | J | 24 May 2019 | +1525 | First triple-line all-clear |
25 | J | 18 June 2019 | +1250 | |
25 | I | [24 June 2019] | +1100 |
All-clears are achieved on average every 6-8 weeks, but if game play and RNG pieces align, are theoretically possible every 7th piece (as occurred on the 5th of Dec with pieces: "IIIJITJ"
In Late May 2019, I (Nemo) decided to push the all-clear tactic, believing we could move from every 6-8 weeks to every 10days or so. In the following 35 days we got two only 6 days apart, and hoping momentum will continue the trend!
Awesome moves
For those times we manage to fill in overhangs, T-spins and I-spins
- TODO
Longest activity on the same piece
(todo: backfill this with any other triple-spins)
Start date/tweet | Game | Poll count | Rotations (spins) | Notes |
---|---|---|---|---|
28 April 2018 | 13 | T piece: Down, Rotate, Rotate, Rotate, Left, Down, Right, Right, Down, Down, Down, Down, Plummet (note: plummet-after-down option not yet available in game) | ||
22 May 2018 | 14 | J piece: Right, Right, Down, Rotate, Left, Left, Down, Down Down, Left, Left, Rotate, Rotate, Plummet | ||
18 July 2018 | 15 | 11 (2.75) | L piece | |
18 Aug 2018 | 15 | 11 (2.75) | L piece | |
3 Dec 2018 | 15 | 15 | 12 (3) | J piece |
15 Dec 2018 | 15 | 16 | 13 (3.25) | J piece |
30 Sept 2018 | 15 | 17 | 13 (3.25) | T piece |
25 Sept 2018 | 15 | 17 | 14 (3.5) | J piece |
26 March 2019 | 21 | 19 | 16 (4) | T piece: Rotate(x16), Left, Down, Plummet |
27 May 2018 | 25 | 19 | 16 (4) | L piece: Rotate(x16), Right, Right, Plummet |
29 Dec 2018 | 15 | 20 | 18 (4.5) | L piece |
Great Escapes
When The End Is Nigh - and then it wasn't. This is the list of times we've filled the board to 45 or more static pieces, and subsequently recovered to under 30. "Saved to" is measured as the board fill after clearing lines, to the point where two pieces in a row begin to stack again.
date/tweet | Game | Saved from | Saved to | Notes |
---|---|---|---|---|
15 May 2018 | 45 | 18 | Stumbled from 45 to 35 to 43 to 33 to 42 before clearing to 18 | |
21 May 2018 | 46 | 3 | ||
8 June 2018 | 45 | 19 | ||
21 June 2018 | 48 | 29 | 29 according to the rules laid out above, but we made it down to 16 before the next escape only a few days later | |
23 June 2018 | 48 | 15 | Stumbled from 48 to 31 to 39 to 15 | |
24 July 2018 | 49 | 15 | ||
5 Sept 2018 | 48 | not a real save - we saved to 31 and then crashed and died 12 hours later | ||
4 Oct 2018 | 47 | 5 | achieved 46 to 5 with sequential pieces | |
5 Nov 2018 | 48 | 28 | actually made it down to 19 before the next day's escape | |
6 Nov 2018 | 46 | 9 | 46 to 9 in three sequential pieces | |
13 Jan 2019 | 50 | 1 | bounced from 50 down to 44 up to 49 over 6 hours, before the save | |
11 March 2019 | Game20 | 52 | 22 | We had a 25piece I/L drought, and 21piece I/L/S drought. Both record breaking. 12 non-scoring pieces in a row (an equal record) |
25 May 2019 | Game 25 | 45 | 21 | No clearing due to RNG, but we built clean on the edge. Then an I to clear four (simultaneously making this the fastest game to 19000 score) |
11 June 2019 | Game 25 | 46 | 19 | We had a disproportionately large run of O leading to a build up of holes |
2 July 2019 | Game 25 | 45 | 27 | bad RNG and choices - we steady filled from 5 to 45 |
Other Greats
Magnificent moves which show how skillful the collective can be - especially when a non-obvious move is sufficiently spruiked into awareness. I call these: #AwesomePlan
- This I-spin in Game 23 to fit into a tight spot. The plan was formulated and spruiked from the previous piece, but linking here to the I https://twitter.com/EmojiTetra/status/1123573444400914434
- On 25th June (Game 25), we placed a Z such that it didn't overcover the right-edge hole, and then double-spun the following I to clear the line covering that hole! Linking here to the Z: https://twitter.com/EmojiTetra/status/1143464512156098560
- 9th July (G25), a lovely T-spin. Linking here to the reveal of the T as the "next": https://twitter.com/EmojiTetra/status/1148276395186909190 ...note also that the T took 13 polls to complete it's move, which places it in contention for the 'longest activity' as well)
- 29 July (G26), another lovely T-spin. We successfully did a mid-board "ceiling bump" (our first?). Here is the T reveal: https://twitter.com/EmojiTetra/status/1149267865788272640
Other weird
Split clears are times when a double or triple occurs on non-sequential lines. Only possible with L/J/I for split doubles, and I for split-singles.
Since the line-clear-indicator tweets began on the 10th of Feb 2019, we have only had 7 split-clears - 6 doubles and 1 triple. By comparison, in the same time we had 3 all-clears and 9 tetras.
Scoring rate
Real world analysis
There is reasonable correlation with better scoring rates, and better scores. Indeed, as of writing (G24 just begun), there are 11 games with a rate above 1100/day - these have a min score of 11925 (avg: 32580), whilst 12 games below that rate have a maximum at merely 13850 (avg: 6373)
Within reason, this seems logical. Smart play is required for long games, but also improves on scoring rate by seeing non-obvious combinations of the current+next piece to score doubles and triples, where more naive play (as the hive often does) will seek singles only. Conversely, simple "just get singles" non-aggressive play will often result in situations where, thanks to a run of awkward pieces, the board gets messy and the hive simply hasn't learnt and practiced the skills to navigate out.
“ | Scoring faster means playing smarter. Playing smarter means playing longer and getting bigger totals.
|
” |
- 1st July 2019 scoring rate chart: https://twitter.com/skrymir42/status/1145501324139782145
Hypothetical maximums
Hypothetically, the maximum scoring rate with ideal pieces is a board-emptying tetra. 2000 points every 7th piece. I believe the fastest this could be done is with 6 "O" and then one "I" bar. This would be nearly 7579 points per day - or over 6.3x our normal scoring rate of approx 1200points/day
At our normal randomised piece rate of placement, 2000/7pieces would still be approx 4x our normal scoring rate. But that is also impossible in practice, since it relies on us being able to build a 6wide 4high tower every 6 pieces, and then have an I to score the emptying tetra every 7th piece. In practice of course, we only get an I as the 7th piece 1/7th of the time. We also cannot get an empty board every 7th piece, even if we had prescient knowledge of the future. However, I think it should be possible to get approx 2x our native scoring rate from smart piece placement alone. How? By targetting the empty board bonus via full clears as the default tactic. This should be safe as it's a tactic which inherently means we keep the board low, we have a regular "seventh piece" cycle to play to, and if we build clean, then we should get plenty of doubles and triples and occasional tetras the rest of the time.
Safer AND faster scoring rate. What's not to love?
Without a way to play solo and test tactics, this is theoretical only. (A javascript implementation to allow faster one-person play would be great as a practice/education tool. Could even feed it the official game piece order for direct comparisons with the hive?)
My Terminology
(note: this is what I endeavour to use, and while I encourage others to use, it is in no way formal or endorsed. Most of it is what is commonly used already)
- board: play area (7x11 squares)
- column: a vertical sequence on the board from top to bottom (11 spots)
- line/row: a horizontal sequence on the board from left to right (7 spots)
- clear - to clear some rows (see also: full clear - to clear ALL rows)
- single/double/triple: to clear 1/2/3 line(s)
- tetra/quad/tetris: to clear 4 lines
- electorate/collective/crowd/hive: everyone who votes
- hole: an unfilled space that is surrounded on all sides and above
- overhang/half-hole: an unfilled spare that is covered at top, but open to the side
- some overhangs can be underfilled by a side slide. But not all
- clean - board without holes. as in "the board is clean" and "this is a clean drop"
- question: is a half-hole a clean board?
- dirty - opposite of clean: a board with a hole. "the board is dirty". "this is a dirty drop"
- silhouette/skyline: the shape of the top surface
- well: a deep part pf the skyline requiring a J/L or I to fill.
- May also be called a hole. Esp I-hole
- empty board: nothing on the board. (a perfectly flat skyline, as per the start of a game)
- I prefer 'empty' to avoid possible ambiguity with clear or clean
- full clear - the move that achieves an empty board
- fossilised - to refer to how long a row has remained unchanged
- momentary hole - a hole which is created with the placement of one piece, with the knowledge that it will be uncovered with the very next (already known!) piece. May also be used for cases where the hole will only appear to exist but the uncovering will be with the current piece.
- Naming discussion: https://twitter.com/JoeSondow/status/1135760387322699777
Externals
Credits
- Game created by https://twitter.com/JoeSondow
- Tweet with links to his other accounts too: https://twitter.com/JoeSondow/status/971561164994895872
- EmojiTetra game code on gitlab: https://gitlab.com/JoeSondow/emojitetra
Other/misc
- Animation view of game history: https://emojitetra-viewer.glitch.me
- A different set of stats/charts of game history, including poll analysis: https://emojitetra-viewer.glitch.me/stats