Doppelganger

Last Updated: 2012.01.23
Download Link
Github Link

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.

<doppelganger: x>

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.

Script call:

$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!

16 comments on “Doppelganger

    • I’m not sure if you can make them copy an earlier state of an actor, but it can copy a class at a certain level. So you can make a doppelganger based on an actor’s class at a certain level.

  1. If you create a dummy actor and ‘lock’ the parameters using variables (changing the dummy actor’s variable A… let’s say ATK equal real actor A’s ATK) during the event (and thus time) in which you want to lock it, then probably.

    Then just reference the dummy actor for the doppelganger.

  2. How to open these scripts? I have tried with 2 “ruby-readers” but none of them worked. Is it possible to have them on txt or rtf? And finally, If my game is in portuguese, will it work?
    (I know nothing about scripts…)

  3. Is it possible to have the enemy levels script inactive, but doppelganger useable? I want to use the doppelganger script, but not the enemy levels script.

  4. I cant seem to make the script work :( Im trying to use the class stats option
    but it doesnt copy the classes stats it just uses the default stats

  5. If I Make a doppelganger monster that uses all the stats of an actor can I use the function “change parameter” on that actor to modify the enemy stats during battle or he only records those stats when the monster is created?

  6. Damn!!! Error (509)
    This account’s public links are generating too much traffic and have been temporarily disabled!

  7. I might be a bit late, but does this script factor equipment into doppleganger stats (particularly the actor-based ones)?

  8. Why, when I want to set my doppelganger to a specific level (from Yanfly Enemy Levels script), it always sets the level, based on my party level and not the one I wanted to set?

Leave a comment