<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Tintslide on ash's Writing Archive</title><link>https://rwen.me/en/tags/tintslide/</link><description>Recent content in Tintslide on ash's Writing Archive</description><generator>Hugo -- gohugo.io</generator><language>en</language><copyright>lantao studio</copyright><lastBuildDate>Thu, 08 Oct 2026 19:07:04 -0700</lastBuildDate><atom:link href="https://rwen.me/en/tags/tintslide/index.xml" rel="self" type="application/rss+xml"/><item><title>Tintslide: A Gravity-Shifting Match-Four Puzzler</title><link>https://rwen.me/en/p/tintslide-release/</link><pubDate>Thu, 08 Oct 2026 19:07:04 -0700</pubDate><guid>https://rwen.me/en/p/tintslide-release/</guid><description>&lt;img src="https://rwen.me/p/tintslide-release/images/tintslide_en.png" alt="Featured image of post Tintslide: A Gravity-Shifting Match-Four Puzzler" />&lt;p>My wife once complained that none of the games I make are the kind she actually likes to play. So I made one just for her.&lt;/p>
&lt;p>She loves tower defense and match-three games, and likes to declare that she&amp;rsquo;s already played every good tower defense game out there. And most of the happy hours the two of us have spent curled up on the couch gaming went into &lt;a class="link" href="https://www.nintendo.com/us/store/products/puyo-puyo-tetris-switch/" target="_blank" rel="noopener"
>Puyo Puyo &amp;amp; Tetris&lt;/a>.&lt;/p>
&lt;p>&lt;img src="https://rwen.me/p/tintslide-release/images/ppt.webp"
width="1920"
height="1080"
loading="lazy"
alt="Source: https://smashpad.com/puyo-puyo-tetris-review/"
class="gallery-image"
data-flex-grow="177"
data-flex-basis="426px"
>&lt;/p>
&lt;p>A tower defense game is no small project, but tile-matching is about as simple as video game genres get. For plenty of developers, the very first self-taught project is &amp;ldquo;build Tetris.&amp;rdquo; So I decided to start with match-three.&lt;/p>
&lt;p>I downloaded Candy Crush, 2048, and a few other block-puzzle web games, and did my homework. Simple as these little games are, there&amp;rsquo;s a lot more to them than meets the eye:&lt;/p>
&lt;ul>
&lt;li>&lt;strong>Control&lt;/strong>: Why does 2048 have you slide the entire board, while Candy Crush has you swap tiles, and Puyo Puyo &amp;amp; Tetris has you steer falling groups of blocks?&lt;/li>
&lt;li>&lt;strong>Randomness&lt;/strong>: Why does 2048 spawn new tiles at random spots on the board, while Candy Crush drops random tiles from above until the board is full again, and Puyo Puyo &amp;amp; Tetris drops random pieces in from the top one at a time?&lt;/li>
&lt;li>&lt;strong>Reward&lt;/strong>: How does 2048 manage, with a single &amp;ldquo;merge/accumulate&amp;rdquo; mechanic, to both keep rewarding the player and ramp up the difficulty as the game goes on? And why did the other block games settle on &amp;ldquo;clearing obstacles&amp;rdquo; as both their core mechanic and the player&amp;rsquo;s psychological reward?&lt;/li>
&lt;/ul>
&lt;p>&lt;img src="https://rwen.me/p/tintslide-release/images/cc.webp"
width="768"
height="1280"
loading="lazy"
alt="Source: Candy Crush Saga Play Store"
class="gallery-image"
data-flex-grow="60"
data-flex-basis="144px"
> &lt;img src="https://rwen.me/p/tintslide-release/images/2048.png"
width="650"
height="1258"
loading="lazy"
alt="Source: https://play2048.co/"
class="gallery-image"
data-flex-grow="51"
data-flex-basis="124px"
>&lt;/p>
&lt;p>These three angles weren&amp;rsquo;t chosen arbitrarily. &amp;ldquo;Randomness&amp;rdquo; is simply the part of the environment&amp;rsquo;s state that the player doesn&amp;rsquo;t fully know yet and can&amp;rsquo;t &amp;ldquo;control.&amp;rdquo; How a player pursues &amp;ldquo;reward&amp;rdquo; through the moves they&amp;rsquo;re allowed to make in an uncertain environment is the heart of most games. (This framing actually generalizes to a very broad swath of AI, but that&amp;rsquo;s a story for another day.) Nor do the three exist in isolation: striking a &amp;ldquo;fun&amp;rdquo; balance between the player&amp;rsquo;s control and the environment&amp;rsquo;s uncontrollable factors is itself a reward for the player, and a central question in game mechanic design.&lt;/p>
&lt;p>While studying these games, I also learned for the first time that 2048 is a mechanical rip-off of another game, &lt;em>&lt;a class="link" href="https://asherv.com/threes/" target="_blank" rel="noopener"
>Threes!&lt;/a>&lt;/em>. &lt;em>Threes!&lt;/em> took &lt;a class="link" href="https://asherv.com/threes/threemails/" target="_blank" rel="noopener"
>three developers 14 months of work&lt;/a>, but because they ultimately went with a pay-once business model, the free 2048 stole their thunder: on the App Store alone, the latter has more than 10 times as many ratings as the former. What&amp;rsquo;s more, 2048&amp;rsquo;s simplification of the original, &amp;ldquo;from $1$、$2$、$3$、$3\times 2^x$ to $1$、$2$、$2^x$,&amp;rdquo; actually stripped out one of the original&amp;rsquo;s key creative ideas and a carefully balanced piece of its design. Quite the sad tale.&lt;/p>
&lt;p>After a day of research and mulling it over, I decided to build a Frankenstein game: Candy Crush&amp;rsquo;s chain-clearing mechanic + 2048&amp;rsquo;s controls + Puyo Puyo &amp;amp; Tetris&amp;rsquo;s previewable random drops from outside the board. The goals: controls that are simple and intuitive, clears that are satisfying to see and hear, a wide spectrum of strategic depth, and endless, addictive play.&lt;/p>
&lt;p>Beyond figuring out &amp;ldquo;how to stitch it together nicely,&amp;rdquo; my own contribution to the mechanics really boils down to one thing: instead of dropping in only from the top, new blocks come in from all four edges of the board, and 2048&amp;rsquo;s whole-board slide gets reinterpreted as &amp;ldquo;switching the direction of gravity,&amp;rdquo; which in turn triggers a drop. In other words, swiping up (or pressing the up arrow) doesn&amp;rsquo;t just slide every block on the board all the way to the top; it also makes the previewed blocks waiting below the board fall &lt;em>upward&lt;/em> into it. This adds a fairly intuitive layer of strategy, and ties the current difficulty directly to the player&amp;rsquo;s moves (since a full board means game over).&lt;/p>
&lt;p>Two more days later, &lt;em>&lt;strong>Tintslide&lt;/strong>&lt;/em> was done. My wife says she&amp;rsquo;s finally hooked on a game I made, and even my mother-in-law is having a blast with it. Nothing could have pleased me more.&lt;/p>
&lt;p>&lt;img src="https://rwen.me/p/tintslide-release/images/en-board.png"
width="1080"
height="1920"
loading="lazy"
class="gallery-image"
data-flex-grow="56"
data-flex-basis="135px"
> &lt;img src="https://rwen.me/p/tintslide-release/images/en-motion.png"
width="1080"
height="1920"
loading="lazy"
class="gallery-image"
data-flex-grow="56"
data-flex-basis="135px"
> &lt;img src="https://rwen.me/p/tintslide-release/images/en-levels.png"
width="1080"
height="1920"
loading="lazy"
class="gallery-image"
data-flex-grow="56"
data-flex-basis="135px"
>&lt;/p>
&lt;p>If you&amp;rsquo;d like to give it a try:&lt;/p>
&lt;ul>
&lt;li>&lt;a class="link" href="https://apps.apple.com/us/app/tintslide-color-block-puzzle/id6813969243" target="_blank" rel="noopener"
>App Store&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://play.google.com/store/apps/details?id=com.tintslide.app" target="_blank" rel="noopener"
>Play Store&lt;/a>&lt;/li>
&lt;li>&lt;a class="link" href="https://www.taptap.cn/app/934867" target="_blank" rel="noopener"
>TapTap&lt;/a>&lt;/li>
&lt;/ul>
&lt;p>There&amp;rsquo;s one more little side story. Right after I&amp;rsquo;d settled on the Frankenstein plan, I asked an AI whether there were any match-three games out there with 2048-style controls. It said yes, and gave me a game title along with a website link. The link was dead. I searched for the title and came up empty. A hallucination, most likely. It had been a while since I&amp;rsquo;d caught a flagship model pulling such an amateur-hour hallucination.&lt;/p>
&lt;p>I tossed off a reply, curious to see how it would respond: I can&amp;rsquo;t find it. Are you sure this game exists? The AI went into a long think. A while later, I came back from doing something else and found its answer (paraphrasing): &amp;ldquo;Might be a temporary network issue. But honestly, this game isn&amp;rsquo;t hard to make, so I&amp;rsquo;ve already built one for you. Want to try it?&amp;rdquo;&lt;/p>
&lt;p>I immediately opened up its reasoning trace and saw that, after it too failed to find the game it had made up, it went quiet for a moment, then resolutely started writing code. Well, who&amp;rsquo;d have thought it: AI, too, will work its butt off to make good on its own bluff.&lt;/p>
&lt;blockquote>
&lt;p>Written in Chinese, translated by Claude Opus 5.5.&lt;/p>
&lt;/blockquote></description></item></channel></rss>