This script gives the ability to base an enemy’s stats off of a class or, as the script title suggests, an actor as a doppelganger. Doppelgangers will have the option of copying an actor’s name, naming it differently, copying their stats, and even going as far as copying their current skills.
This script requires Yanfly Engine Ace – Enemy Levels.
You can set an enemy’s stats to use a class’s stat growth per level.
<class stats: x>
This notetag will cause the enemy to take on the base stats of class x at that particular level. Note that this tag will only cause the enemy to take on the class’s stats. Any traits or other custom features related to that class will not be factored in. This will take priority over the enemy’s default stats but will not take priority over a doppelganger actor’s stats.
Or you can set an enemy to directly take on the stats, skills, elemental strengths and weaknesses of specific actors.
This notetag will cause the enemy to take on the base stats and level of actor x. Any traits or other custom features related to that actor will not be factored in. This will take priority over the enemy’s default stats and class stats.
To base doppelgangers off of current party members, you can use a different notetag to determine the copied actor.
<doppelganger member: x>
This notetag will cause the enemy to take on the base stats and level of the party member with index x. Like the doppelganger, any traits or other custom features related to that actor will not be factored in. This will take priority over the enemy’s default stats and class stats. In the event that no such member exists in slot x, then the monster will actually not appear and not participate in battle. Remember, the first party member’s index is 0.
Set your actors or classes to change the battlers used for doppelgangers when they appear. These can also be changed mid-game through the use of a script call.
<doppelganger battler: string>
This will set the battler used for the current actor to the battler filename of string. If no battler is used, doppelgangers will use their default image. Doppelganger battlers will give priority to script called battlers, then actor doppelganger battlers, then class doppelganger battlers, then default enemy battlers.
$game_actors[actor_id].doppelimage = string
This will set the specified actor’s doppelganger battler image to whatever string is as the filename. This can be done mid-game and whatever you set the new doppelganger battler image to be will override the actor doppelganger and class doppelganger battler images. Set this to nil to nullify it.
Once in battle, the doppelgangers will shift to their designated actors matching as much as they possibly can. Going deeper into the module, you can even set doppelgangers to use the skills found within the copied actor’s current skill set.
— And that’s all, folks! —