Overview: Ditto will be always in his default form when it's not attacking
It will only transform when performing an attack and its hitbox will change during startup, hitbox and endlag phases
Also, for the sake of narrowing down options, I'm going to only use Gen 1 and 2 Pokemon
Entrance: Ditto appears as a Pokeball in the battlefield before reverting back to normal
Jab: transforms into Hitmochan, releasing two fast jabs turning into an infinite jab and ending with a low punch finisher
Side Tilt: turns into Tangela and swips its tentacles in front of it in an horizontal arc
Up Tilt: turns into Gligar and does a flip, attacking with its tail in an arch
Down Tilt: turns into Dunsparce and bites in the low front of it
Dash Attack: turns into Voltorb and uses Rollout
NAir: turns into Koffing, releasing poison gases around it, multihitting move
FAir: turns into Crobat and uses X-Scissor in front of it
BAir: turns into Haunter and swips a Shadow Claw behind it as it turns backwards
UAir: turns into Pidgeotto and flaps its wings upwards, while also creating a windbox similar to GW's UAir
DAir: turns into Skarmory and dives into the ground, stall and fall move
Side Smash: turns into Beedrill and thrusts forward with one of its stings in front of it, good shield breaking move
Down Smash: turns into Starmie and uses Rapid Spin, trapping the opponent before launching them
Up Smash: turns into Heracross and attacks with its horn upwards
Grab: turns into Licktung and grabs with its tongue
Pummel: squeezes the opponent
FThrow: Turns into Kadabra and throws the opponent forward with a psychic energy
BThrow: turns into Scizor that grabs the opponent before throwing them back
DThrow: turns into Aipom and throws the opponent with its Tail Hand downwards
UThrow: turns into Pinsir and grabs with its tweezers before throwing them ulwards
Other attacks
Ledge get up attack: turns into Diglett and enters inside the ledge before coming out and attacking
Ground get up attack front: turns into Ferrothorn, quickly pushing its arms(?) outwards
Ground get up attack back: turns into Qwilfish and swells
Tripped get up attack: turns into Magikarp and splashes around, this time with effect
Specials
B-Eevee Roulette: turns into one of the 5 Eeveelutions and throws a projectile of their type
The order will always be: Vaporeon, Jolteon, Flareon, Espeon and Umbreon
Bubblebeam: throws bubbles that don't travel much but stay out a little before bursting, opponents touching them will cause them to burst too
Electro Ball: quicly throws a ball of electicity in front of it, dealing more damage the slower the opponent is
Fire Blast: throws a slow fire ball that explodes upon contact, trapping enemies in a multihitting move before launching them similar to Robin's Arcthunder
Psycho Cut: throws two fast psychic cuts(duh) in front of it, good breaking shield move
Dark Pulse: throws a wave of dark energy around it that launches opponents, hitting its back too
Side B-Pursuit: Ditto turns into Sneasel and dashes forward, with the hitbox only coming out when the move connects
A weak move but it ignores intangible frames(spotdodge, roll, airdodge) and its damage will be greatly increased
Has a lot of ending lag if it fails and the move won't come out if the opponent shields
Up B-Light Screen: Ditto turns into Mr. Mime and creates a screen under it, while on top of it, Ditto will stay as Mr. Mime and can either do a boosted jump or attack out of it.
Does not force into freefall
Screen will disapear after 2 seconds
Down B-Counter: turns into Wobbufet and enters a super armor state, of it's hit during it, Ditto will counter for double the damage received
Final Smash-Transform: Ditto transforms into its opponent and uses their Final Smash
Gaining their moveset if it's a transformation FS
If fighting another Ditto, will randomly use one
Taunts:
Down-turns into its opponent and uses their down taunt
Agaisnt other Dittos, tries to transform but fails
Up-turns randomly into one of the Pokemon in its moveset and strikes a pose
Side-stretches itself around