NighTragEl4d Posted March 30, 2011 Share Posted March 30, 2011 Well i tried to make a script for a "race" with invisibility but i havent succeded...mostly...Anyway i know about a mods that adds invisibility from items but i need a good script if some1 can help me,anyway what im looking/trying to do is for my mod in development:Invisibility is always active except when player attacks or its in combat,when the player isnt anymore in combat or he doesnt attacks invisibility "comes" back again...Effect is the same as from Dota Rikimarus skill Permanent Invisibility (thats the mod im trying to make accually xD to ohnest) if someone is willing to help please reply. Link to comment Share on other sites More sharing options...
Kjkirimi Posted March 30, 2011 Share Posted March 30, 2011 It might work with something more simpler. Add 100% chameleon/invisibility as a race ability with constant effect that means duration 0. I'm not sure if this works, but it works for with water breathing and walking. Link to comment Share on other sites More sharing options...
Skevitj Posted March 30, 2011 Share Posted March 30, 2011 Haven't experimented with it, but the actual invisibility effect won't work when used as an ability. Using 100% chameleon instead should work. A possible work around could be something like this:Create a trivial object, an invisible activator is perfect. Drop one in a dummy cell, mark it as persistent and give it a name.Create a spell with effect: invisibility for 0s on target.Create an ability which is added as a racial ability, containing a script effect.Use the following script in the previous ability:scn AbilityCast ref me begin scripteffectupdate if IsSpellTarget *1* == 0 if isincombat == 0 set me to getself *2*.moveto me, 0, 0, 0 *2*.cast *1* me endif endif end*1* being the editor ID of the spell and *2* being the name given to the activator. That should give them an everlasting invisibility as long as they aren't in combat. It might need a bit more work to neaten it up, but that should work as is. No guarantees given though. Link to comment Share on other sites More sharing options...
NighTragEl4d Posted March 30, 2011 Author Share Posted March 30, 2011 Yea i tried with a chameleon and here is my script : scn PermanentInvisibility short Sneakingshort Runningshort Swimmingref StealthEffect begin ScriptEffectUpdate if (StealthEffect == 1)returnendif if (IsSneaking == 1) if (Sneaking == 0) if (isininterior == 1) if (getav invisibility <= 0)modav chameleon 100setactoralpha 0set Sneaking to 1set Swimming to 1endifendifendifendif if (Sneaking == 1) if (running == 1)if (swimming == 1)if (getav invisibility <= 0)modav chameleon -100setactoralpha 1set Sneaking to 0set running to 1set swimming to 1endif endifendif if (Sneaking == 1)If (player.isincombat == 1) modav chameleon -100setactoralpha 1set Sneaking to 0set running to 0set swimming to 0endifendif if (Sneaking == 1) if (getAV invisibility > 0) modav chameleon -100setactoralpha 1set Sneaking to 0set running to 1set swimming to 1endifendif if (Sneaking == 1) if (getav chameleon > 100) modav chameleon -100setactoralpha 1set Sneaking to 0set swimming to 1set running to 1endifendifendifend Begin ScriptEffectFinish if (Sneaking == 1) if (getav chameleon >= 120)modav chameleon -100setactoralpha 1set Sneaking to 0set running to 1set swimming to 1endifendif if (Sneaking == 1) if (getAV invisibility > 0)if (getav chameleon >= 100) modav chameleon -100setactoralpha 1set Sneaking to 0set swimming to 1set running to 1endifendifendifend Note . this is old script. but i messed up something badly here :S,idk what to do i even maked new script with chameleon and still it doesnt work :S Link to comment Share on other sites More sharing options...
raatorotta Posted March 30, 2011 Share Posted March 30, 2011 (edited) I have made a ring with 9000 invisibility, 100% chameleon and AncientGhostScript. Nobody attacks me even i keep attacking them, they simple don't see me at all. Guards stop me and say their "stop criminal, you have violated the law" but after conversation guard just stands there. I think what really makes the effect is AncientGhost Script. Im new to this stuff and don't know much about scripts, but it has worked fine for me. edit: Well I don't know. I just looked what ghostscript does and all it does is change shader. Edited March 30, 2011 by raatorotta Link to comment Share on other sites More sharing options...
ub3rman123 Posted March 30, 2011 Share Posted March 30, 2011 Is Chameleon a global variable? Could've sworn it was just a generic spell effect. All of the PMS effects are just shaders. NPCs will not change their reactions. If you don't want an NPC to be able to be hit, use SetGhost to 1. Link to comment Share on other sites More sharing options...
Skevitj Posted March 30, 2011 Share Posted March 30, 2011 (edited) raatorotta: The invisibility on the ring wont even be active, as I said before, it doesn't work as an ability (effectively the same as an apparel enchantment). The ancient whatever will probably just apply a shader, nothing to do with making you invisible. The 100% chameleon by itself is the only thing producing that effect, if you were to remove the other two it would still work in exactly the same way. NighTragEl4d: The script you have is complete overkill and is probably causing more problems than it solves (ignoring the mound of errors in it). Just create an ability with 100% chameleon on self and add/remove it to apply the effect. Modifying the behind-the-scenes values is more often than not just going to leave you in a world of hurt. With the simple ability the script just becomes:scn PermaInvis begin scripteffectupdate if issneaking == 1 if isincombat == 0 if isininterior == 1 if isspelltarget *1* == 0 addspell *1* endif return endif endif endif if isspelltarget *1* == 1 removespell *1* endif endThat will apply the chameleon when not in combat, (is) sneaking and (is) indoors and ensure it isn't applied any other time. It's relatively simple to add more conditions to it, but if you want anything more complex than a simple and or or of the conditions, it may get a little more interesting. Edited March 30, 2011 by Skevitj Link to comment Share on other sites More sharing options...
NighTragEl4d Posted March 31, 2011 Author Share Posted March 31, 2011 (edited) Yea that sort of thing said to me logic dragon about add/remove spell =),ill test it =) ty all. Btw skevitj is that script applies only when char is sneaking or everything, i mean when he walks normally etc? EDIT: I have test it,ability only applies when the char is sneaking,i need invisibility when he is and hes not sneaking if you understand,but ability removes it self when you hit/or in combat. But anyway good script =). EDIT 2: ok i did it here is the script : scn PermaInvis begin scripteffectupdate if isincombat == 0 if isininterior <= 1 if isspelltarget SatyrPermanentInvisibility == 0 addspell SatyrPermanentInvisibility endif return endif endif if isincombat == 1 if isspelltarget SatyrPermanentInvisibility == 1 removespell SatyrPermanentInvisibility endif endifend This works but only with 95 chameleon because when you hit someone with 100 chameleon they cant see you and script doesnt applies :S,i put 95 chameleon and it worked.Anyway ty all again for help.Also ive tested it with Invisibility,but when i hit someone invisibility wears off i alert npc who i attacked then invisibility comes again in instant anyone knows about some "wait" command or smth so i can delay Invisibility until combat is over? Edited March 31, 2011 by NighTragEl4d Link to comment Share on other sites More sharing options...
Skevitj Posted March 31, 2011 Share Posted March 31, 2011 (edited) That was sort of the gist of the last sentence in my post, if you want more conditions, just layer them on top, or if you want less you can just remove them. As long as there is at least one condition it doesn't really matter. I knew that error would probably be there, in that once the chameleon is applied, combat would probably never be initiated. I had hoped that the detection peak which occurs when you hit someone would have triggered the combat test to fail, but oh well. If you use OBSE, IsAttacking could easily be added in to ensure the decloak on hit, and that should be enough to put them in combat, preventing the cloak from coming back until they're out of combat. Another possible workaround could be IsWeaponOut which may allow you to decloak them as soon as they go into combat mode (will still allow casters to run around invisible though). It depends on what you're applying the ability to though, ie, If it is applied to a PC character IsInCombat will never test true with 100% chameleon, but it will if the ability is on an NPC. The code above modified with a simple timer:scn PermaInvis short timercounter begin scripteffectupdate if isweaponout == 0 if isincombat == 0 if isspelltarget *1* == 0 if timercounter <= 0 addspell *1* else set timercounter to timercounter - getsecondspassed endif endif return endif endif if isspelltarget *1* == 1 removespell *1* endif [/font][font="Arial"]set timercounter to 5[/font] [font="Arial"]end I've replaced the sneaking test with IsWeaponOut, so if you have your weapon drawn, you won't be invisible. As it currently is, if you satisfy all the conditions for invisibility, after 5s it will be applied (but instantly the first time). EDIT: Ok, fixed up, that should work now Edited March 31, 2011 by Skevitj Link to comment Share on other sites More sharing options...
NighTragEl4d Posted March 31, 2011 Author Share Posted March 31, 2011 Ok tnx,anyway ill apply this and test it,if its good ill add it in update.Anyway i have done with v1.0 so ill upload it on Tesnexus,try it out,ill post link here =). Link to comment Share on other sites More sharing options...
Recommended Posts