Post news RSS Mapbase v7.0 released

Mapbase's v7.0 update has been released. This update focuses on new NPC animations, some big Alien Swarm SDK ports, changes to developer commentary mode, bug fixes, and additional augmentations to existing content.

Posted by on

Mapbase Version 7.0

Mapbase v7.0 Release Build

Mapbase Release Build



- Added color correction changes and spawnflags from Alien Swarm SDK
- Added support for displaying multiple screen overlays at the same time
- Fixed ForceThisNPCToStopBusy causing NPCs to enter unbreakable actbusy loops in active goals
- Added singleplayer animation state (note: not fully stable)
- Added weapon backup activity recursion for NPCs
- Re-enabled gesture turning with a cvar to toggle it
- Added Alien Swarm SDK Response System
- Addded optional nodegraph rebuild check which ignores maps from chapters.txt
- Added keyvalues to env_tonemap_controller
- Added plant orientation for combine_mine
- Added trigger_tonemap entity from Alien Swarm SDK
- Added fog_volume entity from Alien Swarm SDK
- weapon_crossbow uses bodygroup for empty bolt instead of skin
- Added optional NPC door-opening animations
- Added custom cover info_node_hints which allow for custom cover animations
- Added new medium cover aim/attack animations for crouch cover med + integration into AI standoffs as a new posture
- Added func_tank behavior and animations for vortigaunts
- Fixed metrocop unholster behavior
- Added keyvalue for metrocops and player companions to drop grenade/alt-fire items
- Overhauled func_fake_worldportal to fix the current visual issues and get it out of a WIP state
- Added screen height scaling for vgui_text_display (fixes strange overlap issues)
- Alyx gun readiness activities on weapon_pistol/weapon_357 and default walk/run activities on weapon_alyxgun
- Added new dynamic RTT shadow angles world light iteration method
- info_target "Always transmit to client" spawnflag
- Properly overridden projected texture shadow depth bias values
- env_global_light using different cvars for shadow map resolution and filter size
- Fix for NPCs with death animations extinguishing their fires before they should be extinguished
- Compute aspect ratios on shadow depth textures (contributed by Petercov)
- NPCs can load dynamic interactions from all animation MDLs (contributed by Petercov)
- Added footnotes to developer commentary nodes
- Weapon script keyvalues for “uses_hands”, “DroppedModel”, “sway_scale”, “sway_speed_scale”, and "bob_scale"
- Alien Swarm SDK code for clientside gib ragdolls
- Fixed NPC death poses
- Fix for trigger_fall not doing anything when landing in water
- Fix for NPCs incorrectly reloading certain weapons
- Capped NPC bounding box hull to not increase due to model scale
- Fix for flipped viewmodels not swinging, etc. correctly
- Clientside ragdolls receive decals when they are hit
- Death ragdolls "steal" impacts from the final damage dealt to their source entities
- Closed captioning HUD element scales according to commentary HUD
- Added columns and images in outro env_credits and color overrides for both intro and outro env_credits
- Fix for trigger_look LOS keyvalue
- Added support for map-specific closed captioning and surfaceproperties files
- Made viewmodel_fov a non-cheat by default
- Increased ragdoll element limit
- Added ViewProximity/ViewDirection material proxies
- Added filter keyvalue for npc_heli_avoidsphere
- Added prop_dynamic "Hold Animation", "SetAnimationNoReset", and "Update children" I/O/KV from Alien Swarm SDK
- Added AI hint radius keyvalue
- Barnacles no longer pick up rollermines (to prevent a crash)
- Added hands viewmodel bodygroup keyvalue/input
- Fix for hands viewmodel not working on weapon holster
- Fix for particle precipitation clamping issues
- Added speed modifier for scanners and rollermines
- mat_showcamerarendertarget overhaul to be able to show Mapbase RT cameras and fix the command's materials not being referenced
- Added support for custom fonts on closed captioning/subtitles
- Added new logic_substring entity (contributed by moofemp)
- I/O/KV on point_viewcontrol inspired by later games
- Made movement cvars changeable in-game, like in CS:S
- Added OnEntrySequence and OnActionSequence for scripted_sequence
- Added ConVar material proxy from Alien Swarm SDK
- Added console group script file
- Added DisappearMinDist in func_lod for forwards compatibility
- Added support for custom gameinfo.txt values for default player and arms models
- Added support for NPCs with innate range attacks (e.g. vorts) in standoffs
- Fixed func_commandredirect not cancelling orders correctly
- Added autocubemap utility
- Added AI hint weight
- Added I/O to allow commentary nodes to change view control parameters mid-commentary
- Added SetScale input on func_fake_worldportal
- Fix for a crash which occurs when NPCs pick up a weapon the player is already holding
- Added OnItemDrop output for NPCs
- Added host_pitchscale cvar which can override host_timescale's sound pitch scaling
- Fix for citizens not aiming RPG laser dot correctly
- Fix for the metrocop standoff behavior sentences not playing correctly
- Commentary nodes now combine speaker and print name
- Fixes for instanced response systems not using enhanced save/restore
- Added commentary node return speed scale
- Added scene commentary nodes
- Added image commentary nodes
- Added text commentary nodes
- Added cvar allowing antlions to be ignited in-game
- Added item_healthkit_custom
- Sound support + mute keyvalue for vgui_movie_display (contributed by Alivebyte)
- Sound pitch scaling and env_microphone detection for sentences
- Added multipliers for health and battery items
- Added a way to override climb node lineup linkage via target node keyvalue
- Added default game_text speech colors for all HL2 characters
- Restored unused port of Alyx combat AI speech concepts for all player companions
- Added new move_rope/keyframe_rope inputs
- Added player_autoswitch_on_first_pickup cvar
- Added "vscript" and "vscript_file" types to Response System
- Fixed zombie serverside ragdoll gibs crashing when one of the models isn't valid
- NoIdlePatrol keyvalue for npc_hunter
- Custom model support for npc_hunter
- Fixed ForcePrimaryFire not working on RPG
- Fixed enemyfinders becoming visible when they wake (contributed by Petercov)
- Support for "mapspawn_addon" scripts in new "ADDON" path IDs (inspired by L4D2)
- Fixed RPG readiness activities being marked as required


- Remapped animations on Combine soldiers and metrocops to use more accurate and easier-to-use activity names
- Added Combine soldier animation nodes/transitions
- Added unique annabelle activities for citizens, metrocops, and soldiers + Unique shotgun animations for Grigori
- Retroactively changed metrocop low cover animations to the new "medium cover" activities and added new crouching animations in their place
- Added new NPC climbing activities and ported L4D1 animations for HL2's human characters
- Added full female citizen pistol animations based on Alyx animations
- Added npc_citizen crossbow animations
- New holster/unholster activities for multiple different weapons
- New pistol, 357, and crossbow activities in line with the activities for the SMG1, AR2, etc.
- Combine soldier grenade throws, reloading animations, etc. use aim layers
- Fix for Combine soldiers not making sounds when using certain movement animations
- Added Combine soldier unarmed running animation
- Added full male citizen pistol animations based on metrocop animations
- Added full Combine soldier pistol animations based on metrocop animations
- Added weight blending for IK attachment rules
- Added new basic activities for melee weapons and citizen accessories
- Added metrocop and Combine soldier readiness activities (alternate idle and aiming animations)
- Added full citizen package and suitcase animation sets on citizens, metrocops, and soldiers
- Added additional Combine soldier turret carry animations
- Proper ACT_IDLE_ON_FIRE handling for Combine soldiers
- Optional vortigaunt grenade throw animation
- Unique Mapbase player animations based on HL2:DM animations (currently only in files)


- Started using unique new shared_content_v7_0 VPK
- Added HL2 building_template dev textures


- VScript fix for save/restore cache not updating soon enough (contributed by reductor)
- VScript hook handler singleton (contributed by samisalreadytaken)
- Added custom VScript procedural targets
- VScript's enum registration uses a more efficient internal declaration method (contributed by samisalreadytaken)
- EmitSound_t in VScript and hooks for modifying emitted sounds/sentences
- Added VScript glow object manager (contributed by samisalreadytaken)
- Added rope_keyframe VScript functions
- Increased VScript file I/O size
- Added global/static VScript hooks (contributed by samisalreadytaken)
- Exposed npc_citizen in VScript
- Exposed CBaseAnimatingOverlay in VScript
- VScript hooks for entity creation/deletion
- Added OverrideMove VScript hook
- Added OnEntText VScript hook inspired by later Source games
- VScript think function crash fix (contributed by samisalreadytaken)
- Added VScript functions for bone attachments and transforming bone matrices
- Reworked OnDeath VScript hook so it could cheat death properly
- Added default binds for a bunch of unused multiplayer commands (overridable with VScript)
- Added weakref() and getclass() for Vector and other C++ class objects
- Added CreateRopeWithSecondPointDetached for VScript
- Added clientside VScript functions for getting view position/direction
- Added more VScript functions for CMapbaseSystem
- Standalone FileExists() function for VScript
- Exposed developer commentary nodes to VScript
- Added OnKilledOther VScript hook
- Added VScript convar change callbacks (contributed by samisalreadytaken)
- Vector unary minus fix
- VScript Steam API (contributed by samisalreadytaken)
- Added VScript RelationshipType/Priority hooks
- Added VScript con command hooking (contributed by samisalreadytaken)
- VScript documentation only registers in "developer" mode (contributed by samisalreadytaken)
- Fix for activator, caller, etc. values not working within RunScriptCode and related inputs
- VScript function for getting the player’s viewmodel entities
- VScript functions for giving/removing ammo
- Updated to latest Squirrel 3.1 changes as of December 2021
- CBaseFlex::SetViewtarget function in VScript
- VScript functions for NPC crouching and TranslateActivity


- Fixed WindowImposter (func_areaportalwindow) parallax correction
- Fixed prop_coreball effect origin not updating properly
- SDK_LightmappedGeneric buffer over-read fix (contributed by z33ky)
- Fix for brightly glowing teeth (contributed by Petercov)
- Support for $allowdiffusemodulation from Alien Swarm SDK
- Support for $envmapfresnel without phong from Alien Swarm SDK (including $envmapfresnelminmaxexp)

Compile Tools:

- Started using v142 toolset for VBSP, which seems to eliminate the antivirus false positive issue
- VBSP support for nested instances relative to parent instances
- VBSP features for those who use Propper (contributed by Matty-64)
- Fix for VBSP using the wrong halflife2 FGD


- Fixed spawnflags on certain entities not displaying corresponding bits in brackets
- Fixed a typo

Source Code:

- Added support for v142 toolset/Visual Studio 2019 from Source SDK 2013 Community Edition
- v7.0 Linux compilation fixes (contributed by z33ky)
- Added Mapbase version constant integer
- Misc. speech/choreo utilities for code
- Fixes for format string and buffer overflows in CC, VGUI, and VScript (contributed by samisalreadytaken)
- Added override for IsCombatItem() in CItem
- Fixed global state counters not being initialized

After 1.5 long years, Mapbase v7.0 has finally been released. With over 200 separately documented changes, this is effectively Mapbase's biggest update yet, and it’s been a long time coming. However, it's also been a long time since users have had to update to a newer version.

This time, we decided to put most of the information explaining the update's contents on Notion. Click on the button below to find out more about what this update entails:

Post a comment
Sign in or join with:

Only registered members can share their thoughts. So come on! Join the community today (totally free - or sign in with your social account on the right) and join in the conversation.