-
Posts
57 -
Joined
-
Last visited
Everything posted by npdogg
-
[LE] Single Element Immunity
npdogg replied to Rizalgar's topic in Skyrim's Creation Kit and Modders
Use conditions on mod incoming damage. Probably easier to filter out damage types that have magic keywords as I don't expect all physical attacks come from keyworded sources. -
[LE] Advance stage on player shout?
npdogg replied to luvadea's topic in Skyrim's Creation Kit and Modders
Add a Reference Alias to your quest and fill it with the player. Add a script to the alias with the OnSpellCast event. If the spell cast is equal to clear skies call SetStage. You'll probably also want a check that the quest is at a current stage as well, otherwise any use of Clear Skies will set the stage regardless of progress in the quest. -
[LE] Help me troubleshoot my teleportation script?
npdogg replied to lesleymac's topic in Skyrim's Creation Kit and Modders
I like this solution. Much more straightforward. With regards to the original solution, the only thing I can think of is that the properties aren't initialized. Have you checked your papyrus log? -
[LE] Trying to modify an existing script
npdogg replied to arael53's topic in Skyrim's Creation Kit and Modders
Bleh. Just realized that I made a mistake in the function signature for OnEffectStart - akTarget should come before akCaster. That may be why it isn't working. -
[LE] Custom Follower AI script
npdogg replied to UltimateNinjaOfDoom's topic in Skyrim's Creation Kit and Modders
I mean what you're trying to do is kind of advanced for someone new to modding. It's not just a simple matter of copy-pasting something. There are multiple parts that would need to work together to make this happen, including a quest, probably a story manager event, and maybe scripting. I would recommend looking at how other similar events happen, such as the Courier (who force-greets the player both inside and outside towns) and the Dawnguard character Durak who always greets the player in the first town they enter at level 10. -
[LE] Trying to modify an existing script
npdogg replied to arael53's topic in Skyrim's Creation Kit and Modders
How are you attaching the magic effect to the player? -
[LE] Custom Follower AI script
npdogg replied to UltimateNinjaOfDoom's topic in Skyrim's Creation Kit and Modders
General consensus is that changing the opening sequence is risky at best. Outside of that, it is certainly possible to get an NPC to run up to and greet the player. -
[LE] Trying to modify an existing script
npdogg replied to arael53's topic in Skyrim's Creation Kit and Modders
ScriptName SwingCostsStamina extends ActiveMagicEffect Actor TargetActor String WeaponSwingRightEvent = "weaponSwing" String WeaponSwingLeftEvent = "weaponSwingLeft" Float SwordStaminaCost = 5.0 Float DaggerStaminaCost = 2.5 Event OnEffectStart(Actor akCaster, Actor akTarget) If akTarget == Game.GetPlayer() TargetActor = akTarget RegisterForAnimationEvent(TargetActor, WeaponSwingRightEvent) RegisterForAnimationEvent(TargetActor, WeaponSwingLeftEvent) Else Dispel() EndIf EndEvent Event OnRaceSwitchComplete() RegisterForAnimationEvent(TargetActor, WeaponSwingRightEvent) RegisterForAnimationEvent(TargetActor, WeaponSwingLeftEvent) EndEvent Event OnAnimationEvent(ObjectReference akSource, String asEventName) If akSource == TargetActor Int EquippedItemType = 0 If asEventName == WeaponSwingRightEvent EquippedItemType = TargetActor.GetEquippedItemType(0) ElseIf asEventName == WeaponSwingLeftEvent EquippedItemType = TargetActor.GetEquippedItemType(1) EndIf If EquippedItemType == 1 TargetActor.DamageActorValue("Stamina", SwordStaminaCost) ElseIf EquippedItemType == 2 TargetActor.DamageActorValue("Stamina", DaggerStaminaCost) EndIf EndIf EndEvent -
[LE] Multiple If Statements
npdogg replied to javaplaza's topic in Skyrim's Creation Kit and Modders
Dawnguard uses OnHit to detect when Dexion is charmed during Prophet. Scriptname DLC1VQ03VamprieCharmDexion extends ReferenceAlias {When the player uses a spel on Dexion that has the "vampiremesmerize" effect, display a new objective} Event onHit(objectReference akAggressor, Form akSource, Projectile akProjectile, bool abPowerAttack, bool abSneakAttack, bool abBashAttack, bool abHitBlocked) if GetOwningQuest().GetStageDone(6) == 0 if akAggressor == Game.GetPlayer() as ObjectReference Spell sourceSpell = akSource as Spell If sourceSpell != None && GetActorRef().HasMagicEffect(VampireMesmerize) GetOwningQuest().SetObjectiveCompleted(40,1) GetOwningQuest().SetObjectiveDisplayed(45,1) endif endif endif endEvent MagicEffect Property VampireMesmerize Auto -
[LE] Multiple If Statements
npdogg replied to javaplaza's topic in Skyrim's Creation Kit and Modders
Even simpler, no need for the counter and just move the guard to the quest function. -
[LE] Multiple If Statements
npdogg replied to javaplaza's topic in Skyrim's Creation Kit and Modders
Instead of directly setting the stage from the magic effects of the 7 spells, have those spells call a function on your quest. This function would have an internal counter that sets the correct stage once it reaches 7. Each magic effect would just need a guard so that it performs the increment once. Very simple and easy to extend or swap the spells in future. Optionally, have the function check a form list to verify that the calling spell is valid, but this is probably overkill for a simple mod (as opposed to a library). You could also use the story manager magic cast event to advance your quest, but that would be more complicated if you aren't familiar with how to use it. This is insanely complicated relative to what the OP is trying to achieve. Less is more when it comes to programming. -
[LE] Load dors event tracking
npdogg replied to TRXtrixter's topic in Skyrim's Creation Kit and Modders
To solve the above problem, if you store a reference to the previous location you can check whether the cell attach/detach was accompanied by a location change. You can also check whether the previous cell was interior or exterior. -
Did you add your quest as a property on the script fragment?
- 2 replies
-
- papyrus
- papyrus fragments
-
(and 1 more)
Tagged with:
-
[LE] Retroactive Necromage- need scripting help!
npdogg replied to Galcyon's topic in Skyrim's Creation Kit and Modders
Clarification: which one? RN_QuestScript or RN_EffectScript? The quest script. -
[LE] Retroactive Necromage- need scripting help!
npdogg replied to Galcyon's topic in Skyrim's Creation Kit and Modders
Ok, been a bit busier than I'd like, but now that I've sat down and tried to understand your work, I now realize why the CK won't load your script, and why I still can't understand what you were doing. In your .esp, the script attached to RN_PlayerQuest is named "RN_QuestScript". The .zip file you uploaded only has the source and compiled versions of "RN_EffectScript"; no other scripts appear to be part of it. So, effectively, "RN_QuestScript" is completely absent, which explains why I can't access it. Because I'm (apparently) lacking one of the vital components of your work, I ulitmately can't understand what you did to get it to work, though I see all the pieces you used. I have a vague idea of how they fit, but I'm not knowledgeable enough in Papyrus to even guess as to how the script would look. That script was supposed to have been removed. It isn't needed. -
It's the OnActivate event handler which is then calling Toggle. OnActivate is an event sent to the script via the game engine event model when the object to which the script is attached is activated by an actor.
-
[LE] Event Headers called as Functions?
npdogg replied to qwertypol012's topic in Skyrim's Creation Kit and Modders
Bethesda isn't exactly a paragon of good software design or coding practices. RichWebster is talking about labelling a function with the event keyword to designate it as a "user" event. It's an abuse of the loose language semantics, not the same thing as labelling an event handler with the function keyword. -
[LE] Event Headers called as Functions?
npdogg replied to qwertypol012's topic in Skyrim's Creation Kit and Modders
lol dude. It's very simple. Event handlers are all functions, but not all functions are event handlers. Events are called through the papyrus engine event model or from custom events defined with SKSE. Giving your function the "Event" keyword doesn't make it an event handler, semantically or otherwise. It just makes your code more confusing. I didn't tell you to adopt a bad convention. If you don't like it being criticized, you don't have to post about it on discussion forums. -
[LE] Retroactive Necromage- need scripting help!
npdogg replied to Galcyon's topic in Skyrim's Creation Kit and Modders
Yeah, you want to extract everything from Scripts.rar if you want to do any work on scripts.