Better Netrunning for 2.12 is out! Thank you all for waiting. As I'm sure you've noticed, I haven't had much time to work on this recently, but I hope to get back into it.
A quick side note about this mod and post-2.0 Cyberpunk. Since the breach protocol quickhack was removed, some of this mod's functionality will need to be rebuilt essentially from scratch. As of Better Netrunning version 0.6, breaching devices or NPCs (including unconscious NPCs) is not possible, regardless of your config menu settings. I left the menu options regarding breaching as they were because I plan to create a replacement for breach protocol in a future update.
Quick heads-up regarding version 0.5 and up. A lot of people are reporting issues where enemies are automatically hackable without breaching. This is primarily because the latest versions of the mod unlock networks without access points on them (this is how the mod was always supposed to work, but my old method wasn't working).
As of version 0.5.2, there is a setting under the "Access Points" category that controls whether networks without access points will be unlocked automatically. Disabling this setting essentially reverts the mod to its old behavior.
Hey. Does your mod allow you to upload quickhacks to more than one enemy? Because it seems like Breach Protocol is too much effort for too little reward, particularly in the mid to endgame. But if you could upload a quickhack to all enemies from an access point or a netrunner or under certain conditions, that could be great.
Have you considered changing Breach Protocal (if that’s even possible) to make it more exciting? Like maybe more of an OSU style game? Have the time starts when you enter breach protocol. And, it’s easier to find a correct combination, but you have to do it quickly and maybe with correct timing? If you could remove the row/column constraints, so that you can choose any entry after any entry and shorten the time, that might work.
Seems like quickhacks are available no matter what. I even disabled the Unlock network with no access points setting and tried shuffling around my load order. I see that a few other users have reported this. Anyone have any ideas, or is this mod just not updated?
Everything seems to work for me, EXCEPT that in a lot of places it doesn't always detect that there's an access point nearby (particularly ncpd missions)... but it works properly in some Regina's gigs I've tried (specifically Monster hunt). So it's still nice to have installed, but I want the full experience of this mod because it's such a cool idea. When it works properly, it's beautiful.
When I disable the "Unlock network with no access points setting", it works as somewhat as expected BUT it also prevents using quickhacks against all vehicles -- which is completely unacceptable for me.
Update1: I think I fixed it. I'll test the code changes more tomorrow.
Update2: Ok, this code change (in betterNetrunning.reds) certainly seems to work (Edit: See Update #3 below). In betterNetrunning.reds (just replace this one function): https://pastebin.com/KEJnwQ9S
Update3: OK, I found out what can go "wrong" when the original code can't find the access point but my code change says "do the thing anyways". There (usually) IS a nearby access point, however, In these cases that my code change "fixes", to breach the network you'll have to jack into an unconscious npc (I verified this works) the access point itself will not have the breach daemons available. And to unlock cameras or turrets, you'll have to jack into a netrunner (there's a mod that adds more random netrunners) or find a backdoor device (usually a vending machine nearby).
Update4: I found 5 truly false positives (where if I could figure out a way to make them not require breaching, I would) while driving around NC (where the npcs need to be breached AND there's no nearby access point)-- but it's nothing major... just some random respawning NPCs. More concerning is a bug (really more like a minor exploit) in how the minigame works, but nothing game breaking and I don't want to mention what it is until I fix it because it's only an issue if you actually know about it. ;) If you just play the minigame like a normal person you'll probably never notice it.
Looks good so far. A few things come to my mind, when looking at the script:
- there are loops that iterate over large arrays instead of exiting the loop earlier, in case that conditions are met, to improve overall script performance. - some functions seem to rely on certain vars or states always being defined, where it could be helpful to add some fallback logic, maybe null checks or something, which otherwise could end up in runtime errors. However, I'm not sure about that, since I'm not experienced with redscript. - we could move repeated definitions and logic into helper functions for optimization. - If we find more issues, maybe turn large, complex functions into smaller ones, potentially making debugging much easier and straightforward.
I'm very interesting in playing the game with this mod, so I'm happy to help, if I can.
Giving this a test on my new play-through, I've always loved this mod but it's not been doing much for me. Hoping this will at least make it work a bit more!
Been playing with this code change for a couple days and it seems to work perfectly. There were moments where I thought I found a false positive, but then after killing everyone I found an access point every time (Edit: Grrr, see update #3 in my reply above).
@dtrail I just get the size of the array instead of looping over its contents, so that false negatives are impossible -- if it would have looped over the array contents (array size is > 0), then it just assumes it would have found the access point while looping. Is it possible for there to be false positives? Maybe, but there shouldn't be (edit: there are some). On the other hand, I can't explain exactly why there's so many false negatives with the original code. But false positives certainly won't result in runtime errors -- they'll just prevent you from quickhacking the thing. I've been looking for exactly that while playing, but I haven't found any false positives yet. Regardless, if you truly encounter a false positive, you can just temporarily change the mod's settings ingame and continue on without restarting or anything like that -- while with with false negatives being possible (and so frequent), we had zerooptions to fix it. So even in the worst case (there's some false positives somewhere), this is still infinitely better.
Tight, I'll check it out and report back! Do I just have to delete everything in betterNetrunning.reds and replace it with what you posted on pastebin? Or is there just a certain segment of code that I replace with yours?
You should just completely replace that one function in that one file. Leave everything else alone. If using notepad to edit the file, make sure to close it after saving because notepad will maintain its hold on the file handle and that can cause problems (notepad++ doesn't have this problem). :D
If you're still not totally sure about what to do, then (I wanted to avoid doing this) here's my betterNetrunning.reds file that has the above code change: https://drive.google.com/file/d/1n4uqbWxWTsDTJfGAW6gAPC-j3ZO350E6/view?usp=sharing
im very much not a coder but would like to at least attempt to make this mod work. I'm having sort of the opposite issue: I'm constantly blocked from being able to quickhack anyone besides the default "ping" quickhack, but I'm not able to breach through in a reliable way. For example, when I successfully upload the daemon that unlocks "devices in network" SOME devices become available, but turrets NEVER do. Additionally, after I knock an enemy unconscious, I'm given the option to press X on my controller to "breach" but tapping the button doesn't do anything. I've tried picking up the body, setting it back down, pressing "square" on my PS5 controller just in case by "X" the original mod author was referring to the XBOX layout... nothing. Really sucks because I LOVE the idea behind this mod, I just can't seem to get it to work. Maybe someone around with some more knowledge in the code could offer some insight? Any help at all is much appreciated
@marcellobuddy Are you on PC and using a controller? Does breaching unconscious npcs work with a keyboard? Are you really sure you have all the requirements installed properly and they're working and updated?
When I was looking at the code (if memory serves) at default settings it looked to me like turrets/cameras require a specific breach daemon which is found specifically on netrunners and backdoor devices. How the code works is that it basically adds all all daemons on everyone/everything, and then it loops over them and removes them depending on what it is (and whether two particular mod settings are enabled).
The key bindings are in another file (an .xml file iirc which is read by Input Loader), and _maybe_ it doesn't work properly with a controller? I don't know bc I don't have a controller. If you're using another mod that affects key bindings (like No More Hard-coded Keybinds), it can sometimes cause issues which require manually modifying inputUserMappings.xml to get keybinds to work as expected. Often times, if this is the issue, you'll see "press X" (or whatever key) on screen to do the thing, but it's actually some other key that does the thing due to the "overridableUI=" line(s) present -- I usually just comment those out to make s#*! work.
Thanks for the fix. Hey, mb you could post it as separate mod that fixes this one? And add this one as a requirement? Would be great and people could see it on the main page in the requirements.
Well, while the original mod authors' permissions are kind enough, I feel like I only understand ~50% of how this mod works. I don't know if I have the time/will to delve that deeply into cyberpunk modding to figure out the other 50%. if I make an actual mod (even a mod to a mod), I feel like I'm making some kind of commitment that I probably can't keep. I'm hoping someone else with a better understanding can take things further than I can. :D
What's weird is that last playthrough this mod worked without your changes, and this playthrough it doesn't even with your changes. No change to game version or anything. So sad.
Not sure what's going on. I added a few mods so perhaps there's a conflict, but it doesn't seem like any of the added mods would be related.
So...if anyone can't get this mod to work, even with Daemonjax's fix, try re-setting all settings under Progression - CyberDeck Quality and Progression - Intelligence back to their defaults. Doing so, the mod started working again. Yeah, can't customize these settings, but at least not every network is open like Vanilla now.
Thank you for your efforts. Much appreciated. Together with Radial Breach mod, and "Unlock networks with no access points" disabled this seems to be working nicely now.
Can't say the fix from daemonjax has done anything for me. Vanilla mod seemed to work just fine, after swapping in the file as provided (though that could also be a coinkydink) I started to find networks that behaved oddly (eg, access points with no breach daemons available, despite being linked to the device/network I wanted to hack). Usually I'd eventually gain access to those by hacking an unconscious NPC or something, but it was driving me nutty since I was unable to plan ahead so it was super frustrating.
I'll keep the vanilla mod and if I encounter a situation where this isn't working I might just keep Radial Breach on standby as a way to brute-force it if I find something that's actually broken, though in my experience the vanilla mod seemed to work just fine in that regard.
EDIT: After testing it as far as my patience goes, I think it was just a coincidence. The OG mod will also set up cyan lines to devices that won't unlock devices, and you will still need to hack a random enemy to do them, in fact, side-by-side both the vanilla and the fix seem to perform mostly the same, which is very wonkily and frustratingly. I guess the best option is to just use radial breach, even if it massively nerfs what this mod set out to do.
Just to confirm Daemonjax's google drive file and the file once edited match. If you have no experience coding and would just like to replace the file, you're fine there.
Awesome work dude. I noticed recently breach network had stopped working, I just kinda assumed it was another mod I added that did it - I've added some radically overhauling mods, so I assumed something like Neuralware had done it. Not tried it yet but ya everyone seems to say you've got it working again. Nicely done dude.
It's weird because I do still have breach network, I just completely forgot about this mod and its features (I installed it so long ago then took about a year's break from the game so when I came back I just forgot its purpose), and because it's my 2nd playthrough (and first with 2.0/PL) I'm going for a much more violent and guns/blades blazing style, rarely even using hacks anyway.
Be warned, this mod really needs an update, even with Daemonjax's fix, some of enemy still can't hack, such as Zaria Hughes in Cyberpsycho Sighting: Bloody Ritual. She can end you with two hits in very hard. Just be prepared.
Tried to play with this mod... While i like the idea very much. It is very frustrating to play netrunner with it. There are a lot of places where access point does not exist or located so far into enemy territory that by the time you get to hack it, it is useless. I killed almost everyone. And i still do not understand how this mod wants me to use backdoors, it says some devices could be breached. But how? When i scan them, option to breach is locked out. When i come close to them, there is no option to connect. Because of that i cant do almost any of the NCPD missions with netrunner abilities. So, the only reliable way for me to left for breaching network is to hack into unconscious NPC. How are you people playing with this mod?
And that is a problem. Especially if you play with a mod that makes stealth harder. Also, there is a lot of places where enemies just stand not so far from each other and you just do not have enough time to jack in unconscious NPC before the rest shoot you to death. It turns into the game where in 60-70% of situation you do not use netrunning at all. Shame this mod doesnt have option to let me breach enemies with a scanner and then i can use quickhacks.
Check for Daemonjax's comment (currently either above or below this comment). It includes a way to fix this mod and it works great! Btw, I also recommend using this mod in conjunction: Radial Breach
On controller the breach button is a/x which makes me jump any fix? Besides that love the mod adds much needed depth to netrunning. Would like to see the breach takedown animation added aswell ik that there is a mod for the breach takedown but it doesn’t work bc its been abandoned
Yeah you are right, i noticed this after and decided to have this turned on for immersive reasons, if enemies are not connected to a network i can just burn them with my quickhacks
can I ask how you got yours working? As of right now, the mod works perfectly for me, save for the fact that I can't actually breach anything. All quickhacks are locked, but when I upload a daemon that unlocks devices in the network, turrets are still completely blocked out. And when I knock out an enemy, I'm given an option to hack into them and "breach" but pressing the button doesn't actually do anything. I REALLY want to use this mod so if you have any pointers at all I would greatly appreciate it!
marcellobuddy Sounds like you have conflictions or the mod is not installed correctly. Reinstall it and make sure all files are in there, also share the mods you are using that might conflict with this one
590 comments
A quick side note about this mod and post-2.0 Cyberpunk. Since the breach protocol quickhack was removed, some of this mod's functionality will need to be rebuilt essentially from scratch. As of Better Netrunning version 0.6, breaching devices or NPCs (including unconscious NPCs) is not possible, regardless of your config menu settings. I left the menu options regarding breaching as they were because I plan to create a replacement for breach protocol in a future update.
As of version 0.5.2, there is a setting under the "Access Points" category that controls whether networks without access points will be unlocked automatically. Disabling this setting essentially reverts the mod to its old behavior.
Have you considered changing Breach Protocal (if that’s even possible) to make it more exciting? Like maybe more of an OSU style game? Have the time starts when you enter breach protocol. And, it’s easier to find a correct combination, but you have to do it quickly and maybe with correct timing? If you could remove the row/column constraints, so that you can choose any entry after any entry and shorten the time, that might work.
Everything seems to work for me, EXCEPT that in a lot of places it doesn't always detect that there's an access point nearby (particularly ncpd missions)... but it works properly in some Regina's gigs I've tried (specifically Monster hunt). So it's still nice to have installed, but I want the full experience of this mod because it's such a cool idea. When it works properly, it's beautiful.
When I disable the "Unlock network with no access points setting", it works as somewhat as expected BUT it also prevents using quickhacks against all vehicles -- which is completely unacceptable for me.
Update1: I think I fixed it. I'll test the code changes more tomorrow.
Update2: Ok, this code change (in betterNetrunning.reds) certainly seems to work (Edit: See Update #3 below).
In betterNetrunning.reds (just replace this one function):
https://pastebin.com/KEJnwQ9S
Update3: OK, I found out what can go "wrong" when the original code can't find the access point but my code change says "do the thing anyways". There (usually) IS a nearby access point, however, In these cases that my code change "fixes", to breach the network you'll have to jack into an unconscious npc (I verified this works) the access point itself will not have the breach daemons available. And to unlock cameras or turrets, you'll have to jack into a netrunner (there's a mod that adds more random netrunners) or find a backdoor device (usually a vending machine nearby).
Update4: I found 5 truly false positives (where if I could figure out a way to make them not require breaching, I would) while driving around NC (where the npcs need to be breached AND there's no nearby access point)-- but it's nothing major... just some random respawning NPCs. More concerning is a bug (really more like a minor exploit) in how the minigame works, but nothing game breaking and I don't want to mention what it is until I fix it because it's only an issue if you actually know about it. ;) If you just play the minigame like a normal person you'll probably never notice it.
- there are loops that iterate over large arrays instead of exiting the loop earlier, in case that conditions are met, to improve overall script performance.
- some functions seem to rely on certain vars or states always being defined, where it could be helpful to add some fallback logic, maybe null checks or something, which otherwise could end up in runtime errors. However, I'm not sure about that, since I'm not experienced with redscript.
- we could move repeated definitions and logic into helper functions for optimization.
- If we find more issues, maybe turn large, complex functions into smaller ones, potentially making debugging much easier and straightforward.
I'm very interesting in playing the game with this mod, so I'm happy to help, if I can.
Thanks for taking the time for doing this!
@dtrail I just get the size of the array instead of looping over its contents, so that false negatives are impossible -- if it would have looped over the array contents (array size is > 0), then it just assumes it would have found the access point while looping. Is it possible for there to be false positives? Maybe, but there shouldn't be (edit: there are some). On the other hand, I can't explain exactly why there's so many false negatives with the original code. But false positives certainly won't result in runtime errors -- they'll just prevent you from quickhacking the thing. I've been looking for exactly that while playing, but I haven't found any false positives yet. Regardless, if you truly encounter a false positive, you can just temporarily change the mod's settings ingame and continue on without restarting or anything like that -- while with with false negatives being possible (and so frequent), we had zero options to fix it. So even in the worst case (there's some false positives somewhere), this is still infinitely better.
If you're still not totally sure about what to do, then (I wanted to avoid doing this) here's my betterNetrunning.reds file that has the above code change: https://drive.google.com/file/d/1n4uqbWxWTsDTJfGAW6gAPC-j3ZO350E6/view?usp=sharing
Note: see update#3 in my original reply.
When I was looking at the code (if memory serves) at default settings it looked to me like turrets/cameras require a specific breach daemon which is found specifically on netrunners and backdoor devices. How the code works is that it basically adds all all daemons on everyone/everything, and then it loops over them and removes them depending on what it is (and whether two particular mod settings are enabled).
The key bindings are in another file (an .xml file iirc which is read by Input Loader), and _maybe_ it doesn't work properly with a controller? I don't know bc I don't have a controller. If you're using another mod that affects key bindings (like No More Hard-coded Keybinds), it can sometimes cause issues which require manually modifying inputUserMappings.xml to get keybinds to work as expected. Often times, if this is the issue, you'll see "press X" (or whatever key) on screen to do the thing, but it's actually some other key that does the thing due to the "overridableUI=" line(s) present -- I usually just comment those out to make s#*! work.
Not sure what's going on. I added a few mods so perhaps there's a conflict, but it doesn't seem like any of the added mods would be related.
What files can I translate?
Together with Radial Breach mod, and "Unlock networks with no access points" disabled this seems to be working nicely now.
I'll keep the vanilla mod and if I encounter a situation where this isn't working I might just keep Radial Breach on standby as a way to brute-force it if I find something that's actually broken, though in my experience the vanilla mod seemed to work just fine in that regard.
EDIT: After testing it as far as my patience goes, I think it was just a coincidence. The OG mod will also set up cyan lines to devices that won't unlock devices, and you will still need to hack a random enemy to do them, in fact, side-by-side both the vanilla and the fix seem to perform mostly the same, which is very wonkily and frustratingly. I guess the best option is to just use radial breach, even if it massively nerfs what this mod set out to do.
Awesome work dude. I noticed recently breach network had stopped working, I just kinda assumed it was another mod I added that did it - I've added some radically overhauling mods, so I assumed something like Neuralware had done it. Not tried it yet but ya everyone seems to say you've got it working again. Nicely done dude.
It's weird because I do still have breach network, I just completely forgot about this mod and its features (I installed it so long ago then took about a year's break from the game so when I came back I just forgot its purpose), and because it's my 2nd playthrough (and first with 2.0/PL) I'm going for a much more violent and guns/blades blazing style, rarely even using hacks anyway.
where access point does not exist or located so far into enemy territory that by the time you get to hack it, it is useless. I killed almost everyone. And i still do not understand how this mod wants me to use backdoors, it says some devices could be breached. But how? When i scan them, option to breach is locked out. When i come close to them, there is no option to connect. Because of that i cant do almost any of the NCPD missions with netrunner abilities. So, the only reliable way for me to left for breaching network is to hack into unconscious NPC. How are you people playing with this mod?
Shame this mod doesnt have option to let me breach enemies with a scanner and then i can use quickhacks.
Consider this a bug report.