Ditto is okay. In-game, don't use it, seriously. It's a gimmick that accomplishes very little that cannot be accomplished by other Pokemon. You're better off with Snorlax, or Porygon-Z, or one of the many better offensive Normal types out there. Most things work in-game, and it probably will as well seeing as it's level 90, but it's too dependent on the opponent, and opponents in-game usually have garbage-level movesets.
In competitive, it's actually pretty good. With a Choice Scarf, it copies the boosts of an opposing Pokemon and outspeeds them, allowing it to revenge kill prominent threats like Necrozma-DM and Zacian (Crowned or not).
Hope I helped!