Jump to content

Home

"Shapeshifting"


Hope Estheim

Recommended Posts

I know that there isn't a script function to change your appearance but you can go about this in a different and more annoying fashion. You need to make some kind of item, let's just say a robe for example. In that robe make a disguise property of whoever you want Proxy to look like. Then you need a script to add the item to the inventory as well as equip it. That should make the droid "change its appearance." Then when you want it to stop just have a script to remove the item from the inventory.

 

If there is another way I'm not sure, I hope this helps.

Link to comment
Share on other sites

Now that I'm home, here is an example of the script. To disguise someone, use something like this:

 

void main() {
  effect eDisguise = EffectDisguise( 4 );
  ApplyEffectToObject( DURATION_TYPE_TEMPORARY, eDisguise, GetObjectByTag( "tagofnpc" ), 120.00 );
}

 

The 4 comes from the fourth entry in the appearance.2da file, which is Bastila's appearance. You can change that to whatever entry you wish in that 2DA file. The 120.00 is the duration in seconds. Feel free to adjust that to whatever number you wish. Note that an infinitely long duration isn't possible, but a really long duration can simulate the effect.

 

I'm not sure whether multiple disguises can be applied on top of one another, and how the effects will stack, but I think it would be best to remove one disguise before starting another. Either wait for the appearance to expire on its own, or use this function to get rid of it early.

 

void main() {
  oTarget = GetObjectByTag( "tagofnpc" );
  effect eBuff = GetFirstEffect( oTarget );
  while( GetIsEffectValid( eBuff ) ) {
     if( GetEffectType( eBuff ) == EFFECT_TYPE_DISGUISE )
        RemoveEffect( oTarget, eBuff );
     eBuff = GetNextEffect( oTarget );
  }
}

 

Hope that helps. :)

 

- Star Admiral

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...