Additions
- Added ability to drop all selected ammo by right clicking in the radial wheel (#1280)
- Added barricade board sounds for damaging and breaking
- Added client option "FOV can be altered by gameplay"
- Added hints to loading screen
- Added initial draw animation to 1911, Glock 17, and M92FS
- Added new viewmodel animations to frag grenade and Deer Hunter bow [list]
- Contributed by Silent
- Models and animations contributed by Mage6614 and Silent
- Actions such as toggling cheats, changing gameplay cvars, running custom maphacks / scripts etc. will now invalidate runs
- Can be enabled with cvar "sv_challenge_validate"
- Invalid results will be rejected and not saved, this is indicated by a warning message and yellow HUD timer
[/list]
Changes
- Allow players to shove during fire mode change
- Allow players to shove during ironsight raise / lower animation
- Allow players to shove while carrying a prop
- Allow players to shove while switching e-tool mode
- Character Select now lists all voice sets when random model is selected
- Crawlers no longer have immunity to body damage in realism mode
- Death notices are no longer sent for NPCs other than zombies
- Flame kills are now correctly attributed to inflicting players (e.g. from fuel canisters, chain reactions)
- Flare gun projectiles now pass through players, when friendly fire is off
- Gunshot suicides now play an impact sound, and interrupt voice lines
- Improved barricade hammer responsiveness
- Improved fire extinguisher responsiveness
- Improved font rendering on in-game HUD text
- Improved melee hit detection
- Increased item share drop distance
- Main menu buttons are now localizable
- Main menu manual now links to community guide "A Complete Guide to NMRiH"
- Medical item sounds are now more audible
- More responsive targeting for item sharing, now traces nearby player hull
- New player avoidance method: [list]
- Players can now phase through others, and only be pushed back slightly if you stay within their collision point
- Players standing still won't be pushed away
Fixes
- Fixed all results being displayed as "Random Objectives" by timer HUD if server switches to challenge mode late
- Fixed "Animation doesn't play for second barricade if you try to place multiple" (#1114)
- Fixed "Animations sometimes freeze when using" (#912)
- Fixed "Autojoin causes wrong view height" (#1208)
- Fixed "Barricade point is blocked!" message not being localized
- Fixed being able to shoot through walls with a bow (#1156)
- Fixed being able to skip e-tool switch animation
- Fixed "Chainsaw always shows as full in radial" (#1222)
- Fixed "Chainsaw infinite fuel when used inside a supply drop" (#992)
- Fixed challenge mode blitz timer not beeping while in the menu
- Fixed challenge timers not being updated for players spawning late
- Fixed "Cleaver has the flashlight in the wrong hand" (#986)
- Fixed client-side death notice not appearing in console when player get killed by zombie
- Fixed common Linux crash relating to achievements
- Fixed crash when attempting to start next objective during warmup
- Fixed cvar "fov_desired" not being clamped
- Fixed demo playback icons lingering on timer HUD
- Fixed demo record and stop sounds playing improperly
- Fixed demo support's bookmark event not being logged
- Fixed demo timer overlapping with chat dialog
- Fixed "droptest" command exploit
- Fixed e-tool animation jitter on switch
- Fixed entity "logic_progress" sending messages without recipients
- Fixed event "wave_complete" being fired twice by both client / server (fixes saturated wave complete sound)
- Fixed fire mode HUD jitter
- Fixed "FireOutput server crash on objective completed" (#1129)
- Fixed flare gun explosion kills not being attributed correctly
- Fixed flickering cursor while rotating a model in character select
- Fixed flickering sprite when staring at the sun
- Fixed "Game plays greetings NG sound if supply drop comes after 1st wave" (#1181)
- Fixed gameplay altered FOV not being scaled properly on non-default settings
- Fixed "Greenlit background has incorrect aspect ratio" (#1289)
- Fixed item giving not cancelling on shove
- Fixed listen servers not being announced to master server on initial load
- Fixed "M9 world model is paired up with maglite regardless if player has maglite equipped" (#25)
- Fixed main menu music not stopping when entering a map using console
- Fixed map completion achievements being awarded if player extracts by console or script
- Fixed MapHack's connections block not working during pre-entity
- Fixed misc. issues with extraction preview camera (#1284)
- Fixed "Multiple props on moving brushes significantly degrade performance" (#1198)
- Fixed "nmrih_game_state's restartround freezing server" (#1179)
- Fixed objective text being out of position after resolution change
- Fixed players being unable to switch ironsights underwater
- Fixed "Players in join screen block spawn points" (#1299)
- Fixed "Players unable to cast vote after missing previous vote result" (#1295)
- Fixed previous map loading screen persisting on level change
- Fixed radial wheel border transparency
- Fixed rare crash involving ammo radial wheel on level change
- Fixed rare crash when holstering a grenade
- Fixed rich presence not working when initializing late
- Fixed rulesets not being listed by "change difficulty" callvote
- Fixed "Scan Out" effect on game_text (#880)
- Fixed "Server crash during lag compensation" (#1287)
- Fixed server crash with voice commands
- Fixed server-side death notices not appearing in dedicated server console when "sv_deathnotice" is enabled
- Fixed server-side Workshop maps not being removed properly when multiple servers are running in same directory
- Fixed servers with SourceTV bot showing incorrect max. players on Discord rich presence
- Fixed "Shotgun reload sound spam" (#843)
- Fixed SourceTV bot being able to join the game via "joingame" command
- Fixed sv_cheats cvar bypass by executing commands on same frame
- Fixed "sv_realism 1 does not apply to fa_winchester_1892" (#1154)
- Fixed text being truncated early in several game UI elements
- Fixed "Third person character models do not point the flashlight straight" (#1095)
- Fixed VGUI image buttons being clickable with other than left mouse button
- Fixed "Viewmodel walking animation is delayed" (#1195)
- Fixed VScript stack overflow on entity think function (#1292)
- Fixed VScript's TraceHullComplex() crashing the game (#1298)
- Fixed warning "Can't record a demo while playing a demo" being displayed on demo playback
- Fixed "Zombie died." death notice when zombies die in flames
Changes for mappers and modders
- Added cvar "sv_wave_enable_cycle" to enable/disable wave cycles for zombie spawning
- Added entity "env_instructor_hint"
- Added entity "fog_volume" (#1301)
- Added entity "point_message_multiplayer" (#1305)
- Added game event "challenge_invalid", fired when a run is rejected during challenge mode
- Added opt-in support for previously obsolete "OnPlayerExtracted" output on "func_nmrih_extractionzone" (#1283)
- Added output "OnEndUse" to trigger_progress entities
- Added outputs "OnOpen" and "OnClose" to entity "item_inventory_box"
- Added support for bird NPCs from HL2 (npc_crow / npc_pigeon / npc_seagull)
- Added support for cycling and crossfading main menu backgrounds
- Added support for hand models on viewmodels
- Added user message "ItemBoxUpdate" to inventory boxes (#1209)
- Added zone letter override to entity "func_safe_zone"
- Barricade boards now have a classname "nmrih_barricade_prop"
- Ruleset: Added better support for map defined cvars (i.e. logic_ruleset)
- Ruleset: Added "RevertCvar" to logic_ruleset and VScript, reverts given cvar to ruleset value (when available), or default
- Ruleset: Added "Script" field for running VScript file on load
- Ruleset: Added server command "ruleset_validate", checks if current ruleset / difficulty is modified, and prints all altered cvars
- Ruleset: Checksum (file SHA1) is now included in "challenge_start" & "challenge_end" game events as "rs_hash" string [list]
- Used for run validation e.g. by moderators of speedrun sites, since 1.12.3 rulesets are shipped as raw .txt, and they're trivial to edit
VScript
- Added CItem_InventoryBox bindings
- Added CObjectiveManager singleton
- Added function CBasePlayer::CanPickupObject()
- Added Version singleton (for version labels, build numbers, etc.)
- Included better descriptions for NMRiH player bindings
VScript updates from Mapbase
- Added CBaseCombatCharacter hook: int RelationshipPriority(entity, def) - Called when a character's relationship priority for another entity is requested. Returning a number will make the game use that priority instead of the default priority.
- Added CBaseCombatCharacter hook: int RelationshipType(entity, def) - Called when a character's relationship to another entity is requested. Returning a disposition will make the game use that disposition instead of the default relationship.
- Added function CBaseAnimating::ResetSequenceInfo()
- Added function CBaseAnimating::StudioFrameAdvance()
- Added function Entities.DisableEntityListening() - Disables the 'OnEntity' hooks.
- Added function Entities.EnableEntityListening() - Enables the 'OnEntity' hooks. This function must be called before using them.
- Added global hook: void OnEntityCreated(entity) - Called when an entity is created.
- Added global hook: void OnEntityDeleted(entity) - Called when an entity is deleted.
- Added global hook: void OnEntitySpawned(entity) - Called when an entity spawns.
Maps
nmo_rockpit
- Added over 15 occluders
- Added more hint brushes and areaportals
- Added fade out distances to some props
- Replaced fog trigger with fog_volume
- Tweaked the upper floor of the surface building
nmo_underground
- Added filter for VPhysics clip
- Added garage
- Added instructor hint for elevator's generator
- Added more spawn points for smoke grenades
- Added new key spawn point
- Fixed not being able to pick up 308 ammo in truck in elevator area
- Reworked first key location area
- Tweaked few clips
nms_camilla
- Replaced all game_text with instructors