Imagine a low INT V with 6 RAM only having access to say, 30% slowdown when full, whereas a V with 24 RAM from cyberdecks & perks will unlock the max slowdown when full. Will you consider adding a way to toggle %slowdown based on total RAM capacity? If slowdown% is also influenced by /%available RAM/ and /total RAM capacity/, we'll see the scanner's %slowdown being less when using Sandevistan or Berserker whereas 'premium' %slowdown requires slotting in a Cyberdeck/upping INT to reach that configured # RAM capacity.
The slider setting would be "Maximum slowdown RAM" for customizing which capacity/quantity of RAM (when fully charged) provides Maximum scanner slowdown.
Great mod! Adopted. I want to ask if it's possible to mix RAM and INT based mods together, because why not both? The game was too easy with my first character who mostly used quick hacks, so I kinda banned damage quick hacks with my other characters... Months after my first party, I'm willing to balance the game to my taste and day by day, I'm really getting closer to the perfect one, thanks to modders.
Note: If RAM and INT scanner time dilation mods multiply amongst themselves, so the very first part of my comment is pointless.
If I'm remembering the scripts right the RAM mod updates the slowdown every time you scan, while the INT mod only updates whenever you increase an attribute.
So if used together this mod would always overwrite the INT mod's changes.
Thanks for the reply and I confirm that RAM has priority and cancels the INT version ;) The RAM version seems more relevant to me as you can increase your INT for smart weapons. What's more, it's this version that controls the Overclock.
I made it after playing with HARDCORE22V2 as a generalist netrunner, where the time to kill is really short for everyone involved. In it I found that being able to slow time at any moment to effectively pause the game and analyze my surroundings to get a general idea of where enemies were was really powerful. Where exposing your self to find that out in undilated time would otherwise be risky. I had initially used No Scanner Time Dilation, but found it made quickhacking too hard to bother with. I tried reducing the scanner slowdown strength, only to have the same issue.
So this is one attempt at fixing my problem, where I can enjoy time dilation when I'm ready to quick hack and full of RAM, but am less able to abuse it for non-hacking purposes once I spend some and am in the thick of a fight.
I really should add Force Overclock HUD as an optional requirement for this mod. Seeing how you're going to want to see your health values if you're scanning while at lower time dilation strengths.
Yeah, I'm on my 7th playthrough now and it's great continually finding things to change up my gameplay style or make me take new things into account. I wouldn't use this mod on a first playthrough, but now that I've had it for a couple days, it's so good because there being (almost) no cost to using your scanner in the middle of something frenetic just doesn't feel completely right. I haven't yet tried playing without a cyberdeck, and there's nothing I love more than using the combination of quickhacks and guns in the middle of a fight. This mod definitely adds a really welcome bit of risk to taking too long to think about what quickhacks to use. Thanks choom!
I'd have to do more digging through scripts for examples of a passive RAM drain effect and harass people on the modding discord for help in getting something like that working. Then make it so the RAM drain effect is consistent no matter what the slowdown strength is, or your current RAM recovery rate for that matter. It all sounds beyond me.
Initially I thought that passive drain would be kinda a pain in the ass to play with ( You'd always have 1 less RAM than you should), but now the more I think about it, the more I see the appeal. Currently it's either a sliding scale of "Quickhack in absolute time dilated safety" or "Quickhack as fast as you can, because people are shooting at you"
So having a 3rd option of "Quickhack in safety while you can, because your time spent is costing you hacking ammo" fills a good niche of making hacking more urgent/desperate, while also not making it frustrating by having you risk getting shot while doing it without time dilation. Which just makes forgoing hacking and fighting normally tempting.
Thinking of all this has made me remember Time Dilation Overhaul's own little scanning slowdown stamina bar. It'd deplete as you scanned, and the time dilation effect would stop if the bar emptied. Added a nice level of desperation to quickhacks.
It's a wonder that I haven't found anything similar to it on Nexus yet, post 2.0 update.
I think you should consider pairing this change with some sort of buff to make it still a net nerf, but also make the player feel like they are getting something out of it.
I have a script that uses the OnUpdate function of the TimeDilationFocusModeEvents class to remove X RAM every tick during the actual slowdown and not when the scanner is merely opened. No clue on if having something run on that is a good idea or not (Having done some scripting for Skyrim before, the nebulous dangers of "Script bloat" are still stuck in my head). Just a test to see if it would work.
A nice coincidence of using OnUpdate is that it seemingly scaleswith the current time dilation strength. So it runs more at higher slowdown values, and less at lower slowdown values. Which is what I already wanted it to do. More RAM drain on a stronger slowdown, and less on a weaker one.
So I have a quick and dirty RAM drain effect running when I want it to. Now this leaves one issue with the passive RAM drain idea, being the HUD.
Normally on the quickhack UI, the small RAM bar under the health bar is removed and a different, larger RAM bar is placed in the top center of the screen. My issue is that unlike the smaller RAM bar, this larger one only counts whole RAM units and not partial bars. So you cannot see the rate of the drain effect while scanning. In fact, while scanning you can't see your RAM at all unless there's a valid hack target on your crosshair.
However, there is a silver lining. Being Overclock. While overclocked your health bar and more importantly, the small RAM bar below it are made visible while scanning. Letting you see the drain effect in real time as the bars empty. So next on my list is finding out how Overclock shows that part of the UI while scanning and if I can duct tape it onto my mod.
I mean, those mods use the scanner. This mod changes the scanner. Incompatibility would be expected.
They're written in lua, and I don't know what specific kind of happening is going on between them and this redscript mod that causes the issue.
This mod wraps onto the ShowScanner function of the scannerGameController class. I have little knowledge of what that last sentence actually means or what it means for compatibility with mods that do similar things. It's the only thing this mod touches (the flats that control scanner time dilation strength aside)
OnVisionModeChanged of the HUDManager class seemingly does the exact same thing if I wrap/hook it instead. Wonder if that'd fix the compatibility issue
Or it could be that I forgot to add wrappedMethod(show) at the start of my script... I think me forgetting to do that kinda breaks the original script I'm hooking onto
Scanner time dilation is basically a pause button, a common feature in RPG games. This is a great way of increasing difficulty without removing the feature.
So imho, how this mod would be perfect is, the slowdown time dilation strength is based on your intelligence stat, but the amount of time you can slowdown for is dictated by your available RAM. Then, if you overclock, you get the highest dilation no matter what your intelligence stat is.
And if this was configurable via Mod Settings, boom lol. Really like the concept and this is all just my opinion of course, thank you!
I mean, intelligence based slowdown would be even easier to add. Though I'd probably have it work on breakpoints based on the perk unlock levels (rookie, pro, phenom, legend), more satisfying as you level up imo. Seeing how Overclock needs 15 intelligence to unlock anyhow, making it override the int scaling seems like wasted effort.
I'm also looking into a passive RAM drain effect while the scanner slowdown is active too. It'll probably be jank as all hell and kinda unfun, but it'd fill the Time Dilation Overhaul shaped hole in my heart.
Once I add more bloat features to this mod, I'll probably consider making some of the values tweakable in mod settings
31 comments
Imagine a low INT V with 6 RAM only having access to say, 30% slowdown when full, whereas a V with 24 RAM from cyberdecks & perks will unlock the max slowdown when full. Will you consider adding a way to toggle %slowdown based on total RAM capacity? If slowdown% is also influenced by /%available RAM/ and /total RAM capacity/, we'll see the scanner's %slowdown being less when using Sandevistan or Berserker whereas 'premium' %slowdown requires slotting in a Cyberdeck/upping INT to reach that configured # RAM capacity.
The slider setting would be "Maximum slowdown RAM" for customizing which capacity/quantity of RAM (when fully charged) provides Maximum scanner slowdown.
Appreciative for this mod & hopeful :)
Note: If RAM and INT scanner time dilation mods multiply amongst themselves, so the very first part of my comment is pointless.
So if used together this mod would always overwrite the INT mod's changes.
I had initially used No Scanner Time Dilation, but found it made quickhacking too hard to bother with. I tried reducing the scanner slowdown strength, only to have the same issue.
So this is one attempt at fixing my problem, where I can enjoy time dilation when I'm ready to quick hack and full of RAM, but am less able to abuse it for non-hacking purposes once I spend some and am in the thick of a fight.
I really should add Force Overclock HUD as an optional requirement for this mod. Seeing how you're going to want to see your health values if you're scanning while at lower time dilation strengths.
Initially I thought that passive drain would be kinda a pain in the ass to play with ( You'd always have 1 less RAM than you should), but now the more I think about it, the more I see the appeal. Currently it's either a sliding scale of "Quickhack in absolute time dilated safety" or "Quickhack as fast as you can, because people are shooting at you"
So having a 3rd option of "Quickhack in safety while you can, because your time spent is costing you hacking ammo" fills a good niche of making hacking more urgent/desperate, while also not making it frustrating by having you risk getting shot while doing it without time dilation. Which just makes forgoing hacking and fighting normally tempting.
Thinking of all this has made me remember Time Dilation Overhaul's own little scanning slowdown stamina bar. It'd deplete as you scanned, and the time dilation effect would stop if the bar emptied. Added a nice level of desperation to quickhacks.
It's a wonder that I haven't found anything similar to it on Nexus yet, post 2.0 update.
I have a script that uses the OnUpdate function of the TimeDilationFocusModeEvents class to remove X RAM every tick during the actual slowdown and not when the scanner is merely opened. No clue on if having something run on that is a good idea or not (Having done some scripting for Skyrim before, the nebulous dangers of "Script bloat" are still stuck in my head). Just a test to see if it would work.
Done.A nice coincidence of using OnUpdate is that it seemingly scales with the current time dilation strength. So it runs more at higher slowdown values, and less at lower slowdown values. Which is what I already wanted it to do. More RAM drain on a stronger slowdown, and less on a weaker one.
So I have a quick and dirty RAM drain effect running when I want it to. Now this leaves one issue with the passive RAM drain idea, being the HUD.
Normally on the quickhack UI, the small RAM bar under the health bar is removed and a different, larger RAM bar is placed in the top center of the screen. My issue is that unlike the smaller RAM bar, this larger one only counts whole RAM units and not partial bars. So you cannot see the rate of the drain effect while scanning. In fact, while scanning you can't see your RAM at all unless there's a valid hack target on your crosshair.
However, there is a silver lining. Being Overclock. While overclocked your health bar and more importantly, the small RAM bar below it are made visible while scanning. Letting you see the drain effect in real time as the bars empty. So next on my list is finding out how Overclock shows that part of the UI while scanning and if I can duct tape it onto my mod.
How come two mods that have completely different ways of behaving in game and completely different scopes, create incompatibliities ?
I mean, those mods use the scanner. This mod changes the scanner. Incompatibility would be expected.
They're written in lua, and I don't know what specific kind of happening is going on between them and this redscript mod that causes the issue.
This mod wraps onto the ShowScanner function of the scannerGameController class. I have little knowledge of what that last sentence actually means or what it means for compatibility with mods that do similar things. It's the only thing this mod touches (the flats that control scanner time dilation strength aside)
OnVisionModeChanged of the HUDManager class seemingly does the exact same thing if I wrap/hook it instead. Wonder if that'd fix the compatibility issue
Or it could be that I forgot to add wrappedMethod(show) at the start of my script... I think me forgetting to do that kinda breaks the original script I'm hooking onto
And if this was configurable via Mod Settings, boom lol. Really like the concept and this is all just my opinion of course, thank you!
I'm also looking into a passive RAM drain effect while the scanner slowdown is active too. It'll probably be jank as all hell and kinda unfun, but it'd fill the Time Dilation Overhaul shaped hole in my heart.
Once I add more
bloatfeatures to this mod, I'll probably consider making some of the values tweakable in mod settings