HippieStationArchive / HippieStation13-1

https://github.com/HippieStation/HippieStation13
https://github.com/HippieStation/HippieStation13
GNU Affero General Public License v3.0
28 stars 92 forks source link

Fixes Vape #3290

Closed tortellinitony closed 7 years ago

tortellinitony commented 7 years ago

You can no longer put unstable mutagen in an e-cig, and reagents are absorbed at a normal rate when smoking one.

ArcLumin commented 7 years ago

Considering this also disables mutagen, this is more than a fix, it needs head input

tortellinitony commented 7 years ago

darn

SpankMasterson commented 7 years ago

So if you put unstable mutagen in an ecig it sparks and explodes? I mean I guess I'm ok with this. Why is it necessary?

tortellinitony commented 7 years ago

people abuse vape to get all of the good mutations within 5 mins

LufgtHuron commented 7 years ago

why don't we remove chemistry completely, I mean who the fuck needs healing any way right? its OP and unfair for antags that people can heal.

or maybe just port baymed, i mean you all seem to want a boring piece of shit game where nothing happens and everyone dies in one hit? sheesh.

KittyKathy commented 7 years ago

If you are touching vapes how about fixing a issue with it I will outline it below also correct me if I am wrong as i am not sure I understand this 100%. Vapes have a 25% chance to transfer the reagents it has each tick to the smoker but cigarettes have a constant transfer for some reason?

I think REAGENTS_METABOLISM is .4. I think reagents.trans_to(C, REAGENTS_METABOLISM) actually does the transferring to the smokers body but does not actually cause reactions, which you removed for some reason? I think var/fraction = min(REAGENTS_METABOLISM/reagents.total_volume, 1) and reagents.reaction(C, INGEST, fraction) are responsible for calling ingestion specific reactions from the reagents and don't really transfer reagents into the person not sure if i am right about that.

Vapes before this PR called the ingestion reaction every time it rolls yes on that 25% chance to transfer reagents but cigarettes only call the ingestion reaction 15% of the time but transfer reagents every tick. Vapes should work the same way like cigarettes constant reagent transfer and a change for ingestion reaction.

The way it calculates the fraction variable seems a bit weird too. it does min(.4/Total reagents,1) so the less reagents it has, more will be in the ingestion reaction? Like a full vape would be min(.4/100,1) which will make the fraction variable .004? While a almost empty vape with 1 unit would be min(.4/1,1) which will make the fraction variable .4? Would it not make more sense to make a full vape use more reagents for the ingestion reaction than a almost empty one?

I think reagents.remove_any(REAGENTS_METABOLISM) is where it actually removes reagents from the vape but this gets called every tick regardless if the vape passes the 25% roll to transfer to the smoker which makes no sense.

Just a note but because reagents have different metabolism rates anything on the default .4 will pretty much be instantly used up if it was the only chemical in the vape(more chemicals divides how much of each chemical is transferred by the amount of different chemicals so 2 chemicals will transfer .2 each tick) so to actually get a constant dose from smoking currently you need to use cigarette (Cohiba has the most capacity) use one chemical with a lower than default .4 metabolism rate to make sure you actually gain reagents each tick instead of it being used up instantly.

In conclusion who coded this seriously it makes no sense I don't think anyone actually understands it. It was probably a shitty copy paste of cigarette code and changing things they don't understand until it was good enough.

JohnGinnane commented 7 years ago

I would think that e-cigs should function the exact same as cigarettes, if not for some slightly different figures (capacity, percentage of ingestion, etc.). I can review the e-cigs to see what the issue is. While on the same note shouldn't normal cigars and cigarettes spawn (even small) plumes of smoke every few ticks just like vapes, possibly with added carbon dioxide?

ghost commented 7 years ago

Eh, what's to stop people taking unstable mutagen and injecting it to regular fags?

IvanTheCracka commented 7 years ago

lufght mad that he cant murder all the station without people being able to stun him, retrieve his corpse for gibbing; and use TK from a vent

GOYS MAKE THE GAME FUN FOR ME I WANNA KEEP DOING THIS EVERY ROUND OI VEY

tortellinitony commented 7 years ago

You can vape mutagen again.

Instead of targeting the vapes, like Mcbaw mentioned, mutagen can still be abused. I change it so that mutagen will not grant hulk, which is what causes it to be exploitable.

Additionally, e-cigs should behave exactly like their normal counterparts. Feel free to check this.

SpankMasterson commented 7 years ago

I like tony's idea of editting mutagen not to grant power blocks.

KittyKathy commented 7 years ago

Vape code is probably fine just one thing, not sure why reagents.remove_any(REAGENTS_METABOLISM) is not right after reagents.trans_to(C, REAGENTS_METABOLISM) in the same if statement. This was probably just copied from cigarette code to allow cigarettes to use up the reagents once lit even if you are not smoking it. So it probably does not matter as I think Vapes stop processing as a object when you are not smoking it so it won't lose reagents unless you are smoking it.

Also you know there is a mutation that makes you feel strange right and mutates you? Can that give you hulk? If it can did you stop it from giving you hulk in this PR?

tortellinitony commented 7 years ago

yes

ghost commented 7 years ago

Yeah good code +1

ArcLumin commented 7 years ago

@SpankMasterson Need your full approval and it's good to merge

ghost commented 7 years ago

go ahead +1

ArcLumin commented 7 years ago

Sure thing my dude

SpankMasterson commented 7 years ago

+1

ArcLumin commented 7 years ago

TOO SLOW SPANKY

SpankMasterson commented 7 years ago

am i late?

SpankMasterson commented 7 years ago

fuck you

ArcLumin commented 7 years ago

But it's the thought that counts

SpankMasterson commented 7 years ago

i cant even merge anymore, someone took my privs.

ArcLumin commented 7 years ago

So sad my dude