-
Posts
37 -
Joined
-
Last visited
Everything posted by audiogarden21
-
Is it possible and how exactly does one go about accessing the script on the magic effect from outside? I know you can do it from a magic effect script to a quest script by pointing at the quest but I'm not sure - if at all possible - how to go about doing the reverse. Can anyone shed some light on this please?
-
[LE] Working Lock and Unlock Spells
audiogarden21 replied to nikolaf's topic in Skyrim's Creation Kit and Modders
Might I also recommend adding "GetKey" to your target logic to prevent people from being able to unlock stuff that requires a key, assuming you don't want them to of course. If (akTarget.GetKey == None), as an example. -
I concur with Max. You need to simply expose yourself more to the CK and experiment with changing things to see how they behave, and read read read all of the information you can on the wiki. As you become more and more accustomed to using the CK and spells/magic effects, etc, things become much easier. Everyone starts somewhere. Just keep at it. If you get frustrated, sometimes it's best to just step back and give it a rest for a little bit and not get yourself too worked up if something isn't working right. Let your brain work on it while you relax and then come back to it with a calm, clear head. And remember, when it comes to modding, there's most often multiple ways to skin a cat, meaning you can usually accomplish the same goal in a multitude of ways.
-
@link182 I forgot that you were trying to apply a spell via script to yourself but a "Spell" added via script grants one that the player can cast, where as an "Ability" like a permanent enchantment. That's where the issue lied. The best way to handle stuff like that in the future is to instead use a Perk and use the entry "Apply Combat Hit Spell" which will cast the spell automatically when you attack something with a weapon, and the script will add a perk instead of a spell. Since you provided us with very little information to go off of we really couldn't help you as much as we otherwise could have. If you want help in the future try to be as verbose as possible about your entire procedure. We're not mind readers. :geek: I've attached the esp with the loose files. Don't say I never did nothin' for ya. Took me all of 10 minutes so it wasn't a big deal. P.S. - The damage is set to 10 atm so you may want to adjust that. Enjoy.
-
The reason you're taking damage is because you changed it from buffing unarmed damage on the player as a constant effect, to applying a damage effect to the player as a constant effect. You need to change it from "Constant Effect > Self" to "Fire And Forget > Contact" - this will take it from an ability that applies a constant buff to yourself to an ability that you have that applies a single shot of the spell to the target your claws make contact with. You'll have to do this to the magic effect itself first, then you can change it on the Spell/Ability. You can't change it on a spell or ability if it already contains a magic effect, you may have to remove the effect prior to being able to change the spell as well. The spell will be locked into that magic effect's casting type and delivery of the first magic effect you apply to it. These are important distinctions as they define how a magic effect is applied. Constant effect means it is unaffected by duration and is constant, like enchantments. Concentration effects are really only used for channeled spells like Flames and Healing (the starter heal) are constantly cast while the attack button is held. Fire and Forget is for everything else that you apply to a target in a single cast with a cast time, like a buff, nuke, heal, or a potion. Delivery is for whom it affects. Self targets the caster. Contact means it doesn't contain a projectile like Fireball would but applies on a hit like a weapon hit or a poison on your weapon or a weapon enchant. Aimed is for your standard projectile like Fireball. Target Actor is similar to Contact in that it contains no projectile per se, however as long as the actor is in the crosshair the spell will affect them. Target Location is used for spells that cast on the ground like Wall of Flames or any of the various rune destruction spells, as well as all the Conjuration summon spells. Read more about magic effects here.
-
I looked yesterday. The PlayerWerewolfChangeScript points to WerewolfBeastRace in its properties. It's also used by a few NPCs. You would also want to change the effect from buffing your unarmed damage to just dealing straight up damage to health in this case, but since that will apply to all users of the spell I guess that's moot, but knowledge is power! According to the CK, there's no differentiation between players or NPCs "Werewolf Armor" so it looks like a player reference alias is the best method for his goals. Create Quest > Quest Alias Tab > New Reference Alias > Unique Actor > Select Player > Add your script on the right > Bob's your uncle. To iterate on Max's code; Scriptname NameMeWhateverYouWantHereScript extends ReferenceAlias Import Game Race Property WerewolfBeastRace auto Spell Property WerewolfPoisonClaw Auto EVENT OnRaceSwitchComplete() Actor Player = Game.GetPlayer() If (GetActorReference().GetRace() == WerewolfBeastRace) ; Adds the spell when players is a Werewolf Player.AddSpell(WerewolfPoisonClaw) ElseIf (GetActorReference().GetRace() != WerewolfBeastRace) ; Removes the spell when players is not a Werewolf Player.RemoveSpell(WerewolfPoisonClaw) EndIf ENDEVENT That should be all you need to get started. Just be sure to change "NameMeWhateverYouWantHereScript" to whatever you named the script file itself and fill the quest properties in the CK. I think your English is fine. =) It's probably a damn sight better than my whateveryournativelanguage is, believe me.
-
I'd think it's probably best not to mess with vanilla scripts unless you really know what you're doing. You can just create a new one. It's really not difficult at all. Scripting Reference - https://www.creationkit.com/index.php?title=Category:Papyrus Quest Data Reference - https://www.creationkit.com/index.php?title=Quest_Data_Tab Quest Alias Reference - https://www.creationkit.com/index.php?title=Quest_Alias_Tab
-
Yeah. That's what I've settled on and why I stopped asking for help on that front. =) Well it's a shame that is the case then. I wonder if the SKSE team could fix that? I'm not sure how far they can go into fixing things but it would be interesting to see what's going on under the hood at the very least. Thanks for lookin' into it for me though. It's much appreciated. I got a problem... When I come across anomalies like that I become obsessed. It gets pretty bad sometimes, heh.
-
@RichWebster Did you run it in SSE? It has been brought to my attention that I have posted this in the wrong forum segment. I hadn't realized there was a specific SSE forum. Whoops! There's also another quirk I noticed regarding enchantments. Even when I filter to only show enchantments using SKSE's "GetEnchant()" function on akSource, it too runs the code twice per hit. Here's the code snippet I used: Enchantment SourceEnchantment = (akSource as Weapon).GetEnchantment() If (SourceEnchantment != None) If (SourceEnchantment == EnchWeaponFireDamage04) ;I just chose this one because it's on the daedric mace I put on NPCs for testing Debug.Trace("Enchantment ID: "+SourceEnchantment) EndIf EndIf You can also run "HasKeyword()" on the enchantment to test for MagicDamageFire and that will do the same thing. It's very peculiar.
-
Can confirm. I was noticing errors being thrown any time I removed a variable from a script, Papyrus complained about that. Best to clean up unneeded variables once a mod complete.
- 21 replies
-
- creation kit
- magic effect
-
(and 1 more)
Tagged with:
-
@ReDragon2013 You're right. I hadn't realized there was a separate forum for SSE. That's my fault. I apologize. If a moderator could please move this to the SSE equivalent mod help thread that would be great. Which is precisely why I'm here. Are you sure about that? Because when I dig into the Actor script for SSE it says this, which coincidentally is the same thing the wiki says; What it means is that if a weapon has no enchant, debug.trace reads "akSource" as "[WEAPON < (00013983)>]". Obviously the ID changes based on the weapon. If you are hit with a weapon that has an enchantment on it or are hit by a spell, debug.trace reads "akSource" as "[Form < (00028DE8)>]", again, ID is just an example from one of my logs. WEAPON, and FORM, respectively. I just thought it was interesting.
-
Create a custom quest, then create a reference alias for the player in the Quest Alias Tab, then add your poison ability to the player alias and make sure you add a condition for the spell so that it only applies if you're a werewolf. You should be able to use the condition "GetIsRace" and select WerewolfBeastRace. Also make sure the spell you create is an ability and not a spell. Spells are cast while abilities are constant effects. So Ability > Constant Effect > Self. Make sure to tick Disallow Spell Absorb/Reflect just in case. For the magic effect itself, look at the "RaceKhajiitUnarmedDamage" magic effect as a template. You can set your resist type to poison under resist value. This will add X amount of damage that is affected by poison resist to your unarmed attacks.
-
I've discovered a few more things. If you just run an OnHit event with nothing but a debug trace telling you what akSource is, it will report the following; WEAPON (if it has no enchantment on it), FORM (if a weapon has an enchantment on it, and spells), and EXPLOSIONS as Forms. I attempted to pass a potion hit via poison by applying one to an NPC and giving them the item but that hit was not passed at all.
-
[LE] A few CK questions
audiogarden21 replied to iblurtalot's topic in Skyrim's Creation Kit and Modders
Which scripts are you trying to change? Also, what are the changes you're trying to make. Helps us out here. Let us know what you know.