cmss13-devs / cmss13

Contains the code for CM-SS13
https://cm-ss13.com
GNU Affero General Public License v3.0
93 stars 507 forks source link

Internal Bleeding Surgery Preventing Kit Usage #5926

Open Superwelder opened 6 months ago

Superwelder commented 6 months ago

Testmerges

N/A Been happening since IB surgery was added for medics.

Round ID

Many, many rounds.

Description of the bug

Medically trained players using the knife, knife, surgical line, surgical line method of fixing internal bleeding in a person cause surface bleeding on the surgical site(this is expected). However, if the location of the internal bleeding is already bleeding and you use a trauma kit/gauze on that location to stop the bleeding before the surgery is performed, after the surgery is performed the area bleeds but the 'can be kitted' flag is not reset so you end up with a patient bleeding and unable to be kitted to stop the bleeding. Morrow and I had discussed this before they left and I just never got around to reporting it.

What's the difference with what should have happened?

Surface bleeding sites should be kittable and the logic of 'body part bleeds and kits stop the bleeding' should be maintained. This particular bug has some nasty synergies given the patient getting internal bleeding almost always has lost a lot of blood before and during the surgery. Another problem is that medics or synths often kit an area regardless of the internal bleeding before they defibrillate someone and then later fix the internal bleeding which causes this bug to proc.

How do we reproduce this bug?

  1. Have some patient with internal bleeding and surface bleeding at the same location.
  2. Use an advanced trauma kit(ATK) on the surface bleeding site.
  3. Patch the internal bleeding using the standard knife, knife, line, line method which is most common in CM at time of writing.
  4. Scan the patient and see the bleeding at site that previously had internal bleeding.
  5. Attempt to kit the bleeding.

Issue Bingo

Huffie56 commented 5 months ago

@Superwelder did you try to suture the open surgery on the limb?

Superwelder commented 5 months ago

@Superwelder did you try to suture the open surgery on the limb?

@Huffie56 Yes, it is a good question but I want to be clear here. The bug occurs AFTER closing the incision with the line. As in, you fix the internal bleeding with the surgical line, then you close the incision with the surgical line and the affected limb is STILL bleeding. At first I did not think it was a big deal but I was helping a newer medic with IB surgery and noticed the new medic getting frustrated not being able to kit the bleeding limb. To further clarify, you CAN INDEED use the surgical line AGAIN a third time as you would any area with brute damage to heal half the damage and stop the bleeding on the limb but that is a completely separate process from the internal bleeding surgery. That also tipped me off to this being a bug because using the surgical line on any brute damage limb does not use the same 'has been kitted' flag as using gauze or a trauma kit so it still works while the gauze/trauma kit does not. I can understand if this looks confusing but that is the nature of describing a bug within these multi-step processes!

Superwelder commented 5 months ago

If I get some free time I will try and grab screencaps of regular IB and a person with this bug.