Jump to content

How would I go about NPC transformations?


Recommended Posts

Not sure if this is the right place for this or not... but anyway, I'm needing a little help.

 

I know it will require an event script, but I have no clue what I would write for the script to do what I want it to.

 

I recently created a castlevania based mod that is a POH and doubles as a skyrim remake of the N64 castlevania game.

 

I want to add transformations however.

 

At the end of the game Legacy of Darkness, Dracula transforms into some kind of gargoyle creature, I'm thinking that a vampire lord would work. And at the end of the original N64 game, Malus transforms into a dragon.

 

What I'm needing is a script that will transform Dracula into a vampirelord after his HP hits 0, completely refills his HP and requires you to kill him again in vamp-lord form.

 

And I would like to create a Malus character that will do the same, except obviously he would transform into a dragon.

 

I'm guessing I will need:

 

OnEvent ActorKiller

Actor.Resurrect

 

And from there, no clue what the script should contain.

Link to comment
Share on other sites

That would be using a power though, I need something to trigger when the NPC dies. And the partial script I posted in OP is just a guess, I'd like someone to tell me if I'm on the right track, or if they know how to script that, just type up the script so I can copy/paste :P

Edited by saintgrimm92
Link to comment
Share on other sites

something like...

 

GlobalVariable Property gAlreadyKilledOnce Auto
Spell Property pConversionSpell Auto

Event OnDeath(Actor akKiller)
	if !gAlreadyKilledOnce.GetValue()
		Resurrect()
		AddSpell(pConversionSpell)
		gAlreadyKilledOnce.SetValue(1.0)
	endif
EndEvent
or similar... I'd guess. *shrug* good luck. If it doesn't work, don't come looking for me, since I don't know the first thing about spell effects or papyrus scripting. :tongue:
Link to comment
Share on other sites

I did a similar effect in one of the staged fights in my arena mod.

Here is a cool way to go about it. (keep in mind I NEVER tried turning someone into a gargoyle)

Set your actor as essential by default (my way that I did it) or mix in the code provided by vamyan and use OnDeath.

 
Event OnEnterBleedout()
     if doOnce == 0
         doOnce=1 ; ensures this only happens once
         utility.wait(2.0) ; This time is used for dramatic effect.
         myRace = self.GetRace() ; gets your characters current race for the optional effect
         self.setRace(WhatEverGargoyleRace) ; switches the race
         self.startCombat(Game.getPlayer()) ; ensures your actor knows right away to be pissed off at the player.
     elseif doOnce == 1 ; optional effect, if you want the enemy to turn back into a humanoid after death in gargoyle form. Feel free to remove this if you dont want it.
          doOnce=2
          self.setRace(myRace) ; sets your race back to whatever it was stored as originally
          self.killEssential(Game.GetPlayer()) ; kills the invincible actor. Player will be flagged as the killer.
     endif
endEvent
 
race property myRace auto
race property WhatEverGargoyleRace auto
Int property doOnce=0 auto
 
Link to comment
Share on other sites

  • 4 weeks later...

For followers, one thing I've noticed about transformations, and hope someone might know an answer. I've got the werewolf mods working, but whenever a different non-vanilla body type is used (like UNP/CBBE/etc), there is a big problem. When they turn to the beast form, they turn invisible until they turn back. I've tested it also using setskin() from the SKSE, and verified that the beast form works correctly when switching to vanilla body, then breaks immediately when using any other body type.

 

Does anyone know how to fix this for followers? It does not seem to be a problem for the player character.

Link to comment
Share on other sites

For followers, one thing I've noticed about transformations, and hope someone might know an answer. I've got the werewolf mods working, but whenever a different non-vanilla body type is used (like UNP/CBBE/etc), there is a big problem. When they turn to the beast form, they turn invisible until they turn back. I've tested it also using setskin() from the SKSE, and verified that the beast form works correctly when switching to vanilla body, then breaks immediately when using any other body type.

 

Does anyone know how to fix this for followers? It does not seem to be a problem for the player character.

 

This sounds mod-based. Possibly bad edits with the changing process or pointing to textures that aren't there/null. I don't see why body type of a normal race should affect the beast race.

Link to comment
Share on other sites

I'm not sure why either, but if you go into the CK and change any NPC skin, it will make them invisible in werewolf form. For instance, if you change it from 'NONE' to 'SkinNaked', which is build into the game, it still does it. You can test the tranformation and change the follower to werewolf mode, by selecting them and typing 'setrace werewolfbeastrace' in the console.

Link to comment
Share on other sites

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...