Skip to content

How Mapbase can be used in specific settings

Blixibon edited this page Dec 9, 2019 · 5 revisions

This article contains a list of settings and atmospheres, similar to that of the category on the VDC. It is supposed to talk about features and fixes Mapbase has introduced which change how a certain setting could be mapped.

This is still a very heavy WIP, like most of the wiki.

Half-Life 2

Even though Mapbase is meant to be general-purpose enough to be portable to any type of Source game or mod (running on Source 2013, that is), it was originally built specifically for Half-Life 2 modding and mapping. A very large portion of its improvements apply directly to HL2's features and entities.

Point Insertion

Most of what's seen in Point Insertion is seldom used in custom maps or mods because a lot of it is difficult to use compared to more traditional elements. Mapbase makes many of the involved entities a lot easier to use and manage in modding.

script_intro is used for the blending effects seen in the G-Man intro in d1_trainstation_01. Mapbase has changed the entity to show viewmodels correctly and allow the skybox to be drawn in either view.

After the intro, the player encounters the Combine's police and the city's citizens acting busy. npc_metropolice is used in all parts of Point Insertion as the oppressive Combine police. A bunch of I/O have been added to control their pre-criminal behavior, including the ability to set the number of warnings they've issued to the player and an input to make a metrocop immediately "administer justice" to the player.

ai_goal_actbusy is used to make citizens walk around, get food packages, and do special idle animations throughout the chapter. Mapbase now allows map-specific actbusy scripts to be loaded (maps/%mapname%_actbusy.txt) and some miscellaneous improvements have been applied to the system as well. This could make the act busy system much more accessible and common in custom levels.

"A Red Letter Day"

There's not much to explore in this chapter since it's basically just a big period of downtime and story exposition, but most of that talking is done through logic_choreographed_scene, which uses .vcd files to play complicated scenes where characters speak, move around, change their faces, and express gestures. This is a really general entity and it's kind of grasping at straws to associate it with "A Red Letter Day", but now you could play raw .vcd files without having to rebuild scenes.image. These raw scenes can only be used with logic_choreographed_scene, not anything like the response system, and cannot override scenes already compiled inside of scenes.image. You could also set scene !targets manually with the "SetTarget#" inputs.

item_suit, the HEV suit the player puts on in this chapter, can now use the HL1 "Short Logon" spawnflag to prevent the "admire gloves" animation from playing.

Route Kanal/Water Hazard

A lot of maps and short mods are based in the canals or sewer areas of City 17.

weapon_stunstick is used in d1_canals_01 at the beginning of the chapter, but cannot be picked up as a weapon, only providing some suit energy. Mapbase adds a hl2_gamerules entity which allows you to change the stunstick's pickup behavior and allow players to pick up stunsticks for themselves, using HL2:DM assets and behaviors by default.

npc_metropolice is used in all parts of Route Kanal as the main attacking Combine infantry. Various I/O to control their manhack carrying behavior have been added, including the "DeployManhack" input to deploy a manhack immediately. They also support the ability to carry more weapons, like weapon_357.

item_item_crate can be found throughout Route Kanal containing supplies for the player. It now supports the ability to use a custom crate model and the ability to spawn entities from a point_template instead of just a given classname. An "OnItem" output has also been added, which fires for each item, passing it as the activator and parameter. The "OnItem" output also fires for each item generated by an item_dynamic_resupply.

npc_barnacle is used in various parts of Route Kanal, first appearing in d1_canals_01a. Outputs previously unique to the episodes are now available in regular HL2 mods and npc_poisonzombie no longer crashes the game upon touching a barnacle (it also poisons the barnacle, similar to poison headcrabs).

env_headcrabcanister is seen in d1_canals_05 during an attack on a refugee camp. Mapabse adds an "OnCrab" output which fires for each headcrab that comes out of the canister, passing it as the activator and parameter. A "StopHissing" input has also been added to silence a canister's hissing, which was previously continuous.

prop_vehicle_airboat is the main vehicle used in Water Hazard, given at the end of Route Kanal. A version of the model with fixed handling has been added as a model replacement.

npc_helicopter is a dark Combine helicopter that hunts the player, serving as the main antagonist of Water Hazard. Mapbase gives it the "OutBomb" output, which fires each time the helicopter drops a bomb, passing the bomb as the activator and parameter. The ability to use a custom Field of View (which would normally be -1.0/360 degrees) has been added as well.

Black Mesa East

npc_turret_lab is an experimental new entity that brings the "turrets" in the airlock at the beginning to life, serving as some kind of allied wall turret.

"We Don't Go To Ravenholm..."

A lot of zombie-oriented maps are set in Ravenholm or locations similar to Ravenholm.

All zombies, including npc_zombie, npc_fastzombie, npc_poisonzombie, and npc_zombine (even though the last class doesn't appear in Ravenholm), now have the "Headless" keyvalue for making them start headless and a "No torso" spawnflag for preventing a zombie from ever separating into a torso. There's also an "OnSwattedProp" output which fires when a zombie swats a prop at the player, passing the prop as the activator. npc_zombie_custom and npc_zombie_custom_torso are two new entities that allow mappers to customize zombie models and responses, based on the classic npc_zombie NPC and AI.

npc_monk is Father Grigori, a slightly insane monk who is seen throughout the zombie town of Ravenholm. If allowed to use Mapbase dynamic interactions, Father Grigori will be able to use Alyx's dynamic interactions on zombies. He has also been given the ability to use func_tank turrets.

prop_physics has a new spawnflag which prevents it from being punted by zombies. prop_physics_override also has a new keyvalue which allows mappers to set special "prop interactions" normally set in a prop's QC file, including the ability to stick to walls/slice zombies and the ability to splatter paint on objects.

Highway 17/Sandtraps

prop_vehicle_jeep is the player's main vehicle throughout the Coast chapters. In Episodic mods, where the jeep is only the jalopy, a prop_vehicle_jeep_old entity has been added, which restores the HL2 jeep without touching the jalopy or using any of the jalopy's properties.

npc_combine_s appears everywhere throughout the game from Highway 17 onward. Soldiers in Mapbase now support the ability to "walk easy" when idle and use unarmed animations while unarmed. Both features can be toggled through convars. Soldiers also have I/O/KV to control their grenade behavior and the kinds of grenades they should use.

npc_combinegunship, which appears in multiple places throughout the Coast, now supports an optional, restored ability to use its ground attack.

Nova Prospekt/Entanglement

  • ``

Anticitizen One/Follow Freeman

npc_citizen appears throughout these chapters as the player's allies. Citizens now have a spawnflag that lets players add/remove them from their squad with Alt + E (Walk + Use). This can be toggled in other maps with a convar called npc_citizen_squad_secondary_toggle_use_always.

Citizens (and npc_barney or npc_alyx) can also now use both grenades and AR2/SMG alt-fire, similar to Combine soldiers. They use the same related inputs and keyvalues.

  • npc_sniper now supports a custom laser, a custom model, and custom responses through the response system.

Half-Life 2: Episode One

(todo)

Clone this wiki locally