Jump to content

Papyrus Scripting


Gorgopis

Recommended Posts

Is there a tutorial for papyrus scripting as follows? We could not find a compatible script at the Papyrus wiki.

 

Goal:

 

1. Draw a unique named weapon.

2. Trigger a unique named magic effect or spell that lasts X seconds.

3. Time the script so the above named magic effect or spell can't trigger again for X seconds. (To prevent issues if player sheathes and redraws within the step 2 time parameters).

4. End script on weapon sheathing, but maintain the time-protocol from step 3?

 

Thanks to any experts who can direct.

 

 

Link to comment
Share on other sites

There are a number of experts here who are normally great at replying to this kind of post...

 

... I'm not one of them!

 

When I was struggling with papy-whotsit, I'd try for days. Sometimes I got there, other times I didn't.

 

On those occasions where my tiny mind could not get itself around papyrus (sounds ancient Egyptian and is as meaningful to me as ancient Egyptian hieroglyphics) I posted here.

 

Maxarturo (he's often busy) and Ishara Meredin (who's probably equally busy... I don't know how they both find time to answer all this magical stuff), rode to my rescue on gleaming white metaphorical horses. Hurray!

 

They sent me some papyrus script by DPD. I scanned them and added them to my esp and Hey Presto! It was fixed.

 

Hopefully, they will reply, or some equally talented papyrus mage will put fingers to keyboard.

 

I wish you luck.

Link to comment
Share on other sites

For 'Slow Time Freeze' weapon enchantment effect (Voice Power Slow Time + Deep Freeze FX), this will result when it fires to have the attacked npc totally motionless, like a statue.
Here is what you need to do:
1) Duplicate the Magic Effect > 'VoiceSlowTimeEffect', give it a unique name and ID.
2) Create a 'Spell' (Fire and Forget) give it a unique name and ID, and add to it the Magic Effect you created in step '1'.
3) Create a Magic Effect and give it a unique name and ID.
Effect Archtype = Dual Value Modifier
Casting Type = Fire and Forget
Delivery = Contact
Assoc. Item 1 = Health
Assoc. Item 2 = Stamina
2nd AV Weight = 2.000
Resist Value = NONE otherwise if you ad resistance the script will not fire
Taper Duration = 0
Taper Weight = 0
Taper Curve = 0
Base Cost = 1.100
Skill Usage Mult = 0
- FLAGS -
Hostile
Determinal
FX Persist
No Recast
- KEYWORDS -
MagicDamageFrost
- SPELLMAKING -
Tick the 'Magnitude' box
4) Add this script in the Magic Effect you created in step '3', Fill in the script's property with the 'PlayerREF', the 'Slow Time Spell' and the 'Slow Time Magic Effect' you created in step '1' and '2'.

Actor Property PlayerREF Auto
MagicEffect Property SlowTimeEffect Auto
Spell Property SlowTimeSpell Auto
 
EVENT OnEffectStart(Actor akTarget, Actor akCaster)
         If (PlayerREF.HasMagicEffect(SlowTimeEffect))
             Return
     Else
             SlowTimeSpell.Cast(PlayerREF, PlayerREF)
   EndIf
ENDEVENT

 

 

 

5) Create an 'Enchantment' give a unique name and ID, and add to it the Magic Effect you created in step '3', the 'Magnitude' is to your liking but i would set it to around '30', but the duration to '0'.
OPTIONAL: Add to the enchantment 'FrostSlowFFContact' and a Magnitude of '100' and duration of '3'.
OR = Perk Deep Freeze (If I remember correctly the name...)
6) Add the 'Enchantment' you created in step '5' to your weapon and you are done.
NOTES: Due to how the Spells and Enchantments mechanics workd on the Skyrim engine, your slow fx will ONLY fire when the target gets hit, if you want the FX to fire when the player uses/fires and arrow, then this is a competely different set up.
* Don't test your weapon on an existing save file, but 'COC' to the cell you will place the weapon to test it.
Have Fun!.
Edited by maxarturo
Link to comment
Share on other sites

Stop it... you are making me blush...

I only hope that I didn't forget something, I wrote all this from the top of my head because I'm still on vacations with no Skyrim or CK around me.

But if I did forget something or it has any 'Typos', pleass sombody do rectify it.

Link to comment
Share on other sites

WELL! OK!

 

Thank you to @cumbrianlad, as we love an answer, no matter "don't know," or "can't help," or "good luck"! We're just talkers, we guess. BTW, we are great appreciators of metaphorical horses.

 

We fear that not having "Premium Member" attached to this specific Nexus Identity probably puts off some or many who might otherwise respond.

 

We also fear that we have tried @IsharaMeradin's patience one time too many, though Scripting Guru @IsharaMeradin is, and though benefit by that Guru's work we have.

 

We didn't expect @maxarturo's reply till after vacation, while we thought rephrasing our goal might make it a bit easier for a response in the meantime, as we waxed impatient.

 

So, Thank You, @maxarturo!

Link to comment
Share on other sites

You are welcome.

 

I don't think that you not having a premium membership has anything to do with people not responding, at least the ones i've in mind that provide unconditional constant assistance over the years, they may just be a little lazy to write a wall of text at this particular moment in time, or maybe they are also on vacations like I'm.

Edited by maxarturo
Link to comment
Share on other sites

Update to our attempts. We followed the advice and double-checked all Steps. And if or when time permits, here were our results:

 

1) The bow does not produce the desired effect in-game though the script-compile was successful. The target NPC's do not "freeze," and the Slow-Time Voice Effect type of Art does not "kick in."

That's OK, because we're learning here.

 

2. Do we need to add any conditions to our MGEF 1, such as getrestrained or other?

 

3) Do we perhaps need a keyword on MGEF # 1 from advice above?

 

4) Do we need to add some kind of Player.Ref to our script to tell the game that the player has the named enchanted bow? Is "having the bow" the same as the player in the script "having the Spell" made and named in Step 2?

 

5) We could not try the PerkDeepFreeeze (as it was not in our CK menu choices), and we didn't add the FrostSlowFFContact to Step 5, because after testing that effect seems to do too much damage, while it doesn't really slow down any NPC's (or slow time.) We have tried copying and renaming the FrostSlowFFContact, and removing the stamina damage part, but the frost slow-time effect does not work in game on NPC's. (Yet?)

 

6) Finally, our bow, is too strong at level 1. How best can we level off or back off this damage? It's showing damage 12 at level 1, plus damage from arrows, where most weapons are around 8-9, but the enchantments also seem to be buffing damage even when they're not freezing or slowing NPC's.

 

Thank you, if or when.

Link to comment
Share on other sites

  • Recently Browsing   0 members

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