[HLDMS] Fix all map entities being spawned twice#1839
Open
YourSourceBoiii wants to merge 1 commit intoValveSoftware:masterfrom
Open
[HLDMS] Fix all map entities being spawned twice#1839YourSourceBoiii wants to merge 1 commit intoValveSoftware:masterfrom
YourSourceBoiii wants to merge 1 commit intoValveSoftware:masterfrom
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
ISSUE: For years, Half Life Deathmatch Source has had this bug where all entities in a .bsp file are spawned twice. E.g. 1 prop_physics entity in hammer will end up becoming 2 prop_physics in the exact same spot in game.
This is LITERALLY game breaking. Any map that is more than a static battlefield is broken. Even stock maps have dysfunctional doors, elevators, etc. because having 2 spawn in the same place breaks them.
FIX: The issue is that
CServerGameDLL::LevelInit_ParseAllEntitiesin hl1mp_gameinterface.cpp callsMapEntity_ParseAllEntities()when it already gets called inCServerGameDLL::LevelInit(non mod-specific part of the SDK). It can be fixed by placing the call forLevelInit_ParseAllEntities()behind an#ifndef HL1MP_DLLstatement.