[HL2MP] Assorted changes for NPC support, Mapbase features in HL2DM, and new QOL features #465
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.
This PR contains assorted overlapping changes under the general categories of more stable and consistent NPC support in HL2DM, the integration of Mapbase's SP features into HL2DM, and general QOL features for HL2DM.
This is built off of and supersedes #459. Recommend reviewing individual commits rather than the entire diff.
What each commit does
This list describes each commit in this PR:
#ifdef MAPBASE
(e.g. general existing NPC support), while Mapbase-specific code within this PR or within the singleplayer weapons do use the#ifdef
.#ifdef
preprocessor is still namedSP_ANIM_STATE
.sv_hl2mp_protagonist_select
(thus allowing players to select any model defined by the scripts, including characters like Gordon). Assigning each player to a protagonist allows the use of c_arms and other parameters.#ifdef
in the base player resource (by contrast, TF2 assigns team colors in its own override). This commit adds a HL2MP-specific player resource for both general utility in derived mods as well as for two features:mp_use_server_bulletfx
cvar to extend this) and NPCs themselves network blood and limited relationship data.mp_coop
cvar, which influences player spawn positions and whether items respawn. The previously unusedhl2mp_gamerules
proxy is also now connected tohl2_gamerules
and controls whether to allow the default suit or weapons (the functionality of this was added in a previous PR).sv_hl2mp_npc_deathnotice_as_victim
andsv_hl2mp_npc_deathnotice_as_killer
respectively. Enabled by default.func_tank
.npc_citizen
. Ifplayer_squad_mp_shared
is enabled, then citizen squadmates will be shared between all players. If it is disabled, then each player will have their own commandable squad, with citizens joining the first one that approaches them. The cvar is disabled by default.hl2mp_avoidteammates
, and fixes player teammates showing blood decals when attacking them.PR Checklist
develop
branch OR targets another branch with a specific goal in mind