yusukenl Posted August 25, 2008 Share Posted August 25, 2008 I wanna make a gatekeeper which can hit others with magical melee attack, I know the easiest way is make a enchanted weapon for him.But here is the concern,on the model that gatekeeper has, I can make the gatekeeper equipped with weapon on hiss appearance. So will there be a conflict when I make the gatekeeper equipped with weapon and give him a sword to wield with ? Also, if I want him to have knock back effect on its melee attack, how should I edit this script(I found it in the Oblvion.esm)scn SE02GatekeeperScriptRef HitTargetshort PushAwayForce if PushAwayForce == 0 set PushAwayForce to 35 endif If SECrime.GatekeeperHit == 1 PushActorAway HitTarget PushAwayForce ; Message "Called PushActorAway" Set SECrime.GatekeeperHit to 0 EndIf I actually don't quite get the yellow part, or should I just putscn SE02GatekeeperScriptRef HitTargetPushActorAway HitTarget 35 How far is "35" actually ? :thanks: Link to comment Share on other sites More sharing options...
Vagrant0 Posted August 26, 2008 Share Posted August 26, 2008 You can't make creatures have enchanted attacks like weapons without giving them a weapon, and only some creatures have the nodes setup properly to allow weapons. There are no script blocks which run when the thing being scripted attacks something. Your best option would be to make a lesser power, on touch, with a scripted effect and a damage health/fatigue component. Although I'm sure there may be some other options with OBSE functions, they are likely too complicated, and won't be as effective. If a creature does not have a cast touch animation, they should use their normal attack animation. Link to comment Share on other sites More sharing options...
yusukenl Posted August 26, 2008 Author Share Posted August 26, 2008 I see, I have made some spell for it alreadybut when I make the .esp file(activated in game already)I tried to summon that creature via PlaceAtMe for testing, it didn't workthe console said "Item XXXX was not found for parameter ObjectID, Complied Script was not saved" What does that mean... I saved the .esp file already Link to comment Share on other sites More sharing options...
Vagrant0 Posted August 26, 2008 Share Posted August 26, 2008 I see, I have made some spell for it alreadybut when I make the .esp file(activated in game already)I tried to summon that creature via PlaceAtMe for testing, it didn't workthe console said "Item XXXX was not found for parameter ObjectID, Complied Script was not saved" What does that mean... I saved the .esp file alreadyYou shouldn't try using console to add anything added by a mod unless you care to write down form numbers and figure out what index your mod is loaded in. It's really much easier to just make a quest script or place the actual creature somewhere to test it. Doing so also encourages people to learn a wider range of basic CS skills. Link to comment Share on other sites More sharing options...
LoginToDownload Posted August 26, 2008 Share Posted August 26, 2008 Wouldn't "OnStartCombat" mean it would only run if, as soon as combat is initiated, he was attacking? That also doesn't factor in if they're attacking but missing, and hitter isn't necessary if it's just calling itself for PushActorAway. Link to comment Share on other sites More sharing options...
yusukenl Posted August 26, 2008 Author Share Posted August 26, 2008 ummm, do u mean the "if" statement in "begin - end" statement will only check the condition for once ?if that's so, how to make the statement keep checking the condition until the battle ends ? On attacked but missed part, my first idea was to make creature which sends everyone around it into the sky whenever it attacks, so I didn't make a missiing check on it.:P Link to comment Share on other sites More sharing options...
LoginToDownload Posted August 27, 2008 Share Posted August 27, 2008 The Begin-End statement would only run when the creature enters combat. Not the creature is in combat, just the frame where it starts. If you made it Begin GameMode and checked if IsInCombat, it might work better. Though you'd need a way to stop it tearing a target's Fatigue to shreds. (It would run every frame the creature was attacking, and could quite likely damage fatigue 500 or more) For that you could have a DoOnce variable that makes sure the Fatigue is only damaged when it's 0, is set to 1 when the Fatigue is damaged, and set to 0 when the creature isn't attacking/isn't in combat. Link to comment Share on other sites More sharing options...
Vagrant0 Posted August 27, 2008 Share Posted August 27, 2008 Are you wanting to make it every attack or something? That's probably a bad idea since it will currently affect whoever the current combat target is, no matter what (distance, blocking, godmode, whatever). And as you are making it use pushactoraway, once an actor is hit, they will likely not recover until they are dead as each and every hit will make them go ragdoll and reduce their stamina. I still think you are making this more complicated than it needs to be. Just make a touch Lesser Power with 0 cost, novice, and give it the following effects;Damage fatigue 100, radius 5 over 1 secondScripted spell effect radius 5 over 1 second Then with the scripted effect attach a simple script scn yusukPushactoreffectscript01213145945712047 ref target begin scripteffectstart set target to getself target.pushactoraway target -25 end The only downside is that it will make the actor hit fall to the ground when hit, not knocked back. To make the actor move back you will need a persistant reference or declare such a reference in a quest scipt. The real question is if you are wanting this to apply to a single creature, or if you are trying to make it work with several creatures. If using a single creature, or atleast a few, specific creatures, this method will probably work out better for you in the long run. The main difference is that in this method, the effect is used instead of a normal attack, rather than every time the creature attacks. This makes it less predictible, but still controllable through other scripts. Although the same thing could probably be achieved by a getrandompercent condition within the "happens every attack" script, such an effect is harder to control and may still occur too often. Link to comment Share on other sites More sharing options...
yusukenl Posted August 27, 2008 Author Share Posted August 27, 2008 I finally made the effect works !!but it is kinda different from what I expected thoughthe pushactoraway function didn't "push" npc away horizontally, instead the function just "throw" the npc into sky vertically or make them fall to the groundis it what this function will do only ... ? Link to comment Share on other sites More sharing options...
LoginToDownload Posted August 27, 2008 Share Posted August 27, 2008 How did you do it? If you did use Pusher.PushActorAway PushVictim, I can't see why it would knock them upwards. They get thrown upwards or downwards only if they try to push/pull themselves away. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.