From 0f9b1a3d6821a7853f8d74ca4d8efba624ecec7d Mon Sep 17 00:00:00 2001 From: mkanke-real Date: Fri, 26 Dec 2025 12:33:48 +0900 Subject: [PATCH 1/3] First draft done --- src/design-proposals/respirtation-redux.md | 92 ++++++++++++++++++++++ 1 file changed, 92 insertions(+) create mode 100644 src/design-proposals/respirtation-redux.md diff --git a/src/design-proposals/respirtation-redux.md b/src/design-proposals/respirtation-redux.md new file mode 100644 index 0000000..c47ddf1 --- /dev/null +++ b/src/design-proposals/respirtation-redux.md @@ -0,0 +1,92 @@ +# Respiration Overhaul + +| Designers | Implemented | GitHub Links | +|-----------|---|--------------| +| mkanke | No | None | + +## Overview + +This is intended to be a general gameplan for taking the respiration system of the game and make it much more extensible and immersive for both the general player and those in the medical department. + +## Background + +The current implementation of airloss damage is currently very game-y. Just a number goes up or down shove medication in person and make sure they have air. Thats where the dynamics of it stop. This leaves the only way to interact with the system to "deal damage" or shove meds and air into someone, which is fine for a baseline just so the game can function but we can do better. + + +#### Implementation + +The system will get split up into 3 parts "Respiration","Saturation change","Saturation", all given in a range from 0-1, that all interact with each other as well as outside effects such as chems and damage. Respiration and Saturation Change are the systems players can directly interact with while Saturation is the closest this system will come to the current airloss damage system and is what will dictate the changes of overall health from Good, to Crit to at a saturation of zero, dead since the brain cannot get o2 (or whatever gas they breathe) and the organs begin to die. This overall system will also introduce a more granular soft crit system based off of Respiration and Saturation. The formulas that will follow are mearly rough drafts for whoever implements the system so they have a jumping off point. + +#### Respiration + +This is the fastest moving category and where most external systems will interact with the entire system. My current working formula for calculating this is, +1-(damage/400)-(|80-heartrate|\100)+(External Sources) Lets break this down + +(damage/400) +This takes the overall damage a body has and divides it so that 200 damage will reduce respiration by 0.5 aka half + +(|80-heartrate|\100) +This section takes the heart rate and figures out its deviation from the standard heart rate of 80 and once it goes 50 in either direction it reduces the total respiration by 0.5 + +(External Sources) +This is where most outside factors do their business such as Dex increasing respiration or drugs that cause suffocation reducing it. CPR also falls into this catagory since it forces the body to breath as well as future effects that might be added such as choking someone out or other such systems. + +#### Saturation Change + +This adjusts the actual saturation of breathable gasses in the person and its a much more simple and slow moving system. This current formula lacks a final rational multiplication such as * 0.1 so that saturation has a maximum change per in game tick. +Blood Level * (Respiration * Moles) * Tick rate Change + +Blood level +This will be the current blood level from 0-1 with 1 being no bloodloss + +(Respiration * Moles) +This section Takes the already calculated respiration and multiplies it by how many moles of breathable atmosphere are available. The reason for this is so that there can be variability in air quality and needs some sort of extra constant multiplication so normal air mix makes it slightly better than 1 but a pure mix leads to a better change so a patient recovers quicker when on internals. + +Tick Rate Change. This exists to pace the rate of change per tick this imparts on the Saturation + +#### Saturation + +This is the overall health of a person simulating how much breathable gas is reaching their organs such as their brain. Its formula is very simple SaturationChange + Saturation. On a medical scanner this would be the stat that people see in place of airloss damage. Nothing should directly affect this stat and instead to manipulate it a player will have to treat the symptoms that reduce Respiration and Bloodloss so that the other systems feed into this. Player facing it would look like a % from 0 to 100 but under the hood it would be a simple 0-1 range so that is can be easily clamped or checks for cases such as over saturation causing hyperoxia can be implemented. + +--- + +### How does all this look to the player + +#### Respiration +This is where the classic gasping will kick in but be expanded on. The first sign of not being able to breath would be the loss of the ability to shout. Further respiration loss would cause gasping, then whispering only with zero respiration fully muting the player from talking. This slow trickle down of symptoms will give the player plenty of time to have a "oh shit" moment and seak to fix whatever is causing this or to seek help from someone who can such as the medical team. + +#### Saturation + +This is what will control the soft crit system. As your Saturation goes down your body has less fuel to keep going so the player will suffer a gradual slowdown to start with. As it starts to get really bad the normal crit state overlays will kick in and not super long before passing out will be forced to crawl similar to our current soft crit system. Once it hits zero death will happen and if someone decides to implment it, things such as organ death could occur such as brain death but that is outside the scope of the initial implementation. + +--- + +## Game Design Rationale + +### Seriously Silly + +The current system is rather limited in how a dev can interact with it making it just a simple numbers game. Specifically it all being one big damage group. Lets look at just respiration, splitting this up opens us up to a range of possibilities to how items interact with the simple act of breathing. Lets say a clown gets a pneumatic launcher, why SHOULDNT they be able to load a horn into it, target someones mouth and get it lodged in their throat like that one scene from spongebob. Let it lower respiration and force them to honk instead of talk. It has a tangible effect on their ability to live but without being immediately life threatening. + +### Maintaining Authenticity + +This new system will provide a stronger base in reality so a player can assume off their own personal experience why things are happening and the steps they should take to fix it and allow more interesting and realistic ways to interact with the system as a whole. + +### Take Things Slow + +As the system exists now for a medical player, breathing is almost a non-issue that can be solved very quickly. Even if a room is fully spaced you just shove some airloss chems in them and they can keep going without too much issue. Breathing is an important part of life and doesnt just resolve in an instant. By having statuation change tied to tick rate after stabilization a player will still need time to rest and regain their saturation. + +### Maximizing Roleplay Potential (Avoid QOL slop) + +I would expect to see a lot more talking between docs to diagnose extactly whats going on and if possible actually talking to the patient to ask them what happened as this communication could lead to faster results so its incentivised. + +## Roundflow & Player interaction + +Not being able to breath or bloodloss will be felt much stronger by both the normal player as well as the medical department. More effort will be required to diagnose and treat the symptoms of Saturation loss leading to a more dynamic period of diagnosis and stabilization of a patient being admitted into medical. + +## Administrative & Server Rule Impact (if applicable) + +There should not be much rule impacts besides reaffirming that until you are dead you remember things. + +# Technical Considerations + +Basically anything touching the respiration system that is ported will require reworking to interact with this system as its basically a full overhaul of how airloss works. This should not be the most difficult thing as most instances that would cause airloss with the current system would just cause respiration loss which would trickle into the other parts of the system. \ No newline at end of file From 6a60d9caddc4b652221b184895a2cd0bf095ca2e Mon Sep 17 00:00:00 2001 From: mkanke-real Date: Fri, 26 Dec 2025 12:37:31 +0900 Subject: [PATCH 2/3] Revert "First draft done" This reverts commit 0f9b1a3d6821a7853f8d74ca4d8efba624ecec7d. --- src/design-proposals/respirtation-redux.md | 92 ---------------------- 1 file changed, 92 deletions(-) delete mode 100644 src/design-proposals/respirtation-redux.md diff --git a/src/design-proposals/respirtation-redux.md b/src/design-proposals/respirtation-redux.md deleted file mode 100644 index c47ddf1..0000000 --- a/src/design-proposals/respirtation-redux.md +++ /dev/null @@ -1,92 +0,0 @@ -# Respiration Overhaul - -| Designers | Implemented | GitHub Links | -|-----------|---|--------------| -| mkanke | No | None | - -## Overview - -This is intended to be a general gameplan for taking the respiration system of the game and make it much more extensible and immersive for both the general player and those in the medical department. - -## Background - -The current implementation of airloss damage is currently very game-y. Just a number goes up or down shove medication in person and make sure they have air. Thats where the dynamics of it stop. This leaves the only way to interact with the system to "deal damage" or shove meds and air into someone, which is fine for a baseline just so the game can function but we can do better. - - -#### Implementation - -The system will get split up into 3 parts "Respiration","Saturation change","Saturation", all given in a range from 0-1, that all interact with each other as well as outside effects such as chems and damage. Respiration and Saturation Change are the systems players can directly interact with while Saturation is the closest this system will come to the current airloss damage system and is what will dictate the changes of overall health from Good, to Crit to at a saturation of zero, dead since the brain cannot get o2 (or whatever gas they breathe) and the organs begin to die. This overall system will also introduce a more granular soft crit system based off of Respiration and Saturation. The formulas that will follow are mearly rough drafts for whoever implements the system so they have a jumping off point. - -#### Respiration - -This is the fastest moving category and where most external systems will interact with the entire system. My current working formula for calculating this is, -1-(damage/400)-(|80-heartrate|\100)+(External Sources) Lets break this down - -(damage/400) -This takes the overall damage a body has and divides it so that 200 damage will reduce respiration by 0.5 aka half - -(|80-heartrate|\100) -This section takes the heart rate and figures out its deviation from the standard heart rate of 80 and once it goes 50 in either direction it reduces the total respiration by 0.5 - -(External Sources) -This is where most outside factors do their business such as Dex increasing respiration or drugs that cause suffocation reducing it. CPR also falls into this catagory since it forces the body to breath as well as future effects that might be added such as choking someone out or other such systems. - -#### Saturation Change - -This adjusts the actual saturation of breathable gasses in the person and its a much more simple and slow moving system. This current formula lacks a final rational multiplication such as * 0.1 so that saturation has a maximum change per in game tick. -Blood Level * (Respiration * Moles) * Tick rate Change - -Blood level -This will be the current blood level from 0-1 with 1 being no bloodloss - -(Respiration * Moles) -This section Takes the already calculated respiration and multiplies it by how many moles of breathable atmosphere are available. The reason for this is so that there can be variability in air quality and needs some sort of extra constant multiplication so normal air mix makes it slightly better than 1 but a pure mix leads to a better change so a patient recovers quicker when on internals. - -Tick Rate Change. This exists to pace the rate of change per tick this imparts on the Saturation - -#### Saturation - -This is the overall health of a person simulating how much breathable gas is reaching their organs such as their brain. Its formula is very simple SaturationChange + Saturation. On a medical scanner this would be the stat that people see in place of airloss damage. Nothing should directly affect this stat and instead to manipulate it a player will have to treat the symptoms that reduce Respiration and Bloodloss so that the other systems feed into this. Player facing it would look like a % from 0 to 100 but under the hood it would be a simple 0-1 range so that is can be easily clamped or checks for cases such as over saturation causing hyperoxia can be implemented. - ---- - -### How does all this look to the player - -#### Respiration -This is where the classic gasping will kick in but be expanded on. The first sign of not being able to breath would be the loss of the ability to shout. Further respiration loss would cause gasping, then whispering only with zero respiration fully muting the player from talking. This slow trickle down of symptoms will give the player plenty of time to have a "oh shit" moment and seak to fix whatever is causing this or to seek help from someone who can such as the medical team. - -#### Saturation - -This is what will control the soft crit system. As your Saturation goes down your body has less fuel to keep going so the player will suffer a gradual slowdown to start with. As it starts to get really bad the normal crit state overlays will kick in and not super long before passing out will be forced to crawl similar to our current soft crit system. Once it hits zero death will happen and if someone decides to implment it, things such as organ death could occur such as brain death but that is outside the scope of the initial implementation. - ---- - -## Game Design Rationale - -### Seriously Silly - -The current system is rather limited in how a dev can interact with it making it just a simple numbers game. Specifically it all being one big damage group. Lets look at just respiration, splitting this up opens us up to a range of possibilities to how items interact with the simple act of breathing. Lets say a clown gets a pneumatic launcher, why SHOULDNT they be able to load a horn into it, target someones mouth and get it lodged in their throat like that one scene from spongebob. Let it lower respiration and force them to honk instead of talk. It has a tangible effect on their ability to live but without being immediately life threatening. - -### Maintaining Authenticity - -This new system will provide a stronger base in reality so a player can assume off their own personal experience why things are happening and the steps they should take to fix it and allow more interesting and realistic ways to interact with the system as a whole. - -### Take Things Slow - -As the system exists now for a medical player, breathing is almost a non-issue that can be solved very quickly. Even if a room is fully spaced you just shove some airloss chems in them and they can keep going without too much issue. Breathing is an important part of life and doesnt just resolve in an instant. By having statuation change tied to tick rate after stabilization a player will still need time to rest and regain their saturation. - -### Maximizing Roleplay Potential (Avoid QOL slop) - -I would expect to see a lot more talking between docs to diagnose extactly whats going on and if possible actually talking to the patient to ask them what happened as this communication could lead to faster results so its incentivised. - -## Roundflow & Player interaction - -Not being able to breath or bloodloss will be felt much stronger by both the normal player as well as the medical department. More effort will be required to diagnose and treat the symptoms of Saturation loss leading to a more dynamic period of diagnosis and stabilization of a patient being admitted into medical. - -## Administrative & Server Rule Impact (if applicable) - -There should not be much rule impacts besides reaffirming that until you are dead you remember things. - -# Technical Considerations - -Basically anything touching the respiration system that is ported will require reworking to interact with this system as its basically a full overhaul of how airloss works. This should not be the most difficult thing as most instances that would cause airloss with the current system would just cause respiration loss which would trickle into the other parts of the system. \ No newline at end of file From 6531a23e946cc9616dff2edde0f16e9cc3573f6f Mon Sep 17 00:00:00 2001 From: mkanke-real Date: Tue, 30 Dec 2025 16:07:12 +0900 Subject: [PATCH 3/3] Lets see if this uploads --- src/design-proposals/corporate-spy.md | 58 +++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 src/design-proposals/corporate-spy.md diff --git a/src/design-proposals/corporate-spy.md b/src/design-proposals/corporate-spy.md new file mode 100644 index 0000000..3e1a9ba --- /dev/null +++ b/src/design-proposals/corporate-spy.md @@ -0,0 +1,58 @@ +# Corporate Spy +| Designers | Implemented | GitHub Links | +|-----------|---|--------------| +| mkanke | :x: No | TBD | + +## Overview + +Corporate spy is a new low threat antag to fulfill a similar niche as the thief but with more focus and more antagonistic goals. + +## Background + +Currently withing our lower intensity antags there is a pretty harsh line between the thief that is fully freeform and non-violent and the traitor which nearly always has some form of kill goal. This antag is meant to fill the gap between those by being mostly non-violent in a direct way but still causing issues for the crew as a whole. +There is also a strong tendency to metagame what antags a round is by if certain sets of goals are being completed that only that specific antag has. The corpo spy will be designed in such a way as to mimic some of the goals of other antags to throw off sec as to what kind of threat they are dealing with. +Corpo spy will also be testing the waters on a dynamic goal system not super unlike cargo bounties in having different goals they can hope to achieve to earn more TC to do bigger harder goals. + +## Features to be added + +### Dynamic Mission List +A major aspect of this antag will be a shop screen the player can pull up with a list of tasks that once completed will award the spy with a set amount of TC. They will start with very little TC and only low tier easy goals and have to work their way up adding a round progression system and oncentives to not delay working on goals until the end of round if they want any chance of getting the better goodies. + +### Examples of goals + +Low tier goals aka mostly indirect goals that do not involve face to face or very noticeable outward signs: + +Plant a listening bug in a specific area, drain and APC of power with a special device, gain certain comms channels or certain accesses on their ID card + +Medium tier goals: These begin to be much more direct and have a higher rick but higher reward for completion: + +Plant a tracking device on a player. Scramble the medial records consoles data, scramble the wanted list database, plant an item on another player, setup a bug to slowly drain money from cargo, hack another players script account, steal a high value item like the corp secrets book or nuke disc, gain a promotion to the rank of a member of command. + +High tier goals: + +Steal an organ from another player, murder another player, plant bombs in objects such as an APC (APC destroyed, mission accomplished all right!), break a perma'd prisoner out of the brig, destroy other important crew items like the camera monitors. + +## Game Design Rationale + +It makes great sense from a lore perspective that the syndicate has cloak and dagger agents on a NT station that operate much more secretively than their traitor counterparts and operate on their own terms because of it. There is also no definitive win condition there is always room to complete new goals and provide a continuous stream of interaction with the station. The goals need not be all serious, there is a lot of room to play with especially if there are special goals for different starting jobs. I could see the clown and mimes going wild with goofy things (looking at you pIED) if that route is followed. The goals are self paced though. Someone who is more of a novice can stick to simple low tier goals while a more experienced player can go for the bigger plays giving a wide range for both skill and dynamics on what scenarios a spy can bring to the table. + +## Roundflow & Player interaction + +This is a round start antag with a slow buildup to how heavily the affect the round. The goals built for this antag should directly interact and\or benefit other antags when possible and/or mask their goals from clear sight. Examples are listening bugs give traitors more info to work with, breaking people out of perma, activities that look outwardly like other antags with their most obvious tells, steps that directly hamper security and command such as comms/cams sabotage. It might be better to think of this as an antag designed to amplify other antags. + +The player of the spy should do everything in their power to lurk in the background and be seen as little as possible, far more than a traitor their deeds staying hidden are key to their survival and thematic focus. A general lack of weapons from their uplink will help enforce this as they will have little more than what an average crew member has to fight back if pursued. + +## Administrative & Server Rule Impact (if applicable) + +I see two main admin concerns with this antag. First is that some of their bigger actions will need logs built in for easy searching and possibly better logging for when someone is say voice masking or disguised so its more clear who the original player is. +There also exists the possibility for someone to power game the role in order to treat is like traitor+. If this were to become an issue time gates could be added for certain goals so that the more violent ones cannot appear until deep into the round. That said a way to easily see the completed and offered tasks, similar to lsobjectives will need to be in place so admins can verify that a player isnt lying about their tasks as an excuess to murder randoms. + +# Technical Considerations + +- Are there any anticipated performance impacts? +- Does the feature require new systems, UI elements, or refactors of existing ones? +- For required UI elements, give a short description or a mockup of how they should + +- A special "task shop" possibly on the character screen will need to be implemented for the spy to see what jobs are available at the time. It could also be themed as a second tab on the uplink that only a spy can see. +- Some tasks will require additional checks for vicinity and wether a object or player has an item on their person +- Antag weights will have to be balanced to make room for this in the roundstart antag pools \ No newline at end of file