17 votes

Inside TASBot’s semi-secret, probably legal effort to control the Nintendo Switch

8 comments

  1. [4]
    kfwyre
    Link
    I just caught the TASBot Super Mario Maker 2 demonstration mentioned in the article live on the GDQ stream. They had PangaeaPanga (a well-known Mario level maker and runner -- among the most...

    I just caught the TASBot Super Mario Maker 2 demonstration mentioned in the article live on the GDQ stream.

    They had PangaeaPanga (a well-known Mario level maker and runner -- among the most skilled in the world) attempt to make the very first jump in the level, which apparently gives the player only a single pixel of leeway. Panga was unable to make the jump successfully after several attempts. They then had TASBot do it, and it looked effortless. It then cycled through a showcase of tricks requiring timing and positioning precision completely unattainable by human input. Well worth watching if you enjoy Mario Maker or TAS videos.

    10 votes
    1. [3]
      cfabbro
      Link Parent
      VOD with timestamp for those interested in watching: https://www.twitch.tv/videos/533706108?t=41h55m40s

      VOD with timestamp for those interested in watching:
      https://www.twitch.tv/videos/533706108?t=41h55m40s

      12 votes
      1. [2]
        Shahriar
        Link Parent
        Wow it just melted through that. I wonder the technical specifics behind it, how does it know what route to take?

        Wow it just melted through that. I wonder the technical specifics behind it, how does it know what route to take?

        1 vote
        1. cfabbro
          (edited )
          Link Parent
          Well in this particular case, they knew what route to take because they were the ones that designed the level, so they likely just manually programmed the correct route in. They intentionally left...

          Well in this particular case, they knew what route to take because they were the ones that designed the level, so they likely just manually programmed the correct route in. They intentionally left only 1 pixel wide gaps and ledges so no human could do it in real-time, and so they could show off the input accuracy of their new system. However that's not always the case for all TASs.

          In TASs on other people's games/levels, there is a bunch of methods they can use. One is simply brute forcing it, sometimes with evolutionary programming conditions so the bot "learns" from its mistakes, and letting that run over and over until it finds the fastest way through. Another is slowmo savestate running, where a human player actually plays but does so in slow motion (frame by frame when necessary), and whenever they mess up they essentially rewind the game by loading a previous savestate in order to try again... all the while recording the movement and input timing so once they are done they can let a bot do the same thing in real-time. Some combine those two by letting the bot run, but manually rewinding to change the occasional input. And a lot of TASs are also not for speed at all, but to try to discover "speedrun tech" (i.e. ways to break the game) so that human players can then try to use the same techniques to do their own glitched runs faster.

          5 votes
  2. MimicSquid
    Link
    It'll be interesting to see how this changes the competitive scene on the Switch. They're keeping the specific mechanism secret for now, but given the prevalence of cheating attempts on world...

    It'll be interesting to see how this changes the competitive scene on the Switch. They're keeping the specific mechanism secret for now, but given the prevalence of cheating attempts on world records I can't imagine but that people will try to steal or reverse engineer their methods.

    6 votes
  3. [2]
    DMonitor
    Link
    If it can emulate a gamecube controller, I wonder why they wouldn’t just use the GameCube adapter for the same result. I suppose the appeal of this is the technical feat, though, and not the end...

    If it can emulate a gamecube controller, I wonder why they wouldn’t just use the GameCube adapter for the same result. I suppose the appeal of this is the technical feat, though, and not the end result

    2 votes
    1. Moonchild
      (edited )
      Link Parent
      They were already able to get arbitrary inputs to the switch. The problem is getting the input in sync with the switch so that the inputs line up exactly with frames as they're produced.

      They were already able to get arbitrary inputs to the switch. The problem is getting the input in sync with the switch so that the inputs line up exactly with frames as they're produced.

      9 votes
  4. Moonchild
    Link
    Guess as to how it works: the input device contains a hacked switch, which is set up to run the same game as the target device. The two start off 'out of sync', and they use the results of inputs...

    Guess as to how it works: the input device contains a hacked switch, which is set up to run the same game as the target device. The two start off 'out of sync', and they use the results of inputs to the hacked switch to get 'in sync' with the target.

    2 votes