If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!
This article has a talk page!

Proto:Team Fortress 2/June 25th, 2007

From The Cutting Room Floor
Jump to navigation Jump to search
This page contains changes which are not marked for translation.

This is a sub-page of Proto:Team Fortress 2.

How about a nice leek in this trying time?
This page or section details content from the June 11th, 2020 Postal III Beta Leak.
Check the June 11th, 2020 Postal III Beta Leak category for more pages also sourced from this material.
Images present on this article and its subpages should not be uploaded to the Official Team Fortress 2 Wiki, as that wiki has a leaked content policy in place prohibiting the upload of these images.

Specifically, the three images in the Early Napalm Grenade section, the unused Engineer Battlecry sound file, and the unused Pyro Incoming sound file, are considered "leaked" content. Everything else on this page was initially found in the September 17, 2007 "Primeval Warrior" beta and is not "leaked" content.
This article is a work in progress.
...Well, all the articles here are, in a way. But this one moreso, and the article may contain incomplete information and editor's notes.
To do:
  • .pdb files exist and need to be looked into.
  • References to a scrapped secondary CTF mode called Invade exist (99% sure this is what the game internally refers to the CP/CTF hybrid that's been in game since launch but not officially used, as the lines included are specifically called when playing in that game mode in live TF2 with maps such as HAARP.)
  • There needs to be an explanation on how to get the prototype running, hence the client.dll file not being detected.
  • All grenade-related particle effects are in this build as well. GIFs or a YouTube video needed.
  • Finish comparing sound differences.
  • Add the final couple of model difference renders for some map props that I keep forgetting to add.
    • There's a conduit model that was rearranged and it's a really tall model so I've been struggling with getting a proper render of it.
    • There's also a building model whose textures got changed in release.
  • Comparison verifications mentioned on this article's Talk page.

On June 11th, 2020, an archive of Postal III's Perforce was leaked. Contained within is both the source code and a beta build of Postal III, unfinished beta builds of Team Fortress 2 and Half-Life 2: Episode Two, and various Source Engine development tools. The TF2 prototype is generally similar to the launch version, but it does contain various pieces of early content, several of which are clearly based on assets from the 2006 teaser trailer. There are also a few pieces of early content that had not been seen before this leak.


TF2Proto ClassScoutBlue.png
Asset Differences
Comparisons of assets between this early build and the current-day build.
Resource List-Only Assets
You could hold the flag and even kill players with it, just like Halo? Cool!


Sounds! There's a few sounds in the files that were changed on release, some of which ended up getting cut altogether. All sounds in this build are in the .wav format, which was the default for many years until this was changed and all sounds were converted to .mp3 format.

Cut Engineer Battlecry

The file sound/vo/engineer_battlecry02.wav was present in this early build, but was found to have been removed from the September 2007 closed beta from 3 months later, indicating this was cut very early. The voice line has the Engineer exclaiming "Remember the Alamo!". The definition for this sound is still in live TF2 to this day.


Cut Engineer Taunt Line

While the sound file was missing in this beta build, a unused Engineer taunt line is captioned in closecaption_english.txt.

"engineer.taunts07"   "Get ready to meet Mr. Bad Wrench"

Along with this, it is also mentioned in the "game_sounds_vo" included with the leak.

	 "channel"		 "CHAN_VOICE"
	 "volume"		 "0.620"
	 "pitch"			"PITCH_NORM"

	 "soundlevel"	 "SNDLVL_95dB"

	 "wave"			 "vo/taunts/engineer_Taunts07.wav"

Early Heavy "Thanks!" Line

An old well-known chestnut, this early version of sound/vo/heavy_thanks03.wav has the Heavy saying "Dasvidaniya!". What is strange is that this "Dasvidaniya" line was referred to in release build sound scripts as heavy_thanks04.wav. This file is even listed on the TF2 wiki as being heavy_thanks04.wav. The heavy_thanks03.wav sound in the final build became a generic, low-sounding "Thank you".


Early Spy "Thanks!" Line

Another old well-known chestnut, this early version of sound/vo/spy_thanks01.wav has the Spy saying "Prego!".


Early Pyro "Incoming!" Line

Found in to the Postal 3 leak, Pyro had an unused incoming voice line referring to a group. The Pyro says a muffled version of what sounds like, "We got company!". The file name potentially alludes to the distinction of Incoming lines when facing a group of people. This line was later re-used as 'Cm_pyro_pregamewonlast_01'[[1]] starting in Meet Your Match.


Cut Pyro "Activate Charge!" and Battle Cry Line

In the Postal 3 leak, Pyro used a different mumble for these 2 lines. The mumble itself still remains unused in modern day TF2. Funnily enough, these 2 lines are replaced by the the same used voice line in modern day TF2.


Different Metal Door Opening Sound

The standard metal door opening sound used when various doors open is different from the day 1 build. The sound is about a fourth of the final length and at half of the sample rate.


Different Sapper Plant Sound

The sound for when a Sapper is attached to a building is different from Day 1 TF2, being more a thud sound.


Unused Teleport Sounds

In the "misc" section, there are three sounds that start with the "teleport" prefix. These could have been beta sounds for the teleporter, although they are not included in the same section as the actual teleporter sounds.


Different Hologram Malfunction Sound

The leak included a different version of the sound used for when the enemy blocks your team from capping a point in TF2. This version prominently uses the Doom door opening sound (or at least, the same stock sound effect). While this can be heard in Day 1 and live TF2, it is nearly in audible.


Extended FlameThrower Pilot Sound

The sound for the flamethrower's pilot flame is about 7 seconds longer from what we got on release. Both versions appear to use the same sound, with the one use in Day 1 fading out about 7 seconds earlier compared to the one from the leak.


Unused Weapon Textures

Textures for several unused and cut weapons, as well as all the grenades, were found in the proto files. The models are also all present in this build, just as they have been present in the game to this very day.


Early Napalm Grenade

The most interesting find in this build, is that the Napalm Grenade model is an entirely different, older model. The later canister model is not present in this build (although a render of it is present in the gallery above for the sake of completeness) as the model in this build was instead this early round bomb model. The existence of the round bomb Napalm Grenade was somewhat known about through the existence of a filename for a particle effect that was initially found in the reslists/all.lst file from the September 17th, 2007 ("PatchVersion") build. The particle effect particles/fuse_napalmspark.pcf was not present in the September build and thus led to some confusion as to why there was even a wick effect when the existing Napalm Grenade canister model did not have any sort of "wick" to attach a fuse spark effect to. fuse_napalmspark.pcf was eventually found within this build when it leaked, alongside the much older bomb-shaped Napalm Grenade model, finally explaining the existence of the particle effect.


As well, the texture and normal map for the viewmodel of a weapon known only as the Trigger were found in the proto files in the tf\materials\models\weapons\v_trigger directory. While it cannot be confirmed, it is assumed that this was a weapon for the Demoman, and would have been used to detonate either;

  • The MIRV Grenade (Dynamite Pack) when it was a secondary weapon.
  • The Detpack, a weapon/buildable meant for the Demoman.
  • The Pipebomb Launcher, when it used to be remotely detonated before the creation of the Stickybomb Launcher.


The texture for a cut PDA, tf\materials\models\weapons\v_pda\v_pda.vtf can be found in the files. This file is still present in the game files. There is no associated model in the files for this texture. Based on the contents of its .vmt file, it appears to have been intended for the Spy as it has the parameter that is used to make things cloak when the Spy cloaks.

	"$baseTexture" "models\weapons\v_pda/v_pda"

	// Cloaking
	"$cloakPassEnabled" "1"

Interestingly, in the current game files, the .vmt file for the PDA was updated and modified to update the "vm_invis" proxy to the current "invis" proxy, as well as adding in Killstreak Sheen parameters of all things, despite being entirely unused in the game and having no model in the files.

 	"$baseTexture" "models\weapons\v_pda/v_pda"
 	"$glowcolor" "1"
 	// Cloaking
 	"$cloakPassEnabled" "1"
 	"$sheenPassEnabled" "1"
 	"$sheenmap" 		"cubemaps\cubemap_sheen001"
 	"$sheenmapmask" 		"Effects\AnimatedSheen\animatedsheen0"
 	"$sheenmaptint" 		"[ 1 1 1 ]"
 	"$sheenmapmaskframe" 	"0"
 	"$sheenindex" 		"0"
 	"$yellow" "0"
 			"animatedtexturevar" 		"$sheenmapmask"
 			"animatedtextureframenumvar" 	"$sheenmapmaskframe"
 			"animatedtextureframerate" 		"40"
 			"resultVar" "$glowcolor"
 			"srcVar1"  "$glowcolor"
 			"resultVar" "$selfillumtint"
 			"srcVar1"  "$glowcolor"
 			"resultVar" "$color2"
 			"resultVar" "$yellow"
 			"srcVar1" "$color2"
 			"srcVar2" "$yellow"
 			"resultVar" "$color2"

Removed Skybox texture

Completely absent from the initial release of TF2, a unused sky texture labeled "sky_tf2_06" was included in the leak. This is not used in any of the maps included from the leak. While it is split up into 6 textures in the files, an example of what it would look if it was put back together is shown below.

Sky tf2 06 Full layout.png

Script Differences

Class Script Differences

A total of two differences can be found by examining the files in scripts/playerclasses. In the proto, these files are in their decompiled .txt forms and can easily be read. In the release however, they are in the compiled .ctx format but can still be read by decompiling them with the Vice CTX decompiler.


The amount of ammunition for the Grenade Launcher and Sticky Bomb Launcher were 24 and 40 respectively in the proto's scripts/playerclasses/demoman.txt. This was lowered to 16 and 24 respectively in the final's scripts/playerclasses/demoman.ctx.

Prototype Final
	"tf_ammo_primary"	"24"
	"tf_ammo_secondary"	"40"
	"tf_ammo_metal"		"100"
	"tf_ammo_grenades1"	"0"
	"tf_ammo_grenades2"	"0"
	"tf_ammo_primary"	"16"
	"tf_ammo_secondary"	"24"
	"tf_ammo_metal"		"100"
	"tf_ammo_grenades1"	"0"
	"tf_ammo_grenades2"	"0"


The amount of ammunition for the Rocket Launcher in the proto's scripts/playerclasses/soldier.txt was 36, and was even like this in retail TF2's scripts/playerclasses/soldier.ctx, but was lowered to 16 in a February 2008 update for the final game, which was buffed to 20 rockets a year later.

Prototype Final
	"tf_ammo_primary"	"36"
	"tf_ammo_secondary"	"32"
	"tf_ammo_metal"		"100"
	"tf_ammo_grenades1"	"0"
	"tf_ammo_grenades2"	"0"
	"tf_ammo_primary"	"16"
	"tf_ammo_secondary"	"32"
	"tf_ammo_metal"		"100"
	"tf_ammo_grenades1"	"0"
	"tf_ammo_grenades2"	"0"

Response Rules

To do:
404UNF: Verify that the response rules weren't added in the next available proto, "PatchVersion" dated September 2007. They probably weren't, but I want to confirm this myself.

To quote the Valve Developer Wiki's article on the Response System; The Response System is used to decide what line of speech (and/or animation) should be used by a NPC (or player) when they want to say something, or whether to say anything at all. The proto's scripts/talker/response_rules.txt lacked a few response rules that were added in the final(see todo). Missing from the proto, but found in the final are the following lines:

First we have the "Thanks!" response. Seemingly not hooked up in the proto.

criterion "ConceptPlayerThanks" "Concept" "TLK_PLAYER_THANKS" "required"

Next, the response rule for when you're dead, I guess to make your character do a death scream, isn't set in the proto.

criterion "ConceptPlayerDead" "Concept" "TLK_DEAD" required

Moving on, some criteria for detecting specifically a Soldier, Heavy or Pyro with a Shotgun were not in the proto, but were added in the final.

criterion "WeaponIsShotgunSoldier" "playerweapon" "tf_weapon_shotgun_soldier" "required"
criterion "WeaponIsShotgunHwg" "playerweapon" "tf_weapon_shotgun_hwg" "required"
criterion "WeaponIsShotgunPyro" "playerweapon" "tf_weapon_shotgun_pyro" "required"

However, both the proto and the final have this default secondary slot Shotgun criterion in place, most likely as a catch-all in the proto.

criterion "WeaponIsShotgun" "playerweapon" "tf_weapon_shotgun_secondary" "required"

On a sad note for Heavy mains, the proto lacked the response rule for making the Heavy say things or laugh maniacally when firing his Minigun. These lines were added in the final, thankfully.

criterion "IsFiringMinigun" "minigunfiretime" ">0.0" required
criterion "TimeFiringMinigunShort" "minigunfiretime" ">4.0,<=8.0" required
criterion "TimeFiringMinigunLong" "minigunfiretime" ">8.0,<=15.0" required
criterion "TimeFiringMinigunReallyLong" "minigunfiretime" ">15.0" required
criterion "ConceptFireMinigunTalk" "Concept" "TLK_MINIGUN_FIREWEAPON" "required"

The kicker though, right at the very bottom of response_rules.txt, it seems that all the individual class-specific .txt files in scripts/talker aren't even hooked up, so perhaps none of the class's response rules worked in the proto? These lines were added in the final though.

#include "talker/Heavy.txt"
#include "talker/Scout.txt"
#include "talker/Engineer.txt"
#include "talker/Sniper.txt"
#include "talker/Soldier.txt"
#include "talker/Demoman.txt"
#include "talker/Medic.txt"
#include "talker/Pyro.txt"
#include "talker/Spy.txt"

Placeholder Videos

There are several placeholder videos present for the map intros.

2Fort Intro

  • Several additional scenes are present in the draft, including extra establishing shots of intel rooms and in particular a scene telling the player to "Defend the three entry points" at the end that isn't in the final video at all. One scene that was changed completely is when the Scout captures the intel at the end, as it features graphics for the CTF HUD and has Scout taunt when he delivers it in the final video.
  • This draft seems especially rough, featuring a piece of text in the top right corner letting us know that it's a "DRAFT: NOT DONE!!!", no 2Fort title card, most of the video's captions being a placeholder line, and the captions themselves seemingly using a system font instead of any TF2 fonts.
Prototype Final

Well Intro

  • The scene explaining that you must capture control points is significantly longer in the draft. Oddly, any scenes that would have shown off the Soldier's face have been cut in the final video. The control point hologram is also a different color and is right against the ground, and the graphic showing off the capture progress graphic isn't present.
  • The final scene has several technical issues. The gate the Demoman enters doesn't open properly, and there seems to be both RED and BLU team holograms over the control point. They also seem to have removed a rather large blood splatter in the final video.
Prototype Final

General Intro Differences

Along with the differences already listed, the placeholders share several differences between the final videos.

  • The placeholders start with classic film reel countdowns. It's unclear if these were considered to be put in the finished videos at any point.
  • They have no music or sound effects.
  • Captions are baked into the video.
  • Most of the camera movements and angles are close to the final videos' (if the specific scenes are still present), with minor differences per scene, being generally less refined and in particular featuring very little of the camera shake effect.

Unused Maps

2 unused maps are present in the files:

  • background01.bsp, the map used as the "live" background for the console version of Team Fortress 2.
  • testbox.bsp, just an empty mini box map for testing.

The inside of testbox.bsp, being a room with a brick texture on every wall and two light sources.

TF2 testbox postal3.jpg

Other Things of Note

Unused/cut animations for the classes


"Warcrimes" Animations

In the Postal 3 build, there exists unused animations. Those being "stand_warcrimes" and "run_warcrimes" for Scout.

"stand_warcrimes" has the Scout covering his dog tags while standing in place. He doesn't actually move during the animation, hence why the showcase is only a picture and not a gif.

TF2 Warcrimes stand.png

"run_warcrimes" does not properly load in HLMV, simply showing the standing animation mentioned above. Forcing it to play in-game shows that Scout running with his hands up in the air. It even has animation sets showing that it plays properly running in all directions.

With none of the other classes having their "loser" animations and with Scout putting his hands up while running and covering his dog tags while standing still, this could've been an early mockup of the "loser" animations that play when your team loses. This is further backed up by decompiling the model, as it shows that the supposed action state for this is "ACT_MP_RUN_PANIC", which is of a similar format to the action state used in Day 1 and Live TF2 use, simply swapping out "PANIC with "LOSER".


Old Reference Pose

Spy's reference pose is also noticeably different. Instead of being an actual T-pose, he awkwardly has his arms out front and to the side of him.

TF2 Spy tpose postal3.png

Evidence of Tranquilizer Animations

Instead of having a regular "ragdollspawn" animation, it actually plays a different idle animation for Spy holding the Revolver. Clicking on the gif shows the whole animation.

TF2 Spy Tranq Idle Postal3.gif

Later in the 2023 giga-leaks, a whole set of animations with this pose, labeled "primary" instead of the Revolver's "secondary", were found, with this animation being an exact match to the "primary_idle" found in it, down to the amount of frames included. Because of this, this animations and the others found outside of the Postal 3 leak, are thought to be the supposed animations for the Tranquilizer Gun. These animations were included within the sdk, but ending getting overlooked.

Grenade Launcher Viewmodel Charging Animation

Discovered quite recently, the viewmodel for the Demoman's Grenade Launcher, models/weapons/v_models/v_grenadelauncher_demo.mdl, has an unused "charging" animation in it that is identical to the Stickybomb Launcher's charging animation. This could be a remnant of when the Grenade Launcher model was used for when the Grenade Launcher also acted as a Stickybomb Launcher that let you remotely detonate the pipebombs, as seen in early trailers. It could also be an accidental inclusion of a Stickybomb Launcher animation into the Grenade Launcher. Oddly enough, while the animation is labelled as auto_fire for models/weapons/v_models/v_grenadelauncher_demo.mdl, it is labelled as autofire (no underscore) for models/weapons/v_models/v_stickybomb_launcher_demo.mdl.

Higher Poly Models?

As noted in a few places on this article, certain models in this build have a slightly higher polycount than in later builds. This is mainly visible in models like the first person viewmodels and the Engineer buildings, though not all models in the proto build have been compared to their final counterparts yet. It is assumed that these models had their overall polycounts decreased at some point in time, probably for the benefit of players with lower end PCs, and the Console ports.


To do:
Would like to confirm that the viewmodels are indeed higher poly but the tri count is higher on the proto models due to the other hand still being in them. Also need to confirm that all the viewmodels (that only require one hand) have both hands.

The v_ weapon models, which act as the first person viewmodels, all have both hands in them although for one-handed weapons, the opposite hand is usually positioned out of the way or horrifically contorted. In later builds, the opposite unused hand was removed from the viewmodels entirely. The proto viewmodel hands also have a higher polygon count, particularly Heavy's, who now has two complete arms, instead of a complete right arm and a left forearm.

The following screenshots show the viewmodels with notable changes, courtesy of newguy111 on Gamebanana. While these screenshots are taken in live TF2, the models are un-altered.


With Soldier, the main differences include a less jagged look on his coat and better curvature on his fingers and wrists.

Live TF2 Postal 3 Leak
TF2 Soldier before.jpg TF2 Soldier after.jpg
TF2 Soldier before2.jpg TF2 Soldier after2.jpg


With Demoman, the most noticeable thing is his sleeves having a slightly different shape to them, being more of a straight line in the leak compared to the curve that appears as you get closer to his elbow. His thumb is modeled slightly different as well, with the middle of it arching downwards a bit instead of being a straight line.

Live TF2 Postal 3 Leak
TF2 Demoman before.jpg TF2 Demoman after.jpg


As mentioned above, Heavy has a fully modeled left arm instead of it being just a forearm. He also has a slightly different forearm shape when connecting with his wrists/gloves, as well as the middle finger on his glove not extending as far up as in live TF2.

Live TF2 Postal 3 Leak
TF2 Heavy before.jpg TF2 Heavy after.jpg
TF2 Heavy before2.jpg TF2 Heavy after2.jpg


For Engineer, his most notable difference is how his shirt connects with arm, being a lot smoother in the Postal 3 leak.

Live TF2 Postal 3 Leak
TF2 Engineer before.jpg TF2 Engineer after.jpg


On Sniper, retail actually has a smoother arm, with the leak adding more jaggedness near the bottom of his forearm. It's also easier to tell that Sniper's glove is 3D, notice the hole in his gloves to see this most clearly.

Live TF2 Postal 3 Leak
TF2 Sniper before.jpg TF2 Sniper after.jpg
TF2 Sniper before2.jpg TF2 Sniper after2.jpg


There's a bit of a weird situation regarding cp_badlands in this build. The map maps/cp_badlands.bsp is not present in this build. The models/props_badlands folder is also not present in this build. Despite the lack of a models folder, the materials/models/props_badlands folder is present in this build, as are the usual textures you'd expect in that folder. There's also a cp_badlands.lst file present in the reslists folder. The map appears to have been played in this build at some point, but the lack of the actual map and models folder doesn't make sense.


In this particular build, the files for the menu map photos and screens of cp_gravelpit instead use the map's original name, cp_bridge. The files materials/VGUI/maps/map_photos_cp_bridge.vtf and map_screen_cp_bridge.vtf can be found in this build. However, the actual map cp_bridge.bsp is not present in this build, partially because it is in this build as cp_gravelpit.bsp. As well, the .lst file in the reslists folder for the map is named cp_gravelpit.lst. It would appear that Valve just had not changed the filenames of the menu map photos and screen to match the map's new name.

Early SFM Sessions