Full notes
Full >//:System.Hack update
Read the full published notes in a cleaner layout. The original post stays linked below.
Repeated intro
Hey everyone, I'm back again with another update with what's happening behind the scenes here. I should have broken this up over a few Dev Logs, but instead I'm going to dump a bunch in your lap at once. I have six points to touch on. And note that this is all stuff that is currently done, not stuff I still need to do. It doesn't looks like much is happening with all this radio silence, but I'm making great strides on my side of things. I have included some screenshots throughout, but please note these are rough shots.
What changed
- UI and audio
- Balance
- Security
- Gameplay
- Events
- Performance
User Interface The UI has been rebuild with a better layout, new art and design work, and better functionality.
I have added a pop-up when hovering over any stat (skills, attributes, hardware parameters, mods, etc.) This briefly explains the mechanics behind the item. For example, hovering the mouse over your Response stat on your Rig says: “Response determines the cooldown between attacks and program execution. Base cooldown is equal to the HOST rating, divided by your Response, multiplied by 1 second.”
Stealth and System Security The way the game deals with system security, stealth, and IC has been reworked.
Masking tests are no longer RNG, and they no longer trigger in response to actions you take, such as executing a program. Instead the HOST sweeps the system every 3 seconds. During these sweeps, if the System Heat + (HOST rating x 2) exceed your Masking + Cyber Stealth, you will gain one Tracking Tag. After a Sweep, the System Heat drops by an amount equal to the HOST rating. Tracking Tags no longer decrease your Masking, they simply represent the HOST narrowing in on your location.
With the new mechanics, systems with have three alert levels: No Alert, Passive Alert, and Active Alert.
No Alert means the nodes are locked with User Verification Protocols as normal, but there are no IC trying to mess with you. This is the default state.
Passive Alert means the HOST has detected suspicious activity, but have not identified or located the threat. This is caused after you gain your first tracking tag. In this state, the HOST spawns Barrier, Code Gates, and Sentry IC in the nodes to thwart you. The lack of overtly hostile IC as long you as remain stealthy allows hackers to focus on a stealth build without worry of always running into an IC trying to crash them.
Active Alert means the HOST has located you. This occurs after you have accumulated Tracking Tags equal to your Masking hardware rating. In addition to the passive IC above the HOST will spawn Killer and Black IC against the Hacker. There is a 20 second cooldown after an active IC is defeated before the HOST can spawn another, but they can spawn an infinite amount. Note in the previous iteration, the hacker was simply kicked out of the system when they gained enough tracking tags. This way hackers can choose to focus on a combat build and just smash their way through systems if they want.
Intrusion Countermeasures IC now come in 5 distinct classes: Barriers, Gates, Sentry, Killer, and Black.
Barrier IC are spawned during a Passive Alert, and “lock down” nodes. They don't fight back, but need to be smashed down before the node is accessible.
Gate IC are spawned during a Passive Alert. They are used as additional checks so authorized users can still access nodes during passive alerts. There are a variety of Gate IC that can do everything from spawning additional IC, spiking System Heat, or damaging Avatars when unauthorized users try and pass through. These are an evolution of the Checkpoints in the previous iteration.
Sentry IC are spawned during a Passive Alert. They are used by the HOST to help detect and deter hackers. Sentry IC are usually armed with a variety of subroutines that can add Tracking Tags, dump the hacker from the system, or debuff the hacker.
Killer IC is the default class of IC spawned during an Active Alert. These guys focus on crashing your Avatar with a variety of methods, employing Nukes, Viruses, or just smashing them repeatedly with Hammer programs. Most Killer IC is mobile, and will chase you down until you leave the node, although turret-type variants exist.
Black IC are the real deal. Outside of causing some dumpshock, most IC can't hurt you outside of cyberspace. Not so with Black IC. By creating deadly biofeedback through your connection, your body in realspace suffers injuries as your Avatar is damaged in cyberspace. Many a would-be-hacker has been flat-lined by Black IC.
Cyber Combat One of the biggest changes with combat is that you are no longer stuck in place. While most IC are immobile, you are not. You can run away or engage as you please. Some IC, notable versions of Killer and Black IC will actively chase you down and attack once you get within range.
The flow of combat is very similar to before. Although you can move freely, your Response determines how often you can take an action or attack with a Hammer program. My first draft had your in-combat move speed affected by your Response as well, but that was more annoying that fun.
When you launch a subroutine against an IC, it is generally resisted by their Firewall rating, like armour. Usually the rating of the subroutine + your Cyber Combat skill has to exceed their Firewall to have any effect. Sometimes the effect is reduced by the Firewall, other times it's all or nothing, depending on the subroutine.
IC and Avatars have the equivalent of Hit Points called Cohesion equal to 10x their Body attribute. Cohesion can be reduced to 0 using Disruption attacks from Nukes, Viruses, Hammers, which will crash the IC.
Disruption subroutines are the basic, universal way of dealing with IC. They affect all IC equally. However there are subroutines specialized in dealing with specific IC types. These subroutines decrease the IC Body rating directly, lowering both current and maximum Cohesion. These subroutines are potent, but are useless against other IC types. For example: The Battering Ram subroutine can make short work of Barrier IC, but will have no effect on Sentry IC.
Finally the last big change with combat is the addition of Hammer subroutines. Hammers are weapon constructs that you can use to attack IC. There are currently two types if Hammers, a literal hammer and a katana. They are cosmetic representations only. Hammer subroutines don't have any functionality on their own. Instead when you strike an IC it triggers any “OnStrike” functions of programs currently running. They allow you to repeatedly trigger a program function without having to execute the program every time. The downside is that both the Hammer subroutine and the other program need to be running in active memory, which uses RAM.
Avatars There are now four different Avatars to choose from, allowing players to further customize their game play. Each has custom animations, so it doesn't feel like you're playing a re-skin of the same character.
Now this part is undecided, and feel free to weigh in, in the comments. I was planning on everyone just start with the basic Avatar, and have the option to purchase additional Avatars with your hard earned creds. Alternatively I could have them all unlocked right away, which allows customization out of the hop, but takes away some progression.
Along those lines, I now have a male and female main character that players can choose during character creation.
In the future, I'm hoping to add more options for Avatars and real-world character options, but it's sort of on the low-priority side of things right now.
The Net This is probably the biggest and most impactful change.
In the previous iteration of System.Hack, the systems were randomly generated and discarded after use, with a few exceptions.
In the new version once a system is generated, it becomes part of the game Net and can be hacked in the future. When contracts are generated there is a 50/50 chance they will use an existing system or generated a new one.
The other big change has to do with the people in the world. Before they were basically just the name on the file, generated when the file was generated. There was no depth.
Now each person you see has 14 hidden parameters: Real Name, Gender, Phone Number, Person Private System Address, Bank Account Number, Email Username, MACid, Work System Address, System Admin (True or False), Messages, Subscriptions, Corporate Affiliation, Company Tier, Employee Rank, and Citizen ID Number.
These are all important for a number of reason, but the idea boils down to trying to simulate as much of the world as possible to promote emergent game play. Every citizen is going to be connected to at least five different systems, which are all connected to other citizens in a sort of web.
With the new mechanic, contracts can get a lot more complicated. The basic contracts will remain unchanged: “Get provided with a system address, go there and do something”. More complex contracts will be the available in the mid and late game. Players will be provided with a few breadcrumbs to get started, and it will be up to them to figure out how to get the job done. More importantly, they will have the tools to try and get the job done multiple ways.
For example: The players are told “I need a file. The name of the file is unknown, and I don't know who currently has it. What I do know is that it was emailed by an Eleanor Dodson to an unknown recipient Saturday afternoon.” That's it. Now the player's only lead is a Real Name and that it was emailed. So the player's can run a search on Eleanor Dodson in an attempt to gather some of her basic info. Generally this is only Company Affiliation, but may include Employee Rank (worker, manager, executive). Now the player knows she is a manager employed by Monarch International. So they hack the Monarch email system. Using the name Eleanor Dodson, they uncover her username. Which they then spoof the password and get access to her Messages. From here they look at see the username of who she sent the file to on Saturday. Then they hack that person's profile, and track them down through a variety of means, eventually finding an downloading the file.
Some systems are going to be very difficult to simply muscle your way through. Which means you will have to put in some extra legwork to make the hack easier, such as gaining extra credentials, figuring out what IC you may face and arm yourself accordingly, or pre-hack the system and install a Backdoor.
Backdoors allow you to “jump” to the node you installed it in, bypassing a bunch of security that could wear away at your resources. Backdoors last until you trigger an active alert, and are saved with the system data. Because the systems are now persistent, and future contracts can send you back to existing systems, they can be very helpful.
By keeping the systems and the people persistent, it allows for some interesting things other than just Backdoors. For example if the player's know Eleanor Dodson is a manager for Monarch, they can decide to poke around after their current contract is done. They eventually gain access to her Personal Private System (PPS), copy her credentials, and checking her system log, find the address where she is employed. Now armed with valid credentials and admin privileges, they hack Eleanor Dodson's work system and swipe a bunch of pay data. Maybe install a Backdoor for next time. Now if they don't trigger an alert, those credentials won't be voided, which means if the players catch a contract to hack that system in the future, it will make their job much easier.
In case you are wondering how the nuts and bolts work: When a system is generated, it also generates 20 employees, assigning their Company Affiliation, Employee Rank, and Company Tier. The rest is basically randomized. Their bank account starting value is based off their Company Tier and Employee Rank.
Systems that have a “Subscribers” or “Client Information” node will populate that list from existing citizens.
I think I have touched on it in a previous post or two, but I have decided to go along the veins of old school Shadowrun, and focus on Nodes, and not the space between. This will allow me to make each Node a micro level instead of a simple cube or sphere at the end of a hallway. The upsides mean the levels are easier to generate, but more importantly I can focus on making the nodes as interesting as I like.
When navigating systems, hackers will need to unlock each node to access the nodes behind them. The following is a sample system that is unexplored. You will note that the only node that isn't a generic cube is the one in the bottom middle. This is the System Access Node (SAN), and is the only node you can enter when you first connect to a system.
After working your way through the system, it will look something like this.
And as a bonus, this is a screenshot of the interior of a basic node.
Well I think that's everything for now! Before I release this new iteration I still need to check a couple things off the list. Namely to finish porting over the hardware mechanics, rebuilding the mechanic behind swapping chips from the ground up to finally squash the the-bug-that-won't-be-named, and to finish the contract generator.
Once those two things are done, we should have a playable game. Then it's just a matter of fleshing out content, plugging in a couple more features (like Overwatch).
Wow 2100 words. I really did write an essay. Please comment with any questions, concerns, or whatever. I love the feedback!
Source
Changelog.gg summarizes and formats this update. How we read updates.
