source-sdk-2013 icon indicating copy to clipboard operation
source-sdk-2013 copied to clipboard

[HL2MP] Make info_null and infodecal server-side

Open speedvoltage opened this issue 9 months ago • 4 comments

Issue: The info_null and infodecal entities are currently not server-side, which leads to unnecessary networked edicts.

  • info_null serves as a placeholder or temporary entity, but it still gets briefly networked. This can lead to crashes due to hitting entity limits, especially on maps filled with temporary entities.
  • infodecal is used for applying decals but doesn’t need to be sent to clients. On larger maps, having too many infodecal entities can lead to edict exhaustion and, thereby, can cause crashes.

Fix:

  • Make info_null server-side only to stop it from being networked. This will help reduce crashes related to entity limits by allowing it to exist for a tick before being removed without being networked.
  • Change infodecal to be server-only to cut down on unnecessary edict usage. Since decals are usually static, they don’t need to be replicated on the client side. This will help avoid running out of edicts, especially on larger maps with numerous decals.

speedvoltage avatar Mar 14 '25 21:03 speedvoltage

That is not an issue. That is stating a fact without explaining anything.

henke37 avatar Mar 15 '25 09:03 henke37

Partial duplicate of https://github.com/ValveSoftware/source-sdk-2013/pull/910?

Bitl avatar Mar 16 '25 18:03 Bitl

How does this affect named decals? How does the client know where to apply the decals?

SirYodaJedi avatar Mar 16 '25 19:03 SirYodaJedi

How does this affect named decals? How does the client know where to apply the decals?

It seems decals are networked using a different system from the edict system, so yes, it is safe to de-edict them.

SirYodaJedi avatar Jun 05 '25 02:06 SirYodaJedi