They’re great way to add immersion, as well as create a new and dynamic narrative for players. As for the second part of your question, I don’t really understand. If you mean what is the definition of a companion NPC, you should look it up on Wikipedia.

Every player loves company. Having a well-written and funny companion NPC can increase the fun of a game by a lot. The following are just a few traits you should include in your companion NPC:

A companion NPC (or team) is a character in your story or game that the players can relate to or interact with. It could be an ally, friend, or even a pet or other companion. A companion NPC can also be a rival or enemy.