Replies: 3 comments 5 replies
-
Some thoughts from reading over it. (some were also posted on discord) Overall, looks very interesting. |
Beta Was this translation helpful? Give feedback.
-
Sidenote thats also a super far flung idea. Goon-style terminal hacking. Make a "network" component you can put into machines which has auth and callbacks and stuff, and have a way for things to be hacked digitally as opposed to with a multitool and wirecutters. Could be cool for espionage and stealth stuff. |
Beta Was this translation helpful? Give feedback.
-
Making everything sometimes randomly fail in order to shoehorn in a job to put things back to how they were sounds like a bad idea to me. It adds nothing overall positive to the game other than tacked-on upgrades that no department depends on and no one will be holding their breath for. Science already does upgrades and there are like two or three machines in the whole station for which those upgrades are actually important. People will need to be able to immediately recognize these failures, and they will need to know that they are problems which an IT technician can fix. Otherwise, rather than calling a technician, you will get a lot of people confused and frustrated why their things aren't working correctly. This is an especially raw deal for new players who don't really even know how things are supposed to be working in the first place. |
Beta Was this translation helpful? Give feedback.
-
Disclaimer
Nothing in here is final yet. Especially the malfunctions and improvements. Any suggestions are welcome!
Still have some open TODO's and I want to go over all of the text once more.
I plan on adding more details to the antag itself. How to detect it. How to combat it. And how it'll be fun for the crew to combat it.
Sort of inspired by the idea in #16269 without me consciously knowing it at first.
Changelog
14-6-2022: Implement some of Qwerty's suggestions. Added hacks the IT techs can perform.
7-6-2022: Added some clarifications surrounding hacking done by IT techs. Added the Remote hacking device antag item
6-6-2022: Initial post
Goal
The goal, of the antag and new job, is to add more variety to the round in terms of what can happen.
The job relies heavily on (new) (minor) events to happen and respond to those. These events will be station-wide and will involve
different departments. The job itself will fill a similar role as the engineer, as in they fix stuff, and the scientist, as in they upgrade things.
The malware antag will play into these events and try to sabotage the station in various ways, silently at the initial stages. The further the antag progresses, the more they will impact the station and cause the crew to hunt them actively.
Summary
Malware antag
A non-physical entity created by the syndicate which gets power from hacking machines. It will begin in a (random or chosen?) machine where it will stay unless it moves for a big cost.
Its goal is to gain control over most of the machines and consoles on the station to ransom the station to the syndicate. Or if spawned by a malf AI, it will focus on helping said AI achieve its goals.
It can hack machinery and consoles and will make them malfunction in certain ways. It can range from minor malfunctions, like an APC draining too much power or a console sometimes not functioning properly, to major malfunctions like an APC short-circuiting and causing power to go out or a security console randomly setting people to different statuses.
The power gained from hacking can then be spent on upgrades which range from better defences against counter hacks to more powerful hacks and decoys to fool the crew.
They can spawn as a moderate event or malf AIs can create them. Initially, it will only be an event spawned antag. The Malf integration will happen later.
IT technician
A new job whose goal is to ensure that machinery and consoles function as intended.
Armed with a tablet to fix any malfunction by plugging a cord into the machine and playing a minigame. They should belong to either service or science.
During downtime, they can go around and gather output logs from random machinery across the station. These output logs can then be used to upgrade their toolkit, for example, automating the repair progress of minor malfunctions or reinforcing machinery to withstand certain malfunctions.
Later they can get a remote laptop which can fix certain malfunctions from a distance.
As an antag the IT technician can use their access and powers to hack consoles themselves. This gives them minor boons if they don’t get caught doing it. This will also be possible for non-antag IT technicians to do this but it will involve a lot of illegal hoops they have to go through.
Random malfunctions
To actually give the IT technician work to do and to give the antag some slack, there will be malfunctions on consoles and machines all over the station. The chance of this happening should be fairly low to avoid it becoming an annoyance.
Detailed descriptions
Malware antag
Start
The antag starts in a random or chosen machine/console where it will remain undetected for a certain duration. During this time they can get familiar with their role and objective.
Their starting node will be highly defended from counter hacks. Destroying it will allow the antag to freely move to a new node.
Abilities
Each ability will cost or earn the antag CPU power. A total count will also be kept to determine how powerful certain abilities are.
Their node will be invisible to the diagnostics HUD when they are not using abilities.
Abilities
Hack
It will give control of the machine/console to the antag. It will also apply a minor to major malfunction on said machine/console depending on the power level of the antag.
Once hacked, the console can be used by other abilities.
Different machines also provide different bonuses to the antag. Computers will give a passive gain of CPU power over time for instance. Or hacking a maint drone will temporarily allow it to hack nearby machines till it powers down.
A full list of machines and their malf states will be listed at the end of this document. TODO
Lockout
The machine will be unresponsive for a duration to any usage attempt by users other than the antag or the AI which made it.
Short circuit
The machine will either become electrified or it will arc out lightning which strikes bystanders
Malfunction
It will upgrade the malfunction level of the machine and will trigger the malfunction effect on it.
Fortify
It will make the machine more protected against counter hacks. Any attempt will also cause an alert to go off. This node can also be used to move to.
Spoof
Hides the cause of the malfunction to be something more natural.
Decoy
It will make it seem as if the antag is located in this node
Hack borg
As expected, this ability allows the antag to (temporarily) take over control of a borg (directly or indirectly?)
Move node
This will move the antag to another node after a duration. During this transfer, the node the antag is currently in will be defenceless to avoid this being used to be a quick get out of jail card. The target node has to be hacked and fortified to be a valid target.
Gameplay against
Any malfunction can be found using the diagnostic HUD. Some will also be more apparent than others. A special tool (from the IT technician) can be used to fix these malfunctions.
A diagnostic scanner can be used to trace the cause of the malfunction. If the malfunctioning machine is not spoofed then the log received from the scanner will include a hint as to where the antag is located at. Another minigame perhaps?
The antag will eventually be beaten if their root node gets counter-hacked. This will also fix or degrade their active hacks to lesser versions.
End goal
The goal will be to capture a certain amount of machines/consoles and get to a certain amount of CPU power. Getting to this point will unlock a final ability which takes time to channel. Once started it will alert the station that a ransomware hack is occurring. All consoles and machines will be disabled unless they are fortified by the crew.
After a duration NT will announce that they paid the ransom, all systems will return to normal and the antag will have succeeded in their objective. They will also stop existing as their job is done.
Non code requirements
Sprites will most likely be needed for every ability.
IT technician
Job description
Your job is to keep the station’s IT equipment up and running. Your main tool will be your trusty diagnostics tablet which you’ll use to fix any malfunctioning equipment.
It is advised to every so often run a diagnostic scan on malfunctioning equipment to find out what caused the malfunction. Usually, the cause will be solar winds or other natural causes but sometimes the cause can be malicious software in our network.
During downtime, your job is to gather output logs from machinery. These logs can be used to improve the system as a whole or can be used to improve your tools to better deal with issues.
The station's servers will also fall under your protection. These include the security records, medical records, employee records and RnD records. Ensure these servers are running at all times without malfunctions. And do not dare to access them without a valid reason. They can grant you access to things you lack clearance for.
Job details
The job should have 2 slots available at round-start
They will fall under the service or science department and will have access to science, the RnD servers, the PDA server room and the other server rooms.
Their job is mainly to ensure the equipment stays running. Besides that, they can improve the equipment in certain ways.
The job should be locked to a certain amount of crew time as they can potentially do a lot of damage.
Tools
Tools
Diagnostics tablet
Their main tool, used to fix malfunctioning machinery by plugging in the tablet to the machine and diagnosing the issue. Minor malfunctions will be fixed after a simple do_after but nastier malfunctions require a minigame to fix. This minigame involves either using a command prompt to type in fake commands to diagnose the issue and fix it. Or by using a TGUI interface which does the same steps. But less complicated. The CMD approach will be faster to reward the user for using the more complicated way.
Also usable to actually hack machines. This will use a same-ish method as fixing them. Hacking machines will grant do different things depending on the machine. Hacked machines will slowly start to malfunction and the hack will be listed as the source of the malfunction.
The tablet can also be used to repair some of the emag effects on machines. For example, an APC being emagged can be fixed.
The tablet can also be improved by components supplied by RnD to make it work faster.
Remote diagnostics tablet
A remote version of the diagnostics tablet printed by RnD. It can fix any minor malfunction from a range.
Logging tool
This tool allows the user to view the cause of the malfunction. It can also retrieve output logs from machines which can be used to upgrade things.
Diagnostic HUD
Used to detect malfunctioning equipment
Software updater
Can be used to improve equipment. Be it to make them more efficient or to reinforce them against hacks. A full list of improvements will be listed below.
Diagnostics computer
They will have a main diagnostics computer which will list malfunctioning equipment after a duration. This computer can be upgraded with the software updater to be better at its job.
The computer can also be used to download software for the software updater. This software requires output logs from various machines. Be it malfunctioning or smoothly running machines. This software will only have a limited amount of use.
The diagnostic computer can also force a random malfunction to occur in a department/set of areas. This can be used to gather malfunction logs. Or give the IT technician a good reason to get into a department. This will of course be on a cooldown and an in-game log will be generated.
Backup records server
A server dedicated to storing the sec/health/crew records. The server will backup any record every 15(?) minutes. These records will be encrypted and read-only. If the main server gets its records wiped then the backup server will still have the records from the previous backup.
Retrieving the records takes a disk to be inserted into the diagnostics computer. Which will then copy the data over. This process takes a while and requires IT technician access.
Cryo’d crewmembers will have their backups deleted to avoid any weird issues.
Main gameplay loop
Their main focus will be to fix any malfunctioning equipment, active or responsive.
Output log hunting
Besides fixing malfunctioning machines, they will go through the station, collecting output logs from various machinery. Different logs can be used to upgrade different things. Malfunctioning machines will generate different logs from smoothly functioning machines.
The machines which have usable logs are listed in the diagnostics computer, or a hint is given using the Diagnostics tablet. This should promote teamwork between the two IT technicians.
Once they have collected enough logs, they can go upgrade various equipment around the station. High-value targets such as the servers should probably be upgraded first to be more hack resistant. See the diagnostic computer entry in the tools section for more info.
Additional changes
They’ll need an office of sorts to spawn in with their gear. This office will also hold the diagnostics computer. The room will also have another room attached, a server room. This server room will hold the crew/health/sec(?) record servers and a backup server which holds all records, encrypted and read-only. (Maybe add the servers in/near the departments themselves?)
Antagging
They can use their diagnostics tablet to also hack into machines/servers. This gives them minor boons if done carefully. The hack will also be noticeable to other observers.
They also have a proper reason to get into places to fix equipment.
Bug
Agent IT technicians can buy a bug which will hack a machine in an improved manner. The hack will be difficult to notice and the effect will be stronger.
Remote hacking device (Watchdog style)
A remote device which will either hack or cause malfunctions from a range. It works on charges and takes time to recharge. Hacking consoles will speed up the recharging. It can be used in two different modes, instant or charged. Both work using the same method, just click on a machine. But if you let the do_after finish then the malfunction/hack will be stronger.
Improvements
Improvements
All machines
Improved firewall, makes the machine more resistant to malfunctions
APC
Improved efficiency, makes the APC more efficient with recharging
Security camera
Fast failure recovery, makes the machine recover faster from EMPs
Servers
Improved heat distribution, makes the server more resistant to temperature differences
Any charger
Increased transfer rates, will make the charger charge items put inside faster (prob have to nerf RnD upgrades for this)
Chem dispenser (also the bar ones)
Optimized power efficiency, makes them recharge faster
Sleeper
Toxin drainage, allows the sleeper to drain (potentially) harmful chemicals located in the patient. Toggle in the UI
DNA modifier
Optimize calibration process, decreases the cooldown on making SE syringes
ChemMaster
Increased work buffer, increases the maximum number of pills/patches created per batch
More to come
Hacks
Hacks
Any machine
Have it malfunction
Any computer (except ID console... duh)
Removes access requirements
Tcomms machine
Allows the user to enhance their headset's encryption key. It will now also grant access to other channels but with a delay.
Guest pass console
Spews out a guest pass with basic access to that area.
APC
Removes the access requirement
Public supply console
Allows the user to approve requests
Non code requirements
Every tool will require sprites, both in hand and map sprites.
Sprites will be needed for the diagnostic HUD.
The offices and server rooms need to be mapped in.
Random malfunctions
During the shift, random malfunctions will occur. This is to keep the IT technician busy and to make the malware antag less suspicious.
These malfunctions only occur on the station Z level. Only active machines are affected.
These malfunctions range from minor to major malfunctions (common -> rare). Minor malfunctions left to sit will eventually progress into major malfunctions.
Already existing malfunction events, like the greytide virus, can be integrated into this system. Allowing the technicians to (partially) prevent the event from occurring.
Malfunction list
APC
Minor: Will drain more power than it should. Eventually powering down the room temporarily and then booting up again to do it over again
Moderate: Will arc electricity to close bystanders. It will not hurt that much.
Major: It will power down the room, drain more power from the network and make the APC arc more powerful electricity to bystanders. The APC itself is also electrified.
Airlock
Minor: Will sometimes refuse somebodies access
Moderate: Will more often refuse access. Sometimes powering down for a short duration
Major: Will become electrified randomly. Sometimes opens and closes at a fast pace when somebody opens it crushing the user.
Air alarm
Minor: Will temporarily give a wrong warning
Moderate: Will act as if the room is in a wrong state
Major: Will syphon or refill a room
Console (all if not defined)
Minor: will sometimes stop working and reboot
Moderate: Will more often stop working and reboot
Major: will not power up again
Server
Minor: will spark to warn something is wrong
Moderate: Will turn off for a short duration
Major: Will lose data it holds
Camera
Minor: Will turn on/off lights or pulse the view range
Moderate: Will turn off temporarily
Major: Will turn it off
Intercom
Minor: Will turn off and on
Moderate: Will turn a random channel on/off for a moment
Major: Will turn a random channel on till it is fixed
Vendor
Minor: Will power down temporarily
Moderate: Will shoot out random contents
Major: Will drop more contents on the floor and become electrified.
Fridge
Minor: Will sometimes refuse to dispense an item
Moderate: Will turn off for a duration
Major: Will turn off till fixed
Recycler
Minor: Will sometimes not recycle items it should recycle
Moderate: Will skip most things it should recycle
Major: Will recycle things it should not (less harmful than the emagged version)
Sleeper
Minor: Will sometimes inject small amounts of random chemicals on its own
Moderate: Will inject toxins into the patient
Major: Will start to drain blood from the patient and leak it on the floor
Body scanner
Minor: Will randomly print out random stuff
Moderate: Will lock a human inside for a short duration. Making the scanner unresponsive
Major: Will hurt anybody inside the scanner for a short duration while they are locked inside
Cryo cell
Minor: Will sometimes turn off/on randomly
Moderate: Will sometimes stop injecting chemicals
Major: Will lock the user inside for a short duration while also freezing them
DNA modifier
Minor: Will lock the user in for a short duration
Moderate: Will start radiating the user inside using a low pulse
Major: Will blast the user inside with radiation
Cloning pod
Minor: Will sometimes stop cloning a bit early. Leaving more cloning damage than before. Will sometimes forget prescans (those which are in the system for more than 1 minute)
Moderate: Will stop cloning way too early. Causing limbs to not be fully grown
Major: Will sometimes gib the user being cloned inside
Chem dispenser 5000
Minor: Will sometimes disperse the wrong chemical when used
Moderate: Will sometimes leak chemicals onto the floor
Major: Will sometimes cause small explosions (am I this evil?)
Chemmaster 3000
Minor: Will sometimes create the wrong amount of pills/patches etc
Moderate: Will create patches instead of pills etc
Major: Will use the chemical but not make anything
Chemical heater
Minor: Will refuse to work temporarily
Moderate: Will randomly go up or down temperature
Major: Will quickly change temperatures
SMES
Minor: Will stop charging momentarily
Moderate: Will drain part of the stored charge
Major: Will drain most of its charge while it still drains from the network it is on
Emitter (NOT GONNA DO THIS ONE)
Generator
Minor: Will stop functioning temporarily
Moderate: Will consume a large portion of its fuel
Major: Will overheat and cause explosions if not turned off
Teleporters
Minor: Makes uncalibrated jumps more hazardous. Slows down charging. Shows sparks when charging
Moderate: When it is calibrated it can uncalibrate randomly at a low chance
Major: Calibrated jumps will sometimes become uncalibrated just before somebody uses it.
Autolathe/Protolathe
Minor: The printing takes longer and costs more. Sometimes spewing out garbage
Moderate: The machine can print a wrong item
Major: The wrong item will be more often from a dangerous/illegal category
Cargo computer
Minor: Items are sometimes forgotten while ordering
Moderate: Wrong items are shipped, points will be deducted for this.
Major: The cargo shuttle will leave without people pressing the button. Those onboard will be vented into space. Along with some of the cargo loaded onboard
Telecomms server
Minor: The tcomms script settings might flip randomly
Moderate: Random people will get muted temporarily
Major: Tcomms will shut down for a duration. Comms messages get send to the wrong channel (unsure if this is technically doable)
Tracking console
Minor: Show the wrong status/location for tracked people for a duration
Moderate: Will turn off tracking for a certain duration
Major: Will trigger chemical implants randomly
thing
Minor:
Moderate:
Major:
Non code requirements
Sprites might be needed for the malfunctions.
Development phases
The project will be split up into multiple phases to avoid burnout and to make the project doable.
These phases do not correspond with PRs. Multiple phases can (and will) be put in a single PR.
Phases 1, 2 and 3 will be put into a single PR to add the IT technician job and the random malfunctions.
Phase 4 will be a separate PR once the job has found its place in the game.
Phase 1, malfunctions basis
The first phase will get the basis for the malfunctions. This will include a set of demo malfunctions and a framework to add more. It will also include the tools required to fix them. These tools will not yet be finalised in terms of UI and such.
Phase 2, the IT technician job
Get the job in and map their office into one of the stations. Finalise the UI for the already made tools and implement the remaining tools. Add a basis for the improvements and for gathering output logs.
Phase 3, adding the details
Adding in the rest of the malfunctions and improvements so that the role can stand on its own.
Map in the offices to the rest of the stations.
Add interactions with existing events.
Phase 4, the malware antag
Implement the antag as described. Rebalance IT technician abilities if needed.
Beta Was this translation helpful? Give feedback.
All reactions