I’ll be focusing my whole attention on this particular question: “Is it good practice to add text directly in the text fields under the inspector panel in Unity?”
In short, at least from my perspective, yes, it is good practice. Why? Because it gives you flexibility, which is something you want when developing a game, imagine this scenario: You are making a RPG style game and you need each NPC to talk, so you create this XML file, it would be more of a hassle to actually go through that file, change the dialogue, save and so on, it’s much easier to just go to that particular NPC and edit the dialogue in a component.
The more I develop games the more I realize something, when coding you should… well… code, when designing the game you should… design the game, I know this sounds dumb, but what I’m trying to say is that when designing the game you should NEVER go back to your code and viceversa, not even to fix a bug, if you found a bug (that is not completely breaking the game), just take note and fix it later. Why? Because it makes everything a lot easier and more organized, it’s also less distracting and if you are working with a game designer, the designer should not go into the code.
To prove my point here’s a link to an official Unity tutorial that shows exactly what I’m trying to say.
You’ll be creating a 2D RPG, you won’t be coding a single line during the whole process, that’s because the programmer created tools to let the designer do whatever comes to mind, that’s the common approach, you’ll see that they handle quests, dialogue and more with a somewhat similar approach to what Rick does here just far more complex, it’s also a good idea to just look at the tutorial to get ideas on what you can do with Unity, it’s an amazing example on how to develop your own tools to create your own libraries for your future games, saving you a lot of time.