Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MechComp Flushers can delete player bodies. #620

Closed
DexeeXI opened this issue Nov 27, 2023 · 3 comments
Closed

MechComp Flushers can delete player bodies. #620

DexeeXI opened this issue Nov 27, 2023 · 3 comments

Comments

@DexeeXI
Copy link
Collaborator

DexeeXI commented Nov 27, 2023

Round ID: 2630

Testmerges:

#526 #545 #606 #489

Reproduction:

image
1 )Setup two flushers, pipe them to each other.
2) Get flushed into one.
3) Once you hit the other flusher component, your mob will be deleted.

Below is an associated runtime error that shows when the mob was deleted.

[19:55:24] Runtime in code/__HELPERS/stack_trace.dm, line 4: Mob with client has been deleted. (code/modules/mob/mob.dm:29)
proc name: stack trace (/proc/_stack_trace)
src: null
call stack:
stack trace("Mob with client has been delet...", "code/modules/mob/mob.dm", 29)
Victoria Ivanov (/mob/living/carbon/human): Destroy(0)
Victoria Ivanov (/mob/living/carbon/human): Destroy(0)
Victoria Ivanov (/mob/living/carbon/human): Destroy(0)
Victoria Ivanov (/mob/living/carbon/human): Destroy(0)
qdel(Victoria Ivanov (/mob/living/carbon/human), 0)
the disposalholder (/obj/structure/disposalholder): Destroy(0)
the disposalholder (/obj/structure/disposalholder): Destroy(0)
the disposalholder (/obj/structure/disposalholder): Destroy(0)
the disposalholder (/obj/structure/disposalholder): Destroy(0)
qdel(the disposalholder (/obj/structure/disposalholder), 0)
Flusher Component (/obj/item/mcobject/flusher): expel(the disposalholder (/obj/structure/disposalholder))
the disposal pipe (/obj/structure/disposalpipe/trunk): transfer(the disposalholder (/obj/structure/disposalholder))
/datum/move_loop/disposal_hold... (/datum/move_loop/disposal_holder): move()
/datum/move_loop/disposal_hold... (/datum/move_loop/disposal_holder): process()
Movement Loops (/datum/controller/subsystem/movement): pour bucket(/list (/list))
Movement Loops (/datum/controller/subsystem/movement): fire(0)
Movement Loops (/datum/controller/subsystem/movement): ignite(0)
Master (/datum/controller/master): RunQueue()
Master (/datum/controller/master): Loop(2)
Master (/datum/controller/master): StartProcessing(0)

@v3sin
Copy link

v3sin commented Nov 27, 2023

When I made this and I accidentally killed myself with it, only 1 flusher received me for some reason but it still accepted items (that were promptly deleted as well), when I tried the other one it accepted me and deleted me. Here's a video if it helps.

MechComp.Gaming.2.mp4

@RandomDudeFromTheRim
Copy link
Contributor

The Rapture device: you have sinned bit too much and got left behind after the Rapture happened? Worry no more, as with the Rapture device you can get yourself raptured too!

@RandomDudeFromTheRim
Copy link
Contributor

quick update: only one flusher is needed for this to qdel the things, only requirement is for the flusher to be output (aka things go from pipes into flusher, not flusher into pipes). I guess its because its designed to flush things into pipes, not spew them out

@dwasint dwasint closed this as completed Jan 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants