HN user

mitsu_at

29 karma
Posts1
Comments20
View on HN

Tetris 99 is a neat example of how the design can result in unintuitive optimal strategies at high level play.

Two mechanics that come to mind are (1) targeting bonus and (2) the finite garbage cap.

1. Targeting bonus makes it so that if multiple players are attacking you, your attack is buffed. Intuitively it makes sense, since it evens the scales a bit: If, by happenstance, you are unluckily targeted by multiple people, at least you have a fighting chance at surviving the 1v2 or 1v3 etc.

One counterintuitive consequence of this, however, is that an optimal strategy to farm KOs is to stack very high on the board so that you are in danger of topping out. A reasonable number of other players will have their targeting strategy set to KOs (since it is 1 of 4 options), and will target you. If a massive number of players are targeting you, a reasonably skilled player is in no danger because they can easily offset incoming damage with singles or doubles, buffed by targeting bonus.

Example of a game using this strategy to achieve 51 KOs: https://www.youtube.com/watch?v=cat9TbAwRWU

Another consequence of this is in the teams mode, if the teams are imbalanced, counterintuitively, a top level player would prefer being on the smaller team over the larger team. To be fair, there is a certain skill floor required to survive the initial onslaught. But if you can survive and get KOs, the attack % buff you get from the KO badges will eventually give you an advantage over the larger team, eventually to the point where victory is almost guaranteed.

Extreme example of a player winning a 1v98: https://www.youtube.com/watch?v=OTE4zEKtxkA Most normal players would not survive the initial influx of garbage. In particular, because the garbage meter is constantly full at 12, you are not even outputting any damage at all unless an individual line clear sends 13 or more (in which case, 12 of that cancels the incoming garbage, and a mere 1 attack is sent out).

But once you start getting KOs, you start getting badges, and eventually by the time the opponent team dwindles enough that you no longer have targeting bonus, you will have a +100% attack bonus from full badges, and you should be able to easily destroy the remaining players.

2. There is a garbage cap of 12. Which means if your garbage meter is full and more attack comes in, it just vanishes.

Intuitively this makes sense for balance reasons, to make the game feel less RNG/frustrating. If you are unlucky and receive damage spikes from multiple players simultaneously, your incoming garbage is never more than 12, so at least you have a reasonable shot at surviving.

A consequence of this however, is if you are on the backfoot and your garbage meter is filling up, it can be better to play slow than to play fast.

For example, suppose you have 8 incoming garbage. Instead of playing quickly, it can be a better strategy is to not place the piece, and wait for your opponent to send. Suppose your opponent sends 10 attack. Here, only 4 of that will go into your meter, and the rest will vanish. Then you can accept the garbage, and you will be in a better position than if you had played fast.

Even if you are at a badge disadvantage, it's possible to catch your opponent off guard with an unexpected counterspike, expecially if they have just sent everything and have no resources to defend.

Example of a Tetris 99 game where the final 2 lasted for 23 minutes: https://www.youtube.com/watch?v=DoLh5w5rwS0 At 19:55 you can see Amemiya stalling until he sees that Doremy has no resources on his board, and then counterattacks fast.

A few years back, HardDrop hosted Tetris 99 snipe lobbies, and those lobbies would stretch excruciatingly long because even with badge disadvantage, reasonably skilled players are very, very good at stalling.

Fair, but it's still an impressive feat in its own right.

Crash dodging comes with its own challenges, explained more here: https://www.youtube.com/watch?v=V3f4T0WaDVM

There are some player actions that can avoid or reduce the risk of crash, including:

  - Pushing down <7 points
  - Pushing down 7+ points (note: very difficult at lvl 29+ speeds)
  - Turning off the next box while a line is being cleared
  - Avoiding specific line clear types on specific levels
However, on some levels, these actions will crash the game instead.

Crash probabilities are summarized here: https://docs.google.com/spreadsheets/d/1zAQIo_mnkk0c9e4-hpeD...

Gravity at levels 19-28 is 2 frames per cell, and level 29+ is 1 frame per cell. Rolling is pretty much required to survive at level 29+ speeds.

  Lvl 19 (start): 140 lines
  Lvl 20-28:      9 x 10 lines
  Lvl 29-234:     206 x 10 lines
  Lvl 235:        810 lines (because of level up overflow bug https://cohost.org/rgmechex/post/5264863-rgme-article-33-81)
  Lvl 236-255:    20 x 10 lines
Total of 3300 lines cleared before the level overflowed to 0.

Looks like Dog continued playing on for a while, ultimately reaching level 91 again before ending the run with an additional 916 lines cleared after rebirth, due to not being able to recover from an i-piece misdrop.

To clarify, this was on a modified version of the game that prevents game crashes. The original unmodified version of the game actually starts experiencing possible crashes after reaching level 155 (Bluescuti being the first to reach this point is what made headlines some months ago).

This looks like scenario B from this paper: https://arxiv.org/pdf/1902.04935.pdf

Mission E-DSM-E-J-6SR-1I (15.3 km/s of delta v required):

  (2030-06-09) Launch from Earth
  (2031-11-05) Deep Space Maneuver at 3.2 AU
  (2033-04-17) Earth return
  (2034-07-12) Jupiter arrival
  (2036-02-24) 6 solar radii
  (2052-07-29) 'Oumuamua arrival
A Solar Oberth mission requires a heat shield, which takes up weight that can be used for other payload. It's also riskier. There are also proposals for other mission profiles that only use the Jupiter Oberth, but these would either require more delta v or more inner planet assists, and so could take longer. Example: https://arxiv.org/pdf/2201.04240.pdf

Mission V-E-DSM-E-J with 2028 launch date, 26 years flight duration, 15.8 km/s of delta v required. Animation: https://www.youtube.com/watch?v=qrCUsAGZjUw

Note that delta v does not necessarily imply anything about the final spacecraft velocity. Rather, it's indicative how much thrust you need throughout the mission. So how much delta v you have at your disposal is a function of what kind of rocket(s) you have and how much propellant you have.

And how far you can get with a certain delta v budget depends on how smartly you use it. To get the most bang for your buck, you fire your rockets at strategic locations in your orbit.

This is where the physics behind Oberth maneuver come in: It's most efficient to gain kinetic energy at periapsis, when you are travelling the fastest. This is because kinetic energy is 1/2 mv^2. The greater kinetic energy will take you farther out of the gravity well than if you fired your engines at a lower velocity.

I used to think this way about recipe stories, but I've changed my mind about it.

There are arguments about people doing this for SEO or ad revenue. But also personally I really don't mind the stories. I think it can give a lot of interesting background context for a particular recipe. If it's not interesting it takes like 2 seconds to scroll past it.

Also it feels just a smidge karen-y complaining about a recipe that's shared with readers for free on someone's personal blog just because it also has an easily skippable life story attached (you know, life stories, the kind of thing that you'd normally put on a blog).

Maybe you could make an argument that such an author could optimize for less frustrated viewers from search engines looking for recipes if they removed the fluff. But I think either (1) they would prefer to optimize for the more loyal recurring viewers with an interest in the author rather than the grab-recipe-and-go type of viewer, or (2) the fluff is what adds the SEO that brings in more of the viewers in the first place.

I've been considering the switch to FF, but there have been a couple of very specific annoyances that I haven't been able to find a workaround for, so I'm stuck on Chrome for the time being...

1. When copypasting messages from discord (I do this a lot for notetaking purposes) it randomly inserts a large number of newlines into the pasted text for some reason.

e.g. instead of "[8:15PM] username: message" it shows up as

  [
      8:15pm
  ]
  username
  :
  message
2. Also I think this may be related to the fact that I use a wacom tablet instead of a mouse and it's really hard to reproduce but sometimes when scrolling on a webpage it just randomly like. jumps to different pages in quick succession, as if it's clicking links on the page very rapidly when I scroll.

None of these happen with Chrome. idk if it's a bug or just something configured weirdly on my end.