Well, I was thinking about a "cut scene" sort of thing. So if I put a level script on the hero start map, will it activate as soon as the game starts?
Hmm. I am unsure of whether or not that would work. To be sure, I don't see a reason why you couldn't, but unforeseen troubles have a habit of sneaking up on you. I am by no means an expert in level scripts. I know that the third type of level script is the kind that is used to make the player face up before being shown on the screen. The second type is probably the one you want to use and is triggered by a variable that has a specific value. I am going to assume that your cut scene is separated from the main timeline of the game as apposed to one that gives the player control directly after it is over (meaning without moving to a different map - for example, my sister had an idea of using some sort of past event as the reason the hero goes on his adventure and that event would have to be presented as a flashback). If it is not something like that, you could just use a regular script.
Still, if you are set on doing a level script, it is kind of hard for me to determine without knowing exactly what you want to do, almost down to the commands you want to use. The commands you can use depends on which type of level script you use which determines when the script will be started. If it were me, I would just create my script, verify that it works as a regular script, and then try the different types of level scripts. If I can't get it to work, I then try to find a way that I can get it to work. For example, in my flashback script, if I couldn't get it to work, I might try expanding the player room map and use a move camera script to use a different sprite as the hero until I was done. There is a lot of stuff that you can do with scripting. Your creativity with the commands you have is the best tool you have. I would be willing to help you out further with this if you need some help.
There was a guy earlier trying to figure a way to take away a person's Pokemon that I gave some direction to and I'll post this in that post as well, but I found a special that "checks for a pokemon species in the party. pokemon number wanted is stored in 0x8004, returns to given variable 0x1 if there is one," special 0x17c. I am not sure what numbers correspond to which Pokemon, but a few minutes of testing should help with that. To use it, you would set the number of the Pokemon you need to variable 0x8004 (setvar 0x8004 0xXXXX, not sure how many numbers, make sure it is in hex) then follow it up with
special2 0xXXXX 0x17C replacing the XXXX with the variable. You would then make the special to remove the Pokemon only continue/activate when that variable has a value of 0x1.