Jump to content

"fused_shadeling_bomb" and "fused_shadeling_bomb_death_fx" are not properly removed at the end of their lifecycle


Whateverr
  • Fixed

My server has been running continuously for many days without a restart. When I used c_dumpentities() to check the entity count, I found that there were hundreds of residual instances of the "fused_shadeling_bomb_death_fx" effect, and there were also a considerable number of residual instances of "fused_shadeling_bomb", approximately one-fourth the number of the effects.

Usually, effects that are not meant to be reused are scheduled for deletion using functions like inst:ListenForEvent("animover", inst.Remove) or inst:DoTaskInTime(100*FRAMES, inst.Remove).

Both of these prefabs are defined in the "fused_shadeling_bomb.lua" script file. However, I did not find similar code for scheduled deletion related to "fused_shadeling_bomb_death_fx". As for "fused_shadeling_bomb", I discovered that it executes inst:RemoveFromScene() after the explosion, which seems intentional as it waits for some scheduled tasks to be executed. However, in line 134 of "fused_shadeling_bomb.lua", the code inst:DoTaskInTime((EXTRA_QUICKFUSE_BOMBS + 1) * EXTRA_QUICKFUSE_TIMEPERBOMB) doesn't seem to pass the function that needs to be executed for this task (I assume it should be inst.Remove). This might be the reason why "fused_shadeling_bomb" is left behind.

image.png.2e645be642a8fd6086192ed6fbe9fe19.png

If I have mentioned any oversights, I kindly request them to be fixed.


Steps to Reproduce

To reproduce the issue in-game, please follow these steps:

  1. Execute the command c_spawn("fused_shadeling") to spawn the creature.
  2. Kill the fused_shadeling.
  3. Wait for the fused_shadeling_bomb dropped by the creature to explode.
  4. Count the number of "fused_shadeling_bomb" and "fused_shadeling_bomb_death_fx" by using c_countprefabs()

You will notice that these entities continue to remain in the game world even after the completion of their life cycle.

  • Like 2
  • Thanks 1



User Feedback


A developer has marked this issue as fixed. This means that the issue has been addressed in the current development build and will likely be in the next update.
1 hour ago, Well-met said:

I believe this is the same case with Mutated Varg's cold fire prefab.

warg_mutated_ember_fx and warg_mutated_breath_fx are in an entity pool that stay around so long as the Varg is still alive once it dies so does the entities created from the breath attack unless there is another you know of?

  • Like 1

Share this comment


Link to comment
Share on other sites

23 hours ago, JesseB_Klei said:

warg_mutated_ember_fx and warg_mutated_breath_fx are in an entity pool that stay around so long as the Varg is still alive once it dies so does the entities created from the breath attack unless there is another you know of?

I stand corrected, thank you

  • Thanks 1

Share this comment


Link to comment
Share on other sites



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
  • Create New...