NebulaSS13 / Nebula

A general purpose SS13/Baystation12 fork.
https://discord.gg/Ddw58yF
GNU Affero General Public License v3.0
49 stars 221 forks source link

MMI and Zat_Zhing (Scav Specific) Show Evidence Of Change_Species Method Failing #4376

Open EvilDrCoconut opened 1 month ago

EvilDrCoconut commented 1 month ago

Description of issue

When a player has their body changed, their brain spirit (or mind or whatever) is ejected from the body, despite that the body is fully fine. It requires an admin to take the person's ghost and put it back into the body. Looking into the code of zat_zhing, where the change_appearance method is called, following that stack it looks possible that the error may be handle_pre_spawn from species.dm as it only returns (don't know if it did anything before).

Difference between expected and actual behavior

Expected: when brain gets dumped into a MMI or someone gets "zat_zinged" (change_species) that they will have species changed or be put into MMI.

Actual: removes the persons ghost and considers them dead unless an admin puts them back into the body. In the case of MMI, treats it like body has been destroyed (might need to check more on this, I wrote the zat_zhing code and tested it recently and noticed the issued. Others claim to have similar issue with MMI)

Steps to reproduce

Put someone's brain into an mmi (uncertain if this will trigger correctly) Use a zat_zhing stone on a non-yinglet (Scav-Station specific; know this will trigger response)

Specific information for locating

No message, just ejects ghost

Length of time in which bug has been known to occur

Uncertain, only knew about it recently in testing the zat_zhing stone. So within last 2 weeks.

Client version, Server revision & Game ID

Runtime Version 514.1589 Compiler Version 514.1589 Revision 04e095cc8da9a9fa124d63a9a3488b22b876df90

Issue bingo

MistakeNot4892 commented 1 month ago

I think this is specifically due to the brain being removed or deleted.

MistakeNot4892 commented 1 month ago

Species issue fixed in #4377. Cannot reproduce MMI issues on current Neb stable, will need more information about the specific issue being encountered.

sirleatherflute commented 1 month ago

Oh, I actually had something like that trying to "reanimate" fbp user. I detached their MMI cause body needed to have everything replaced, and when I plugged it back in, the player was ghosted, but could re-enter, to a "dead" body, at which point I could reconnect their battery and "restart" them.

Also might be entirely different issue, it's been noticed lately, that monkeys go "SSD" after you make them sleep on the surgery table. Their brain is alive, but they remain unconscious.

EvilDrCoconut commented 3 weeks ago

apologies, busy week with work and personal training. But yes, this is an issue where the brain is 100% functional, but the ghost is ejected from the body. Let me create a quick video to attach using Scav Station's "zat zhing". As for the MMI, that was reported by others in medical, I was attaching it as it was reported by people who were inserted into it as the same exact issue, ghost being ejected from body. I do not use the mmi enough to know how to verify it.

EvilDrCoconut commented 3 weeks ago

i seem to be running into an interesting issue. This only procs on organics. While trying to get a quick video under 10mb's, i had randomly spawned as a non-organic who successfully proc'ed the change_species call

https://github.com/user-attachments/assets/87365565-37e9-4014-a7a6-c453e00158c9

EvilDrCoconut commented 3 weeks ago

As an organic though:

https://github.com/user-attachments/assets/5f341ac8-eaaa-41a6-9625-06820c7a3eb0

EvilDrCoconut commented 3 weeks ago

The organic's body is updating correctly for parts, and brain is correcting itself for max_health while damage remains at 0. So the brain has nothing happening to it. It seems the ghost is just removed. But for non organics, this is not an issue.

MistakeNot4892 commented 3 weeks ago

Can you post revision info please?

EvilDrCoconut commented 3 weeks ago

sure, thanks for your patience as I go about my daily life

Client Version: 515 Server Revision: 9316a64663c1bcd4348c0bb565f71ad5dbaada06 - Dev-SAR - 2024-08-18

MistakeNot4892 commented 3 weeks ago

Your branch is way out of date, if you could try to reproduce after pulling in the latest scav main branch that'd be valuable.