By default, RPG Maker does not support the creation of new actors during the game. When you create your game, you would set up actors in the database, and then during the game, those actors will be used.
With this plugin, the possibility of creating completely new actors during the game is open for you.
For example, you could create a mechanic where you capture enemies during battle, which are converted to actors before they are added to the party. These actors did not exist when you first created your project, nor do they exist in other save files.
This plugin provides the functionality for managing custom actors that are generated at run-time.
Plugin: download here (right-click, save as)
Download the plugin and place it in the “plugins” folder in your project’s “js” folder. Then open your Plugin Manager (F10), double-click an empty row, and select the HIME_InstanceActors plugin.
Once it is in your list of plugins, turn the plugin on.
In the plugin parameters, choose the “Template Actor ID”. This is the “default” actor that all newly created actors will be based on.
Then set the “Start ID”, which represents how the custom actors will be identified. Once the game starts, you have no way to change these ID’s, so if you are expecting to add more actors to your project, you should take that into consideration when choosing the the start ID. I would go with something like 1000 just to be safe.
To create a new actor, use the script call
var newActor = InstanceManager.addActor()
The game would create a new actor for you, using the template actor as the base.
It would basically be a copy of it with a new ID.
If you wanted to base it on a different template, you can specify that in the script call like this
var newActor = InstanceManager.addActor( 2 )
Which will use actor 2 as the template.
The actor creation process simply creates an actor. It doesn’t automatically add it to your party, because you might not want to do that. If you want to add it to your party, you could write
var newActor = InstanceManager.addActor() $gameParty.addActor(newActor.id)
This plugin does not provide support for deleting actors, because that actor might be in use by other objects. It is safer to simply not use the actor.