Posts: 445
Threads: 68
Joined: Mar 2014
This may just be a result of my patient being the skeleton ambassador who came in for cyber augmentation, but IV blood bags were not doing anything to replenish blood levels. The blood would be visible in the patient for a moment before vanishing into the ether.
The saline-glucose bag worked fine. I'll test to see if it's just skeletons being incompatible with human blood or something utterly bizarre like that.
Posts: 2,612
Threads: 147
Joined: Oct 2012
Did the skeleton have the bleeding trait?
Also that whole blood thing disappearing into the ether, that happens. As you're aware, the body acts as a container and at any given moment during a transfusion or even if you injected blood, it will come in a reagent scanner if the body is scanned before being removed and added to the blood level.
Posts: 445
Threads: 68
Joined: Mar 2014
Yeah, but the issue is that it was just... disappearing, and not being added to the patient's blood levels. I couldn't tell a significant difference between natural blood regeneration with and without an active IV blood drip going.
I don't know if the skeleton had bleeding, but I don't, and I tested on myself the next round. Severe space lag plus major blood loss interfered with getting some timely readings, but at the very least the blood reuptake conversion is very, very small - at most, I'd estimate every five units vanished from the bloodstream converted to one unit of actual blood. And that may have just been my imagination with me not being able to get a scan in between ticks, it could be vanishing utterly.
Posts: 445
Threads: 68
Joined: Mar 2014
This is still a problem and makes any kind of significant surgery really obnoxious as there's no way to refill blood short of waiting for natural regeneration to get people out of the danger zone. Even with intelligent use of hemostats there's no way to avoid large quantities of bleeding.
Posts: 445
Threads: 68
Joined: Mar 2014
Welp, time to start fixing shit!
human.dm:4258, proc/handle_chemicals_in_body() appears to be the intended method of blood reabsorption from the reagent holder into blood_volume. blood_absorption_rate is 1, and the code looks fine, it should decrease blood reagent by one and increase blood volume by one. And while blood_volume does go up, all blood reagent is stripped out every life tick and only upping blood_volume by one! So blood bags, which transfer 5 units a tick, are only being 20% efficient.
The offender appears to be code/datums/chemistry/Reagents-Misc.dmi:2127, the blood reagent's on_mob_life miiiiight be deleting all blood in mobs every life tick. Scrapping the else clause here (and maybe upping the blood_adsorption_rate in human.dm by 2 to 4 to get faster results + not piling up a ton of blood in the reagent holder while it waits to be absorbed) might get blood bags working properly.
I haven't been able to get the silly thing running so I can't check if this actually solves the problem.
Posts: 2,042
Threads: 65
Joined: Nov 2014
BYOND Username: Zewaka
Character Name: Shitty Bill Jr.
03-02-2016, 11:27 PM
(This post was last modified: 03-02-2016, 11:32 PM by ZeWaka. Edited 1 time in total.
Edit Reason: clarify
)
(03-02-2016, 06:28 PM)Grayshift Wrote: Welp, time to start fixing shit!
human.dm:4258, proc/handle_chemicals_in_body() appears to be the intended method of blood reabsorption from the reagent holder into blood_volume. blood_absorption_rate is 1, and the code looks fine, it should decrease blood reagent by one and increase blood volume by one. And while blood_volume does go up, all blood reagent is stripped out every life tick and only upping blood_volume by one! So blood bags, which transfer 5 units a tick, are only being 20% efficient.
The offender appears to be code/datums/chemistry/Reagents-Misc.dmi:2127, the blood reagent's on_mob_life miiiiight be deleting all blood in mobs every life tick. Scrapping the else clause here (and maybe upping the blood_adsorption_rate in human.dm by 2 to 4 to get faster results + not piling up a ton of blood in the reagent holder while it waits to be absorbed) might get blood bags working properly.
I haven't been able to get the silly thing running so I can't check if this actually solves the problem.
Okay, I changed this and to me (an inexperienced fool at coding and stuff) it seemed like bloodpacks made a significant difference.
However, it seemed like saline-glucose never really 'absorbed' properly and went to super high units. Same with
every other reagent.
So probably not a good idea to modify some of that code, seeing as it basically turned on slow metabolism x50 for me.
Edit: I'm guessing it was removing commenting out reagents-misc.dmi:2127 if anything.
Posts: 445
Threads: 68
Joined: Mar 2014
Now that the official release with working chatbox is out, my testing reveals that commenting out Reagents-Misc 2123-2128 works perfectly and keeps blood from deleting itself and has no effect on other chemicals' depletion rates. Upping blood_absorption_rate to 2 or 3 also worked nicely, permitting a transfusion to eclipse natural blood regeneration rate in speed.
Posts: 835
Threads: 53
Joined: Nov 2013
BYOND Username: HaineSA
Aight, I commented out the lines deleting blood. It's a wonder the bags ever worked if that line's been in there all this time. v
v
Lemme know how things work out with the change.