A lot of good ground already covered in here. Everyone's said a lot of good things.
Make it clear who is talking.
I prefer boxes rather than bubbles for normal dialog (bubbles are OK for incidental chatter). But speech bubbles can work (
Final Fantasy Tactics had a big cast per scene and they worked there, because they were sufficiently big they didn't really count as just bubbles anymore.)
Play with font, sounds effects, etc, for speech. Keep contrast sufficiently high between background and text.
I'm contrary to most and I like the "voiceover" "blahblahblah"1 or "ahh", "hmm", "oh!", "yes?" type 'voiceovers' too -- small bits that are much easier and cheaper to get. The blahblahblah types don't even have to be real language, just distinct. The "ah", "hmm", etc, types are often used in conjunction with character portraits that show an emotion.
I'm also a fan when color/font/whatever is reserved for key words, phrases, etc. So long as it's used consistently throughout the game. Especially when there's a good in-game reference for them.
A few issues: NEVER mess with the timing. Dialog should NEVER be auto-reveal; always character prompt. I prefer player-controlled scrolling dialog boxes (up and down), but I understand the "push button to continue" boxes too, since it can add to the medium with the pacing of the boxes. (But please, include the "push button for entire text box so far revealed" so the player can go back to). I've lost track of the lines of dialog I've irrecoverably missed because auto-reveal was too fast. And there are innumerable people who refuse to replay
Dragon Quest Builders 2 [a great game] because of its horrible torturingly slow auto-reveals.
For font, even in a pixel-game, please use a fully-featured font. Pixel fonts can be notoriously hard to read, and any 'jarring' or 'does not match' one might experience between pixel fonts and the game art is far more easily overcome and forgotten by the player than "I can't read that". (
Undertale always looks like an unreadable mess when anyone tries to convince me to play it.)
A game that does important dialog in a bad way:
Hyrule Warriors. It's normal in "Koei Warriors" games to have the dialog just happen during battle with boxes appearing in the screen, and often with spoken lines too. The things that progress the plot of the mission and also inform the player about the status of the battle (i.e., "Nobunaga is getting his ass kicked, go rescue him else you'll lose the mission."). But Hyrule Warriors was really bad at it: so much of it, not well alerted to the players, etc. YT videos of in-mission will easily show how missable it is while you're focusing on playing the levels. Odd that they broke it after doing dozens of games that did it right.2
And please don't use comic book conventions. Comic books are notoriously hard to read: Don't use allcaps, or smallcaps. Or weirdly drawn/shaped (or animated) text boxes or speech bubbles.
1: Example of blahblah: Famously, Simglish in
The Sims. Here's a clip from
Band of Bugs (which was DRM-free on PC direct from the developer at some point):
https://youtu.be/6igdFJOn4HQ?t=1388 2: Example video of Hyrules Warriors doing it wrong:
https://youtu.be/pP424NSatiA?t=294 Watch for a minute and notice how you can't easily play and read allllllll the dialog at the bottom left.