Too Many Buildings is a server-side VScript mod for Team Fortress 2 & Team Fortress 2: Classified that expands the Engineer's building roster with custom, visually distinct alternatives to the standard sentries, dispensers, and teleporters. Each custom building is activated via weapon attributes.
The mod adds the following buildings:
| Building Name | Type | Upgrade Cost | Description |
|---|---|---|---|
| Artillery Sentry | Sentry | 300 metal | Heavy artillery-style sentry with three upgrade levels. |
| Sniper Sentry | Sentry | 400 metal | Concept: low fire rate but high damage |
| HL Sentry | Sentry | - | Half-Life styled mini-sentry. |
| Mimi Sentry | Sentry | - | Cute, stylized mini-sentry variant. |
| Amplifier | Dispenser | - | Special support building that applies mini-crits to nearby players within 200 units. Does not provide ammo/health. |
| Mini Dispenser | Dispenser | - | Compact, single-level dispenser for quick metal and health support. Custom model and gibs. Health: 75 |
| Mini Teleporter | Teleporter | - | Lightweight teleporter with custom blueprint models for entrance and exit states. Single-level. Health: 50 |
Fun Fact: the mod is fully compatible with TF2 Classified's Mann vs. Machine mode.
Warning
Simply running script_execute too_many_buildings.nut will do absolutely nothing.
This VScript plugin does not automatically replace buildings or modify combat stats;
it only manages visual models, build/upgrade animations, upgrade costs, and custom logic such as Amplifier condition application, etc.
To modify damage, fire rate, health multipliers, or any other gameplay properties, you must add the corresponding attributes to your Engineer's weapons via custom_items_game.txt
- Extract or copy the mod files into your server's custom content directory:
tf/custom/your_mod_name/
├── materials/
├── models/
└── scripts/
└── vscripts/
└── too_many_buildings.nut
For TF2 Classified: Use tf2classified/custom/your_mod_name/ instead of tf/custom/.
- Add the following line to your
server.cfg
script_execute too_many_buildings.nut
- Add the following block to your custom_items_game.txt file under the "attributes" section:
"attributes"
{
"8000"
{
"name" "explosive headshots"
"description_string" "Explosive headshots"
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8001"
{
"name" "replaces dispenser with amplifier"
"description_string" "Replaces Dispenser with the Amplifier: This building does not restore health, ammunition, or metal. Allies near the Amplifier receive mini-crits and are marked with a death mark."
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8002"
{
"name" "replaces sentry with hl sentry"
"description_string" "Replaces the Sentry with the HL Sentry"
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8003"
{
"name" "replaces dispenser with mini dispenser"
"description_string" "Replaces the Dispenser with the Mini-Dispenser: Lower cost and faster construction speed, but cannot be upgraded."
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8004"
{
"name" "replaces sentry with artillery sentry"
"description_string" "Replaces the Sentry with the Artillery Sentry: More powerful, but more expensive to upgrade."
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8005"
{
"name" "replaces sentry with sniper sentry"
"description_string" "Replaces the Sentry with the Sniper Sentry: Reduced rate of fire balanced by increased damage output."
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8006"
{
"name" "engy sentry fire rate decreased"
"attribute_class" "mult_sentry_firerate"
"description_string" "%s1% sentry fire rate decreased"
"hidden" "0"
"effect_type" "negative"
"stored_as_integer" "0"
}
"8007"
{
"name" "engy sentry damage penalty"
"attribute_class" "mult_engy_sentry_damage"
"description_string" "%s1% sentry damage penalty"
"description_format" "value_is_percentage"
"hidden" "0"
"effect_type" "negative"
"stored_as_integer" "0"
}
"8008"
{
"name" "replaces teleporter with mini teleporter"
"description_string" "Replaces the Teleporter with mini teleporter."
"description_format" "value_is_additive"
"effect_type" "positive"
}
"8009"
{
"name" "replaces sentry with mimi sentry"
"description_string" "Replaces sentry with Mimi sentry UwU"
"description_format" "value_is_additive"
"effect_type" "positive"
}
- Attach the new attributes to Engineer weapons by editing your custom item definitions. Example for a custom Wrench or PDA:
"attributes"
{
"replaces teleporter with mini teleporter"
{
"attribute_class" "dummy"
"value" "1.0"
}
}
- Model & Asset Sources:
- Artillery Sentry & Sniper Sentry: TF2Classic-KO-Custom-Weapons
- HL Sentry: GameBanana
- Amplifier: AlliedModders Forum
- Mini Teleporter: GameBanana
- Mimi Sentry: GameBanana