Jump to content

Need help modding a perk


KKDragonLord

Recommended Posts

Hi. When testing stealth mods to get it exactly how I wanted it to be I realized that the vanilla perk Silent Running is absolutely overpowered by simply making the player completely silent when sneaking even in the heaviest power armor. I was surprised because that's not how it is claimed to work and so I decided to modify it to work as advertised and added a bit of speed to it in order to make it interesting.

I read about scripting and downloaded the GECK and got to the point where I now have a code that should work but I just can't figure out how to put it on a perk.

This is my script:

scn TrueSilentRunning
if IsSneaking == 1
SetNumericGameSetting fSneakRunningMult 1
player.modav SpeedMult 41
else
if player.GetAv SpeedMult == 141
player.modav SpeedMult -41
endif
I don't know if I just have to add it to an entry point or if there is some way to add a custom script to a new effect or something, that is what I just can't figure out. If anyone could help me, I'd be really grateful.

On a second note I also noticed during my testing that the Game is completely bullshitting when it mentions varying degrees of effectiveness for stealth fields. The Chameleon effect is just complete invisibility at 1% or 99%. I would love to fix this as well if possible. At first I thought that it could work if made fields function similar to the light-darkness effect on stealth. And then I realized that darkness only seems to do the exact same thing, make the player 100% invisible. So I guess my expectations for the complexity of the stealth system were a bit too high.

I still would like to try changing how stealth fields work though.

Maybe it could work by changing the spot detection distance, making weak fields like that of the chinese stealth suit work only up to 100 yards or so, much less effective than a stealth boy, and letting them see you even with a stealth boy at about 20-30ft. Sadly the detection distance is a global variable so when you turn a stealth boy on it would make everyone else suffer from momentary blindness to everything, not just you, but I can't think of anyother way to make it happen.

Edited by KKDragonLord
Link to comment
Share on other sites

To put a script on a base effect ... find the base effect in the object tree "ScriptEffect" And just duplicate it .

Then on the associated item , you select your script. And your script must be an "Effect" type script for it to show up in the drop down list for the associated item. Then you can use your new base effect on either an "Object Effect" or an "Actor Effect"

 

Which for placing on a perk , you would want an Actor Effect subclass "Ability"

 

On the whole deal with how and why you get detected ... check this geck wiki page if you haven't already ...

 

http://geck.bethsoft.com/index.php?title=Category:Detection

 

And basically you can think of it as a tug of war between your sneak skill and their perception.

But with the other factors of course.

 

How much the chameleon effect really renders you invisible , I'm not sure. I think it just has to do with light refraction getting factored into the visual calculation ... hence you are less lit up ??? With the magnitude being how big of an area ... so once you are 100% covered (your size) ... I don't think you gain anymore benefit . But for a larger creature , they need a higher magnitude to get the same chameleon efficiency as a smaller one. And any effect shader really has no bearing on it ... IDK for sure.

 

But on testing a particular scenario ... bump their perception up 1 to see what effect that has.

And or ... lowering the chameleon magnitude.

 

Add edit : Ok looks like I was wrong about the chameleon effect. Its magnitude is factored into the visual calculation , determining how reflective you are. So 100% chameleon = invisibility.

Then the difference after that , is invisibility gets removed after activating something , where as chameleon will not.

 

Another factor on the stealth boy ... is that the combat alert flag is getting removed.

Edited by Mktavish
Link to comment
Share on other sites

I know that the Chameleon effect *Should* work like that and in Oblivion or other games it probably does work as such, but if you actually test it in Fallout 3 you will find out that it simply doesn't at all.

 

 

I am not even using stealth boys to test this out, just the Chameleon console command.

put on an effect of 01%, lower sneak to 0(-), go right in front of an enemy (with the silent running perk to remove sound detection), put in some power armor for good measure (though Silent Running will render it moot), in broad daylight, and they simply will be none the wiser.

 

That is the thing I wish to fix.

I'll try getting my script to work with your advice, thanks!

Edited by KKDragonLord
Link to comment
Share on other sites

Yes! It works now!

 

I can't thank you enough, I can finally do mods now!

Finally Stealth Running does what it's supposed to.

 

In the vanilla game it doesn't make that much difference since the stealth settings are just facepalm ridiculously easy to begin with, but getting this perk while using mods to make stealth more realistc was just pointless, it was just too damn good.

 

Now all that is left is to fix stealth fields.

In the vanilla game it doesn't make that much difference since the stealth settings are just facepalm ridiculously easy to begin with.

Edited by KKDragonLord
Link to comment
Share on other sites

So is your script up top just a peice of an over all ? Because I have never seen a script start with "IF" as its first line.

 

I am left wondering how you are achieving your desired effect?

 

On the subject of chameleon ... I have done some extensive testing ... and come to the conclusion that there is no magnitude that can be inputed for it. And infact the detection calculations that Bethesda has posted are bollox !!!

 

I'm still in the middle of testing all senarios ... but the slow and skinny ... their visual mention (light) is only about the player having their pipboy light on , and whether the surrounding light is dark enough to give contrast.

 

The majority of the detection threshold is the sneak ability , which only counts while crouching , and the perception level of the actor becoming alerted.

 

The chameleon effect does make a difference ... but its adding into the detection threshold about the same as the difference between standing and crouching. Except that it has no magnitude , while crouching uses the sneak skill as magnitude.

 

IDk ... need more testing.

 

What was your thoughts on how to make the stealth field less effective ?

Link to comment
Share on other sites

This was the final script. I made a Base Effect with it and now it's working beautiful.

scn TrueSilentRunning
short iSneakRun
begin ScriptEffectStart
if getgamesetting fsneakrunningmult != 1
set iSneakRun to GetGameSetting fSneakRunningMult
else if getgamesetting fsneakrunningmult != 0
set iSneakRun to GetGameSetting fSneakRunningMult
endif
if IsSneaking == 1
SetNumericGameSetting fSneakRunningMult 1
player.modav SpeedMult 41
endif
end
Begin ScriptEffectFinish
if IsSneaking == 0
SetNumericGameSetting fSneakRunningMult iSneakRun
player.modav SpeedMult -41
endif
end

The chameleon makes the player not be detected by line of sight, I can't say exactly what it takes for enemies to see you, if you stand or crouch, how close you must be, during the day, inside, outside, shooting a gun, moving, hitting an enemy, etc. It all depends.

But basically my intention was to get the effect to only work up to a certain distance, since it's not supposed to be perfect invisibility anyway.

After some testing I discovered a method to get it to work, replacing the chameleon effect with changing the global setting fSneakLightMult which by default is 1.4
some mods that change sneaking will mess with this variable so the patch has to be put last for it to really work.

With some testing I found that the Sneak skill will influence the distance that this variable will work at, which is logical since it's a multiplier for LoS detection based on the sneak skill.

With 100 sneak, outside at daylight you can sneak while moving in front of a raider to about 5 feet if the variable is at 0.3
fSneakLightMult 0.4 is about 20ft
fSneakLightMult 0.5 is about 30ft
fSneakLightMult 0.6 is about 40ft
etc...
50 sneak will halve these values.

My intention was to make stealthboys let you get to about 50ft before being spotted, so I am currently using 0.7
Be mindful that , replacing Chameleon with a change in this variable will make stealtboys not help at all unless the player is sneaking.

The only way to make stealthboys still work even if the player isn't sneaking would be to lower the overall detection range of NPCs while increasing the Bootsound variable to make them not see anything but still hear movement. As this would take a lot of testing to get right, I am not messing with it for the moment.
Link to comment
Share on other sites

Awesome ... although I am a little perplexed by your statements here.

 

My experience was that chameleon does not equal invisibility. Standing while having chameleon to sneaking while having chameleon can vary as much as 100+ meters , depending on your sneak skill and their perception.

 

With chameleon and silent running (20 sneak I think) ... while crouched ... could walk up right next to them if their perception was 5 or lower. Then for each point of perception past 5 ... add 10ft roughly. So perception 10 ... 50ft would trigger them to start searching. Not that they could find me if I stay still. And jumping or turning does not count as moving ... you have to move forward /back / side to trigger their next alert status.

 

I am wondering if the light and angle of it may be a factor to the chameleon , plus maybe surroundings. My testing was done between 13 & 1400 hrs in springvale up the road running north/south.

 

And one thing to mention I noticed through looking at functions ... an exterior cell sets its detection distance threshold x2.

But I guess who knows how the light will effect it different ??? Will be testing stuff like that later.

 

Awesome input from you ... look forward to discussing this more ;)

Edited by Mktavish
Link to comment
Share on other sites

  • Recently Browsing   0 members

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