MisaMino

From TetrisWiki
Revision as of 12:50, 5 September 2022 by ZaptorZap (talk | contribs) (small optimizations)
Jump to navigation Jump to search
Produced alongside the AI was a standalone application where users may freely fight against MisaMino in a simplistic environment. This article largely covers that application, found in External links.
MisaMino
Developer(s)misakamm
Platform(s)Windows
ReleaseJuly 15, 2013
Latest release1.4.5 / November 11, 2013[1]
Gameplay info
Next pieces6
Playfield size10 × 40 (20 hidden)[notes 1]
Hold pieceYes
Hard dropYes
Rotation systemSRS


MisaMino is an early block stacking AI created by misakamm, which was released for the HardDrop forums mid-2013.[1] The source code to MisaMino's logic was later open sourced on GitHub.[2] MisaMino's impact on the community cannot be understated: while paving the way for many other stacker AIs, such as Zetris or Cold Clear, MisaMino itself has also been ported to other titles, such as Jstris.[3]

Configuration

MisaMino has various options, which are hidden away in configuration files for the most part. Without editing any files, you can use the following function keys to modify MisaMino's behavior:

Function key Action
F2 Restart (Only after finishing a game, or before 20 pieces have been placed)
F3 Toggle incoming garbage preview
F4 Toggle grid opacity
F5 Decrease master volume in steps of 5%
F6 Increase master volume in steps of 5%
F12 Control configuration wizard

Alongside the executable, you may also find the misamino.ini file. This file consists of six total sections and contains simple key=value options per-line, which are explained in TetrisGameReadme.txt.

AI

  • delay
    • Only used when turnbased is disabled. Controls thinking delay upon piece entry in frames.[notes 2]
  • move
    • Only used when turnbased is disabled. Controls delay after each movement, so a high move delay will impact MisaMino's speed much more than a high thinking delay. Measured in frames[notes 2]
  • 4w
    • Off/on boolean which enables MisaMino's 4-wide operation. TetrisGameReadme.txt strictly recommends you only enable this feature when level is set to a value equal to or higher than 6, with TOJ's ruleset.[notes 3]

AI_P1/2

  • style
    • MisaMino's playstyle, boiled down to a single integer:
      1. Human
        • As in—controlled by you, the player. You can change this under AI_P1 to have MisaMino VS MisaMino matches. You cannot 1v1 another human with the MisaMino client by simply changing both values to be 0, however.
      2. T-Spin+
      3. T-Spin
      4. Ren
      5. Non-Hold
      6. Downstack
      7. Load specified .dll file
  • level
    • Set between a value of 0-8. By default, this is 4. This value may decide how many previews MisaMino can access—therefore leading to more efficient and elaborate setups on higher levels, since MisaMino's speed has already been decided before reaching this stage.
  • PieceMul
    • Only relevant during turnbased operation: this setting changes the ratio of pieces you can place to pieces MisaMino can place. For example: if the value is set to 4, for each piece you place, MisaMino can place 4 total pieces. This option cannot be a decimal, and invalid numerals result in a 1:1 ratio, so the lowest this can be set to is 1.
  • dllplugin
    • File path relative to the MisaMino executable to an applicable .dll file. There are several included in the plugin folder, but this setting seems primed for advanced development.

Rule

  • turnbase
    • Off/on boolean to disable/enable the turnbased mode.
  • KOS_turnbase
    • Off/on boolean to disable/enable the turnbased mode. When enabled, both you and MisaMino are allowed to place up to 7 pieces per turn, just like King of Stackers.
  • spin180
    • Off/on boolean to disable/enable the 180 key. Even if this is disabled, the control configuration process will still allow you to bind a 180 key, leading to the false assumption that 180s are indeed enabled.
  • GarbageStyle
    • Influences garbage generation in a variety of ways:
      1. Garbage is produced on a "Change on attack" basis, similar to Tetris Online Japan
      2. Garbage is randomized per 2 rows.
      3. Garbage is randomized every row.
  • GarbageCancel
    • Disallows/allows garbage canceling. If disabled, sent garbage will not interact with pending garbage.
  • GarbageBuffer
    • Disables/enables the garbage buffer. If disabled, sent garbage will immediately enter the board, regardless of active piece state.
  • GarbageBlocking
    • Disables/enables the mechanic which prevents pending garbage in the buffer from entering your field if a line is cleared. You can "block" garbage consecutively, so long as a combo is preserved.
  • samesequence
    • Enables/disables RNG synchronization between the two players.
  • combo_table_style
    • This modifies garbage produced by consecutive combos. All tables are additive in nature. The default option is 1.
      1. Sent garbage will be produced in the following table: 0,0,1,1,2,2,2...
      2. Combo behavior will mimic Tetris Online Japan's combo table.
      3. Combo behavior will mimic Tetris Friends's combo table.

Player

  • das
    • Configures your Delayed Auto Shift on a frame basis. MisaMino's logic runs at 60 frames per second, so this can be easily ported from handlings set on other modern clients such as TETR.IO.
  • softdropdas
    • This makes the action of soft dropping faster—0 is instantaneous. Once again based on frames.[notes 2]
  • softdropdelay
    • This controls how long one must hold soft drop before soft drop is deployed. 0 is instantaneous. According to TetrisGameReadme, frame.

Sound

  • p1sfx
    • Off/on boolean to disable/enable sound effects for the first player.
  • p2sfx
    • Off/on boolean to disable/enable sound effects for the second player, typically MisaMino.
  • bgm
    • Off/on boolean to disable/enable background music. This background music appears to have been ripped directly from Tetris Online Japan.

References

  1. 1.0 1.1 "The T-spin AI bot (MisaMino ver 1.4.5 1111), turn-based mode and normal mode Tetris". HardDrop Forums. July 15, 2013. Retrieved .
  2. "MisaMino's open source code repository". GitHub. July 15, 2015. Retrieved .
  3. "Jstris's version history". Jstris. January 1, 2022. Retrieved .

Notes

  1. MisaMino also includes a very unique topout check: as soon as the garbage bar reaches 100 rows of pending garbage, the game instantly ends without player input.
  2. 2.0 2.1 2.2 MisaMino runs at 60 frames per second.
  3. This means combo_table_style is set to 1 or 2, style is set to 1, 2, or 3(the latter being a combo-oriented playstyle); and GarbageCancel, GarbageBuffer, and GarbageBlocking are set to 1.

External links