Jump to content

Masterofnet

Banned
  • Posts

    402
  • Joined

  • Last visited

Everything posted by Masterofnet

  1. Hopefully they will be able to get you to calm down and start taking some responsibility for your behavior. Look at your behavior https://forums.nexus...a-custom-spell/ Look at reality https://forums.nexus...rk-as-intended/
  2. Frank, You are clearly someone who suffers from mental problems and unfortunately behavioral problems . Anyone who "attempts" to correct Frank is either suffering from "loneliness and resentment" or a "Troll" . Either placate Frank or he will freakout and get another thread locked. Get a hold on your mental and behavioral problems and stop forcing them onto other people. Look at your behavior https://forums.nexus...a-custom-spell/ Look at reality https://forums.nexus...rk-as-intended/
  3. There is a little more to it than what you are describing. There are differences between making something a property and defining it at run time. The programmer made it very clear it was better to get the player the way I did in the script. This may need to be looked into a little further. Also - Using Actor for the player works just fine. But it adds other functions that are not necessary for adding and removing an item. Thank your for your information.
  4. Frank , I am not sure why the other people here placate you and feed into your BS. I am not going to be one of those people. Get a grip on your behavior. That is the only problem here. Look at your behavior https://forums.nexus...a-custom-spell/ Look at reality https://forums.nexus...rk-as-intended/
  5. Did you read the thread? Bickering? Did you see me doing any Bickering? Go have at look a the thread. All you will see is Frank going crazy , like he is now. Do you allow people to post misinformation and gibberish without attempting to correct them? As far as the rest of your post. I got that scripting advice from a programmer, and using his advice has make enormous improvements to my scripts in size and function. I do see your point in regards to getting the playerref every time you pick up an object( that is in the list BTW ) . However I would do the script exactly like that. When you define properties outside of an event it makes them persistent within the Papyrus code. The less of that you have the better the code functions. As far as Frank, Before you comment - read the thread. Franks Gibberish https://forums.nexus...a-custom-spell/ Reality https://forums.nexus...rk-as-intended/
  6. Frank, That is completely incoherent. Just like this. Franks Gibberish https://forums.nexus...a-custom-spell/ Reality https://forums.nexus...rk-as-intended/ Come down to earth Frank. I have had it with your wacko nonsense. Do not destroy another thread with it.
  7. Freaky Frank ( As you call yourself ) What? Are you OK? ( You are not going to tell me what I am going to post here. ) - Frank removed hat from his post. Get a grip and stop with your gibberish. Franks Gibberish https://forums.nexusmods.com/index.php?/topic/5370805-need-some-help-with-a-custom-spell/ Reality https://forums.nexusmods.com/index.php?/topic/5306120-will-this-script-work-as-intended/
  8. candlepin 1. Please post scripts like this it makes it much easier to read. 2. Did you get the Mod Authors permission to use their work? 3. This is a very big undertaking, it may be better to do it one function at a time. You are going to need to get a much better grasp of Papyrus. These pages are a good place to start. https://www.creationkit.com/index.php?title=Category:Script_Objects https://www.creationkit.com/index.php?title=While When you have a better grasp of what you are going to do and can provide some more detailed information I will return and help. Hopefully others will also. For starters if a script is on a player alias Scriptname GourdIngredientSwap extends ReferenceAlias Potion property FoodGourd auto Ingredient property IngredientGourd auto ;ObjectReference property PlayerRef auto - Do not define properties outside on an event unless you have to. Event OnInit() ; This will not work properly unless the Quest is start game enabled. AddInventoryEventFilter(FoodGourd) EndEvent Event OnItemAdded(Form akBaseItem, int aiItemCount, ObjectReference akItemReference, ObjectReference akSourceContainer) OjectReference PlayerRef = GetReference() ; This refalias script is on the player just use GetReference() PlayerRef.RemoveItem(akBaseItem, aiItemCount, true) PlayerRef.AddItem(IngredientGourd, aiItemCount, true) EndEvent
  9. It is likely you need to set the relationship rank of the ex-follower with the player lower. Also you may not need to create your own faction, there may be other existing factions that will work or you may not need a faction at all. https://www.creationkit.com/index.php?title=SetRelationshipRank_-_Actor Also unless your follower is essential when you are dueling them it is very likely OnEnterBleedout() will not fire. As a mater of fact I have never been able to get it to fire unless the Actor is Essential or Protected (and not fighting the player) Function Duel() Actor PlayerRef = Game.GetPlayer() Actor Hireling = HirelingJenassa.GetReference() As Actor Hireling.EvaluatePackage() Hireling.SetRelationshipRank(PlayerRef, -1) Hireling.StartCombat(PlayerRef) EndFunction Event OnEnterBleedout() Actor Hireling = HirelingJenassa.GetReference() As Actor Hireling.SetRelationshipRank(Game.GetPlayer(), 1) Hireling.StopCombat() Hireling.ResetHealthAndLimbs() Hireling.EvaluatePackage() EndEvent
  10. I was able to run some tests on the script and it works perfectly. It is a very bad idea, and I would either fortify health the SpellBaseHP amount or make the actor invulnerable for a short period of time, but this is completely incorrect information. Your correction of my script is an example with several mistakes, as, for example, this logic: Heal = HealthCurrent - akTarget.GetActorValue("Health") => healthcurrent being the health you had at the time of casting, if you have healed yourself in the meantime with restoration spells this gives a negative number, restoreactorvalue treats negatives as positivies and therefore would heal again the amount you healed yourself, wrong, and would also heal the shield by substracting a negative number. Essentially, butchering a viable script and spreading misinformation by defending it. So, Ryyz, use the modactorvalue script of Masterofnet or use my original script depending on what you want to be the end result, both should work for their own slightly different goals as explained and to the best of my knowledge, but don't use his correction of mine, it's wrong and confusing. I also found a better way of gating it. Scriptname InconceivableSpell extends activemagiceffect Float Property SpellBaseHP = 100.0 Auto Event OnEffectStart(Actor akTarget, Actor akCaster) Float Heal Float HealthCurrent = akTarget.GetActorValue("Health") MagicEffect Inc = Self.GetBaseObject() While SpellBaseHP > 0.0 && akTarget.HasMagicEffect(Inc) Heal = HealthCurrent - akTarget.GetActorValue("Health") If Heal > 0.0 SpellBaseHP = SpellBaseHP - Heal akTarget.RestoreActorValue("Health", Heal) Endif EndWhile Dispel() EndEvent This was the original script Scriptname InvincibleSpell extends activemagiceffect Float Property SpellBaseHP = 100.0 Auto String Property ActorValue = "Health" Auto Float Property UpdateSpeed = 0.2 Auto Actor Target Float HealthCurrent Float HealthPercent Float HealthToHeal Float SpellHP Event OnEffectStart(Actor akTarget, Actor akCaster) Target = akTarget SpellHP = SpellBaseHP RegisterForSingleUpdate(UpdateSpeed) EndEvent Event OnUpdate() If (SpellHP > 0.0) HealthPercent = Target.GetAVPercentage(ActorValue) If (HealthPercent < 1.0) HealthCurrent = Target.GetActorValue(ActorValue) HealthToHeal = ((HealthCurrent / HealthPercent) - HealthCurrent) If HealthToHeal > SpellHP HealthToHeal = SpellHP Endif Target.RestoreActorValue(ActorValue, HealthToHeal) SpellHP -= HealthToHeal Endif RegisterForSingleUpdate(UpdateSpeed) Else self.Dispel() Endif EndEventBTW - I attempted to set the player invulnerable and it would not work. I have never tried before. Has anyone else attempted that?
  11. Ok 1. If you are looking for help with script, post it like this. Much easier to read. 2. Have you made sure to fill all of the script properties? 3. If you have all the properties filled, and you are having an issue like this, just attempt to add and remove one spell at a time. If it works add another. 4. Keep in mind, depending on what some of these spells are, it may be better to use YourSpell.Cast(AkActor, AkActor) http://www.creationkit.com/index.php?title=Cast_-_Spell 5. You should be able to put allot of these magic effects on one spell. You should not need a separate spell for every different effect. Hopefully other people will offer some help also. Way to show some initiative! Scriptname YellowLanternRingScript extends ObjectReference SPELL Property SummonYellowLanternBowConstructSpell Auto SPELL Property SummonYellowLanternFrostbiteSpiderConstructSpell Auto SPELL Property SummonYellowLanternKatanaConstructSpell Auto SPELL Property SummonYellowLanternScytheConstructSpell Auto SPELL Property SummonYellowLanternSkeletonConstructSpell Auto SPELL Property YellowLanternArrowsSpell Auto SPELL Property YellowLanternAuraLightSpell Auto SPELL Property YellowLanternAuraStrongSpell Auto SPELL Property YellowLanternBeamSpell Auto SPELL Property YellowLanternBoltExplo Auto SPELL Property YellowLanternBoltSpell Auto SPELL Property YellowLanternBowSpell Auto SPELL Property YellowLanternKatanaSpell Auto SPELL Property YellowLanternScytheSpell Auto Event OnEquipped(Actor AkActor) If AkActor = Game.GetPlayer() AkActor.AddSpell(YellowLanternAuraLightSpell) AkActor.AddSpell(SummonYellowLanternBowConstructSpell) AkActor.AddSpell(SummonYellowLanternFrostbiteSpiderConstructSpell) AkActor.AddSpell(SummonYellowLanternKatanaConstructSpell) AkActor.AddSpell(SummonYellowLanternScytheConstructSpell) AkActor.AddSpell(SummonYellowLanternSkeletonConstructSpell) AkActor.AddSpell(YellowLanternArrowsSpell) AkActor.AddSpell(YellowLanternAuraStrongSpell) AkActor.AddSpell(YellowLanternBeamSpell) AkActor.AddSpell(YellowLanternBoltExplo) AkActor.AddSpell(YellowLanternBoltSpell) AkActor.AddSpell(YellowLanternBowSpell) AkActor.AddSpell(YellowLanternKatanaSpell) AkActor.AddSpell(YellowLanternScytheSpell) EndIf EndEvent Event OnUnequipped(Actor AkActor) If AkActor = Game.GetPlayer() AkActor.RemoveSpell(YellowLanternAuraLightSpell) AkActor.RemoveSpell(SummonYellowLanternBowConstructSpell) AkActor.RemoveSpell(SummonYellowLanternFrostbiteSpiderConstructSpell) AkActor.RemoveSpell(SummonYellowLanternKatanaConstructSpell) AkActor.RemoveSpell(SummonYellowLanternScytheConstructSpell) AkActor.RemoveSpell(SummonYellowLanternSkeletonConstructSpell) AkActor.RemoveSpell(YellowLanternArrowsSpell) AkActor.RemoveSpell(YellowLanternAuraStrongSpell) AkActor.RemoveSpell(YellowLanternBeamSpell) AkActor.RemoveSpell(YellowLanternBoltExplo) AkActor.RemoveSpell(YellowLanternBoltSpell) AkActor.RemoveSpell(YellowLanternBowSpell) AkActor.RemoveSpell(YellowLanternKatanaSpell) AkActor.RemoveSpell(YellowLanternScytheSpell) EndIf EndEvent
  12. This script was to be placed on a Magic Effect and essentially prevents the target from losing any health until damage sustained = the "SpellBaseHP" amount. I have a few questions. 1. This was stated about this script below. Is it true? "Heal = HealthCurrent - akTarget.GetActorValue("Health") => healthcurrent being the health you had at the time of casting, if you have healed yourself in the meantime with restoration spells this gives a negative number, restoreactorvalue treats negatives as positivies and therefore would heal again the amount you healed yourself, wrong, and would also heal the shield by substracting a negative number." The script states ( if Heal is > 0 ) if Heal is a negative number the script should not do anything. It should only add health when the Targets health falls below the health amount when the spell what cast. 2. Can anyone think of a better way to gate this? 3. Will this script not prevent the target from losing any health until they have sustained damage = to the SpellBaseHP? Scriptname InconceivableSpell extends activemagiceffect Float Property SpellBaseHP = 100.0 Auto Float Property w = 0.0 Auto MagicEffect Property ME Auto Int i Event OnEffectStart(Actor akTarget, Actor akCaster) Float Heal Float HealthCurrent = akTarget.GetActorValue("Health") While SpellBaseHP > 0.0 && akTarget.HasMagicEffect(ME) Heal = HealthCurrent - akTarget.GetActorValue("Health") If Heal > 0.0 SpellBaseHP = SpellBaseHP - Heal akTarget.RestoreActorValue("Health", Heal) Endif Utility.Wait(w) EndWhile Dispel() EndEvent
  13. So if you are considering using OnEquip on an item that is not unique you could possibly run into problems. That explains why it has never failed on me. Also, I need to clarify my early statement regarding the armor. I was not using onequip and on unequip. I was using OnObjectEquipped(Form akBaseObject, ObjectReference akReference)OnObjectUnequipped(Form akBaseObject, ObjectReference akReference)and I can tell you it does not miss. What if you have the event on a quest alias? Would that be a possible issue if it was not a unique item?
  14. Frank, I was making an example script. As I have already stated. I would not use your script in game or anything like it. However I could very easily make any adjustments to it that need to be made. Ryyz, I clearly stated the script was an example and not to be used. Good look on your project.
  15. Why don't you stop assuming, do some testing and start knowing.
  16. Would anyone need to bring that up. You may be right about your script not continuing after the effect ends because you keep firing that event over and over again. Yes the While would keep going until the player sustained that amount of damage. Without me gating it. The script I made was just an example, I would not actually use it in game, as I stated. Your script is just not a viable idea and this guy does not know what he is doing so he continues to waste his time with it. Maybe you should man up and tell him! You said you had not had the time to test it yet. How would you know that?
  17. You mean this script. Correct? Event OnEffectStart(Actor akTarget, Actor akCaster) akTarget.ModActorValue("health", 100) ; or what ever your damage amount would be. EndEvent Event OnEffectFinish(Actor akTarget, Actor akCaster) akTarget.RestoreActorValue("health", 100) ; or what ever your damage amount would be. akTarget.ModActorValue("health", - 100) ; or what ever your damage amount would be. EndEvent Effect Start - Begin. Effect Finish - End. What if you used the spell and did not sustain a large amount of damage? Did you know that script would keep running even after the effect time ran out? I think I have made it pretty clear that script is not a good option. Maybe you should take a little time and figure out why. Thank God. Frank , everyone knows what Fortify Health does. The Magic Effect he was working with was for a script.
  18. Alright Ryyz! You should be a philosopher. I could not have said it better myself. Are you actually using that script on your Magic Effect?
  19. Frank, You have done nothing on this thread but spew misinformation and gibberish. Placing that script on a magic effect would not be a good idea and it was very poorly scripted. You need to take a little more responsibility for the information you are offering here. Some of these people do not know what they are doing and your misinformation could create problems. This could have been such a case. "You can lead a Frank to water but you can not make them drink."
  20. Interesting, I used to use a script that kept track of ever piece of armor a player equipped and unequipped. The purpose of it was to prevent the player from un-equipping armor during combat. It never failed once. Thanks for the information.
  21. Frank , whatever planet you are on I hope it's nice there. "You can lead a Frank to water but you can not make them drink." What is wrong with Freaky Frank?
  22. You could make it a greater power. That would only allow it to be used once a day. Why don't you check out the greater powers in the kit and see how they are gated to only work once a day. You may be able to set up your spell to work twice a day or whatever you feel is best.
  23. Here you go Freaky Frank. I redid your script to show you what I was talking about earlier. However all this script does is basically fortify health so it would probably be better to just do that. I also have some other concerns as well. Scriptname InvincibleSpell extends activemagiceffect Float Property SpellBaseHP = 100.0 Auto String Property ActorValue = "Health" Auto Float Property UpdateSpeed = 0.2 Auto Actor Target Float HealthCurrent Float HealthPercent Float HealthToHeal Float SpellHP Event OnEffectStart(Actor akTarget, Actor akCaster) Target = akTarget SpellHP = SpellBaseHP RegisterForSingleUpdate(UpdateSpeed) EndEvent Event OnUpdate() If (SpellHP > 0.0) HealthPercent = Target.GetAVPercentage(ActorValue) If (HealthPercent < 1.0) HealthCurrent = Target.GetActorValue(ActorValue) HealthToHeal = ((HealthCurrent / HealthPercent) - HealthCurrent) If HealthToHeal > SpellHP HealthToHeal = SpellHP Endif Target.RestoreActorValue(ActorValue, HealthToHeal) SpellHP -= HealthToHeal Endif RegisterForSingleUpdate(UpdateSpeed) Else self.Dispel() Endif EndEvent"Frank, Some advice. Do not define something outside an event unless you have to and do not define something unless you have to use it more than once in the same event. Also did you consider using while as opposed to regiseterforsingleupdate?" Scriptname InvincibleSpell extends activemagiceffect Float Property SpellBaseHP = 100.0 Auto Float Property w = 1.0 Auto Event OnEffectStart(Actor akTarget, Actor akCaster) Float Heal Float HealthCurrent = akTarget.GetActorValue("Health") While SpellBaseHP > 0.0 Heal = HealthCurrent - akTarget.GetActorValue("Health") If Heal > 0.0 SpellBaseHP = SpellBaseHP - Heal akTarget.RestoreActorValue("Health", Heal) Endif Utility.Wait(w) EndWhile Dispel() EndEvent
  24. I have used onequip and onuneqpup extensively and have never had it fail. The silver swords had some issues but those were caused by the script itself not the event. Can anyone confirm onequip/onunequip failing to trigger?
×
×
  • Create New...