the cutting room mirror

Half-Life 2: Episode Two

This article has a talk page!
view on tcrf.net

Half-Life 2: Episode Two is the third part of the yet-unfinished adventure of Gordon Freeman where Eli Vance prepared for "Unforeseen Consequences".

As of 16 November 2024, Half-Life 2: Episode Two has been merged into base HL2 as part of the 20th Anniversary update, with its Steam store listing now removed.

Unused Particles#

Combine Advisor Unused Particle Shield#

Found as "advisor_psychic_shield", this unused shield uses the Particle system shown in the Benchmark, but the file is found in the retail version. Advisor_ep2_unused_shield.jpg

bik_test#

A video testing particles is found under ep2\materials\particle.

Unused Combine Advisor Battle AI#

Watch on YouTube

This video shows unused Combine Advisor Battle AI, showing that Gordon was originally to fight one in Episode Two. The code for the AI is present in the Source SDK and can be re-enabled by changing a single line.

Unused Citadel Explosion Animations#

Watch on YouTube

There are various unused explosion animations for the Citadel that are never used in-game. It can be heard at the end of Episode One, but it can't be seen due to the Citadel being a simple skybox card, without animations. However, it was seen in the unused map "ep2_intro.bsp", a modified version of the final cutscene in Episode One only with the Citadel explosion animation seen.

Proto1 Weapon#

A railgun-type weapon that disintegrates NPCs intended for Episode Three is included as part of the the public Team Fortress 2 SDK sources and can be re-enabled by including its source files in the Episodic DLL's project files. It uses the .357 Magnum's view and world models by default.

Unused Text#

ep2_english.txt#

The unused chapters also have text that can be seen in-game via creating a chapter0.cfg and chapter8.cfg.

"ep2_Chapter0_Title"    "OUR STORY SO FAR..."
"ep2_Chapter8_Title"    ""

As the only time this game-over message is shown is failing to defeat Dr. Breen at the end of Half-Life 2, this goes unused.

"HL2_GameOver_Timer"            "ALL IS DONE\nTHE FREEMAN'S FAILURE TO SEIZE A SWIFT VICTORY\nLEADS TO OUR TOTAL DEFEAT"

game_sounds_vehicles_ep2.txt#

Many sound entries in game_sounds_vehicles_ep2.txt point to audio files that are missing from the sound/vehicles/junker directory.

"JNK_skid_lowfriction_short"
{
    "channel"       "CHAN_STATIC"
    "volume"        "0.6"
    "soundlevel"    "SNDLVL_80dB"
    "pitch"     "90,110"
    "rndwave"
    {
        "wave"      "vehicles/junker/skid_lowfriction_short1.wav"
        "wave"      "vehicles/junker/skid_lowfriction_short2.wav"
        "wave"      "vehicles/junker/skid_lowfriction_short3.wav"
    }
}

"JNK_skid_normalfriction_short"
{
    "channel"       "CHAN_STATIC"
    "volume"        "0.6"
    "soundlevel"    "SNDLVL_80dB"
    "pitch"     "90,110"
    "rndwave"
    {
        "wave"      "vehicles/junker/skid_lowfriction_short1.wav"
        "wave"      "vehicles/junker/skid_lowfriction_short2.wav"
        "wave"      "vehicles/junker/skid_lowfriction_short3.wav"
    }
}

"JNK_skid_highfriction_short"
{
    "channel"       "CHAN_STATIC"
    "volume"        "0.8"
    "soundlevel"    "SNDLVL_80dB"
    "pitch"     "90,110"
    "rndwave"
    {
        "wave"      "vehicles/junker/skid_highfriction_short1.wav"
        "wave"      "vehicles/junker/skid_highfriction_short2.wav"
        "wave"      "vehicles/junker/skid_highfriction_short3.wav"
        "wave"      "vehicles/junker/skid_highfriction_short4.wav"
        "wave"      "vehicles/junker/skid_highfriction_short5.wav"
    }
}

"JNK_suspension"
{
    "channel"       "CHAN_STATIC"
    "volume"        "0.25"
    "soundlevel"    "SNDLVL_80dB"
    "pitch"     "90,110"
    "rndwave"
    {
        "wave"      "vehicles/junker/suspension1.wav"
        "wave"      "vehicles/junker/suspension2.wav"
        "wave"      "vehicles/junker/suspension3.wav"
        "wave"      "vehicles/junker/suspension4.wav"
        "wave"      "vehicles/junker/suspension5.wav"
        "wave"      "vehicles/junker/suspension6.wav"
        "wave"      "vehicles/junker/suspension7.wav"
    }

"JNK_Radar_Ping_Enemy"
{
    "channel"       "CHAN_WEAPON"
    "volume"        "1.0"
    "soundlevel"        "SNDLVL_100dB"
    "pitch"         "100"

    "wave"      "vehicles/junker/radar_ping_enemy1.wav"
}