so the questions:
1. how can i make an npc have a pokemon with a nick name?
2. how can i make an npc have a shiny pokemon?
3. is there a way to do both?
4. how can i add an animation in the background? (to simulate fire raining down)
thanks.
The answers to 1, 2, and 3 are all yes! These are pretty basic questions that you can find on the wiki's page about Defining a Trainer. That's all built-in optional stuff that you can do for any trainer in your game.
Number 4 is also yes, here's an example where I set the Battleback image to a .gif file. I don't particularly recommend it though, as it's distracting and will probably clog up/slow down your game.
For the first three, Brock in the default essentials PBS File has a Shiny Onix named Rocky, so you can just copy, paste and modify that if you don't to manually change it. =w=