Vgstation13: Mixing Blood 2: Electic Boogaloo: Adding blood to blood just duplicates the original blood

Created on 20 Dec 2016  路  6Comments  路  Source: vgstation-coders/vgstation13

Description of issue

I did some more testing of issue #12919 and it turns out that blood generally absorbs other blood instead of sharing attributes, staying separate, or nullifying each other.

Basically:

  • 1 unit of blood A with blood type X, donor Y, viruses Z is added to a container
  • 90 units of blood B with blood type D, donor E, viruses F is added to the same container
  • 91 units of blood A with blood type X, donor Y, viruses Z are now present in the container

I'm very surprised that this infinite-duplication behaviour has never been reported. Presumably no one ever tried mixing blood until I needed to for virology? Don't tell anyone, but the new meta is now blood tomatoes and one unit of O- blood.

Difference between expected and actual behavior

I'm going to have to start dragging a dead monkey everywhere when working on viruses since they manage to mix viruses and antibodies better than glass containers do.

Here's how I would resolve this bug:

  • If different blood types / donor species / etc are added together, they're replaced with toxin
  • If different viruses/antibodies are added together and they share the same blood type / donor species / etc, both sources of blood merge into one and contain both viruses/antibodies

Steps to reproduce

Get multiple different sources of blood and add them together to a container. One will rule them all.

Length of time in which bug has been known to occur

At least a month

Issue bingo

Please check whatever applies. More checkboxes checked increase your chances of not being yelled at by every contributor.

  • [x] Issue could be reproduced at least once
  • [x] Issue could be reproduced by different players
  • [x] Issue could be reproduced in multiple rounds
  • [x] Issue happened in a recent (less than 7 days ago) round
  • [x] [Couldn't find an existing issue about this](https://github.com/d3athrow/vgstation13/issues)
Bug / Fix

Most helpful comment

Well time to fess up that I knew this, it was kind of a guilty secret. It's why when I wrote Draculabot I didn't worry too much about donor blood mixing. Blood has so many snowflake behaviors and characteristics, it's crazy. I always hesitated to report it before now because it'll be a bit of a pain to fix up the proper way (merge blood) and I didn't want people to abuse it in the mean time if it became public knowledge.

Cat's out of the bag now, but maybe @DrCelt will fix it as part of his hundred bugs.

All 6 comments

Well time to fess up that I knew this, it was kind of a guilty secret. It's why when I wrote Draculabot I didn't worry too much about donor blood mixing. Blood has so many snowflake behaviors and characteristics, it's crazy. I always hesitated to report it before now because it'll be a bit of a pain to fix up the proper way (merge blood) and I didn't want people to abuse it in the mean time if it became public knowledge.

Cat's out of the bag now, but maybe @DrCelt will fix it as part of his hundred bugs.

Just make blood hash the relevant variables and add it to its ID or something
I... think that would work

The way blood types work IRL is actually pretty interesting, we could make different blood types "mix" E.g. A- and O+ mix into A+.

@9600bauds And in case someone who is nearby who does not have the blood type and wants to donate blood it gives a notification that their blood type is not available to mix.

@9600bauds You'd essentially get the same effect here if the blood simply didn't mix
The only problem with keeping it from mixing at all would be that it would look weird on examine, which could be fixed pretty easily by making examine group reagents with the same name

At the very least viruses are now combined.

Was this page helpful?
0 / 5 - 0 ratings